diff --git a/docker_images/docker_tango_python/requirements.txt b/docker_images/docker_tango_python/requirements.txt
index 0a73d686e2bf43229199808a9ffaa11c00d85f8a..a502efe58c6c08882ca226e9022bc7cec8f3e517 100644
--- a/docker_images/docker_tango_python/requirements.txt
+++ b/docker_images/docker_tango_python/requirements.txt
@@ -4,4 +4,5 @@ jinja2
 tabulate
 compress_pickle
 pyfiglet
-colorama
\ No newline at end of file
+colorama
+unitgrade-devel>=0.1.23
\ No newline at end of file
diff --git a/examples/autolab_example/autolab_example.py b/examples/autolab_example/autolab_example.py
index fb2e7083c315f1d7ec2c01b2c03608377dee7bfd..f0c2ad5561d0f4e2782f8da224b201b7849fee2b 100644
--- a/examples/autolab_example/autolab_example.py
+++ b/examples/autolab_example/autolab_example.py
@@ -1,18 +1,65 @@
 import os
+from unitgrade_private.autolab.autolab import format_autolab_json, docker_build_image
 from unitgrade_private.autolab.autolab import deploy_assignment
+"""
+Semantic score formatting. See. 
+
+https://docs.autolabproject.com/lab/https://docs.autolabproject.com/features/formatted-feedback/
+
+{
+  "_presentation": "semantic",
+  "stages": ["Build","Test","Timing"],
+  "Test": {
+    "Add Things": {
+      "passed": true
+    },
+    "Return Values": {
+      "passed": false,
+      "hint": "You need to return 1"
+    }
+  },
+  "Build": {
+    "compile": {
+      "passed": true
+    },
+    "link": {
+      "passed": true
+    }
+  },
+  "Timing": {
+    "Stage 1 (ms)": 10,
+    "Stage 2 (ms)": 20
+  }
+}
+{"scores": {"Correctness": 20, "TA/Design/Readability": 40}}
+"""
 
 if __name__ == "__main__":
     wdir = os.getcwd()
-    args = [('example_simplest', 'programs', 'report1_grade.py', 'report1_grade.py'),
+    args = [('example_simplest', 'cs101', 'report1_grade.py', 'report1_grade.py'),
             ('example_framework', 'cs102', 'report2_grade.py', 'report2_grade.py'),
             ('example_docker', 'cs103', 'report3_complete_grade.py', 'report3_grade.py'),
             ]
 
+    from unitgrade_private import load_token
+    # data, _ = load_token("../example_framework/instructor/cs102/Report2_handin_18_of_18.token")
+    data, _ = load_token("../example_framework/students/cs102/Report2_handin_3_of_16.token")
+
+    format_autolab_json(data, indent=2)
+
+    # import sys
+    # sys.exit()
+
     for bdir, name, instructor, student in args:
         instructor_base = f"{wdir}/../{bdir}/instructor"
         student_base = f"{wdir}/../{bdir}/students"
 
+
         output_tar = deploy_assignment(name, INSTRUCTOR_BASE=instructor_base, INSTRUCTOR_GRADE_FILE=f"{instructor_base}/{name}/{instructor}",
                                        STUDENT_BASE=student_base, STUDENT_GRADE_FILE=f"{student_base}/{name}/{student}",
-                                       output_tar=None)
+                                       output_tar=None,
+                                       autograde_image='tango_python_tue')
         print(output_tar)
+
+    docker_build_image()  # Make sure docker grading image is up-to-date.
+    docker_build_image()  # Make sure docker grading image is up-to-date.
\ No newline at end of file
diff --git a/examples/autolab_example/cs101.tar b/examples/autolab_example/cs101.tar
index 09c62e0a70cd66ce541081d7df6c461e2f4078a8..4db9ded111212595bd4deb7ee97176e75a6f2fbd 100644
Binary files a/examples/autolab_example/cs101.tar and b/examples/autolab_example/cs101.tar differ
diff --git a/examples/autolab_example/cs102.tar b/examples/autolab_example/cs102.tar
index 1f1e1907c0fb89785ea6f610401f7f03ab8f1365..90a71cce231462003fe19de4a7df3cf803b0486b 100644
Binary files a/examples/autolab_example/cs102.tar and b/examples/autolab_example/cs102.tar differ
diff --git a/examples/autolab_example/cs103.tar b/examples/autolab_example/cs103.tar
index 7edd3f9bf74bea705f82507cbc8fae36808a6ec0..f319bb69cf750c5c0e034878aadeed5df2e592ca 100644
Binary files a/examples/autolab_example/cs103.tar and b/examples/autolab_example/cs103.tar differ
diff --git a/examples/autolab_example/readme.md b/examples/autolab_example/readme.md
index 442f6dc20edd948a8a1177ab1dec666ed67aed58..59739cd2323567924d2eed70ef999fd3a29450ce 100644
--- a/examples/autolab_example/readme.md
+++ b/examples/autolab_example/readme.md
@@ -1,8 +1,18 @@
+## Startup (development notes)
 
-## Startup (development)
-
+To start `Tango` follow this guide:
+ - https://docs.autolabproject.com/installation/tango/
 ```terminal
 cd ~/Documents/Tango
 source bin/activate
-python restful_tango/server.py 3000
+redis-server &
+python restful_tango/server.py 3000 &
+python jobManager.py 
+```
+
+To start `Autolab`
+```terminal
+cd ~/Autolab && bundle exec rails s -p 8000 --binding=0.0.0.0
 ```
+Access Autolab on https://autolab:8000 
+It is important to use this address because Tango expects requests from an `autolab` hostname. 
diff --git a/examples/autolab_example/tmp/cs101/Makefile b/examples/autolab_example/tmp/cs101/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..c0b709ce773ab1bb73048dad0bf97fe0207af42f
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/Makefile
@@ -0,0 +1,51 @@
+#
+# Makefile to manage the example Hello Lab
+#
+
+# Get the name of the lab directory
+# LAB = $(notdir $(PWD)) # Fail on windows for some reason...
+
+all: handout handout-tarfile
+
+handout: 
+	# Rebuild the handout directory that students download
+	(rm -rf cs101-handout; mkdir cs101-handout)
+	cp -p src/Makefile-handout cs101-handout/Makefile
+	cp -p src/README-handout cs101-handout/README
+	cp -p src/driver_python.py cs101-handout
+
+	cp -p src/student_sources.zip cs101-handout
+
+	cp -p src/Report1_handin.token cs101-handout
+
+	cp -p src/docker_helpers.py cs101-handout
+
+	cp -p src/report1_grade.py cs101-handout
+
+
+handout-tarfile: handout
+	# Build *-handout.tar and autograde.tar
+	tar cvf cs101-handout.tar cs101-handout
+	cp -p cs101-handout.tar autograde.tar
+
+clean:
+	# Clean the entire lab directory tree.  Note that you can run
+	# "make clean; make" at any time while the lab is live with no
+	# adverse effects.
+	rm -f *~ *.tar
+	(cd src; make clean)
+	(cd test-autograder; make clean)
+	rm -rf cs101-handout
+	rm -f autograde.tar
+#
+# CAREFULL!!! This will delete all student records in the logfile and
+# in the handin directory. Don't run this once the lab has started.
+# Use it to clean the directory when you are starting a new version
+# of the lab from scratch, or when you are debugging the lab prior
+# to releasing it to the students.
+#
+cleanallfiles:
+	# Reset the lab from scratch.
+	make clean
+	rm -f log.txt
+	rm -rf handin/*
diff --git a/examples/autolab_example/tmp/cs101/autograde-Makefile b/examples/autolab_example/tmp/cs101/autograde-Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..78b2c548c19d14aec7ea0edc74cc0bf021aa6aae
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/autograde-Makefile
@@ -0,0 +1,7 @@
+all:
+	tar xf autograde.tar
+	cp Report1_handin.token cs101-handout
+	(cd cs101-handout; python3 driver_python.py)
+
+clean:
+	rm -rf *~ hello3-handout
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/autograde.tar b/examples/autolab_example/tmp/cs101/autograde.tar
new file mode 100644
index 0000000000000000000000000000000000000000..b0c641a793ca34a9bea8aab4eae253946f725d95
Binary files /dev/null and b/examples/autolab_example/tmp/cs101/autograde.tar differ
diff --git a/examples/autolab_example/tmp/cs101/cs101-handout.tar b/examples/autolab_example/tmp/cs101/cs101-handout.tar
new file mode 100644
index 0000000000000000000000000000000000000000..b0c641a793ca34a9bea8aab4eae253946f725d95
Binary files /dev/null and b/examples/autolab_example/tmp/cs101/cs101-handout.tar differ
diff --git a/examples/autolab_example/tmp/cs101/cs101-handout/Makefile b/examples/autolab_example/tmp/cs101/cs101-handout/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/cs101-handout/Makefile
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs101/cs101-handout/README b/examples/autolab_example/tmp/cs101/cs101-handout/README
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/cs101-handout/README
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs101/cs101-handout/Report1_handin.token b/examples/autolab_example/tmp/cs101/cs101-handout/Report1_handin.token
new file mode 100644
index 0000000000000000000000000000000000000000..ca16ac4aa865f72adb0f380c2ab7795f57d25190
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/cs101-handout/Report1_handin.token
@@ -0,0 +1,191 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs101/report1.py ###
+
+import unittest 
+from unitgrade import Report, evaluate_report_student
+import cs101
+from cs101.homework1 import reverse_list, add 
+
+class Week1(unittest.TestCase):
+    def test_add(self):
+        self.assertEqual(add(2,2), 4)
+        self.assertEqual(add(-100, 5), -95)
+
+    def test_reverse(self):
+        self.assertEqual(reverse_list([1,2,3]), [3,2,1]) 
+
+class Report1(Report):
+    title = "CS 101 Report 1"
+    questions = [(Week1, 10)]  # Include a single question for a total of 10 credits.
+    pack_imports = [cs101]     # Include all .py files in this folder
+
+if __name__ == "__main__":
+    evaluate_report_student(Report1()) 
+    # unittest.main(verbosity=2) # Uncomment to run everything as a regular unittest
+
+
+### Content of cs101/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+eb9da76a1e7a395c1f3516d4b038c32e3d0d2cfce1ed36315a690955abeb5ccb3e7faa69b0e528465e71805049b8e7c6268b49ce2099794375b6a4f6fac2dcf6 25472
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+.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.
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/cs101-handout/docker_helpers.py b/examples/autolab_example/tmp/cs101/cs101-handout/docker_helpers.py
new file mode 100644
index 0000000000000000000000000000000000000000..b6fdf76538c9cc454a6dbf3add2d9deac58e8310
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/cs101-handout/docker_helpers.py
@@ -0,0 +1,146 @@
+# from cs202courseware.ug2report1 import Report1
+
+import pickle
+import os
+import glob
+import shutil
+import time
+import zipfile
+import io
+import inspect
+import subprocess
+
+def compile_docker_image(Dockerfile, tag=None):
+    assert os.path.isfile(Dockerfile)
+    base = os.path.dirname(Dockerfile)
+    if tag == None:
+        tag = os.path.basename(base)
+    os.system(f"cd {base} && docker build --tag {tag} .")
+    return tag
+
+
+def student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination):
+    """
+
+    Use by autolab code.
+
+    :param Dockerfile_location:
+    :param host_tmp_dir:
+    :param student_token_file:
+    :param ReportClass:
+    :param instructor_grade_script:
+    :return:
+    """
+    assert os.path.exists(student_token_file)
+    assert os.path.exists(instructor_grade_script)
+    start = time.time()
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    sources = results['sources'][0]
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+
+    gscript = instructor_grade_script
+    print(f"{sources['report_relative_location']=}")
+    print(f"{sources['name']=}")
+
+    print("Now in docker_helpers.py")
+    print(f'{gscript=}')
+    print(f'{instructor_grade_script=}')
+    gscript_destination = host_tmp_dir + "/" + grade_file_relative_destination
+    print(f'{gscript_destination=}')
+
+    shutil.copy(gscript, gscript_destination)
+
+    # Now everything appears very close to being set up and ready to roll!.
+    d = os.path.normpath(grade_file_relative_destination).split(os.sep)
+    d = d[:-1] + [os.path.basename(instructor_grade_script)[:-3]]
+    pycom = ".".join(d)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    pycom = "python3 -m " + pycom # pycom[:-3]
+    print(f"{pycom=}")
+
+    token_location = host_tmp_dir + "/" + os.path.dirname( grade_file_relative_destination ) + "/*.token"
+
+    elapsed = time.time() - start
+    # print("Elapsed time is", elapsed)
+    return pycom, token_location
+
+
+def docker_run_token_file(Dockerfile_location, host_tmp_dir, student_token_file, tag=None, instructor_grade_script=None, fix_user=True):
+    """
+    This thingy works:
+
+    To build the image, run:
+    docker build --tag python-docker .
+
+    To run the app run:
+
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker > output.log
+
+    """
+    # A bunch of tests. This is going to be great!
+    assert os.path.exists(Dockerfile_location)
+    start = time.time()
+
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+
+    sources = results['sources'][0]
+
+    if os.path.exists(host_tmp_dir):
+        shutil.rmtree(host_tmp_dir)
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+    gscript = instructor_grade_script
+
+    student_grade_script = host_tmp_dir + "/" + sources['report_relative_location']
+    instructor_grade_script = os.path.dirname(student_grade_script) + "/"+os.path.basename(gscript)
+    shutil.copy(gscript, instructor_grade_script)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/home python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    if tag is None:
+        dockname = os.path.basename( os.path.dirname(Dockerfile_location) )
+    else:
+        dockname = tag
+
+    tmp_grade_file =  sources['name'] + "/" + sources['report_relative_location']
+
+    pycom = ".".join( sources['report_module_specification'][:-1] + [os.path.basename(gscript)[:-3],] )
+    pycom = "python3 -m " + pycom
+
+    if fix_user:
+        user_cmd = ' --user "$(id -u):$(id -g)" '
+    else:
+        user_cmd = ''
+    tmp_path = os.path.abspath(host_tmp_dir).replace("\\", "/")
+    dcom = f"docker run {user_cmd} -v {tmp_path}:/home {dockname} {pycom}"
+    cdcom = f"cd {os.path.dirname(Dockerfile_location)}"
+    fcom = f"{cdcom}  && {dcom}"
+    print("> Running docker command")
+    print(fcom)
+    init = time.time() - start
+    # thtools.execute_command(fcom.split())
+    subprocess.check_output(fcom, shell=True).decode("utf-8")
+    host_tmp_dir +"/" + os.path.dirname(tmp_grade_file) + "/"
+    tokens = glob.glob( os.path.dirname(instructor_grade_script) + "/*.token" )
+    for t in tokens:
+        print("Source image produced token", t)
+    elapsed = time.time() - start
+    print("Elapsed time is", elapsed, f"({init=} seconds)")
+    return tokens[0]
diff --git a/examples/autolab_example/tmp/cs101/cs101-handout/driver_python.py b/examples/autolab_example/tmp/cs101/cs101-handout/driver_python.py
new file mode 100644
index 0000000000000000000000000000000000000000..ac69f8d95b6e5fe2d25d6a08fe0edc51aca88000
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/cs101-handout/driver_python.py
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report1_handin.token'
+instructor_grade_script = 'report1_grade.py'
+grade_file_relative_destination = "cs101/report1_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/cs101-handout/report1_grade.py b/examples/autolab_example/tmp/cs101/cs101-handout/report1_grade.py
new file mode 100644
index 0000000000000000000000000000000000000000..43da14b77ba5b271afb542e4ae2e098397dc3fd8
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/cs101-handout/report1_grade.py
@@ -0,0 +1,3 @@
+''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
+import bz2, base64
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/cs101-handout/student_sources.zip b/examples/autolab_example/tmp/cs101/cs101-handout/student_sources.zip
new file mode 100644
index 0000000000000000000000000000000000000000..05c4f8a40e320734b494a8f9a64e6f69cbe83561
Binary files /dev/null and b/examples/autolab_example/tmp/cs101/cs101-handout/student_sources.zip differ
diff --git a/examples/autolab_example/tmp/cs101/cs101.rb b/examples/autolab_example/tmp/cs101/cs101.rb
new file mode 100644
index 0000000000000000000000000000000000000000..4c4cd2abc1be9dee7470d9eec227332d9840fcf1
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/cs101.rb
@@ -0,0 +1,11 @@
+require "AssessmentBase.rb"
+
+module Cs101
+  include AssessmentBase
+
+  def assessmentInitialize(course)
+    super("cs101",course)
+    @problems = []
+  end
+
+end
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/cs101.yml b/examples/autolab_example/tmp/cs101/cs101.yml
new file mode 100644
index 0000000000000000000000000000000000000000..1feabba2f47a272eda34e1cf09640f04b85a9918
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/cs101.yml
@@ -0,0 +1,33 @@
+---
+
+general:
+  name: cs101
+  description: ''
+  display_name: CS 101 Report 1
+  handin_filename: Report1_handin.token
+  handin_directory: handin
+  max_grace_days: 0
+  handout: cs101-handout.tar
+  writeup: writeup/cs101.html
+  max_submissions: -1
+  disable_handins: false
+  max_size: 2
+  has_svn: false
+  category_name: Lab
+problems:
+
+  - name: Unitgrade score
+    description: ''
+    max_score: 10
+    optional: false
+
+autograder:
+  autograde_timeout: 180
+  autograde_image: tango_python_tue
+  release_score: true
+
+# problems:
+# - name: Correctness
+#  description: ''
+#  max_score: 100.0
+#  optional: false
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/src/Makefile b/examples/autolab_example/tmp/cs101/src/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/Makefile
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs101/src/Makefile-handout b/examples/autolab_example/tmp/cs101/src/Makefile-handout
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/Makefile-handout
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs101/src/README b/examples/autolab_example/tmp/cs101/src/README
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/README
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs101/src/README-handout b/examples/autolab_example/tmp/cs101/src/README-handout
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/README-handout
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs101/src/Report1_handin.token b/examples/autolab_example/tmp/cs101/src/Report1_handin.token
new file mode 100644
index 0000000000000000000000000000000000000000..ca16ac4aa865f72adb0f380c2ab7795f57d25190
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/Report1_handin.token
@@ -0,0 +1,191 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs101/report1.py ###
+
+import unittest 
+from unitgrade import Report, evaluate_report_student
+import cs101
+from cs101.homework1 import reverse_list, add 
+
+class Week1(unittest.TestCase):
+    def test_add(self):
+        self.assertEqual(add(2,2), 4)
+        self.assertEqual(add(-100, 5), -95)
+
+    def test_reverse(self):
+        self.assertEqual(reverse_list([1,2,3]), [3,2,1]) 
+
+class Report1(Report):
+    title = "CS 101 Report 1"
+    questions = [(Week1, 10)]  # Include a single question for a total of 10 credits.
+    pack_imports = [cs101]     # Include all .py files in this folder
+
+if __name__ == "__main__":
+    evaluate_report_student(Report1()) 
+    # unittest.main(verbosity=2) # Uncomment to run everything as a regular unittest
+
+
+### Content of cs101/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+eb9da76a1e7a395c1f3516d4b038c32e3d0d2cfce1ed36315a690955abeb5ccb3e7faa69b0e528465e71805049b8e7c6268b49ce2099794375b6a4f6fac2dcf6 25472
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+./Td6WFoAAATm1rRGAgAhARYAAAB0L+Wj4Gt7Sl9dAEABDnTTyrg+9NNr6wxzmezcR+L3mJcv6ceUP1qtGirAr8d2QvF5G9xkxfiWTnF8I3a3lr9eWfjFHNkrVy5ZyOJO7vTJqZNSHImZHCchYvDXGVhJfg07PP5U9U23U0GCUALDUDDIn/x
+/V4uKI+X4SAjRgzzh8VtOLtH+1Ky+kC8m4JrcCyP/mNDbdqp8ICGKt3lnmH7K48h4iVg4JmG3uvsez0w2VhuRgJcjkh2d0EumlQIo3FF1N65zatMQy6xw5RDcReR4UiAQ3s5HsgBGIhZm/j/FYP362zVCiKk1sV2/qe5UdRbW6Sc/EuXIom+
+zsyZyJJ914HDGNM8RN7JaGYffuXoIeEc+20W+UanxfyA2iV4cPgEM+GX7Fd2Y+36mx7bGFGXNzwZxGaEilEd44Z3j5GzsiGa5I5fTEdcxAr7qT7y4ZXRBhYoM67ka/rEbj8ZqLMrRF4RZNIGCE+e7l8hCvW10bbb+YryrCDNHC36fdcgj5Cn
+40k8fq8A8/hFNCahsaJrfuPs4tLryz6DVO9cWUYUYz0t4u83P90lYuL8Hn+lSPnNWK27ovR23YDsrFBRiuCi+CO2n8YaqkP3TRHVn18PtPS02YxB6/rxyDmxqfKrQ5bDCcGixutcZjkjjVlaHSLsDBUNFPv+1eW1D6fASmMgk5oPU/TIR/tA
+5WZNfaMxoweiTr9mddM87drVczBzFyRBgi2Ux60/pGL5a3Ji54R3zXggjbxXm8K0baIcF7XRk30DmkpuJUrnpISC0HLybKSRzfgktmaWFDB88XFC2DPqnbvZEiJ2ASmvxjzB8opbuIHuszcsQ3TwsRbjWuLzlr45dRMbRvmELkqwtdQstdEX
+0KnB3b+L5ZI+LBh2UqvD5s6SYzaGLpi+6QMUpCLraz64E7tRpgIrlFBktVBaCbrOGj4X+JkafmaM0v6P8LFBO+H4rCIE38AcNJg098FDpVpXruvr1330dSNtOHSNH7blFzA0KAsTfXbqlo51MAZFx/n+Vdttus5dQs1ENpTjSYTp7aktvHte
+XT+W6Qn9nhMld6/w8d1JKhJUrz62tjTlt+L5XAXhuIQbLH6ANvs0+D0XxIR/Xmgv5INeauFEU7i/f3glZPsZSJgJbE4g8HX1g8Gbfq2DRQQvurFD/S5eIiACC959ql0NGYLKXJ84LS88Dh1Zb54YasO+GqHjD0eC8oOdwnALTzIoCa93Ya3E
+yxjgjB8LnutemMJlTsCdi/5EYxGftm+9deuCMFhwX0DFE1mkWejoGJ6mzkcZg2RTR3kLbS0YqTFdov/wOYnObsMeIiB6BnYG2lEUDY4wK6TVB3m+yGI3Ds1qzf5JUCzvGmeDeaa4qiWl8RWtB6q0xTfzVE+xD+NJoaRgEZ4lZUdoJZTiW0fF
+3M8JKNpyfJEuGILG9mbVFtQUYQR24A638v1zV84u1e14saEpyitnx8SsK/xdgBhehI0u+ZLSlpCGQwP0OSxwrGyBgzUswtfhKqwLQR47YFIj5IprXVwxMGN/lI+tCltMI5IdJyDaTWXlf+3aEUMAb5cnoYYZkex2Viq5W2NLQEprotROBb5M
+OuDlhwJdZzT31ktElWoPh3Zw94l6O8o+m0lmUKC+Jsa6eycbn25A7P227WJMHQOlK7dTaO9J2H77/LYJml481ojBKsPkot4tTG/zMa/NHd7DN1FeREYDQ7ddoOaawuIVziqsmMMMt1ou+RXs39wRmQXc3DNHsrWR89Xs0jEJFtMC4H7k/+BP
+xe8gmzOYBsORRUg/MEvqwLQL/DgMVU8tVJFNE7AcCFpHMLZccIF4PUZpJI+hugwe1O5Uz3nB/NgZaTOKrTg63QOKB1bN/CLFM88glUa6H4pFiJCcKdD0veefdhLhla9YkxElE8EytJxESCM51ck57yKc7m4zkNxJssa4E9Rj8UBz2YNUcrHK
+V9Pl7d6e850GYMAJPgsG+tGU9/3rLZDxhzMzoy0ZzNzclXt93lfgUq4hnKlriWE8XS2wG5qjgn18KcDnKK0U/ZCFHntVWRCyAKlTMwg6YViXvp31C5OTdCR2maWcEH9Tim3gterNKA0WHsetlv+KfqPgGopdm2gGr8j7BT7HNxo8wIaV2Q3e
+eIJlwcJ1Xu4c+I3Wj+/ftbHyrn73/iMVUDgVx4NLmdLhG3SV37TvWoLzj4ZhFC1T3cVSqrXT9KuYKTPJKlVsnmpKM7zM5K6qQh2NhTFPSN8LaENFQddvS0Kv+B2gtw3lJaw4J+E3xI20o1Rxzo9WfM9DiCQkMasO8me20NITUJc0l6N8KKv5
+6ywUyDqRK6IBMPU4VtdW5AQKi/s585Jtqlgtxvw0waBRKGOSfktYX/Ss/RwNRCpHKMrsPX6SdBzLULB68UDEZT7Rq8BX6S2QfuD8vO0Y+4zjnW7rXg9rMhofjhxN7wI+jw1l9w/3/j/ZlbdmAJMABM2isGH0Wm4JsPfp8kNnLoXnfRu7S/L9
+1GUWJezGw91LdtwoHihkafj+plN8u2t6LMj98txbccdOzcqqROVHNKbWD72XeH4ry87tQx5OYKu6DJDNzxkd3sE9Oa/lDOBJ2jGxew7gjDEoEcLRuphAgvBRuI8vRL2Q1XYDKNIpm9l2HEI7cTQ3B7G7yUtQ2ClTN7tdjlnLphV3F1RHxlyE
+mkybkg+A/JUTaePcmLFx+PNdHyGTxLBoXkKl33+1uIkXRJoLAaI6/JjltGulc2umw1OksA3Z0CgWmZOX1JsA24NzFClKcQHEymjbVy/eck7uPdLVHL8P8KxZgSPEErwHOn/SGHbpVJYp3g8r9/WGAAAUBUaKJpJEQgpc4mlt1e0Bh9EYDuWX
+uLIEteM5Mf2Ve8TQ/FSiOR5dekd16MRlYJngNAXP35+fpnhZvOzYFm1AR2aqA8gG4I254zb1ws4QN0mEYLH/tN5y7k263xrcR92GvZhCTV1WMeZVRpcM+q5xynbfeovDO9bfBgAut9nqOkp6+RMuxTnW9AgjGbPp0Wfh4ohKofDiAPhrK7Rq
+K2Iyzlzk0MNK0c2mmiltm/gw3s3inrxkVX5BefvkmrtnNsnjdaQmBYLaCQSPMO72nyvK2APvxHQkqBU4tTQ3hepBz+QiZdJIYzVX0TS47Quk4VCgZm74B2/zVE2pvUHx5mftQ/wVj5qfIeLUTl64JfzTCpY2+e71hfnNjICur34LEupV7hsb
+6fP7Eu71jTRw2JZUa1R/mbqJ1HRH+mg9Pq0xWj75d1qhj13EUVP7VsVRj/OqR/sWHkToOjH0u3EGifvhHS6JhTcj9Uky0N0zHAFhkBXnE5kN4FtDiMhvPQqdMx9Kt+WHh7lnoMcLT4qG7K2COefKzXbbfvtLgY3JCJ7J/f39SJxV1vv2V4DC
+8Ld39bSeiczEoEsYi3w3HcdoiHbwbyWs1bwlHkUg+cxos61C0OG5AOZu23+F1G72XeFDq5NuvTJ2utMmQrZ7783NV7BCtIO5A9j4j7eQJc/8CrlSLb+8Xj44aJzRz5TCTVmdiqiAEESKADFOwmU9BZd6htdueXpfA8rjX/SVlFhHbSEpvLLC
+BCs053Pnl0TRtbHADiYpR69QGsyS+6eVYvlcdwk44m3LCmrTYkYuHFcxUXFD2whUe1S9h9SdDGnbxB3PG8S+KVhKQ7pJWnqfDpk6cz72/lI4PBb/beLhH2NC3Gl/jvN6lAhB2eGfWZrJl42S+d0wM5xaqXQ55ZOayLXsf0qvsXb1EQkxh8A4
+w3wccj2Gh8aUcEykGcahxS9SrYWbQ1eXfiDRzR1uKDYbzczPkgVosSfPj+8Py+Lavqyqp5ZthFlb2Hfddtr62mt/A/Gvr5tUBILJKcia/HFGocUeQpyoWKRgIx55gF6E4s2mx6N82iUW24L+B3By0nOypmszB+vu/v8wFIULGim+Ac5ei0r5
+q15f1SYcHG0w7LPA/Lkq65kHcxewPmZlNS/15M/rQ6U4++ylzh4YDX3xgQDSQiw3oFx2LPpdrXUBRVn3QGAP854W+BZsrxk4hRXihrKAFG+A4pBOk5pdG1T+oE3uFzXVYQpyaHxeL6jnzk3n+MRc994X7BkYcQ5VTTTvsj9xjJ1aXvPY741O
+kOTfBrggJUwwMqjkMH2PV3OTjgm6OCwYQezOwcul2gkO/k6CacK1O/2AiyK/9OukdBwcxyw5uU8SjN8i5A0JUg47grzjH4SfZMT1bEd/guqWjqSvceTpUCPTplsYJ2CgBaMbY9oUvT326I9gNEHAdTyUOmOSWXSfeCk1+K3tIJovp/GFnz5S
+oQrQVLpTt34WpbBBzxL606ry97OchHSMUEUXCo6G3Tpri9LbRC6Fw4HXQGIs4b/hp2USZWMsMqWBj9QbwB4oN44uadNuii3ICs6azkHtkld3Gji5dGbRSqHraImTd+fWeTavQtWI/uRyX2zTfI9Sqs64da9zHK6uH96liA6QMbClX915uRIp
+h2jZJ8Zl21cU+t1XVtu+4eGqTBCsIWkyouh/5sxWyB2JtnGuMU05B3S6kNqLFYrFmI9I54ijypMrXqmZ3RoOv3AwhUoCSaf4x2R1eCv3wfOap3yNYnYsk7FnqfYC95YJZJIQ+m8e8dojtB8SPFcDTiNHnUxFkfwbgpro2vqsVjqn4j+kOcVs
+RQUgxfQ62LnqW46P5lEbXFNQA8x2LzZYy8XCE65uACwb1Z1oZP68jni4OhjXAJ81KpQt1qGqAnDkTPJL3HXVUhpPETQKf9ZtTR5RDdHcPF8Nk/BWEimdevx8DA7ShQDwRtRSN6xNrFQ6KxLrymO4xiA+8CwlZV4NJ7JlHVPk9tatRAi0iFjY
+e1sqd4HyBO86r2tid1Yt9i2ZqNuIdlHD5zhKoSyy0xTpXIpUINcjk6O6XWRSgIMfadCBLJI6APk1LgUdSHC+7Q3DDYbczB/f0JgeL9ot/aUynsxfvUtzHJS2PIl85ae31RwPrFU5jCKN4nFWcfBRpTI7kGgvyFokMlx27pSI5RH6wLNfhaHS
+jc1HPWgwuJ0IoeAG5ybZfwIi5ADJ3v7Ba6aBWqfE5PDoby9q2A8m1Vjp/FGpI5RvltQpFXipNE0owX3Ety8hHyOZzkuhMiHVKnVG9yMwa1FMK0plzNZwAnelt+kpAEfcIM5V7KfjL7jQa4bpsayjf5Pw5wkQfoBBiLOHnuF2A/PX864V3GQI
+usDhrS3/3Wep37VzrRZ535hHRAZFIM2kKCivELn1iO5VVankvxE2H78Fu1fMy6otn/okJIhNBVtIQlN0eqVqBquOG3c3KRIZ3iSRsN1k5FswY3Hs1xyTpG6gzKPOTjGWvF5WkJbw0uJqsz2TAJUAaYnldF7o7RHh+FAAhwDDWZ6Uc1KVUBX6
+X7swHoNxrLHd7N2dZXHS8ilv7TtrrBENbusL/ritfTEAnx15pWfJr/ZlM/GIDPQkRX0vlrNmYxs+S6bE3BQ8E071x/whHBUROEPkHyEwHHxWc3PfAtjpBlNcn4a0xmQuuRgvqZUgU312xe4qjcYhQ8ymqKngTV/tBg6sWCkkTQJ0+PP/bVRS
+DW7XIl58zkEl0MAqpxKDuq6eevyHSwoOxm3nZ21QbfkE1kg9XTS+nWXr+e3gcCaXKl+wAAh7t0LY5NxE/CXb/tfbJjQDHv8A3ntDg2riz2HOHSfnGrGcydNHxPDSB3lIC4zG0trVtvqVFc/+P1NalWqmGyJ9t+g7/lGa/ifBp84La06r+0Fi
+7XEEaT8GPiU5ayUhmOoC9VorNlZ/fJN8ftVYJgri11DGCtgb4eV8xMFQ+blihpT/LktBNkLTg9b+sFj/Z3tXQzcbbFX2WssjKDx85pptXn9fSANiptqGSnSiF/lTQMM18ra4ei+wFp9u91rtb55r727oteBa1jR9wqk2JdrKq7ZJVcrX6x1C
+1Lvsrtq+adQgKwKjWYW7kv+jfJVJUXzzdr08V24Hn7E3HhSfdPekZKYlLt+bX+9ktnKoTanZdTt1AdIb7AZSqVaYWv/cTvIgqvUtBH/Ub1eBTlUgSC+aBXTY9ApfhNt6ak7DEIAhZC9AMeX5Lk+dbCLCABRvVo2puM7cVSWuyQPPgkWriq8i
+Fau12DqVhrxcofb5UG7kWhJHmA5cTQkrFCR51NNOs2Uu7EpXQsXN8zPlaC+EacbG90mfOou2KrY56U+ZHn+1ylZvkN+WI7gUmI6cm7LEr4/+hch5xlkmOEyxTlFMYU8fKXBS/JnqLRqMwtEvWqEB2Ca2Vj/TL5ODzSMkE3QllYr6NFYBRCru
+un+ig9WyDvPN38SwQwBAemzYMvmzbs1aX67nUTO2P9EWYdpfWSOhxzubFtknQYpAiBBWLimyyklIooSIAqstIBm1htQIrhZczsCkLdozRhTuaKkNG8jZ394H1HNzs0nhS0Ksi8bxXGz5LFgx7p4zabSd69NZwB4qvnIe8bue0e+jtiZwfReK
+2ci5jJMuQw/Me0k6Zs0DqI2gOM4gVIE9b0aT4ZA40fCp8AY9k6CfBpIvlLvcowXmLyqj54/l8yOgZ0nbE75Kk3IZ4tT0N8aaFSZyHkiXXeLQRas2VEtwTNnXC00/g3gk77jvcITSESkYLekqX8awU9fhlpKBS5e/psLz3AkSk8iVFTV4yKLs
+sqzdfrMqN/a5LNxrPMF7MUWb5fVqDVDClxzbTzlrXKm9ilq/ErlDlpiyCS5rM6Euz/8xe6EXufi0XRSqLfTb3EfUnWBbAQLRyNcxg93OwRh0JX+s0NBCP65XHdwaZUxQkWU8l+C6vzz8cn6OiMwNXgyYhr0xwBW4V5X/V6H5Ae2Jk9ukbrtU
+Qpcqc9s46ciN20uLcal/J9ByUbXCVOVAvZn6W5L+lsyK6fG/NR+v/heMNjEGsgp3CLWilS2R3VVJBJcM0I5NoQTN8O47qcjaCjkUrClc3+K5t87fa18cyDYUoCD5BIf7CcKcdjgcGMCLV/cTGNXyadjcS9Tui+Sgp7Xtl37Xf1+XZ3P8kVQv
+tnYnkaQ9evma5LBm4k+7uIAlTFR5U0+9Sfr/EsRQlehYGXWH2WNcxlCFoPEm84734mj00fd4WRFA0U51iOgvSRV9AtRZIog5igkEQK3t+G0FlFC1dnKPVeLnBg5nbGOfrQ2i5cBSZCeTBPGFf9UzEuor7FWIPtwNRjSLwWmsJMHxbWYUiedW
+D0HPE4j+cACMzZSgE8/K9buHOwnJjqEPJECGpBzKQCwkPdlhkKNt4k4mXCCFS+eIMHLWd3jjfZv3d+W1beIeWZJday5+C02Qy+CzBSxMeSW6L+ZoejdnbznZcWJBCz7qj4pVdXG9g8KxJbdsga5pMeRzQoZ+V0KEEGTagkv0ghYFPKN7fn5t
+czkvQfJ6X35Zf+FsY8WoCOeJ0zJAPsOv3oa3+c8C/zkJRfLtzSW6b3i6NPHFM3eDQbiIGehH4f/+B8d5lUZsTl1KM875rVn7fgoVHW/ZsHCekDOA7/tDIEJLc3bBMEnwcdNK5NrE04Mw9ApBldBunoruxISOIXK9tALzJt3bdt2XlYtkwa47
+WdqNLRoo0xRAC9KckyGWkyFqBaZVsYuHdpATdg8Ynvr8qh5c7jeBPJncVJB6KSCeZ764wwl1+wWOgJ366QmVYDBCMX42DL5vG+r/4nCqUI2c+BMMOTQQJEls58hZrxENVgsgj+nRe80+xLtb8deV1xUJcII1Oi8VyqKW/mdjpxIAEXVkcqzr
+o68JDD3s3JCeePziJE3llm4AhvKe3a506gGY6FdTpfvM95hM/k7c3IvKLId5tOsrpbGJ+uYnN0kOFZ0nZU+qwIVclgMkwt3M1WXOg8YNsmTtVEqYdYUKkdCJaI+1B37Lxt9fnrk3HCqCAHQ8OQLENdhEWICNICuAirSo/l7RBNePMPlu1DCO
+FYcn2wi70Qk+5+WvKlhBj84RlG9aWOhqnAOHrSdlls4zeO779+Eb3ykpkA2tvCokUV0dbgmN2+da2HX0EZlO3y/UbVT7jkwNRoq4xixSghwbqnBjqNOm5qq24onJ0tLAWfvEOIW2iNcaI4ySsVMt98UJotSlghwtIRhYMhNeApdCA7MJy8lv
+3ScEK21W2AvC+r/cfWxxKNy5ieMLvuLJYmaLn8J414TuPUbOU/7GU/FdybsB6kdtlu8Ga1F/QtL0Ex+xwjT/tBnz44twNcOkgKzVHXpnRSlDAqZDTnoLh3dRKVwPi5+mWRLEejiRnXMvPTV3L4TqIuf6iRD9MYEJxONGZA6WBFYWA0fLVpZv
+u7Uh7r7szPKfIpfBV92+KmdmtaumoNgpdIMjL44RH8+m0ZYOeB8cudEDy7qu2PHqlLj6qRDTmVYcK7OKL9K9+rZrwhldvrveKPAo/Uj61YKMJKk9Yq3k/nVvSLOzTSNCjWkFf82FAsw3o3/kL+PHTgpuubzoEjNj/2t32wKTeJcI7Un4ddK3
+DvQwjyOxes3Jp4r3/ENBWAn7g3rJsGbO4PcZaeC7uQtK7j3o0krYSPtbI9/9tExG3TxsGDsq0wa8uc5891UT4MmLHn8xDjrZZg7mIC3lYBUc6gfbN86wE8aBAYXmHq7wg/ZBAj0OSaazn9QVfScQZC6lea+46ZGOAWq8nBgIdzOWeG/S3Bju
+rP1381dQmdlPxiWR9yA4EYOSSgv9tyGwKIsq2K/lvwe6Pc6T0W7jEZL15sb5fyy71xqVY+4FffH85cIRSSSxJb9AXMWSR1PeF6oaeQ8yV1nScSPduixgHVnleKO+rDbA3apzJJgi1EogCpuHS9V1s8L+un2sj22s/1ljK20OybPhidJFicBy
+4Imz6fB6WNTtIINpK8BSHJjE57l2pVI3TxyQ8fOqaAV/+yOt2OMrBFmJ4Mr4ukRwnw7Pz7prbtO/cCyQs/y2HN4CHfUQjNNFcS7AUfuMwM83scHuHSZggcqD4o0cuBmJHdsWymycOS8gbUTh2hwZXb2zgvPTD1OC6qmHr1+GBUw7pBsgjvg6
+G0frsKJbXZcZTDCiwLCi0G58VIHWzwOOxtYTq/gKg8sqh6T9SrRr08nyk4WJ2Z7J4lYpa2PZmb6+qsLp1Xw8BkO/7FLfyUqjpgaiWMnUWEYpAWQMujLjQcdXyrmvd02ITdjfmsy9vHzSafHFBuwgnwLpItXif7eMejSs03LpfhlSKjkTUfvt
+iuW9gFHPBuHv17VNBginDqont/FCFUQIQmz5cEsX+CW1wMy4cNFAOsdLtp+1cUsVzIeq0w7UVP3FboiB3zth1+KKek9SbWTW9xZ2NO2V5xy4q+IFVjqA6s4e4XWkCLipWySgiwlH5eQk17r6fB+q96h4Tj1uKUDOSM5SfwtjY/iCCFVHYUng
+Kx5vqRuUKSgg2gl9Ozq87QHFV30wL8vIZCNQOumFFsE6YzCEe5FrXFA1H44CAn9IC59eonZeoqEjrvszb1UYHwutnrSptXu/nMZll3UqG8dfKSa0a6dUJNo8b/4mGgvI0UorqDFHBrTi8b/IZkRQOKAKABtG82mLltTYknAh05g9fkzc2B5f
+4wqAPNS+dKGwKk0jCfg9FdNSQ+TfDVht+gqog2Pi1lL3hHixnlBmu36LklbC/8yKCaIWtGlS+k6qtzSG5d+pfLilbFfAwqxTio687Ist1kUienJRQqqMGXlPDLXNRhHRXVNWcr6odk3FOEayZ+vzjYOxmdyU4q4qaOgC2/aJwEU8DrcMa4Po
+3S5QDPj5V9xiZEurVf58I5dhEz0O5rdsdgOZZJz6DfBcwsor3ABlpGXTiMMp0npRLVRR3VG/kUfu+NEBpdeiA3LCY6ARBI6SUvLGMEy3Pojc1fm8XU1+VpS2sTE19AzzNphlfjf5n1ayhJeYmbQUKCI5Ad6i30UBwoi9QbUA0E9HW90Qm+td
+feKVzdiwl7Fs9DH6D27OfSXOOWibHsni5OQiCrARhBv+e+TC7bLHyUwm1Q7O9kfjz6KVRedWPo5jlwrAJqm/hI5e5B/3DZys+hstgK6+DAUMgbX/P9W9IMFTGOUTtOsML9oZ9W8eUB4KLn9UkGRCY3n2Otarvu5jHG1EtfdWTFR2cy+AJmWS
+bxY9ac+gzUYRfEBbA17dZd0LLUn4EiAHqtDo+DJ/1qDEu9XmSFtKu4HXsYrgBCVqjb/h7X9bThqTau3fSYddxpRLJvbL9M6wkksDTZiW0QgD7VfAdGrW/ENAkcPEMLcIhgNOUn+eKLUezG1OBsQFa8qiv565eAaBAUZM3Cvb90QDMjwAWL5N
+yhni+qK6iwIRm7lY2EQ3TTcBzQNOpxFZm0dFDFnRHRok9SgATYtHWjxCL6KDCS56o0PlHKYkcSPp9G8yQdc6M4ou4ySyNMOe/6rI1UICJH7FlwkmRj6u9cpKuI4AjhS+q1nVAiz+dzxGUN5Ij0Egora8wiSs21Ytl6DWw95tRa0L3W1tZ1eK
+ZAgBXNJcOeUbLbn5CFJ/+SEhBhV9K3uP7bG4BVu5zstIUp7ORqUkp7EqJSCQTplY1838qQJ89YlsNnOEtnHsWLBUmQJ7Vp6UNlKqkKIkCxcR8InPbz/IbQYKGBZ+ry6s6yjrB0My54We+qITvJu9++3hey4wNOaSF+Z+tj5bLuifL02gShmJ
+6ENl65tP+Xq7yga0ZMZ4Azeyfj0yKu9DA37PhLLC78K6av9MBANwTxlZajRaXNqHg2RfQItIFYQadIKXi+mYduZS1PtalL6zC0rPAh5soq2k4PbzGW5ZGbkFWQn+1RkPHUGvBebrXACgWM3NFL8eaGHd1r6kLRVTtBHMTuAYHkZ/kc9Rdffe
+xexq+Fgjelw8fXiv/w5tDxEa2aSbb0357bBSE/hYK0c3V8uw+Qib7zz+mOp42pRb+NfjDBS1x1G2VlAoHR1jb8peaxT0/UK4Cw2KG3KvhkdDRVxa4bzpOg41/y1h0xjI5nVx8Ei8RPDYYgJXiRWoX+1iDQyxfZIj4OUWcy9FNLGUwmivT3t9
+xiOpRn/i5Y7JHB/Pzf3A1f0xhREANoFeJDQd/lfzgH6BbazqfhwGITIm6cmJIJTipkdWs3K1o/nQ+Fiz6XsqINECjofviaQ7vCJfSftpDppgNXIZptJ+6FR1RqbBvfEmmmNMaDthcMAW/cCj5XNsyOG8aPNljGuH0zDrM0Hlba9sipOl3EnN
+Cepj/Srq+IyuOgchfXbuLJfjHK/+2NAd9zYANDqm4GN3fYE5N/JDIIs/SpGfrWzmbj96n4ZFrkghrSZ/25jgffHfTdp9juH+Bd8uzSgDHiVPJZyJlTOcr3+NXFSlqxPv1S5wG2zPbenj0f0x7g0sRrm5EjGi5K1n/MZD4jS7PeKqWaosR2Ua
+SwUVsbc6rR8j9CtDusBZAlra0iOUqgjr5oRvZo+NGzBDDSwMvCZmA1kTF5roTIYnOwEVZmZ0jwbyDNVrTM9L0XgWxnQB52eiFccLdg/QZ5gBk6MuP9Z2EsSDR33L5dxFi3f5dguM+X6rsdlMAC8PB9GTZSLcGx/a/CcQsovXO93Z51B/9sT1
+ZgqyGSn5D/aLrzLrvrhU2oXDOUcKPJVM0OlP3fs3UUxtqgXOwMUSxnCrxUQuHaczZTg5QiuibKFnsw+psNnRvCmRk1qIUFW7QS1jnYigpUQyrj8/9ZsaVP49/fVdLcWACDJL/nkir9f50YfSUDfrY5cVNZ/9z45Don1vktCVO4n2P/j1XRxm
+zh27ydsHgQI9V0/xoyTHZ94wR+0kUuIkfQgqsN5CkufQ4chuvD0OUaWIi4RPPwPlL6IeCFOoN+W83RfZ9XpBfQspoeWrF5woFjCVYR6Tk8q3yEjI6PhhfEuBh1P5N+dJ070HA3Q86EjUEuRw6ZPpr0eQOr6v5JINuvQv2OwwxcbK4h45nBhZ
+4F8OQt8Cm/Qz1MRopA1BTNg0UMtz7gaASuUTheyfoB1N+Hy41xmQPr8lly24RU2bQXslUoKD8QhZn430wPUTIqD7tWMRcmy5MLz81K+9TYjsq6rfzixA7TnXsor5dT8hsB29WFMWHQ4OLRXj2rhrxIkptR71/HnzRw6slLD4yYf5aQeiK/3K
+D7sqW27oNn+VuN/0ngbg+J7nKJSzotkZx53NxfO3EpkRQpDAMduX5hu8IyqV9fHW5TkoNa6jR4w9doVDvuNEHnJlJe6C4RcuqgdCsPey1NibpmnkYffAPZGTNN2PVxf7yJxe5HnU0eFN4RiueBHCS6d7oGv0Fdw4l4ModLrjKmnAzB7F+NkV
+INnVVmql8JJdrtbg3PWOZCZhABoEN+R5uOBPzqIrPH8zMvPsOsxxM8M93vLshDoiCuvUoEWW0a+ILhgkIlb7IpAGoOZPfsxtRyytNCqKub2sDhTGtoBT6R9hnGJlplgwLci0RA74Tm1zpbmei3AzLmiuTaAMCOaIXWWFsFpxA2StniCkZkSW
+3XL/m42bPbAmU9dmnxNBgkqW/OOL58fK6VPAQ6dnMMzsH0uQMXzrSdT6OaC2W+HPOWciSMzeQJmZjDOXQqgL/7fp6UkT6VZLIEoeWKPWqpBo/LZjuDgFo+Du8nqAcyCxYdq8mz461D8V5EXLOamGHa59g5Ydk1K6wwWgjkxaYEP0jGK3k18v
+OP3Qtsu6Wl8OYVZql3fNQF468MuQcr0Gkr97Ao+PsUefvBCkXXh0sGIowuFX6BfVfHK5AcdTTQvyeEfap/yNDAK1fACXpetZRy1hS9kmlBiQnjXY/wMRum2Sx81USEa7VwTjssGCgVCfzcAm23lsp0PblF2ro1jdxwcZF1WoKKFc5cMb/iQ6
+DQvI5irk7KayZ0f+QQLM0TBPNqErmkxceBrmTc9vpGcI0rGW9Eqb4P5tqMR7FSY9tN/epom8Un4R709O6E14/+Tx2MKhjBQChAAsX2oYpnlPeljMU2aMHLdQcpBX3t+5v0WkxtMW+W03l7Dww1dd92xYVTV+hoSUhBB85zmHRBgWaa6Ak+Es
+LNERR+FgCJhglCa+CA8Ii84xr7g5EWirxthkKfHg9W94KDsCMExf9pZ4Z2yq58IqwX3YB8dpgOWKm1M+1wFqyIE06I6nMKQjK8kYoJlVjGU9phy5qBWr/wEoiJ8oxppVvSTLXl+nwx7aG4KwAuWgcaQ0gKg/oHVNNXJNFsNa4FVkfvnfgsiZ
+6q7Bfn9tslVC8rV0UNcXEHr1nOe3N0wZ5zHORJyv/W3h8C5fOmgBe4bTm+Ml+88hUsi4PmyhYSYkL718ZlhmjfstqAWaKUz6YPwHfILDoap5mQGWhih0sjdL5V/U4UK/3c1yT+mh6xQE3/2Wc5flOaX3V9DbfT+N+mSQKZI+r7B2fGI+UOh3
+PadlkQMTZBJjvgqM9yH44TmiVKBdY70kyWkEQ37xIXBCGnCl2Sn61JkRo7MiIT6szkpBFYtIypRJuC5NxRaiGwdWWIRDvJQdJedNBLAR7W4sIPc2qhMysGtKSoswdlIdN2NAhA2f5vdeN8NXMIVp+vv642fCuAEhKD2HzLkbUImJNIz/Xzr9
+jg50v9xi5rWHaFOlH/LMq77IAQ64Epd0npjP8agvMre2qwHMtlUciB2CeqE0q6vHQCHjUl0VWErh8saAScjCv21e3jLcTm9k47Sndu/kf9WzmA+gDQ6mgLvuRBkRkZNVBvpxMoqKpU/Q1zQu6G/PB7N/OfmkmY17QOYwAtd6w+giYoOfcf8+
+DUbNWjquryiBfxBAUQJOnQCBLSrHB0Djn0nRcsUW30pPC383rSmzCBeeZOj0Qchc5X7f5rA6+naOt8lvT9AQexzz+i5stURVALY1mRvFlHOoSF+ZBE6c7DBepYmoSnzyMsWq4TtItrF4X04X/tldZURyUTQBWP5UAbw2fBNdh/+AOK6OAX/H
+2RCqO7JvDVcbnJU0Xw6UlITjvtchY6Oq2b3RP4tFhUCM+JSBnjn4mYeaXhoHuSuUEzce2w2eSBJOXYpVnFjJeMoGpvNpD5Ep9i1CH//LTjDF76j+emKknKYOdoTEjCEkwjlInEP9UmHzDHIiNGyjPV4Kbgw2Mjt8m+AeviEpV9Wy4j7sY4SU
+StkIBc0CU/BlSqL3goyqdqj1+nR1EcSBYQRD5P28wltKBfTNpQi4CUosmyaLxSlZd314a+clql4f41ZpYk3NJtdTKjWLFrIWHeCMQwYPgxMPI5EKBGzcoRhjkJAc4MOCh5j/BDPgOES0ZA6efUyNiRnG5nXwa+BOJO/zrRP+s8b0HZhhf8cO
+2Ajvp4GYqlLW+hmUI3v2xtW3lxh1o48L17i2eybL29VDBvg5cXF/gALPcmd7TXvrJznC/tOWQAz5S+t3NNZncKaM4G6ZT0LywUnNhwAY4LrVAYiVtKZpwG8d4IYxQc1jJW+W/gDIGoJAux6b6/l5ZkymUCkvIowEBi55Ik086k50WlBBQ171
+8FtBMEeYI6nGI78gmKO5qqYg/gm6qOifGVvvdQ7eWjdpiw8SD1THJ0jkkE0NFqEOqJQF60AjP8oaKg6zGSgjOaYhTVdVTi+cNKAJ4dUrsTrZgx0jcLR7fi4CKroM1sSLfmdaCXRHBqkz70/6tUqYpCw3MyqDO674kaYCDXit18bCJMDLwVGV
+sH+yyxo0RdMjLcOV9kokwkqt4oafHbh49pDQXwbtpiApcd8mp+7VnbbHkFKHr7gQAI2D9nKljgx/p5JOqlEq4VINFppqv5FDm3X/wx99G5nCW9tAPkfu2CblFMB8EpggmPXlXcNzN1VmThBLLkOMxmWJxx4CWIhcqD506jccGBWiXPO3kQGI
+OlMcrc84RqJn7fCzEk6q4rUBGhP5bJIhNiueU1Y913wbxk9URfSJ9slNJkA1pAu0ZYhr3OOXx05niD8ONUaGvqr/iwM5sI+EV8wVLmV2+Ee+MbcrYGB0FOahZhNVmzJfbRK4sasfhvHMixFj65JtufkZB74HN2PrF3IlMCFqRAxzAE4l0+6Q
+KnZLmKtjCItHlvKI9WFRToT+6U+phelFNnqVBIWJL9l8J+hIL1DDmBZ+lfWkxKcQ8cZi6LFpLY4+KMxpITx2DGZ6zzi+hdS+kduADCC4YmYIXzfQhjpePK7LJAHV7Qu/BJUSz+FheasKOh0tl9cyx2gtgHzoFpfm0iXyO42tG8bsi3/STvVo
+75dEd0EyvAX2LjE3NBcpNcCGjJCaD5a6i8GNzwzT/1PdBWNqdnu3liFuaeVeJTmcNVlEoib2FY0Fpp1wVE7QiNXv5CX2O4fHX6IWHDtzmLxB0uHi92w7ckE3hE7VWBAg2zL1gCGgIG5m0aFgFRNvna048zvbC/zHGimlQTnbihs8aupNCYK2
+k9C0SzA4Ng+WPRQmN9N7jE8H1s69ATPEUKSPFN/pGsET2XD3jGCAQ1EfRJB5T4ASOsXepRBiS7itqpU/BaSn7jFnMC/JIpJ+Fo8E4JG3tc5uJ2usRDXPKMPF9HI9+AUcokirWH3yN4HhXb/njmAdHUepb4rhQxX8oxy+w5ZTMLEhoVvB5l2n
+uz8ubCklnFIeVxdM9OAVRwjHjrClIQeYY7QyaHe5CKZoBEkMkmOciHKh1NpSd8pDi+OP9sdYp9JLZqrl6G7GmqNgBaUv0heO+BHFkDGm0ol8Ed46CQaELuwnJ5s3FiBmtRWuFJ46nXyjlc+G/TXICaJlwmsPdfgNABr7Y1b5L+uOgJVMR8/L
+otE5m3unBYl0e4YY0dkgO8YGC5p+Cq/w55+knzbT+MqFc5kI7+Vo1gqSiTnoJQn5hugv+WinwwVB9U9VkHZ507jvVg8xMdwrb72F9lLoDYdc/XR62p0XD9nIDZUYt6t+MBD+QyjblHrS9gUYTAkxm1RKDn8AS2D/2hUgX54RhLhfR4WNrOif
+g8oG2TeHarx9UWJ+n7d6iEPMDRUTSmp6N5Iiz7zrYV6WgA4qmodzoKr2r3GHa1KObP/Lq1NPpibPwk1mDoGlSQ2t53qLV3BiXLYKdrUfSYSiF+ud2wGnLu18/uhfXiezULTjzExcOAHEnmer2I3NmUYerVXWQXwFJYUtzoGbmkXam3CiuxQM
+FlMQDfXOrKHpsSwctYgE70lHSyE/qa4/vGUboqx3OpDD6DDmnNFwum7qYlIchHSXMwDM+0rKWJznO+ZAHPNYILonpWoL/msr2Ra4dbRFLBlzUXKC1fBHjIZHugP7QEtuLC3sv6+E/KXrC1V/7TidX1E0XMD/bkEwiEYgV5SYZIpB3YMjjFEZ
+Wle2qVh8Sosm5bth7oC5Pqn/qtWq3CKzYULgs2PqM9kDfklkGBRmgeHOGQWpeAPvDwMa4Cw9oa/uBayhpAv7H8Qp3b7U7PPIO3dTcxmiiYocUyAwrfjaDS0/Ev+7/QDmS8Agjd/1yES5MDcExYfWnKhvf+htwUMpk0nZx93uu7NYmW/7TlyO
+BFeYXUvc0BS/yH4k3fiynZxKCJAk6wSOTLSq59HsA0EDnDOuqtBUvaXdP/34hit/JeZnDfFZ1rnfoEjqUQhHOIsm90IafT+4QofP4/z5iwwaw2zBAhJQnjpkIU9h9hxbm2SmU59PlKsZYBeRn+u2Qslc/2EoBaXONn0BUjHCqp9TSoVHVQnU
+3KHgPwrFEckRgxtt4r3WIh5yud8IiaA6x5u6MJZH6Mc0zMbM3tTUld3Ku+reb6hClwZEW+sgj0xeCUbtARpg1lWvj81VMgp5kPqngaPNiZop8FLctD38rpK00BVzLj61+64pxQwoL7zwtdI6MMmgP76IJSL4+mKdhGAgCdQDl1pl6djUIJX7
+lDPHjGAcYiD8QumItU12ecaH9hp0mo+VsPsLNcqDTiPAaYvdozOSk+sgbrUkgcZV/CPr73YDSBAdKrJGXUatitAKi1wpzIPvsbrFGkHum34AJ9QtHCjeNeBNNzbh8/6jI/bFMATXgUFvafQyT8rH0SQeO+HYWGIovVy/fnRywGwr5rViAMc9
+4Ee3dPE1QxW5FWnt0HLCVFP1n1AVD/Kg24u9aJxUkkjmXYA4HZeV5VyDYz3/SmzL9GWEas8fnVE3eSW4QvtB7ICrGzokSI3r2VHuN2op5chgjKdZLFUUY+MDYyIA0FGASWDnxQMyyUe6TDiWSfxNh3GR/QSrLk7C0G+790QPJQkd5Eo5ECCl
+Bfi7vTfV2Pry6mKLseIJ/axGPkf7dzeF3XNK0pTWat5IZ7PevIHobh52hvDK5qpDLA5jkDvF9YXyL2cBRgSJD93X7dBOnEHGg3DsWWPNLHCZkl7yp+1iiEEScXFGupon36dmMLFb6f6ZoSE4aFq3nfISRl3TYjFV5A1GN69hfxNblCkCkp9Q
+rC5UPz/apslauG7thPwG41F9TY58ofOYmM9JxncI8xc1Y9EUvGB7TnMPOc3Jqh4WK0UakrqBseOxfl3qGpp2Z4H2Wq3+BmchnBvvjepJxHnl6gVbPyIAkanjml7KJFQDY5+T3mwI/BINGbzNSaz69XMaRD+bDF9cDBEIL9ciNEPACy03PRm9
+ydATLUKDtRtyrP60zWVNQ3UDzzIZtCsQT7GoUNqo+vf0GVE41vpW6Rt6L4V9PhmFC6g4BKBEZCagHh/l66EXTngO6cs0Bo+I7BXnOt45/ZveM9f9i6vCZvgkTvfxBSwjJyllFh8NyT2vNTwEYeaKdzsHsCFynELO1bl1NNO1H6sRjDCuSQ1J
+T1P3/vzw59vJWCV5l88zynw3zvppl+gmhhchWfVE69NXYva78A7Gb2p8ObBpNEgMDU8UZUhH8YHGIf0+4tIN6cVPuI4XiKyDJXY578z7f0w/9dRF1Wqjfi/cTHS0BrUYRwHa5MpjulfYHS7smwpKg6cwlSMVIkXZD+z4tDiC1VH6nWZMF1wH
+5rjfXUT1Eccp7YLXhBsjNRB4mD+hpiS7upUpIzMkKkEUbr6oN8DIuVm0APTkIGOTaMOY7+tI0Sbp/TtG61lj4pglHv+cuZhZPwLJ/ZBON8tVfOnK0344yqzWYBIsf/53nzHQ7yxb3gHTIzTIFpEhbfsqBSWUqs29aToEmdLBp7oDMicF0qzf
+1V+nSPf7cpRkt0knbdE4NE1z1ImrtWu7gjLyED+CHqpUHzzYNeQP1FPsk9QL0XpgqVBJ9hxfc/hUuWjAafhkE6aCshYS97ZPNakFSSY3YQxV7rAKrnxjY2DuEpCd645Le+bkx2dr54zMRFQwQx6veCnLb/oSz09q6KsTcWAgaw1jeIdESxPJ
+rsGTUAhw8mbJQJr6jh9Y62crkt7zCA6mloqbYIUThGWPGthuJjEKh2FYJv2o3LutJkpB1RLUHoEv2nMeXQi96tUP4uTga4H1mp+TuYVtFueciE74gl2zjrhs/nSLr7Jy+wQRbGlkJHd2m0HqSzo/bSc7R9i1s2YOedmAq0oS1qeaP73Yyzc3
+o4NQotWUiZ56ni/veySzqenvH6x8tUjBFqmayH1q5W8CQTIl5x3yU6w7gfoVzEMCGEobypZpwPy6E0X2EQPOaxj6q3BViBRD+LxWlxj7F8vQrw/Jn8uMVsb6VaAvNBKtj/0WP+OZPkj4BDTeTLEKwlu29GU2kxoi9GL2ZdBBxUJvRLX83QoB
+SMAjONlsRr+rMHsb6rvK8JvLfkkc0RSVkIQaD1xyYqUveoJvAgyaC4ll5kNn8qfQX2aJaK67dh1nm5o11v71HzfxikAzkhs9fScdaJjLsrL2E0y3Q7LMxDRilfQQCy6quAxmnJmF/N8fMsvoYWXvXEn211piMLmTTyj9HBX1vcm2Kcc5oPBW
+tNHqtV7ZlgDX4RBsZaUmScDBXt/7JpVyDdmIYE4mDhPNLyHgqiv4B2trJhO2+nrXQ0pDwOkHZBqylbIhT8Z84VjR3M30l57HBK/Uk4JVAXMER5v7nuVKu3VO4meimEWA704YbdrVk0YI+4oU+/ica0/cWPqtu3zUxHFKWIyGdwFHqKABlY6K
+Ds5/sm6Gpr0YCirPTTQCUEyLVycnQA1aVh5OLq2g/yxS/EwCO05U9d/0f7UmLrjXXa6sMHklYhBSiX5UKWpPuMhuKzo5Nchj1jK3TM5tzf+U08vyJwgLXTbnTfE0vBOoVaN86sj9kO4oGacmOvEj/nOmkb/TYOTViHDY5wL9L9BtGoXCDjU9
+Amro7GBz1GW2MwoI9RgzDE9ehs3OS7tdjFKXq1c87XmlEOslTnzdgmUkihiwK4W1vdTrgHvBKWC5gbsdNLbUvU25oPPD4rxOWzBGVi0by4I+BWRlILRxCV1kDs/CCaLNfzCsTwl+2a+lU0eJNDS6RrJqHVkkJbRGQrct5j31CQkXLMroT9Ye
+uI1fAVmEE6mHlP8nkzc0mo0e34jg02UIBh1taK1gXhuRMLyPhNVr61iCsd6Ms+38JJNn7ObdFVryl5lUnIAfanTkJx5Bi23N0wBrF7ZLzMAQigTIii2EcJQyVo1TDO1Qd3g7ylZmdyQYVvKv+Mxu99vd+mnORCPe9h5uY0Kznaue0NYsBe9+
+OuqUoMm3lUPHVbKNY+wYdr4JZeAkTwj0hwtkgeu1E4x2MlYhp4UhPt+XmYVTfntU7wNPtAc3qKgiGHypv9p7OAablD0CIcmAMqpRGyjhttLIjDmUnO63fNO5TUGT2sfAzPV96PtpKZXeCbOt4jHBNMSsST4LnS4Doo/dUGuzzpTlXehwwkKa
+DTxEN0MHYDt8uK5to5bmA+dgGBEA4i8iRwsihLyyShY/+hPbzHrno4U7bUL4zVziXqSSXs6M6WwxP02jKNPUguKBcw/0C3V+4pdMk5xubufxVbvsKa+zdwiXD4EWN5hteAX5Im/Scm/lHVoOKjRE1svtjo12qjtu2UqBNd8TILVG1Dewybnp
+oWY4vCnncjnXNfSvsQiKvzXR2wX/+Mnilqroacpc16tara4PaxAxVkw914oXlOlqr/Dd8D13NnZBr106HBiMRpKwkZQMYNA2LI+q8WK+hahunMAP6uSxaMNQKAuWk+oNjqv6wRLzyq9i8q95he7xaRDhuoOUMySUDKoi6v+EwhAgRksfwpqJ
+yGOc+jmR+qGDBmKKaVEaVY4Iw1VwBdu7b1/zMzAKNd+5pTqGgZlFkPYUuH8U1KypZ/fIIY7lN+DmBNo5O9AFQvjAINFElnjlZsYcM0MX+/XfqGl9NV0AAAGSWsQ0rC6KqHcMW+ZPfrbMgcipwol1cnkJLXOYR5TFThteq4g2x19O39hTxaEj
+nlWduQLiHyg/A//ymyfzR9jV5PIWEnpsjZKU7iqhln+gBoy5GMDB3kkHqRzHXV1//TX9U0tuJKrTyu01MxJF4EMFJYa2SnBPZIqdf2xYyr4JMLiWc5xR92s/AxaCywD1w1P2JlfoLH1Zt9zT1C9sqnPc8GcNN5FYBUhsptlyeY7nu91LH1Gq
+4RusCaIaJWIXnQRLIXFiFlstlf/BoWePlIxVcJhvZAMJ1VvoBYnpRBYAq10uNo5CorfBTQbcy8JVpUmBVrZECvjEaZACH99k9L/21ChooLDNd6M8xjPyhi8Hcx83tKZtiSexX9NtmoI6MCzvmyEmvQFg6yEz/sHVljjxYZ/Oe7KSSy8dA5YP
+YjnvHeZDOgoPM266Qrp0a7Pxc+DwvJA5wkuNC3LVdSkvVBL4QJR2qdx4sbNHMrNkDW75Ir9KIb6lnF/8xML7NLz7Y/71QmqIuclL/KgMlfynW4V4Weay8B1aCyAUas2EuSFhSoKlcs/6bLCoDFkN+f2wiCYr1r+ru+u0QD+7jKFF9tjFAk+W
+X6I9GhYZiRVVfrkfNkUceFKalWXtWyyOrx2dsAIZOCJNcNnUx3q1P923bobjZg9wkTfh2sNkf2REHrdgT25TE2AqIYJ/zgEiFwuFJaeM0EPdpMWNIrpYwGqDJ7K4BK06+Bf28lGW8Ka5HEuusS/4nw0gjUVFVf/YMuB8++pAGGdahaDOxSw9
+TyTAAKtn9KaC58y61oyX8j6fUtc+1koEY3+Jwh/RhIeVSxv0lbGJxa6DPKoqq+KRTpdsq5nPkBrU2FGtbCQn4TtH3v4CRW3+h+zQeSKzS8o+KfSCUTdDdyy6JiGJ8DLXo+NlLXV2C7o/k9uKWq5P5gewDn9cRIzyTPQjz6Cj4AT7/Yvacczm
+OAU74fKHS3b6EZHl4DaJCA5DtWhTKgVd3ZMKzH0zQRFoLeKPJtVXk+n/LpchcV5xLNJ3C/5pSCPnrabCLnEgN1VIUOOMS9uclsLkYNcS/aqsnNZrNW1MAb3Wgyq+Sm5TTHs0dXSg6RzK/fpwc2yVjy48eCGHrrzkr9T+A77GqyZ2bRYzEuhI
+4bHVjRHrpGUobWwGjNzlb4CjUAL63QtsQFgdOKm6hxUS5LHQmygDVk+4rWndkv1CvjzyjeAb/McMYwYCzz+odMBCyBgt8oAG/qlimUGUGWtxQrVZ7A9PW0K5l4vgUF+88plqrcNJDMAdHM8AcCbRWGkJMglfz7WeIUTvXYFNrHq14WqevFIV
+jXk1PwCg3Sl9Mv6gJvRnXnO3JhKdmYgSO1njxNf+tKUqkNtCDfRnPs0poFxX4AwxT/9QRuhqrehZT7QYj9uyggPsIOqY2fRQCx71A7Z4dvVVwWMzFS/HQicZfIqtWPI2+/809GA8g2eqR+JFslCPjeqyZIRZ/9gWyDOVif9yxWbOI6FQE7nt
+B8B8LdPfe5yZiHsWoN4TuploYUAFcsZOTaHx4hU+z3GiKOjhmy0dVfqFtS5sH8SdBu6VYA51UPBZesA5vbQnDfCmi3fcm9i4bFdu2UlldQPEArW2WzgWYhA/purCMP24j8mDZNTelHaP2aLbL2F30ZOjZJVKyrKEPNCiTJ55lxYa5c6NfY71
+5ASOdzfGYeCci/U5FIpyy4kOWQkOIl50WYwcSk66Bh1EJFT0kCVKXskznG1Oj3xqmoI3IxVM4nry4BKBq/A0qhNjHTplyTaCI8WYxXuB+5f1vD8TbyReRxxtqE53fALQQ2cLjLEJC/i9wgWA+IZ8FrNlYc5xvdCqiGoBpEFIjudpjJZvWWcT
+hq2yQc5vPKqxeCNf6sMuG4pE29L1RykuDCBxI7uMiZNbMlzdDSoXBwdf3iKAeE25tMSMGbiRw59Avw3O/YVzQcwHq19wbLn6crCl99zyPi2z6XDdJxBQNqJomQUCk4YlnhDo+1ep4hZEZsKzkcFeyxd/TYO3akAfyYRLZS0+zLrE7laqSFdE
+/D8rdxg+7YTMRh9/QfPhZj1XlYdt3d1bEL39G1urzw3IApi5vJ8LLrnyhoVKcsOthVbdVsdGBTIyh17ZspdGg07RqbtNxrnpv+gfcxs07Z0e9G6vtQJfo3RdX0sgp5mhOhU8QE3Z4cWod4m4iAg3Ym859Wb6KAnbtBTSd8ERcSCHLblVxGK4
+mjYF0Hyc7LECsNrzriXdZMuVKfN3rtMDATZGcBUVwW2uUu0gziAhJXJP4OqUN8Cjb0AAqGcCYideQB/vKezclh3JafdvcC6OVs5LGinuHu4wyrKh+Qo3zhezRdt57kTGrpZuKHl9zGymhxrXhCAUgst7BKpTf3GJY9NkONapR+3cKUDnLQ1W
+dcaxS8ndbHHN7tZKNou3OtuMDNSMOhleroaoLThTsLq1xJJAZMPCw2Jpf2zoyCQ85RIlWycZR2PCgUChv6APtL0myqNvZGxRQQqfgrqInvZ6tT1crvgb31mu9pVNhTCW1yeMhFcTgBmT6TjbUOyu3ioc8+UmXjcCRX63nCwWFmaN+S11wngf
+xC1ABpDpUxYuSKTCJyVWjt4zU+o6DqOXtm7NmR0Ag/nmijuWWR2YWrHhElancq/bsQTriEX0izm6DM5pP9cIdVM3o/BPz+nVafMUqs0oiIsT01vnQ24Mst9SRD+u207C89wcoLroH4yo0kQHej/MWujqXkLu0YqVq20eH9E8tl25aiOh9v3c
+OpZZ6ZiPQ606K3VbvaCpYLaVf9Crj4teenO/TAQXp1u1RSvvt7BwIilHOf2AftAT6zhV+86/UAcbCrG1PsxPgi94IcCgykyG83jxyKro97tNzN5IzpizdvoKoB9KC6T/kOU5MjClDs/SZrnUy4enBKvAwOFtrEyjiRJ9VjeomIWUCT3qhlJK
+zX9uAm/5mId1SxvvUC0iTIm1cpn2m7UJvbtffV1oISM4KzdC/HLIIIBjuCUOT6gBA5YvUEy0lRFfajHTpTt3/gZSLfD02n3BwhBBBzamj7yk3qW5GTPh+htEGFtItc3Q2+6/mqNFLh0VgIaFLyMBlbuvaxilbkKE3YL+2/xEVkTgEwNoLiS9
+o66ofKA8hyxZw7NaYvU3cozAJUp6uj6qg2hha6JQqMwctgpFoEjKbqqTiaygwT1HeYrt5mQ30YfY7BXqkjNmvlC7Gwp7eKdmSUWY0AwVsmAp0VC/HhLmE3HYRAzX8UJQy5sYFp+Sc/mYstj0irzisncvBUb6ddffm0l5vfVc0kV88bkzp3aU
+83gPTRRlLldlggk5DG16I4xsWX9HiGJi6SpK4afbk8acfF76l8qBSPTOqFHXzW/tONcRh7XjORotZTXqUye/N95TudjzuM2x7aLpiX/wsqfCJD/EOmGDaAtF84L+CCUBq4RyU/+FbcDf8VAF4wYpocKPO5V8v1bYUOxOnXXslMqSOv1vt0KY
+qYSUc2a4IanewygfibWwkvj/3zuQ75uNmBwG9uBdTcz90YDHe8IFa13Lijx4ku7PT1LJMhmZDgn33PpKX3PD+4+NQNogmAcNZbXdHoUti0aLwKAhZ0n+uYf1ssNlU92vLGPeDjQXbnjcFQXnw0b7T4vuK3Cr7LskzMYscXzkHUEe47G4jrv5
+u2nf1omZ6iZdxvbsG7z/oQV65LnTQrdG8/N8DasRSJ0NLlSoKtabgiRTnY8ps+yPBI5S/N4IXypuIu5eVMfrmOi65PydRQ/MuiRdki80TtnAnogkBFKolTrZLyQM7tS5bH6nhb4004Q5BtX0kjf+b2dt34rsxqZ9NHltcVV+P1WkWzCjKiVs
+4JhCmyOruI3xZfbhDfrmkJyjL1j6NSclT0i8/dOuuHMQ2tOub1DFPAKNP27gKHT6Kj+Q1kIpV/W/4pPVQ3qQf4dDIfEh4rrIn2vX4Zn0OlA+phb7XOjQwswMnqTFkCZl/UytKDI5mBfRgU/e30ewDTUtX5eEPd2wW3s+AtI81sTm8FcDZh+l
+Xs25BhAFsJ8jR22kfMVbI3Jpo3wH9VOhIk3goZC59nXJWpJutpVGn0XAwg1uPAka8zjTkmJYbAxwpkEOeo+/MvVEoiEkLxLuW0v+KCQzF2DBhJ8MtDzczoXp391xAilwufev6tdO5WHJb+xIhMDgNAIzf+C3awMVjiVGFWx6ZTngU6L53GMc
+NI/lIzgZei+tl+zEgvRpz9LI8AXVV4vNvBykTvaM8LaMviBeaP7Qaeerri5KGL3Pjs73wdhCU8lTTwRIaku06l0na0tdYUEcqj8JHBp4SnsHTbd9BMaVcz3nZAgy+G9/tWEvFRXpkDB3rFMY7AnXnWXc2VjpKs8xtw+BdCeHdaAKOH5i1kdy
+uhzEzPiddShVmoG81Ny/Bo6VMCVcDC1OA3C7vMfzUF7KMU0P6cUCs1asPgnNxqgRyZbTteiCGf8421nv+sRHbp31RaZ8bI+xPflUVYQjUhsfi1g1ZQ73oh6Zw6z/VRm6Z1cu+na5ASms4/C5FiDzRdbbIqj6V0gxH7zq5nbOeTT//g0R36FD
+d2E5p3/DrCiDwew5HJhZC63rTLQqREQMd5EgtND4qJm3AhdvonShMFE/QVfxjzX9S3gcngT9P0vHEB2ooDVmK7wjye5tFP0RVTNY+CkT94/AGp5IC6We1rICTIXEMRBh2FcSrVhLimJZWuuNFkFssseXedkiVRlUT3Mv7UIYh1Dy3sSlUQof
+cs6BB62D2nVrL6z/c6Al/1vLKNtLx4yq3WabmrvOxrbPBZNC6xXFYeX7BMeifc26b/vHzN2PxyfWJxqsbO1iw1uj+Hqs80ftlB/Ck/M71q4zB8ptNnKJnf/dqQlEvMcCB4csPoi7M8vNrJMaurh6wtTC6OTTf/YzXNdbvsEXuv1sU/sW1Y0l
+j6tJ6wagiAWj/9EpYyYNfhrEoCj5HAyVlpeZohfowVELtHY6tAIT/3SsRH1ofE+XyLUGwpStbyWapVnEcJ5pPdFi4rz9vwbejOMQhAojT8Vqt0E+zGps7pG9cIpUKWlCyfZQ5pqcL+c60Y3TOHtnPK5/uMctf6h0mJ8TZKchU0SRHBNE/pRv
+L4jpUkKwdAhHl0wo9CDss2+gVp6B1k1mVmc+zGzn52/ID75yltde0EY61LzxKZRqAzM0OO18YixxZoAyV28M2jlbQT9n11sh+IZpVSyVdDd0x4drXIZg1t9hzF2l0Gr7BwrUnkVGKQiKkU5AHpl/oesl2oI1Y4fmXP5VFaY9hxvl8Ho+Sc8z
+xZ9hJ90hg6LGGyUxfJNYnTsMtmGRbD7hZ1SZPQXz7DMbACQ4AAKVc4KIXIm1SAAH7lAH81gEJA4E8scRn+wIAAAAABFla.
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/src/docker_helpers.py b/examples/autolab_example/tmp/cs101/src/docker_helpers.py
new file mode 100644
index 0000000000000000000000000000000000000000..b6fdf76538c9cc454a6dbf3add2d9deac58e8310
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/docker_helpers.py
@@ -0,0 +1,146 @@
+# from cs202courseware.ug2report1 import Report1
+
+import pickle
+import os
+import glob
+import shutil
+import time
+import zipfile
+import io
+import inspect
+import subprocess
+
+def compile_docker_image(Dockerfile, tag=None):
+    assert os.path.isfile(Dockerfile)
+    base = os.path.dirname(Dockerfile)
+    if tag == None:
+        tag = os.path.basename(base)
+    os.system(f"cd {base} && docker build --tag {tag} .")
+    return tag
+
+
+def student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination):
+    """
+
+    Use by autolab code.
+
+    :param Dockerfile_location:
+    :param host_tmp_dir:
+    :param student_token_file:
+    :param ReportClass:
+    :param instructor_grade_script:
+    :return:
+    """
+    assert os.path.exists(student_token_file)
+    assert os.path.exists(instructor_grade_script)
+    start = time.time()
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    sources = results['sources'][0]
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+
+    gscript = instructor_grade_script
+    print(f"{sources['report_relative_location']=}")
+    print(f"{sources['name']=}")
+
+    print("Now in docker_helpers.py")
+    print(f'{gscript=}')
+    print(f'{instructor_grade_script=}')
+    gscript_destination = host_tmp_dir + "/" + grade_file_relative_destination
+    print(f'{gscript_destination=}')
+
+    shutil.copy(gscript, gscript_destination)
+
+    # Now everything appears very close to being set up and ready to roll!.
+    d = os.path.normpath(grade_file_relative_destination).split(os.sep)
+    d = d[:-1] + [os.path.basename(instructor_grade_script)[:-3]]
+    pycom = ".".join(d)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    pycom = "python3 -m " + pycom # pycom[:-3]
+    print(f"{pycom=}")
+
+    token_location = host_tmp_dir + "/" + os.path.dirname( grade_file_relative_destination ) + "/*.token"
+
+    elapsed = time.time() - start
+    # print("Elapsed time is", elapsed)
+    return pycom, token_location
+
+
+def docker_run_token_file(Dockerfile_location, host_tmp_dir, student_token_file, tag=None, instructor_grade_script=None, fix_user=True):
+    """
+    This thingy works:
+
+    To build the image, run:
+    docker build --tag python-docker .
+
+    To run the app run:
+
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker > output.log
+
+    """
+    # A bunch of tests. This is going to be great!
+    assert os.path.exists(Dockerfile_location)
+    start = time.time()
+
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+
+    sources = results['sources'][0]
+
+    if os.path.exists(host_tmp_dir):
+        shutil.rmtree(host_tmp_dir)
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+    gscript = instructor_grade_script
+
+    student_grade_script = host_tmp_dir + "/" + sources['report_relative_location']
+    instructor_grade_script = os.path.dirname(student_grade_script) + "/"+os.path.basename(gscript)
+    shutil.copy(gscript, instructor_grade_script)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/home python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    if tag is None:
+        dockname = os.path.basename( os.path.dirname(Dockerfile_location) )
+    else:
+        dockname = tag
+
+    tmp_grade_file =  sources['name'] + "/" + sources['report_relative_location']
+
+    pycom = ".".join( sources['report_module_specification'][:-1] + [os.path.basename(gscript)[:-3],] )
+    pycom = "python3 -m " + pycom
+
+    if fix_user:
+        user_cmd = ' --user "$(id -u):$(id -g)" '
+    else:
+        user_cmd = ''
+    tmp_path = os.path.abspath(host_tmp_dir).replace("\\", "/")
+    dcom = f"docker run {user_cmd} -v {tmp_path}:/home {dockname} {pycom}"
+    cdcom = f"cd {os.path.dirname(Dockerfile_location)}"
+    fcom = f"{cdcom}  && {dcom}"
+    print("> Running docker command")
+    print(fcom)
+    init = time.time() - start
+    # thtools.execute_command(fcom.split())
+    subprocess.check_output(fcom, shell=True).decode("utf-8")
+    host_tmp_dir +"/" + os.path.dirname(tmp_grade_file) + "/"
+    tokens = glob.glob( os.path.dirname(instructor_grade_script) + "/*.token" )
+    for t in tokens:
+        print("Source image produced token", t)
+    elapsed = time.time() - start
+    print("Elapsed time is", elapsed, f"({init=} seconds)")
+    return tokens[0]
diff --git a/examples/autolab_example/tmp/cs101/src/driver.sh b/examples/autolab_example/tmp/cs101/src/driver.sh
new file mode 100644
index 0000000000000000000000000000000000000000..05a006e95e416fa5d5088f1d61479f73901588c2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/driver.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+# driver.sh - The simplest autograder we could think of. It checks
+#   that students can write a C program that compiles, and then
+#   executes with an exit status of zero.
+#   Usage: ./driver.sh
+
+# Compile the code
+# echo "Compiling hello3.c"
+# python3 -c "print('Hello world from python 2')"
+# python3 --version
+python3 driver_python.py
+
+#(make clean; make)
+#status=$?
+#if [ ${status} -ne 0 ]; then
+#    echo "Failure: Unable to compile hello3.c (return status = ${status})"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#    exit
+#fi
+#
+# Run the code
+#echo "Running ./hello3"
+#./hello3
+#status=$?
+#if [ ${status} -eq 0 ]; then
+#    echo "Success: ./hello3 runs with an exit status of 0"
+#    echo "{\"scores\": {\"Correctness\": 100}}"
+#else
+#    echo "Failure: ./hello fails or returns nonzero exit status of ${status}"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#fi
+
+exit
diff --git a/examples/autolab_example/tmp/cs101/src/driver.sh-handout b/examples/autolab_example/tmp/cs101/src/driver.sh-handout
new file mode 100644
index 0000000000000000000000000000000000000000..05a006e95e416fa5d5088f1d61479f73901588c2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/driver.sh-handout
@@ -0,0 +1,33 @@
+#!/bin/bash
+# driver.sh - The simplest autograder we could think of. It checks
+#   that students can write a C program that compiles, and then
+#   executes with an exit status of zero.
+#   Usage: ./driver.sh
+
+# Compile the code
+# echo "Compiling hello3.c"
+# python3 -c "print('Hello world from python 2')"
+# python3 --version
+python3 driver_python.py
+
+#(make clean; make)
+#status=$?
+#if [ ${status} -ne 0 ]; then
+#    echo "Failure: Unable to compile hello3.c (return status = ${status})"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#    exit
+#fi
+#
+# Run the code
+#echo "Running ./hello3"
+#./hello3
+#status=$?
+#if [ ${status} -eq 0 ]; then
+#    echo "Success: ./hello3 runs with an exit status of 0"
+#    echo "{\"scores\": {\"Correctness\": 100}}"
+#else
+#    echo "Failure: ./hello fails or returns nonzero exit status of ${status}"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#fi
+
+exit
diff --git a/examples/autolab_example/tmp/cs101/src/driver_python.py b/examples/autolab_example/tmp/cs101/src/driver_python.py
new file mode 100644
index 0000000000000000000000000000000000000000..ac69f8d95b6e5fe2d25d6a08fe0edc51aca88000
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/driver_python.py
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report1_handin.token'
+instructor_grade_script = 'report1_grade.py'
+grade_file_relative_destination = "cs101/report1_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/src/driver_python.py-handout b/examples/autolab_example/tmp/cs101/src/driver_python.py-handout
new file mode 100644
index 0000000000000000000000000000000000000000..ac69f8d95b6e5fe2d25d6a08fe0edc51aca88000
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/driver_python.py-handout
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report1_handin.token'
+instructor_grade_script = 'report1_grade.py'
+grade_file_relative_destination = "cs101/report1_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/src/report1_grade.py b/examples/autolab_example/tmp/cs101/src/report1_grade.py
new file mode 100644
index 0000000000000000000000000000000000000000..43da14b77ba5b271afb542e4ae2e098397dc3fd8
--- /dev/null
+++ b/examples/autolab_example/tmp/cs101/src/report1_grade.py
@@ -0,0 +1,3 @@
+''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
+import bz2, base64
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs101/src/student_sources.zip b/examples/autolab_example/tmp/cs101/src/student_sources.zip
new file mode 100644
index 0000000000000000000000000000000000000000..05c4f8a40e320734b494a8f9a64e6f69cbe83561
Binary files /dev/null and b/examples/autolab_example/tmp/cs101/src/student_sources.zip differ
diff --git a/examples/autolab_example/tmp/cs102/Makefile b/examples/autolab_example/tmp/cs102/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..8cef2a8073c6d0899af2d35f9d3e5546ef3c4e16
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/Makefile
@@ -0,0 +1,51 @@
+#
+# Makefile to manage the example Hello Lab
+#
+
+# Get the name of the lab directory
+# LAB = $(notdir $(PWD)) # Fail on windows for some reason...
+
+all: handout handout-tarfile
+
+handout: 
+	# Rebuild the handout directory that students download
+	(rm -rf cs102-handout; mkdir cs102-handout)
+	cp -p src/Makefile-handout cs102-handout/Makefile
+	cp -p src/README-handout cs102-handout/README
+	cp -p src/driver_python.py cs102-handout
+
+	cp -p src/student_sources.zip cs102-handout
+
+	cp -p src/Report2_handin.token cs102-handout
+
+	cp -p src/docker_helpers.py cs102-handout
+
+	cp -p src/report2_grade.py cs102-handout
+
+
+handout-tarfile: handout
+	# Build *-handout.tar and autograde.tar
+	tar cvf cs102-handout.tar cs102-handout
+	cp -p cs102-handout.tar autograde.tar
+
+clean:
+	# Clean the entire lab directory tree.  Note that you can run
+	# "make clean; make" at any time while the lab is live with no
+	# adverse effects.
+	rm -f *~ *.tar
+	(cd src; make clean)
+	(cd test-autograder; make clean)
+	rm -rf cs102-handout
+	rm -f autograde.tar
+#
+# CAREFULL!!! This will delete all student records in the logfile and
+# in the handin directory. Don't run this once the lab has started.
+# Use it to clean the directory when you are starting a new version
+# of the lab from scratch, or when you are debugging the lab prior
+# to releasing it to the students.
+#
+cleanallfiles:
+	# Reset the lab from scratch.
+	make clean
+	rm -f log.txt
+	rm -rf handin/*
diff --git a/examples/autolab_example/tmp/cs102/autograde-Makefile b/examples/autolab_example/tmp/cs102/autograde-Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..6271b0eec055d104c95772f298fce53c4638f050
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/autograde-Makefile
@@ -0,0 +1,7 @@
+all:
+	tar xf autograde.tar
+	cp Report2_handin.token cs102-handout
+	(cd cs102-handout; python3 driver_python.py)
+
+clean:
+	rm -rf *~ hello3-handout
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/autograde.tar b/examples/autolab_example/tmp/cs102/autograde.tar
new file mode 100644
index 0000000000000000000000000000000000000000..9a0ec1b66ecc0e3bbf5bb98f2bb21f023ebd37bd
Binary files /dev/null and b/examples/autolab_example/tmp/cs102/autograde.tar differ
diff --git a/examples/autolab_example/tmp/cs102/cs102-handout.tar b/examples/autolab_example/tmp/cs102/cs102-handout.tar
new file mode 100644
index 0000000000000000000000000000000000000000..9a0ec1b66ecc0e3bbf5bb98f2bb21f023ebd37bd
Binary files /dev/null and b/examples/autolab_example/tmp/cs102/cs102-handout.tar differ
diff --git a/examples/autolab_example/tmp/cs102/cs102-handout/Makefile b/examples/autolab_example/tmp/cs102/cs102-handout/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/cs102-handout/Makefile
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs102/cs102-handout/README b/examples/autolab_example/tmp/cs102/cs102-handout/README
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/cs102-handout/README
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs102/cs102-handout/Report2_handin.token b/examples/autolab_example/tmp/cs102/cs102-handout/Report2_handin.token
new file mode 100644
index 0000000000000000000000000000000000000000..2525f056eb68e1cf7e2ffbefdbb2a28282c1a5fb
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/cs102-handout/Report2_handin.token
@@ -0,0 +1,252 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs102/report2.py ###
+
+from unitgrade.framework import Report
+from unitgrade.evaluate import evaluate_report_student
+from cs102.homework1 import add, reverse_list
+from unitgrade import UTestCase, cache  
+
+class Week1(UTestCase):
+    def test_add(self):
+        self.assertEqualC(add(2,2))
+        self.assertEqualC(add(-100, 5))
+
+    def test_reverse(self):
+        self.assertEqualC(reverse_list([1, 2, 3])) 
+
+    def test_output_capture(self):
+        with self.capture() as out:
+            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
+        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
+        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
+
+class Week1Titles(UTestCase): 
+    """ The same problem as before with nicer titles """
+    def test_add(self):
+        """ Test the addition method add(a,b) """
+        self.assertEqualC(add(2,2))
+        print("output generated by test")
+        self.assertEqualC(add(-100, 5))
+        # self.assertEqual(2,3, msg="This test automatically fails.")
+
+    def test_reverse(self):
+        ls = [1, 2, 3]
+        reverse = reverse_list(ls)
+        self.assertEqualC(reverse)
+        # Although the title is set after the test potentially fails, it will *always* show correctly for the student.
+        self.title = f"Checking if reverse_list({ls}) = {reverse}"  # Programmatically set the title 
+
+    def ex_test_output_capture(self):
+        with self.capture() as out:
+            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
+        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
+        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
+
+
+class Question2(UTestCase): 
+    @cache
+    def my_reversal(self, ls):
+        # The '@cache' decorator ensures the function is not run on the *students* computer
+        # Instead the code is run on the teachers computer and the result is passed on with the
+        # other pre-computed results -- i.e. this function will run regardless of how the student happens to have
+        # implemented reverse_list.
+        return reverse_list(ls)
+
+    def test_reverse_tricky(self):
+        ls = (2,4,8)
+        ls2 = self.my_reversal(tuple(ls))                   # This will always produce the right result, [8, 4, 2]
+        print("The correct answer is supposed to be", ls2)  # Show students the correct answer
+        self.assertEqualC(reverse_list(ls))                 # This will actually test the students code.
+        return "Buy world!"                                 # This value will be stored in the .token file  
+
+
+import cs102
+class Report2(Report):
+    title = "CS 102 Report 2"
+    questions = [(Week1, 10), (Week1Titles, 6)]
+    pack_imports = [cs102]
+
+if __name__ == "__main__":
+    evaluate_report_student(Report2(), unmute=True)
+
+
+### Content of cs102/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+4a1695ef1eef9700c3f56f94a20514c7948f8f78b59a251471f50253d05ed006ab3b7e6b459f2a01e7e2851c26d0e6b2482e640c2423c63c4ecb9212b25653b0 28136
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+.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.
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/cs102-handout/docker_helpers.py b/examples/autolab_example/tmp/cs102/cs102-handout/docker_helpers.py
new file mode 100644
index 0000000000000000000000000000000000000000..b6fdf76538c9cc454a6dbf3add2d9deac58e8310
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/cs102-handout/docker_helpers.py
@@ -0,0 +1,146 @@
+# from cs202courseware.ug2report1 import Report1
+
+import pickle
+import os
+import glob
+import shutil
+import time
+import zipfile
+import io
+import inspect
+import subprocess
+
+def compile_docker_image(Dockerfile, tag=None):
+    assert os.path.isfile(Dockerfile)
+    base = os.path.dirname(Dockerfile)
+    if tag == None:
+        tag = os.path.basename(base)
+    os.system(f"cd {base} && docker build --tag {tag} .")
+    return tag
+
+
+def student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination):
+    """
+
+    Use by autolab code.
+
+    :param Dockerfile_location:
+    :param host_tmp_dir:
+    :param student_token_file:
+    :param ReportClass:
+    :param instructor_grade_script:
+    :return:
+    """
+    assert os.path.exists(student_token_file)
+    assert os.path.exists(instructor_grade_script)
+    start = time.time()
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    sources = results['sources'][0]
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+
+    gscript = instructor_grade_script
+    print(f"{sources['report_relative_location']=}")
+    print(f"{sources['name']=}")
+
+    print("Now in docker_helpers.py")
+    print(f'{gscript=}')
+    print(f'{instructor_grade_script=}')
+    gscript_destination = host_tmp_dir + "/" + grade_file_relative_destination
+    print(f'{gscript_destination=}')
+
+    shutil.copy(gscript, gscript_destination)
+
+    # Now everything appears very close to being set up and ready to roll!.
+    d = os.path.normpath(grade_file_relative_destination).split(os.sep)
+    d = d[:-1] + [os.path.basename(instructor_grade_script)[:-3]]
+    pycom = ".".join(d)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    pycom = "python3 -m " + pycom # pycom[:-3]
+    print(f"{pycom=}")
+
+    token_location = host_tmp_dir + "/" + os.path.dirname( grade_file_relative_destination ) + "/*.token"
+
+    elapsed = time.time() - start
+    # print("Elapsed time is", elapsed)
+    return pycom, token_location
+
+
+def docker_run_token_file(Dockerfile_location, host_tmp_dir, student_token_file, tag=None, instructor_grade_script=None, fix_user=True):
+    """
+    This thingy works:
+
+    To build the image, run:
+    docker build --tag python-docker .
+
+    To run the app run:
+
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker > output.log
+
+    """
+    # A bunch of tests. This is going to be great!
+    assert os.path.exists(Dockerfile_location)
+    start = time.time()
+
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+
+    sources = results['sources'][0]
+
+    if os.path.exists(host_tmp_dir):
+        shutil.rmtree(host_tmp_dir)
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+    gscript = instructor_grade_script
+
+    student_grade_script = host_tmp_dir + "/" + sources['report_relative_location']
+    instructor_grade_script = os.path.dirname(student_grade_script) + "/"+os.path.basename(gscript)
+    shutil.copy(gscript, instructor_grade_script)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/home python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    if tag is None:
+        dockname = os.path.basename( os.path.dirname(Dockerfile_location) )
+    else:
+        dockname = tag
+
+    tmp_grade_file =  sources['name'] + "/" + sources['report_relative_location']
+
+    pycom = ".".join( sources['report_module_specification'][:-1] + [os.path.basename(gscript)[:-3],] )
+    pycom = "python3 -m " + pycom
+
+    if fix_user:
+        user_cmd = ' --user "$(id -u):$(id -g)" '
+    else:
+        user_cmd = ''
+    tmp_path = os.path.abspath(host_tmp_dir).replace("\\", "/")
+    dcom = f"docker run {user_cmd} -v {tmp_path}:/home {dockname} {pycom}"
+    cdcom = f"cd {os.path.dirname(Dockerfile_location)}"
+    fcom = f"{cdcom}  && {dcom}"
+    print("> Running docker command")
+    print(fcom)
+    init = time.time() - start
+    # thtools.execute_command(fcom.split())
+    subprocess.check_output(fcom, shell=True).decode("utf-8")
+    host_tmp_dir +"/" + os.path.dirname(tmp_grade_file) + "/"
+    tokens = glob.glob( os.path.dirname(instructor_grade_script) + "/*.token" )
+    for t in tokens:
+        print("Source image produced token", t)
+    elapsed = time.time() - start
+    print("Elapsed time is", elapsed, f"({init=} seconds)")
+    return tokens[0]
diff --git a/examples/autolab_example/tmp/cs102/cs102-handout/driver_python.py b/examples/autolab_example/tmp/cs102/cs102-handout/driver_python.py
new file mode 100644
index 0000000000000000000000000000000000000000..ef526b72b4b833026771966c6c3fae653ea1f70c
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/cs102-handout/driver_python.py
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report2_handin.token'
+instructor_grade_script = 'report2_grade.py'
+grade_file_relative_destination = "cs102/report2_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/cs102-handout/report2_grade.py b/examples/autolab_example/tmp/cs102/cs102-handout/report2_grade.py
new file mode 100644
index 0000000000000000000000000000000000000000..90155184105bf95b700d6eaa30487d9ae8045eab
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/cs102-handout/report2_grade.py
@@ -0,0 +1,3 @@
+''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
+import bz2, base64
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/cs102-handout/student_sources.zip b/examples/autolab_example/tmp/cs102/cs102-handout/student_sources.zip
new file mode 100644
index 0000000000000000000000000000000000000000..4f23b80e2a4ed036191e6513bce179757f1687d8
Binary files /dev/null and b/examples/autolab_example/tmp/cs102/cs102-handout/student_sources.zip differ
diff --git a/examples/autolab_example/tmp/cs102/cs102.rb b/examples/autolab_example/tmp/cs102/cs102.rb
new file mode 100644
index 0000000000000000000000000000000000000000..3a1dd46f68cb737ffa08dce42724d9bb5eab82cb
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/cs102.rb
@@ -0,0 +1,11 @@
+require "AssessmentBase.rb"
+
+module Cs102
+  include AssessmentBase
+
+  def assessmentInitialize(course)
+    super("cs102",course)
+    @problems = []
+  end
+
+end
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/cs102.yml b/examples/autolab_example/tmp/cs102/cs102.yml
new file mode 100644
index 0000000000000000000000000000000000000000..7e0d53bb05e51720df3de35d258e214a06c03d10
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/cs102.yml
@@ -0,0 +1,33 @@
+---
+
+general:
+  name: cs102
+  description: ''
+  display_name: CS 102 Report 2
+  handin_filename: Report2_handin.token
+  handin_directory: handin
+  max_grace_days: 0
+  handout: cs102-handout.tar
+  writeup: writeup/cs102.html
+  max_submissions: -1
+  disable_handins: false
+  max_size: 2
+  has_svn: false
+  category_name: Lab
+problems:
+
+  - name: Unitgrade score
+    description: ''
+    max_score: 16
+    optional: false
+
+autograder:
+  autograde_timeout: 180
+  autograde_image: tango_python_tue
+  release_score: true
+
+# problems:
+# - name: Correctness
+#  description: ''
+#  max_score: 100.0
+#  optional: false
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/src/Makefile b/examples/autolab_example/tmp/cs102/src/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/Makefile
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs102/src/Makefile-handout b/examples/autolab_example/tmp/cs102/src/Makefile-handout
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/Makefile-handout
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs102/src/README b/examples/autolab_example/tmp/cs102/src/README
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/README
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs102/src/README-handout b/examples/autolab_example/tmp/cs102/src/README-handout
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/README-handout
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs102/src/Report2_handin.token b/examples/autolab_example/tmp/cs102/src/Report2_handin.token
new file mode 100644
index 0000000000000000000000000000000000000000..2525f056eb68e1cf7e2ffbefdbb2a28282c1a5fb
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/Report2_handin.token
@@ -0,0 +1,252 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs102/report2.py ###
+
+from unitgrade.framework import Report
+from unitgrade.evaluate import evaluate_report_student
+from cs102.homework1 import add, reverse_list
+from unitgrade import UTestCase, cache  
+
+class Week1(UTestCase):
+    def test_add(self):
+        self.assertEqualC(add(2,2))
+        self.assertEqualC(add(-100, 5))
+
+    def test_reverse(self):
+        self.assertEqualC(reverse_list([1, 2, 3])) 
+
+    def test_output_capture(self):
+        with self.capture() as out:
+            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
+        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
+        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
+
+class Week1Titles(UTestCase): 
+    """ The same problem as before with nicer titles """
+    def test_add(self):
+        """ Test the addition method add(a,b) """
+        self.assertEqualC(add(2,2))
+        print("output generated by test")
+        self.assertEqualC(add(-100, 5))
+        # self.assertEqual(2,3, msg="This test automatically fails.")
+
+    def test_reverse(self):
+        ls = [1, 2, 3]
+        reverse = reverse_list(ls)
+        self.assertEqualC(reverse)
+        # Although the title is set after the test potentially fails, it will *always* show correctly for the student.
+        self.title = f"Checking if reverse_list({ls}) = {reverse}"  # Programmatically set the title 
+
+    def ex_test_output_capture(self):
+        with self.capture() as out:
+            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
+        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
+        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
+
+
+class Question2(UTestCase): 
+    @cache
+    def my_reversal(self, ls):
+        # The '@cache' decorator ensures the function is not run on the *students* computer
+        # Instead the code is run on the teachers computer and the result is passed on with the
+        # other pre-computed results -- i.e. this function will run regardless of how the student happens to have
+        # implemented reverse_list.
+        return reverse_list(ls)
+
+    def test_reverse_tricky(self):
+        ls = (2,4,8)
+        ls2 = self.my_reversal(tuple(ls))                   # This will always produce the right result, [8, 4, 2]
+        print("The correct answer is supposed to be", ls2)  # Show students the correct answer
+        self.assertEqualC(reverse_list(ls))                 # This will actually test the students code.
+        return "Buy world!"                                 # This value will be stored in the .token file  
+
+
+import cs102
+class Report2(Report):
+    title = "CS 102 Report 2"
+    questions = [(Week1, 10), (Week1Titles, 6)]
+    pack_imports = [cs102]
+
+if __name__ == "__main__":
+    evaluate_report_student(Report2(), unmute=True)
+
+
+### Content of cs102/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+4a1695ef1eef9700c3f56f94a20514c7948f8f78b59a251471f50253d05ed006ab3b7e6b459f2a01e7e2851c26d0e6b2482e640c2423c63c4ecb9212b25653b0 28136
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+.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.
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/src/docker_helpers.py b/examples/autolab_example/tmp/cs102/src/docker_helpers.py
new file mode 100644
index 0000000000000000000000000000000000000000..b6fdf76538c9cc454a6dbf3add2d9deac58e8310
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/docker_helpers.py
@@ -0,0 +1,146 @@
+# from cs202courseware.ug2report1 import Report1
+
+import pickle
+import os
+import glob
+import shutil
+import time
+import zipfile
+import io
+import inspect
+import subprocess
+
+def compile_docker_image(Dockerfile, tag=None):
+    assert os.path.isfile(Dockerfile)
+    base = os.path.dirname(Dockerfile)
+    if tag == None:
+        tag = os.path.basename(base)
+    os.system(f"cd {base} && docker build --tag {tag} .")
+    return tag
+
+
+def student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination):
+    """
+
+    Use by autolab code.
+
+    :param Dockerfile_location:
+    :param host_tmp_dir:
+    :param student_token_file:
+    :param ReportClass:
+    :param instructor_grade_script:
+    :return:
+    """
+    assert os.path.exists(student_token_file)
+    assert os.path.exists(instructor_grade_script)
+    start = time.time()
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    sources = results['sources'][0]
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+
+    gscript = instructor_grade_script
+    print(f"{sources['report_relative_location']=}")
+    print(f"{sources['name']=}")
+
+    print("Now in docker_helpers.py")
+    print(f'{gscript=}')
+    print(f'{instructor_grade_script=}')
+    gscript_destination = host_tmp_dir + "/" + grade_file_relative_destination
+    print(f'{gscript_destination=}')
+
+    shutil.copy(gscript, gscript_destination)
+
+    # Now everything appears very close to being set up and ready to roll!.
+    d = os.path.normpath(grade_file_relative_destination).split(os.sep)
+    d = d[:-1] + [os.path.basename(instructor_grade_script)[:-3]]
+    pycom = ".".join(d)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    pycom = "python3 -m " + pycom # pycom[:-3]
+    print(f"{pycom=}")
+
+    token_location = host_tmp_dir + "/" + os.path.dirname( grade_file_relative_destination ) + "/*.token"
+
+    elapsed = time.time() - start
+    # print("Elapsed time is", elapsed)
+    return pycom, token_location
+
+
+def docker_run_token_file(Dockerfile_location, host_tmp_dir, student_token_file, tag=None, instructor_grade_script=None, fix_user=True):
+    """
+    This thingy works:
+
+    To build the image, run:
+    docker build --tag python-docker .
+
+    To run the app run:
+
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker > output.log
+
+    """
+    # A bunch of tests. This is going to be great!
+    assert os.path.exists(Dockerfile_location)
+    start = time.time()
+
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+
+    sources = results['sources'][0]
+
+    if os.path.exists(host_tmp_dir):
+        shutil.rmtree(host_tmp_dir)
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+    gscript = instructor_grade_script
+
+    student_grade_script = host_tmp_dir + "/" + sources['report_relative_location']
+    instructor_grade_script = os.path.dirname(student_grade_script) + "/"+os.path.basename(gscript)
+    shutil.copy(gscript, instructor_grade_script)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/home python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    if tag is None:
+        dockname = os.path.basename( os.path.dirname(Dockerfile_location) )
+    else:
+        dockname = tag
+
+    tmp_grade_file =  sources['name'] + "/" + sources['report_relative_location']
+
+    pycom = ".".join( sources['report_module_specification'][:-1] + [os.path.basename(gscript)[:-3],] )
+    pycom = "python3 -m " + pycom
+
+    if fix_user:
+        user_cmd = ' --user "$(id -u):$(id -g)" '
+    else:
+        user_cmd = ''
+    tmp_path = os.path.abspath(host_tmp_dir).replace("\\", "/")
+    dcom = f"docker run {user_cmd} -v {tmp_path}:/home {dockname} {pycom}"
+    cdcom = f"cd {os.path.dirname(Dockerfile_location)}"
+    fcom = f"{cdcom}  && {dcom}"
+    print("> Running docker command")
+    print(fcom)
+    init = time.time() - start
+    # thtools.execute_command(fcom.split())
+    subprocess.check_output(fcom, shell=True).decode("utf-8")
+    host_tmp_dir +"/" + os.path.dirname(tmp_grade_file) + "/"
+    tokens = glob.glob( os.path.dirname(instructor_grade_script) + "/*.token" )
+    for t in tokens:
+        print("Source image produced token", t)
+    elapsed = time.time() - start
+    print("Elapsed time is", elapsed, f"({init=} seconds)")
+    return tokens[0]
diff --git a/examples/autolab_example/tmp/cs102/src/driver.sh b/examples/autolab_example/tmp/cs102/src/driver.sh
new file mode 100644
index 0000000000000000000000000000000000000000..05a006e95e416fa5d5088f1d61479f73901588c2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/driver.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+# driver.sh - The simplest autograder we could think of. It checks
+#   that students can write a C program that compiles, and then
+#   executes with an exit status of zero.
+#   Usage: ./driver.sh
+
+# Compile the code
+# echo "Compiling hello3.c"
+# python3 -c "print('Hello world from python 2')"
+# python3 --version
+python3 driver_python.py
+
+#(make clean; make)
+#status=$?
+#if [ ${status} -ne 0 ]; then
+#    echo "Failure: Unable to compile hello3.c (return status = ${status})"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#    exit
+#fi
+#
+# Run the code
+#echo "Running ./hello3"
+#./hello3
+#status=$?
+#if [ ${status} -eq 0 ]; then
+#    echo "Success: ./hello3 runs with an exit status of 0"
+#    echo "{\"scores\": {\"Correctness\": 100}}"
+#else
+#    echo "Failure: ./hello fails or returns nonzero exit status of ${status}"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#fi
+
+exit
diff --git a/examples/autolab_example/tmp/cs102/src/driver.sh-handout b/examples/autolab_example/tmp/cs102/src/driver.sh-handout
new file mode 100644
index 0000000000000000000000000000000000000000..05a006e95e416fa5d5088f1d61479f73901588c2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/driver.sh-handout
@@ -0,0 +1,33 @@
+#!/bin/bash
+# driver.sh - The simplest autograder we could think of. It checks
+#   that students can write a C program that compiles, and then
+#   executes with an exit status of zero.
+#   Usage: ./driver.sh
+
+# Compile the code
+# echo "Compiling hello3.c"
+# python3 -c "print('Hello world from python 2')"
+# python3 --version
+python3 driver_python.py
+
+#(make clean; make)
+#status=$?
+#if [ ${status} -ne 0 ]; then
+#    echo "Failure: Unable to compile hello3.c (return status = ${status})"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#    exit
+#fi
+#
+# Run the code
+#echo "Running ./hello3"
+#./hello3
+#status=$?
+#if [ ${status} -eq 0 ]; then
+#    echo "Success: ./hello3 runs with an exit status of 0"
+#    echo "{\"scores\": {\"Correctness\": 100}}"
+#else
+#    echo "Failure: ./hello fails or returns nonzero exit status of ${status}"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#fi
+
+exit
diff --git a/examples/autolab_example/tmp/cs102/src/driver_python.py b/examples/autolab_example/tmp/cs102/src/driver_python.py
new file mode 100644
index 0000000000000000000000000000000000000000..ef526b72b4b833026771966c6c3fae653ea1f70c
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/driver_python.py
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report2_handin.token'
+instructor_grade_script = 'report2_grade.py'
+grade_file_relative_destination = "cs102/report2_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/src/driver_python.py-handout b/examples/autolab_example/tmp/cs102/src/driver_python.py-handout
new file mode 100644
index 0000000000000000000000000000000000000000..ef526b72b4b833026771966c6c3fae653ea1f70c
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/driver_python.py-handout
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report2_handin.token'
+instructor_grade_script = 'report2_grade.py'
+grade_file_relative_destination = "cs102/report2_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/src/report2_grade.py b/examples/autolab_example/tmp/cs102/src/report2_grade.py
new file mode 100644
index 0000000000000000000000000000000000000000..90155184105bf95b700d6eaa30487d9ae8045eab
--- /dev/null
+++ b/examples/autolab_example/tmp/cs102/src/report2_grade.py
@@ -0,0 +1,3 @@
+''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
+import bz2, base64
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs102/src/student_sources.zip b/examples/autolab_example/tmp/cs102/src/student_sources.zip
new file mode 100644
index 0000000000000000000000000000000000000000..4f23b80e2a4ed036191e6513bce179757f1687d8
Binary files /dev/null and b/examples/autolab_example/tmp/cs102/src/student_sources.zip differ
diff --git a/examples/autolab_example/tmp/cs103/Makefile b/examples/autolab_example/tmp/cs103/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..c96bcd1245ba5f79bf5621999f05f589f36265bd
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/Makefile
@@ -0,0 +1,51 @@
+#
+# Makefile to manage the example Hello Lab
+#
+
+# Get the name of the lab directory
+# LAB = $(notdir $(PWD)) # Fail on windows for some reason...
+
+all: handout handout-tarfile
+
+handout: 
+	# Rebuild the handout directory that students download
+	(rm -rf cs103-handout; mkdir cs103-handout)
+	cp -p src/Makefile-handout cs103-handout/Makefile
+	cp -p src/README-handout cs103-handout/README
+	cp -p src/driver_python.py cs103-handout
+
+	cp -p src/student_sources.zip cs103-handout
+
+	cp -p src/Report3_handin.token cs103-handout
+
+	cp -p src/docker_helpers.py cs103-handout
+
+	cp -p src/report3_complete_grade.py cs103-handout
+
+
+handout-tarfile: handout
+	# Build *-handout.tar and autograde.tar
+	tar cvf cs103-handout.tar cs103-handout
+	cp -p cs103-handout.tar autograde.tar
+
+clean:
+	# Clean the entire lab directory tree.  Note that you can run
+	# "make clean; make" at any time while the lab is live with no
+	# adverse effects.
+	rm -f *~ *.tar
+	(cd src; make clean)
+	(cd test-autograder; make clean)
+	rm -rf cs103-handout
+	rm -f autograde.tar
+#
+# CAREFULL!!! This will delete all student records in the logfile and
+# in the handin directory. Don't run this once the lab has started.
+# Use it to clean the directory when you are starting a new version
+# of the lab from scratch, or when you are debugging the lab prior
+# to releasing it to the students.
+#
+cleanallfiles:
+	# Reset the lab from scratch.
+	make clean
+	rm -f log.txt
+	rm -rf handin/*
diff --git a/examples/autolab_example/tmp/cs103/autograde-Makefile b/examples/autolab_example/tmp/cs103/autograde-Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..340be2e27f2ec200100793fe232185e86790b311
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/autograde-Makefile
@@ -0,0 +1,7 @@
+all:
+	tar xf autograde.tar
+	cp Report3_handin.token cs103-handout
+	(cd cs103-handout; python3 driver_python.py)
+
+clean:
+	rm -rf *~ hello3-handout
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/autograde.tar b/examples/autolab_example/tmp/cs103/autograde.tar
new file mode 100644
index 0000000000000000000000000000000000000000..bb913e78a6cccf5c4d4d99979a1f1213e330915e
Binary files /dev/null and b/examples/autolab_example/tmp/cs103/autograde.tar differ
diff --git a/examples/autolab_example/tmp/cs103/cs103-handout.tar b/examples/autolab_example/tmp/cs103/cs103-handout.tar
new file mode 100644
index 0000000000000000000000000000000000000000..bb913e78a6cccf5c4d4d99979a1f1213e330915e
Binary files /dev/null and b/examples/autolab_example/tmp/cs103/cs103-handout.tar differ
diff --git a/examples/autolab_example/tmp/cs103/cs103-handout/Makefile b/examples/autolab_example/tmp/cs103/cs103-handout/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/cs103-handout/Makefile
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs103/cs103-handout/README b/examples/autolab_example/tmp/cs103/cs103-handout/README
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/cs103-handout/README
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs103/cs103-handout/Report3_handin.token b/examples/autolab_example/tmp/cs103/cs103-handout/Report3_handin.token
new file mode 100644
index 0000000000000000000000000000000000000000..6be6aef2778f106dc78cf7909fde42544a5f3e3b
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/cs103-handout/Report3_handin.token
@@ -0,0 +1,186 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs103/report3.py ###
+
+from unitgrade import UTestCase, Report  
+from unitgrade.utils import hide
+from unitgrade import evaluate_report_student
+import cs103
+
+class AutomaticPass(UTestCase):
+    def test_automatic_pass(self):
+        self.assertEqual(2, 2)  # For simplicity, this test will always pass
+
+
+class Report3(Report):
+    title = "CS 101 Report 3"
+    questions = [(AutomaticPass, 10)]  # Include a single question for 10 credits.
+    pack_imports = [cs103] 
+
+if __name__ == "__main__":
+    evaluate_report_student(Report3())
+
+
+### Content of cs103/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+551383e60aa99c5591ddb4e8ed60c3ba58937d9e732302032caca6a245c82cbfc151362619ca762508d918de8a38dacf6e13bf4e4e05d9195e59847d7c807632 25276
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+.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.
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/cs103-handout/docker_helpers.py b/examples/autolab_example/tmp/cs103/cs103-handout/docker_helpers.py
new file mode 100644
index 0000000000000000000000000000000000000000..b6fdf76538c9cc454a6dbf3add2d9deac58e8310
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/cs103-handout/docker_helpers.py
@@ -0,0 +1,146 @@
+# from cs202courseware.ug2report1 import Report1
+
+import pickle
+import os
+import glob
+import shutil
+import time
+import zipfile
+import io
+import inspect
+import subprocess
+
+def compile_docker_image(Dockerfile, tag=None):
+    assert os.path.isfile(Dockerfile)
+    base = os.path.dirname(Dockerfile)
+    if tag == None:
+        tag = os.path.basename(base)
+    os.system(f"cd {base} && docker build --tag {tag} .")
+    return tag
+
+
+def student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination):
+    """
+
+    Use by autolab code.
+
+    :param Dockerfile_location:
+    :param host_tmp_dir:
+    :param student_token_file:
+    :param ReportClass:
+    :param instructor_grade_script:
+    :return:
+    """
+    assert os.path.exists(student_token_file)
+    assert os.path.exists(instructor_grade_script)
+    start = time.time()
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    sources = results['sources'][0]
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+
+    gscript = instructor_grade_script
+    print(f"{sources['report_relative_location']=}")
+    print(f"{sources['name']=}")
+
+    print("Now in docker_helpers.py")
+    print(f'{gscript=}')
+    print(f'{instructor_grade_script=}')
+    gscript_destination = host_tmp_dir + "/" + grade_file_relative_destination
+    print(f'{gscript_destination=}')
+
+    shutil.copy(gscript, gscript_destination)
+
+    # Now everything appears very close to being set up and ready to roll!.
+    d = os.path.normpath(grade_file_relative_destination).split(os.sep)
+    d = d[:-1] + [os.path.basename(instructor_grade_script)[:-3]]
+    pycom = ".".join(d)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    pycom = "python3 -m " + pycom # pycom[:-3]
+    print(f"{pycom=}")
+
+    token_location = host_tmp_dir + "/" + os.path.dirname( grade_file_relative_destination ) + "/*.token"
+
+    elapsed = time.time() - start
+    # print("Elapsed time is", elapsed)
+    return pycom, token_location
+
+
+def docker_run_token_file(Dockerfile_location, host_tmp_dir, student_token_file, tag=None, instructor_grade_script=None, fix_user=True):
+    """
+    This thingy works:
+
+    To build the image, run:
+    docker build --tag python-docker .
+
+    To run the app run:
+
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker > output.log
+
+    """
+    # A bunch of tests. This is going to be great!
+    assert os.path.exists(Dockerfile_location)
+    start = time.time()
+
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+
+    sources = results['sources'][0]
+
+    if os.path.exists(host_tmp_dir):
+        shutil.rmtree(host_tmp_dir)
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+    gscript = instructor_grade_script
+
+    student_grade_script = host_tmp_dir + "/" + sources['report_relative_location']
+    instructor_grade_script = os.path.dirname(student_grade_script) + "/"+os.path.basename(gscript)
+    shutil.copy(gscript, instructor_grade_script)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/home python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    if tag is None:
+        dockname = os.path.basename( os.path.dirname(Dockerfile_location) )
+    else:
+        dockname = tag
+
+    tmp_grade_file =  sources['name'] + "/" + sources['report_relative_location']
+
+    pycom = ".".join( sources['report_module_specification'][:-1] + [os.path.basename(gscript)[:-3],] )
+    pycom = "python3 -m " + pycom
+
+    if fix_user:
+        user_cmd = ' --user "$(id -u):$(id -g)" '
+    else:
+        user_cmd = ''
+    tmp_path = os.path.abspath(host_tmp_dir).replace("\\", "/")
+    dcom = f"docker run {user_cmd} -v {tmp_path}:/home {dockname} {pycom}"
+    cdcom = f"cd {os.path.dirname(Dockerfile_location)}"
+    fcom = f"{cdcom}  && {dcom}"
+    print("> Running docker command")
+    print(fcom)
+    init = time.time() - start
+    # thtools.execute_command(fcom.split())
+    subprocess.check_output(fcom, shell=True).decode("utf-8")
+    host_tmp_dir +"/" + os.path.dirname(tmp_grade_file) + "/"
+    tokens = glob.glob( os.path.dirname(instructor_grade_script) + "/*.token" )
+    for t in tokens:
+        print("Source image produced token", t)
+    elapsed = time.time() - start
+    print("Elapsed time is", elapsed, f"({init=} seconds)")
+    return tokens[0]
diff --git a/examples/autolab_example/tmp/cs103/cs103-handout/driver_python.py b/examples/autolab_example/tmp/cs103/cs103-handout/driver_python.py
new file mode 100644
index 0000000000000000000000000000000000000000..dbd65acdc0c7dd488e1e2745cfdbadb1926ecac7
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/cs103-handout/driver_python.py
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report3_handin.token'
+instructor_grade_script = 'report3_complete_grade.py'
+grade_file_relative_destination = "cs103/report3_complete_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/cs103-handout/report3_complete_grade.py b/examples/autolab_example/tmp/cs103/cs103-handout/report3_complete_grade.py
new file mode 100644
index 0000000000000000000000000000000000000000..3f4755e6d51317f050f5f13122a21578357a14ab
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/cs103-handout/report3_complete_grade.py
@@ -0,0 +1,3 @@
+''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
+import bz2, base64
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/cs103-handout/student_sources.zip b/examples/autolab_example/tmp/cs103/cs103-handout/student_sources.zip
new file mode 100644
index 0000000000000000000000000000000000000000..6cc5fa95ab48be4616cc34cdbd487377fb5e0f6b
Binary files /dev/null and b/examples/autolab_example/tmp/cs103/cs103-handout/student_sources.zip differ
diff --git a/examples/autolab_example/tmp/cs103/cs103.rb b/examples/autolab_example/tmp/cs103/cs103.rb
new file mode 100644
index 0000000000000000000000000000000000000000..1ae1e3384bd0cc243de26537740a7b35c7bbd840
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/cs103.rb
@@ -0,0 +1,11 @@
+require "AssessmentBase.rb"
+
+module Cs103
+  include AssessmentBase
+
+  def assessmentInitialize(course)
+    super("cs103",course)
+    @problems = []
+  end
+
+end
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/cs103.yml b/examples/autolab_example/tmp/cs103/cs103.yml
new file mode 100644
index 0000000000000000000000000000000000000000..1cc8d1ed941c1f5b6de80aea5b659d607b5cdfe9
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/cs103.yml
@@ -0,0 +1,33 @@
+---
+
+general:
+  name: cs103
+  description: ''
+  display_name: CS 101 Report 3
+  handin_filename: Report3_handin.token
+  handin_directory: handin
+  max_grace_days: 0
+  handout: cs103-handout.tar
+  writeup: writeup/cs103.html
+  max_submissions: -1
+  disable_handins: false
+  max_size: 2
+  has_svn: false
+  category_name: Lab
+problems:
+
+  - name: Unitgrade score
+    description: ''
+    max_score: 10
+    optional: false
+
+autograder:
+  autograde_timeout: 180
+  autograde_image: tango_python_tue
+  release_score: true
+
+# problems:
+# - name: Correctness
+#  description: ''
+#  max_score: 100.0
+#  optional: false
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/src/Makefile b/examples/autolab_example/tmp/cs103/src/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/Makefile
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs103/src/Makefile-handout b/examples/autolab_example/tmp/cs103/src/Makefile-handout
new file mode 100644
index 0000000000000000000000000000000000000000..6d094e3a3869dfe9ee9e51a06150c6999c402286
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/Makefile-handout
@@ -0,0 +1,7 @@
+# Makefile for the Hello Lab
+all:
+	echo "Makefile called... it is empty so far. "
+	#gcc hello3.c -o hello3
+
+clean:
+	rm -rf *~ hello3
diff --git a/examples/autolab_example/tmp/cs103/src/README b/examples/autolab_example/tmp/cs103/src/README
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/README
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs103/src/README-handout b/examples/autolab_example/tmp/cs103/src/README-handout
new file mode 100644
index 0000000000000000000000000000000000000000..8eea4bef3abb4665581173c4843b6155b3dc59d2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/README-handout
@@ -0,0 +1,15 @@
+This directory contains all of the code files for the Hello Lab,
+including the files that are handed out to students.
+
+Files:
+
+# Autograder and solution files
+Makefile                Makefile and ...
+README                  ... README for this directory
+driver.sh*              Autograder
+hello.c                 Solution hello.c file
+
+# Files that are handed out to students
+Makefile-handout        Makefile and ...
+README-handout          ... README handed out to students
+hello.c-handout         Blank hello.c file handed out to students
diff --git a/examples/autolab_example/tmp/cs103/src/Report3_handin.token b/examples/autolab_example/tmp/cs103/src/Report3_handin.token
new file mode 100644
index 0000000000000000000000000000000000000000..6be6aef2778f106dc78cf7909fde42544a5f3e3b
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/Report3_handin.token
@@ -0,0 +1,186 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs103/report3.py ###
+
+from unitgrade import UTestCase, Report  
+from unitgrade.utils import hide
+from unitgrade import evaluate_report_student
+import cs103
+
+class AutomaticPass(UTestCase):
+    def test_automatic_pass(self):
+        self.assertEqual(2, 2)  # For simplicity, this test will always pass
+
+
+class Report3(Report):
+    title = "CS 101 Report 3"
+    questions = [(AutomaticPass, 10)]  # Include a single question for 10 credits.
+    pack_imports = [cs103] 
+
+if __name__ == "__main__":
+    evaluate_report_student(Report3())
+
+
+### Content of cs103/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+551383e60aa99c5591ddb4e8ed60c3ba58937d9e732302032caca6a245c82cbfc151362619ca762508d918de8a38dacf6e13bf4e4e05d9195e59847d7c807632 25276
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+.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.
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/src/docker_helpers.py b/examples/autolab_example/tmp/cs103/src/docker_helpers.py
new file mode 100644
index 0000000000000000000000000000000000000000..b6fdf76538c9cc454a6dbf3add2d9deac58e8310
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/docker_helpers.py
@@ -0,0 +1,146 @@
+# from cs202courseware.ug2report1 import Report1
+
+import pickle
+import os
+import glob
+import shutil
+import time
+import zipfile
+import io
+import inspect
+import subprocess
+
+def compile_docker_image(Dockerfile, tag=None):
+    assert os.path.isfile(Dockerfile)
+    base = os.path.dirname(Dockerfile)
+    if tag == None:
+        tag = os.path.basename(base)
+    os.system(f"cd {base} && docker build --tag {tag} .")
+    return tag
+
+
+def student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination):
+    """
+
+    Use by autolab code.
+
+    :param Dockerfile_location:
+    :param host_tmp_dir:
+    :param student_token_file:
+    :param ReportClass:
+    :param instructor_grade_script:
+    :return:
+    """
+    assert os.path.exists(student_token_file)
+    assert os.path.exists(instructor_grade_script)
+    start = time.time()
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    sources = results['sources'][0]
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+
+    gscript = instructor_grade_script
+    print(f"{sources['report_relative_location']=}")
+    print(f"{sources['name']=}")
+
+    print("Now in docker_helpers.py")
+    print(f'{gscript=}')
+    print(f'{instructor_grade_script=}')
+    gscript_destination = host_tmp_dir + "/" + grade_file_relative_destination
+    print(f'{gscript_destination=}')
+
+    shutil.copy(gscript, gscript_destination)
+
+    # Now everything appears very close to being set up and ready to roll!.
+    d = os.path.normpath(grade_file_relative_destination).split(os.sep)
+    d = d[:-1] + [os.path.basename(instructor_grade_script)[:-3]]
+    pycom = ".".join(d)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    pycom = "python3 -m " + pycom # pycom[:-3]
+    print(f"{pycom=}")
+
+    token_location = host_tmp_dir + "/" + os.path.dirname( grade_file_relative_destination ) + "/*.token"
+
+    elapsed = time.time() - start
+    # print("Elapsed time is", elapsed)
+    return pycom, token_location
+
+
+def docker_run_token_file(Dockerfile_location, host_tmp_dir, student_token_file, tag=None, instructor_grade_script=None, fix_user=True):
+    """
+    This thingy works:
+
+    To build the image, run:
+    docker build --tag python-docker .
+
+    To run the app run:
+
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/app python-docker > output.log
+
+    """
+    # A bunch of tests. This is going to be great!
+    assert os.path.exists(Dockerfile_location)
+    start = time.time()
+
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+
+    sources = results['sources'][0]
+
+    if os.path.exists(host_tmp_dir):
+        shutil.rmtree(host_tmp_dir)
+
+    with io.BytesIO(sources['zipfile']) as zb:
+        with zipfile.ZipFile(zb) as zip:
+            zip.extractall(host_tmp_dir)
+    # Done extracting the zip file! Now time to move the (good) report test class into the location.
+    gscript = instructor_grade_script
+
+    student_grade_script = host_tmp_dir + "/" + sources['report_relative_location']
+    instructor_grade_script = os.path.dirname(student_grade_script) + "/"+os.path.basename(gscript)
+    shutil.copy(gscript, instructor_grade_script)
+
+    """
+    docker run -v c:/Users/tuhe/Documents/2021/python-docker/tmp:/home python-docker python3 -m cs202courseware.ug2report1_grade
+    """
+    if tag is None:
+        dockname = os.path.basename( os.path.dirname(Dockerfile_location) )
+    else:
+        dockname = tag
+
+    tmp_grade_file =  sources['name'] + "/" + sources['report_relative_location']
+
+    pycom = ".".join( sources['report_module_specification'][:-1] + [os.path.basename(gscript)[:-3],] )
+    pycom = "python3 -m " + pycom
+
+    if fix_user:
+        user_cmd = ' --user "$(id -u):$(id -g)" '
+    else:
+        user_cmd = ''
+    tmp_path = os.path.abspath(host_tmp_dir).replace("\\", "/")
+    dcom = f"docker run {user_cmd} -v {tmp_path}:/home {dockname} {pycom}"
+    cdcom = f"cd {os.path.dirname(Dockerfile_location)}"
+    fcom = f"{cdcom}  && {dcom}"
+    print("> Running docker command")
+    print(fcom)
+    init = time.time() - start
+    # thtools.execute_command(fcom.split())
+    subprocess.check_output(fcom, shell=True).decode("utf-8")
+    host_tmp_dir +"/" + os.path.dirname(tmp_grade_file) + "/"
+    tokens = glob.glob( os.path.dirname(instructor_grade_script) + "/*.token" )
+    for t in tokens:
+        print("Source image produced token", t)
+    elapsed = time.time() - start
+    print("Elapsed time is", elapsed, f"({init=} seconds)")
+    return tokens[0]
diff --git a/examples/autolab_example/tmp/cs103/src/driver.sh b/examples/autolab_example/tmp/cs103/src/driver.sh
new file mode 100644
index 0000000000000000000000000000000000000000..05a006e95e416fa5d5088f1d61479f73901588c2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/driver.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+# driver.sh - The simplest autograder we could think of. It checks
+#   that students can write a C program that compiles, and then
+#   executes with an exit status of zero.
+#   Usage: ./driver.sh
+
+# Compile the code
+# echo "Compiling hello3.c"
+# python3 -c "print('Hello world from python 2')"
+# python3 --version
+python3 driver_python.py
+
+#(make clean; make)
+#status=$?
+#if [ ${status} -ne 0 ]; then
+#    echo "Failure: Unable to compile hello3.c (return status = ${status})"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#    exit
+#fi
+#
+# Run the code
+#echo "Running ./hello3"
+#./hello3
+#status=$?
+#if [ ${status} -eq 0 ]; then
+#    echo "Success: ./hello3 runs with an exit status of 0"
+#    echo "{\"scores\": {\"Correctness\": 100}}"
+#else
+#    echo "Failure: ./hello fails or returns nonzero exit status of ${status}"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#fi
+
+exit
diff --git a/examples/autolab_example/tmp/cs103/src/driver.sh-handout b/examples/autolab_example/tmp/cs103/src/driver.sh-handout
new file mode 100644
index 0000000000000000000000000000000000000000..05a006e95e416fa5d5088f1d61479f73901588c2
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/driver.sh-handout
@@ -0,0 +1,33 @@
+#!/bin/bash
+# driver.sh - The simplest autograder we could think of. It checks
+#   that students can write a C program that compiles, and then
+#   executes with an exit status of zero.
+#   Usage: ./driver.sh
+
+# Compile the code
+# echo "Compiling hello3.c"
+# python3 -c "print('Hello world from python 2')"
+# python3 --version
+python3 driver_python.py
+
+#(make clean; make)
+#status=$?
+#if [ ${status} -ne 0 ]; then
+#    echo "Failure: Unable to compile hello3.c (return status = ${status})"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#    exit
+#fi
+#
+# Run the code
+#echo "Running ./hello3"
+#./hello3
+#status=$?
+#if [ ${status} -eq 0 ]; then
+#    echo "Success: ./hello3 runs with an exit status of 0"
+#    echo "{\"scores\": {\"Correctness\": 100}}"
+#else
+#    echo "Failure: ./hello fails or returns nonzero exit status of ${status}"
+#    echo "{\"scores\": {\"Correctness\": 0}}"
+#fi
+
+exit
diff --git a/examples/autolab_example/tmp/cs103/src/driver_python.py b/examples/autolab_example/tmp/cs103/src/driver_python.py
new file mode 100644
index 0000000000000000000000000000000000000000..dbd65acdc0c7dd488e1e2745cfdbadb1926ecac7
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/driver_python.py
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report3_handin.token'
+instructor_grade_script = 'report3_complete_grade.py'
+grade_file_relative_destination = "cs103/report3_complete_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/src/driver_python.py-handout b/examples/autolab_example/tmp/cs103/src/driver_python.py-handout
new file mode 100644
index 0000000000000000000000000000000000000000..dbd65acdc0c7dd488e1e2745cfdbadb1926ecac7
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/driver_python.py-handout
@@ -0,0 +1,98 @@
+import os
+import glob
+import sys
+import pickle
+# import io
+import subprocess
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
+
+# import docker_helpers
+import time
+
+verbose = False
+tag = "[driver_python.py]"
+
+if not verbose:
+    print("="*10)
+    print(tag, "Starting unitgrade evaluation...")
+
+sys.stderr = sys.stdout
+wdir = os.getcwd()
+
+def pfiles():
+    print("> Files in dir:")
+    for f in glob.glob(wdir + "/*"):
+        print(f)
+    print("---")
+
+student_token_file = 'Report3_handin.token'
+instructor_grade_script = 'report3_complete_grade.py'
+grade_file_relative_destination = "cs103/report3_complete_grade.py"
+
+# with open(student_token_file, 'rb') as f:
+#     results = pickle.load(f)
+host_tmp_dir = wdir + "/tmp"
+
+if not verbose:
+    pfiles()
+    print(f"{host_tmp_dir=}")
+    print(f"{student_token_file=}")
+    print(f"{instructor_grade_script=}")
+
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command = f"cd tmp && {command} --noprogress --autolab"
+
+def rcom(cm):
+    # print(f"running... ", cm)
+    # start = time.time()
+    rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
+    print(rs.stdout)
+
+    if len(rs.stderr) > 0:
+        print(tag, "There were errors in executing the file:")
+        print(rs.stderr)
+    # print(rs)
+    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
+
+# results, _ = load_token(student_token_file)
+# sources = results['sources'][0]
+
+
+start = time.time()
+rcom(command)
+# pfiles()
+# for f in glob.glob(host_tmp_dir + "/programs/*"):
+#     print("programs/", f)
+# print("---")
+ls = glob.glob(token)
+# print(ls)
+f = ls[0]
+# with open(f, 'rb') as f:
+#     results = pickle.load(f)
+
+results, _ = load_token(ls[0])
+
+# print("results")
+# print(results.keys())
+if verbose:
+    print(f"{token=}")
+    print(results['total'])
+# if os.path.exists(host_tmp_dir):
+#     shutil.rmtree(host_tmp_dir)
+# with io.BytesIO(sources['zipfile']) as zb:
+#     with zipfile.ZipFile(zb) as zip:
+#         zip.extractall(host_tmp_dir
+# print("="*10)
+# print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
+
+from unitgrade_private.autolab.autolab import format_autolab_json
+format_autolab_json(results)
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/src/report3_complete_grade.py b/examples/autolab_example/tmp/cs103/src/report3_complete_grade.py
new file mode 100644
index 0000000000000000000000000000000000000000..3f4755e6d51317f050f5f13122a21578357a14ab
--- /dev/null
+++ b/examples/autolab_example/tmp/cs103/src/report3_complete_grade.py
@@ -0,0 +1,3 @@
+''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
+import bz2, base64
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/autolab_example/tmp/cs103/src/student_sources.zip b/examples/autolab_example/tmp/cs103/src/student_sources.zip
new file mode 100644
index 0000000000000000000000000000000000000000..6cc5fa95ab48be4616cc34cdbd487377fb5e0f6b
Binary files /dev/null and b/examples/autolab_example/tmp/cs103/src/student_sources.zip differ
diff --git a/examples/example_docker/instructor/cs103/Report3_handin_5_of_10.token b/examples/example_docker/instructor/cs103/Report3_handin_5_of_10.token
new file mode 100644
index 0000000000000000000000000000000000000000..ea7d74deb661c0c6930a644610d4fa41b3840fd9
--- /dev/null
+++ b/examples/example_docker/instructor/cs103/Report3_handin_5_of_10.token
@@ -0,0 +1,389 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs103/report3.py ###
+
+from unitgrade import UTestCase, Report  #!s
+from unitgrade.utils import hide
+from unitgrade import evaluate_report_student
+import cs103
+
+class AutomaticPass(UTestCase):
+    def test_automatic_pass(self):
+        self.assertEqual(2, 2)  # For simplicity, this test will always pass
+
+
+class Report3(Report):
+    title = "CS 101 Report 3"
+    questions = [(AutomaticPass, 10)]  # Include a single question for 10 credits.
+    pack_imports = [cs103] #!s
+
+if __name__ == "__main__":
+    evaluate_report_student(Report3())
+
+### Content of cs103/report3_complete.py ###
+
+from unitgrade import UTestCase, Report  #!s
+from unitgrade.utils import hide
+from unitgrade import evaluate_report_student
+import cs103
+
+class AutomaticPass(UTestCase):
+    def test_automatic_pass(self):
+        self.assertEqual(2, 2)  # For simplicity, this test will always pass
+
+    @hide  # The @hide-decorator tells unitgrade_v1 to hide the test for students.
+    def test_hidden_fail(self):
+        self.assertEqual(2, 3)  # For simplicity, this test will always fail.
+
+class Report3(Report):
+    title = "CS 101 Report 3"
+    questions = [(AutomaticPass, 10)]  # Include a single question for 10 credits.
+    pack_imports = [cs103] #!s
+
+if __name__ == "__main__":
+    evaluate_report_student(Report3())
+
+### Content of cs103/homework1.py ###
+
+def reverse_list(mylist): #!f #!s;keeptags
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    return list(reversed(mylist))
+
+def add(a,b): #!f
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    return a+b
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7])) #!s
+
+
+### Content of cs103/deploy.py ###
+
+import os
+import glob
+from unitgrade_private import load_token
+from cs103.report3_complete import Report3
+from unitgrade_private.hidden_create_files import setup_grade_file_report
+from unitgrade_private.deployment import remove_hidden_methods
+from unitgrade_private.docker_helpers import docker_run_token_file
+from snipper.snip_dir import snip_dir
+
+if __name__ == "__main__": #!s=docker_a
+    # Step 1: Deploy the students files and return the directory they were written to
+    setup_grade_file_report(Report3)  # Create report3_complete_grade.py which tests everything
+
+    fout, Report = remove_hidden_methods(Report3, outfile="report3.py")  # Create report3.py without @hide-methods
+    setup_grade_file_report(Report)                                      # Create report3_grade.py for the students
+
+    student_directory = "../../students/cs103"
+    snip_dir("./", student_directory, exclude=['*.token', 'deploy.py', 'report3_complete*.py', '.*']) #!s
+
+    # Step 2: Simulate that the student run their report script and generate a .token file.
+    os.system("cd ../../students && python -m cs103.report3_grade") #!s=docker_b
+    student_token_file = glob.glob(student_directory + "/*.token").pop()  #!s
+
+    # Step 3: Compile the Docker image (obviously you should only do this once). #!s=docker_c
+    Dockerfile = os.path.dirname(__file__) + "/../../../../docker_images/unitgrade-docker/Dockerfile"
+    os.system(f"cd {os.path.dirname(Dockerfile)} && docker build --tag unitgrade-docker .") #!s
+
+    # Step 4: Test the students code in the .token file and get the results-token-file:  #!s=docker_d
+    token = docker_run_token_file(Dockerfile_location=Dockerfile,
+                                  host_tmp_dir=os.path.dirname(Dockerfile) + "/home",
+                                  student_token_file=student_token_file,
+                                  instructor_grade_script="report3_complete_grade.py") #!s
+
+    # Load the two token files and compare their scores #!s=docker_e
+    checked_token, _ = load_token(token)
+    results, _ = load_token(student_token_file)
+
+    print("Student's score was:", results['total'])
+    print("My independent evaluation of the students score was", checked_token['total']) #!s
+
+    # Save it for the Readme
+    s = ""
+    s += f"Student's score was: {results['total']}\n"
+    s += f"My independent evaluation of the students score was {checked_token['total']}"
+    with open("docker_results.txt", 'w') as f:
+        f.write(s)
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+a659a8f1b8da55e9e05a6120c2f3db05bbbcc545d23f9fd204a4440fb482cc5c567b165a117bf70a3fe742748a516f18394e4af119164da6bd0681dfd0cbf416 49184
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+.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.
\ No newline at end of file
diff --git a/examples/example_docker/instructor/cs103/__pycache__/report3_complete.cpython-39.pyc b/examples/example_docker/instructor/cs103/__pycache__/report3_complete.cpython-39.pyc
index 3e87b71662ab4e431da5c9b952594f5411205f72..9008e9dd5d050f4f2cd31829687f9cb6a155aea4 100644
Binary files a/examples/example_docker/instructor/cs103/__pycache__/report3_complete.cpython-39.pyc and b/examples/example_docker/instructor/cs103/__pycache__/report3_complete.cpython-39.pyc differ
diff --git a/examples/example_docker/instructor/cs103/__pycache__/report3_complete_grade.cpython-39.pyc b/examples/example_docker/instructor/cs103/__pycache__/report3_complete_grade.cpython-39.pyc
index 5efad03805d904ffdc7a11abb12cf5d179ea47c5..c0394eac56fe44a8ae0689a41f7de99eabf84fb3 100644
Binary files a/examples/example_docker/instructor/cs103/__pycache__/report3_complete_grade.cpython-39.pyc and b/examples/example_docker/instructor/cs103/__pycache__/report3_complete_grade.cpython-39.pyc differ
diff --git a/examples/example_docker/students/cs103/Report3_handin_10_of_10.token b/examples/example_docker/students/cs103/Report3_handin_10_of_10.token
index d71c262cba1efe0065e284d35210cc8295abbc44..6be6aef2778f106dc78cf7909fde42544a5f3e3b 100644
--- a/examples/example_docker/students/cs103/Report3_handin_10_of_10.token
+++ b/examples/example_docker/students/cs103/Report3_handin_10_of_10.token
@@ -1,27 +1,5 @@
 # This file contains your results. Do not edit its content. Simply upload it as it is. 
-### Content of cs103\homework1.py ###
-
-def reverse_list(mylist): 
-    """
-    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
-    reverse_list([1,2,3]) should return [3,2,1] (as a list).
-    """
-    # TODO: 1 lines missing.
-    raise NotImplementedError("Implement function body")
-
-def add(a,b): 
-    """ Given two numbers `a` and `b` this function should simply return their sum:
-    > add(a,b) = a+b """
-    # TODO: 1 lines missing.
-    raise NotImplementedError("Implement function body")
-
-if __name__ == "__main__":
-    # Example usage:
-    print(f"Your result of 2 + 2 = {add(2,2)}")
-    print(f"Reversing a small list", reverse_list([2,3,5,7])) 
-
-
-### Content of cs103\report3.py ###
+### Content of cs103/report3.py ###
 
 from unitgrade import UTestCase, Report  
 from unitgrade.utils import hide
@@ -40,148 +18,169 @@ class Report3(Report):
 
 if __name__ == "__main__":
     evaluate_report_student(Report3())
+
+
+### Content of cs103/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
 ---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-48c6a225ee240523a9d937f568c5bd799b04ec40d31a46621e784172dd62c1897bc7182521385eb2f8fc2ced9384e2c2e5097a31d530d8cda253f9a217fba2e6 25424
+551383e60aa99c5591ddb4e8ed60c3ba58937d9e732302032caca6a245c82cbfc151362619ca762508d918de8a38dacf6e13bf4e4e05d9195e59847d7c807632 25276
 ---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-.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.
\ No newline at end of file
+.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.
\ No newline at end of file
diff --git a/examples/example_framework/instructor/cs102/Report2_handin_16_of_16.token b/examples/example_framework/instructor/cs102/Report2_handin_16_of_16.token
new file mode 100644
index 0000000000000000000000000000000000000000..053511f399a5a6ccc35651e04621bd624e39177b
--- /dev/null
+++ b/examples/example_framework/instructor/cs102/Report2_handin_16_of_16.token
@@ -0,0 +1,264 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs102/report2.py ###
+
+from unitgrade.framework import Report
+from unitgrade.evaluate import evaluate_report_student
+from cs102.homework1 import add, reverse_list
+from unitgrade import UTestCase, cache  # !s
+
+class Week1(UTestCase):
+    def test_add(self):
+        self.assertEqualC(add(2,2))
+        self.assertEqualC(add(-100, 5))
+
+    def test_reverse(self):
+        self.assertEqualC(reverse_list([1, 2, 3])) #!s
+
+    def test_output_capture(self):
+        with self.capture() as out:
+            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
+        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
+        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
+
+class Week1Titles(UTestCase): #!s=b
+    """ The same problem as before with nicer titles """
+    def test_add(self):
+        """ Test the addition method add(a,b) """
+        self.assertEqualC(add(2,2))
+        print("output generated by test")
+        self.assertEqualC(add(-100, 5))
+        # self.assertEqual(2,3, msg="This test automatically fails.")
+
+    def test_reverse(self):
+        ls = [1, 2, 3]
+        reverse = reverse_list(ls)
+        self.assertEqualC(reverse)
+        # Although the title is set after the test potentially fails, it will *always* show correctly for the student.
+        self.title = f"Checking if reverse_list({ls}) = {reverse}"  # Programmatically set the title #!s
+
+    def ex_test_output_capture(self):
+        with self.capture() as out:
+            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
+        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
+        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
+
+
+class Question2(UTestCase): #!s=c
+    @cache
+    def my_reversal(self, ls):
+        # The '@cache' decorator ensures the function is not run on the *students* computer
+        # Instead the code is run on the teachers computer and the result is passed on with the
+        # other pre-computed results -- i.e. this function will run regardless of how the student happens to have
+        # implemented reverse_list.
+        return reverse_list(ls)
+
+    def test_reverse_tricky(self):
+        ls = (2,4,8)
+        ls2 = self.my_reversal(tuple(ls))                   # This will always produce the right result, [8, 4, 2]
+        print("The correct answer is supposed to be", ls2)  # Show students the correct answer
+        self.assertEqualC(reverse_list(ls))                 # This will actually test the students code.
+        return "Buy world!"                                 # This value will be stored in the .token file  #!s=c
+
+
+import cs102
+class Report2(Report):
+    title = "CS 102 Report 2"
+    questions = [(Week1, 10), (Week1Titles, 6)]
+    pack_imports = [cs102]
+
+if __name__ == "__main__":
+    evaluate_report_student(Report2(), unmute=True)
+
+
+### Content of cs102/homework1.py ###
+
+def reverse_list(mylist): #!f #!s;keeptags
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    return list(reversed(mylist))
+
+def add(a,b): #!f
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    return a+b
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7])) #!s
+
+
+### Content of cs102/deploy.py ###
+
+from cs102.report2 import Report2
+from unitgrade_private.hidden_create_files import setup_grade_file_report
+from snipper.snip_dir import snip_dir
+
+if __name__ == "__main__":
+    setup_grade_file_report(Report2)
+    snip_dir("./", "../../students/cs102", clean_destination_dir=True, exclude=['*.token', 'deploy.py'])
+    # from unitgrade import evaluate_report_student
+    # evaluate_report_student(Report2())
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+74a7cc572ddda2da28ddc83e3a2fed6214338096b6144490f3b02df02fcae8bc1338440d8f665fe73edd49a58627c13eeadfff9a3cecf1860afc4f655199ee4c 28296
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+.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
+pGAABwKUBkYsCgU9uGLHEZ/sCAAAAAARZWg==.
\ No newline at end of file
diff --git a/examples/example_framework/instructor/cs102/Report2_handin_18_of_18.token b/examples/example_framework/instructor/cs102/Report2_handin_18_of_18.token
index 7079a40afe1c9ab76ab56061ae7e19c6b1591dfc..46a96a58cfce90e463c726881d2ebd19f60c9379 100644
--- a/examples/example_framework/instructor/cs102/Report2_handin_18_of_18.token
+++ b/examples/example_framework/instructor/cs102/Report2_handin_18_of_18.token
@@ -1,36 +1,5 @@
 # This file contains your results. Do not edit its content. Simply upload it as it is. 
-### Content of cs102\deploy.py ###
-
-from cs102.report2 import Report2
-from unitgrade_private.hidden_create_files import setup_grade_file_report
-from snipper.snip_dir import snip_dir
-
-if __name__ == "__main__":
-    setup_grade_file_report(Report2)
-    snip_dir("./", "../../students/cs102", clean_destination_dir=True, exclude=['*.token', 'deploy.py'])
-
-
-### Content of cs102\homework1.py ###
-
-def reverse_list(mylist): #!f #!s;keeptags
-    """
-    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
-    reverse_list([1,2,3]) should return [3,2,1] (as a list).
-    """
-    return list(reversed(mylist))
-
-def add(a,b): #!f
-    """ Given two numbers `a` and `b` this function should simply return their sum:
-    > add(a,b) = a+b """
-    return a+b
-
-if __name__ == "__main__":
-    # Example usage:
-    print(f"Your result of 2 + 2 = {add(2,2)}")
-    print(f"Reversing a small list", reverse_list([2,3,5,7])) #!s
-
-
-### Content of cs102\report2.py ###
+### Content of cs102/report2.py ###
 
 from unitgrade.framework import Report
 from unitgrade.evaluate import evaluate_report_student
@@ -56,7 +25,9 @@ class Week1Titles(UTestCase): #!s=b
     def test_add(self):
         """ Test the addition method add(a,b) """
         self.assertEqualC(add(2,2))
+        print("output generated by test")
         self.assertEqualC(add(-100, 5))
+        # self.assertEqual(2,3, msg="This test automatically fails.")
 
     def test_reverse(self):
         ls = [1, 2, 3]
@@ -91,158 +62,203 @@ class Question2(UTestCase): #!s=c
 
 import cs102
 class Report2(Report):
-    title = "CS 101 Report 2"
+    title = "CS 102 Report 2"
     questions = [(Week1, 10), (Week1Titles, 8)]
     pack_imports = [cs102]
 
 if __name__ == "__main__":
     evaluate_report_student(Report2(), unmute=True)
+
+
+### Content of cs102/homework1.py ###
+
+def reverse_list(mylist): #!f #!s;keeptags
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    return list(reversed(mylist))
+
+def add(a,b): #!f
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    return a+b
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7])) #!s
+
+
+### Content of cs102/deploy.py ###
+
+from cs102.report2 import Report2
+from unitgrade_private.hidden_create_files import setup_grade_file_report
+from snipper.snip_dir import snip_dir
+
+if __name__ == "__main__":
+    setup_grade_file_report(Report2)
+    snip_dir("./", "../../students/cs102", clean_destination_dir=True, exclude=['*.token', 'deploy.py'])
+    # from unitgrade import evaluate_report_student
+    # evaluate_report_student(Report2())
 ---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-29a499197b06183c0c65459db09bcc31c2932226ab85f8fb5265bbf8eea55836b225806e20da0973f82c380f3be6f88122a92f6593c5ad59497bac0130ee530c 26240
+72cd3c247bde457b1bab3441f579961a92feb3ac45c3d60c5abd0217e477d22173e876e4fa3b5aa9de7b8ecca2a10f0a92a6a65a500a1d357e1df4f1d26c6ceb 28268
 ---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-.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.
\ No newline at end of file
+./Td6WFoAAATm1rRGAgAhARYAAAB0L+Wj4IWEUpBdAEABDnVtg2D5l0hTzCulYE/mPjCRVSQLVBoDFQ+OoiI5AfvAzsOXOt00ZJDCkNHDZDyemB5togJOO/cljpTT0ISbXVXUtARc7G8VMzeldC0cuPoK78TyRWOV8JMzaSHDcjyIjOmN32m
+TB1mx/9bcllgbWIpWcF9Q3EkmiIAwdV7TA2MHxuGe0JAXymBW4LRmyDFgYfRV20iYTOe2uWim+6bhkUAanrYlB15vmDvU3y8Vh7Q6EeDDfPcPS/JX289r0OJ0EkGYVhANZFq8Pj8mCd8J3BM09kaveAu//92Pl5A5tfAeoZ8mdgcr36TQSSl
+944B31yizpJQRnP1O6Pyatm6R4iwylTIZFCgy8zZ1PQej8cc1zYlDIa7xkRKtzPQA6uUwQf3qTgwEE/39tj/iUHqCgB5NJez2jGZ/Fe0BkAgm/iCJbXaEyg1IM7X+JPocZEykfgFGju4mzphybwNSUrkiPT/YZ8ltEg7WfrvEwwu4AJ0aq7R
+9XyoyAlvnWF/0hipiah8p2v43WCXTV8RM9+Ybn7kSW9dQ6m7gwOEmWVsRvx+t/ISTsFBSY6w6e+24k5JWEaj0owmqx43e4RA6oVq0XVi6Lkm7/Ndysyx24XP9BWhUrlGXuvnBuqM2OigezFDJusFtmsd77HKLJgthXDU/ti6oI5SHA/GM/LD
+E6gIydoiFXDE5pwgi6sNExyd+RpOm5bCJwJbRh7SsF9GFLBplNFa4sbV/7dEppYvg3o6+CNna2BnGOYMglTXAb8mJQCfPcHGxQNeEyyO2ftLO4afEIBZWul5rEMzbo1dyA6/0nGSZxk6QPE65gVCFLrfOsEcHAZukJ/FvOBcsGBY1K+AWrzb
+ooO6zdvAAqT6hwjx8Xp9T6LeCcBNzMMURyCMxwNQcGt7LKOdDZklgwxc6GM1gwAcbzH5FSPzxY2OWdu4KfSwtnYUOHfZy3P7WVI/8RrRt3nS0ZkZEXRQ/Bsy8j6HIeKxSLznhr4i5nMLoUUJMfZb3E3Di1gnxAMGr4Zop9Iy7FXiobjnfcGp
+XgMnvIyIB6m357zczGrzBKjZVdU4azBhIUXddNq7hT5En8QPfoCJpMuPUBfr54Xjpy7H8eZ5cm+K5ixYpvdB7F64nVVJvRGM58pkHMm/Q4F/LWXvizUrxVJOxddJw6PBFFEvXbzPbg4gTRNc+hmQRnQ19iAq9tld01Ul1Ejdr+wUuinvFCdi
+kilzV9dF/Jja7zg3dy+1QKbM0Vn3tc4AowR07SnkXQXphFzT0wtXQief9dh+Klh/G8yIe6sPmWGbUOYcjflPHQvxk7HjRRZ+GDXSHKPTb2rj3NsDI8tZoTSN/GjfNVgilxQ/DjF918g981M1OV0vUJKVvZc+7J+HmmX/xDrfxmiWBgxGPkmd
+AYExV5pdy3f6/hQspd3f001rUITFWfgDa9Z//pfug2+PuaI2OlKOxIeKVpzqImXK40d/Jsq+sWoIZdiTkS7dQCqecj6FpbHAoHbR3ccRCL212tI+fO+rq6zHPnh/ycGcwnGfKJsyXBwcLauLgGs0oOMz+mtbTqE5xWsAruizASVHvn4U4uy6
+CZREMx1xCjls0lf57H8e0vK7G5JRMpYFnjxbsF8TIOgUqw6v0QbW+htemsrgDGdltgT8tvf7VvXETlBF/slOkGrMz0oa2y29GvSCC2N3tTvjhHnRRRoqidy0Pv5s+2iJY68HVpwaqgylAra40rAsjlCEtRt+pDejOJbNXtCWI4fU3K3KCIqW
+wc+jN2vOjUB2oO8uu4MlO7CZxcMqiYq8bYoJxYnADeeAm9g9a/IWyHvlTpqGfZD3FEV9djnv7VoW3+NrrI2/GqKpvumB2TwxN3Jm+zlKx+uihgZtJ4bjfUw0LPEKyds5IKME2UAsVHWmXHyr7uMISJ/vsy3TbC1wtprc6cX5GfOHU/6bqEjR
+Z/NJhcnlrMaCTg9hH95tQP0TashEoiyoZIkjUUKYna4Ov9roXj3NfDqXZDmUmGWFaUFkQY1/jKH7m4vNLPpS4i9fDr2VpV7gIOn4HNg6M23PXcVuqfqn0eo08G39C8B4f+yeSR3u2hZvtbPadeqzLP/6+UA3DrgJzXaXlWZUQupwtakPsTcU
+CCPshBsM1g/RsIJeNMvDN7lq6GtUEM3w2y4qDSPrw+Qesdvv97Fzr/yF8eYQCGn1cD02/RisSnXWGkQ1POYmYksEGJmyiojky3Ta1eBBDBbU0uOAykWh6Sb62prmYzfsyeDTTqXqOye07eJRHSiYKJU2DkGHO0drMQPqJP98jyGUzu+OsV5s
+qD5A16HzwCOM7nlXm0nNo/d+bF2NCEPKPzTnzJh9FFRNw81+7hURVUIvjG2Fwcm1fMuFZS3t8j2R0wBxGoGmQD4RO8QnWCfQ5hDYObxjvszHL+AWiR8mChXGVNEAfObyp7r64VbIfSCLGAXiu7WvSv1r52ADbd5s3Ec3KWxbGJ345+zGXFcw
+VLQKA//rehmh11xbK4VMXmOqUM132RRK+/vGveLG49yO5pLQVshW/OJygis31HT5GaDeUmkdjyfb0F7K/c0CtwyXPkrap6JpofkNJ6gZsZzFl0SFxZ3GEMXA0yo8YZOZkZ6IKX0pP3TY9ir+GHjS9ijprNeU4sY0e9C121spvrSY175dyYEV
+DFsCHe9PIJGtFrsU+vCj0/H1uKD+lapUxSnWnEAVo0wMMEsOnIStVGLzFzR6dgckU/oFVnccje4oJxKpLBhiWKCvZnmcHYG/cpbzYfXV+GTPEBD5T0yXF62YxTi0Wa9ygySk0y/5w1Q4ShnIDCuGyFuD23qpPBCvcStlcQ9rYbsu6hBH8tCt
+stoh7NYQu1V9zSBha8y7BZZNOoX3PnLmLxhgZ2/8QdJm9bYalMg5XwZg3HcpqARAHaMhVO3PYxDs0arH4r5HUPYRa4ngRgpURIKivdkQD3nH258jWSaBQUMnC4yzqgJqVR3rpv6ITzP1BwKBpkA4oz9pP8OHFKBqSqc7aHfrlviyTGyutY9n
+hrW7xAwzFxWpcp7+tMIcBCAwXA+bIG4K8RDyOSjDL7bsfauIpXss5hRUM3KmIqx+zZW5+hQbyc0YQmrvyOpZpN9cecPQEarRBG3qt3vRW3YEuXS5TovR6A3nXpeO6XUCJYl3FVzy0b7eXzFaaHOHQeR3msIw6E1DqToQkYYPqvDo82/gkifq
+9gBpZaXzYDc+IW2ysz0nwKtRpsYiKRlzCav+h16sW+ZI/lMlH0DJ0tJeI9ujTOFmdDRNLm9HQ/HSdvnRWmGoMfWArtbAcbMmSFOPc2NiA1UI+KDk+/DsWG8Qg9cDaD1OYKNT2qxX2bDpCcOSbNuDlV1vqAZjIBj5+6FyX9YQccnCCOsc1+IQ
+dXh00HPd3y7BgBWJrlFgcoiFw3j2OX6cnkaTCK2JUG5DFMxhHHlIf/wgjdSBI1juNbWeCqGcYSiDRqlGI7vl/yudas2B12hf+lfCakz3SuN7WQv+B5JSifinmuuW6RcipJJqpQb8zGNb9F0j+Op+HNT9/OR4oYn3Vc4gvotMkoKFAkI+pT3B
+/tppacS+pwLZHY8RY8eJykvKl9O+UXt+wJVW8nlFwlmH7dmV4G/4gQRWtMo0hZDvZ5ojRoCW18QPw44nyQek/k/8pCS0Sl5IcyKEvYLjpxYkW9THE+wC2sJNU1Z6l/kdI0fl1ueM8V8O7ur0BiG9bl331VV2JzyUYHo8C6BFLElTOqBH4nA9
+c79M04ZTcoQ81yEoX/VRyMdsmC02RxChZz8Ui2TYp6aiFRPjusCxoAlZNUincigorv6UP0qiki03uZmD0CghR45Cqbmots2s7BdaKF0YjSC0RifawMowEoC2TgLjnUDEsNPuP7uG+G5pIbqO9e1S4IwzI07OvBm2nP/EsFNMhqu799LY3eHn
+IZAAWPaydYqayHyJsIdFXXsXpQkMVTuCdl/1UXwGFRpT1VYh2Jv/FGUvVToYJlkNrg1iERAWuYoNOrmT9J+V0qdvxg4Z4oON88qDLRTg0sIustiv8LELVE269r7rTPVxKuFZZsMe8DK909EzzGh4WGorgOR5w8qIzzdF317zb7F1iHcd2w/F
+9LUK26MfqA23B5Ka1iacE0P5OtA6P6dfNHq45lrltE6SI0/g12H4TNeGHHu151QSdb5zL41BJRSUsF3oE4cw1LbXkKJuuPOKVgVRj/NDkIMsoKDzFgdptTYRiibYKfmvBeGPasxlJ9mD/PwWmamo9P6Te/k/u8kGS32oQDZkuq0GwSl8ZnRB
+NTOhQ7erF+7uV5SrAs8YTdpkRBX07XA+d95nm7gdz3IhlGIjK6IQ8SriP+fruQK5g5xjXLDN+9g3cTAMhhRjj+eXIi+zPOv5N9XfoODgAwztJv0eFJ9MR3l0ETp8Bgav3s1X3E3R30nlz9bnBYkIu+NKDkOBwwkvXDGhmTZBWS3h/T3nX0o4
++xMbOg5Ihyywykix9795cGKJhtU+sbvEMfU/sL8sEa/PV2HgFX51nywJNjAoZSc7Gti1LXfTilRo8nac07sdOd/GMw0w8E46CLfP2+N1ZXj3Iuxr0AKNVfkvIEQQgMsDJC53l5MJFSUREmh0uc1q4IRwAVKDAqIhE1DKYEso/csZH/Man50C
+RSHAcsKwvwo83BASLRRsKb19hyWdTP6JN0MQotD0zcj1R/BddpSk4ZvMJubvDsClnaba8+1a2uhGFatG8zH68Z/f1UkCRNehzCh+lGPB8QIWhWv6AGYyB/0+6zfQ/sUCu6s4611gtnqe02L/GZ95WoyxoZG3TGuk5OrXUSKiKRdXrBBDgaxq
+vAvHDBhosjx8QEFyOpsruaX0WMdr2k8NQArd8yzaETUYAf/cfh2AzA47e0SP70Y8VjRcwznzqPMHyAPmLFXJp2lgB7mU5CY4s3BBhyQ6vNaGCBSmi2/lN1Ev1JYUyZj9hC+iPMnQ9oShUwUN+2S3Led1X7zGvdJbCWFXDrTUIDqgLlsngLl/
+KVEvfkObnfmiqMY9DuDYvqpk6Q59hQF/Ct86IG2BdiOzUMAl6yqfuTP2OXKtOMK321q5bF3DPWFd0lcJGxsWjm32t+zj2lfAvbpL0agRWBHmvfpfsNySBBoAGkboJQCfHSuftT14pOjMQrFFy9aGxvrNTmO1PJ/Uk5f1PsgeB6WzpJ8DxjEw
+h7Qp20l6SIEYzpTeX5SyZwLI5/Rgtn6h8OICKUgPe+kB8Yzpn1+RmK0crQCwQGnGIJItxShYNpeDNa7pZpHde84lrjkeEljcK8kywp+hNI6D9IxW9bFyKEIJ2H9/6o4UY0VevVXBm9pIoz2B4V4Z4qaPKSXyv5b2T//YjupD76x98CBIGxSV
+rrzVo1y3hJPlIKvV/LnrM8pjeGJkxWAemdlz5OZjkntf1rfw1Oeclg3H1LhptzCnUvUCE0lcDPWFtYxc6tVZomK4gnI5u8BBFuXeIhmYqm+8Yqct4VooShcyX3oqY7pug4/X2odv0WAE+wp699AV4ssFGsreSRilT5Qm9H4pY2I+1RpdmcPn
+zASu/yxZQjJANmsyXFQPKDJVRUgOjfr3rThV6lzR+x4YpbMbQGjWwNT1kkQ+Unt5tj0rcJ+SEkFdEuOH6+6SUlqoXBht1L0qoD++40ZTAfT+LcbEi5KDdhW0DuGC16N3X83CSQ9/fBUopMjKIQEa9ClWujFU/lqyPBJ1fBmHbUk0FcaTInQC
+oXIKIOXSronW04zrd5d+Tgn3lISJ0QYOoQ8hcv3GWC2m+S+KBujHX//3Pdw0C9HPtRStmNFWwO7JFBw7R8fukB9wEtviCtSiPRiGi8DcSB5tnmt+H8/aMRyep4G0vM1E2KTYEBGdb+sEX4HKeHWPc4Uwpl1kyPwGL6W7yh7ka5hsOgxU4ATp
+CXP7OHU8dsome+hym5LcLhxVFXm0qMuU4rfXCumHLaVnK2lQ43SGW2jgvVUDKRzGLL7zD25IL6T7mIJcUSW6B6WamJlxgeAJapxr/gnnSJXVmzI3JHhuUheosD6wJNMuOowUhWBayC6FNcQ8n6fUe5CP9vvtpkZ5zo6fqtreLfZBRnyDwT30
+H3DbUFyog1KdkDMwzk7eX4857wmAfUI9LkURdgzWL9DJkRHcNZz2YmrPiSfIA2yYvMVwrB2wEUldm1OsAECerb2ZnAjgwK5Dq/4uJQ8U1cW26gF5opTFyFLd50NnPAbO/kLFBVopipdaIPGGXcmER42+EXZH6B42jWgyerFwvlundHynZU8R
+gRcpa3xhBBd3p8WruQG+U6+wyY+OuPQwL8bOGltAdmXUo/vlguoG9LzKHLX8LxJmDnGjA8T7VyeSmvzPoP2td1apWHL27ol+EtIBoCE1J1+96BRRk26irysEHYoUvipL1XkYwdP2LOb+nvBz/GMPR1kqpjXIWQH5Jyq/DfJVmxNFAzhoV0Eg
+IQjikqUQL0Z4nDPibd1cemhI6nL/RJPYGF2o9t0/cjWjfuXrfTMGClTFY+Bdh9forJInMvYUpoch88p+a/JvvNHct9VsWkp6ke32BGrcgAnre4MCxgzs5+/LVjIG5ZRIi76HK+APISGsF1CUT1ZbeG9FeNmMlT19JfYscyrgLtA/oeLnz+tc
+sZK1j0VdZ7yoRaBIQe3Hllad7NSMM+eZauaMCUfiQHlYhIRFPltTgiWKoZGmNzw8wOVWIGOK2hjOVi9QumTjHEb2KeRAjhb0MxWsM26gDOl3hSuIRvyxRVPzEgqMaLlie7GLLBRllXufQ9UM7AXXPrjYJjG600U7owOWv44/Jr1Lz4FvsoJ5
+QKy8cZ1heHCd43xuiq3OXwdYTVBABw4SaOSCpp5cxpPMX5iv8Q4oG7sjaHWJM096DbfnsQAa6d3/s5qI1qE2+oB12JEp3Q2pY8c5I7nGBKxUTmaDt3AlV/ZuVnXxyMV8e+qFYTq5SLdrMa2RQ7sPuHe6bX6lBmZK7vwVijaFnxe5xDmlMRtJ
+fGxmYi0UaSab84TgSD6WThP24povcGnOHHuURUmK8khHmpOp24AlDhSukJOkc8Sf57pSeporKCdEZD4ECzLU9Gqk0ojJhV0ETsAUWp3lKQk4qN9tMnJHpVSu9Epz4/muLOzn8A4TYHbkKO7q/jyRr+tOeejJvEnhc7ORH6PIH8GukANko4cZ
+7oe9apEtv/tnt4+mRh2FVCVctFMd5egqTz/bmvxq3AdML5/JiYiTQGINP8vOlfwvPQK7vOpfzyT0Lkhr7VzggGGXg2LjsBOKBE8Xa0qeA/HBQIggvYG33GeqI6FNG0h3Cg6oi2U58ugcKmpxum/rE9Hf+fYFjZnSD/S+ABg/XJmNAMRMGwq0
+HQx0vlyjGl77010Eyhy81qmTjcTjXcXKSm01YRM2lhU4IRWYi7k4fqqK39BD4ihGyXfO4AJDwY9dTCkq6QZgVOoBrb/QVE3Sc24i9sOS3zFw4hqfsvE/TNRutRt71+PuvN+Eq8wX90fY+/pE6q31LIquMOYkw+QhnjCDKiDLsDSoACXuavWp
+lDpPiAH1Svnvnz1q1QsqOVZbTEwYrRdnpsqjTEOLiojLL3E5F5I5hdF3l0npE+MdrYCwymap5vG3nA3eDFBSrxss04q+GszdYneFx7X3CEahPIKQdJ6wclt5VXPi6I+t2rjRct5ptXo+CNnY8FPaaUi+gdgHmt8a3qnt+qzvkVmq2nMfEEy9
+7DdoGpwS8ZO8jIV3egzdFZEiNCa32DOnJQ83BqOAJ0DMRodnZq+ylsDalW4rQNOA6XfRzFV22NHGhr5CcSGDmkkvxs8jDWM/jv8LJl6rpWHoTRDg/enhCunT7IQLhHt3cg2gxVHAUJ40RvKzhl0D+CZSysUzed3APjuvL4Q9bMMnuV1CEQLd
+uKxvAdvwPNWK+bc7ctjMPlKeh4Qm2lHrql8Cu8qzMQrW9/ZedGshEnjd4MwmCqrEs6T+LmQ6N9O/srjGdYlmNTTSjMEoYAkmEfr7yPy5eIfzQLSs3zQhXv/GHNxEBU1bLRzkG6mBu38ZMRx0J/FAtlEYlL0DngZPL2jo3t6C8QCbtDHNCTmW
+ZI8wwO17B4svvZma2sSoUARxvAFXo6gFb8a88cEQuJYlGSLvNN06wHH6io/NeUiURckZ97jgeQkSmVzmxqUfW+c+DmU23GxRPwLgZP9/4RSkbm/ZXHXtcF14ttGc5GmyciUoz+GFwiK4YV+OAKMqXBG4lA5Cu4FLgCRFj9b6/dMdnFK+F0KV
+q1hGuhGMjGl8ZoGxiGonLKKft01ZaNSaofWYwVRoEWxuaG/CYvoyvHyYVs8uNuRzC958fxDMhbqTotngcrBeQNla2FrW8sSqOEX22qZ9/Vl28gMINJ+raGyk5R9hSynyPkS0SNdnIcarwKe/gLbdlmnSm4vjm9WnIyfPorW09rfzUJ+RG/E6
+XwiQ5RowbyeMBp8e4s35yhRt8K1Ay5BJUU8Zuk1qtjGsFSO0SjG4ujkPSumucbbbIIsjhyJNDorR7a0dQbjr69apmaYjldlZqv6EuAPlcgld8/s6cH4NYPevlE/CXmDbzBeYVhj4tpAmuH3igY9oi8Katzr1fHOQAzY3ClK9zmX3KhivukEd
+pg4CJef2Pmi1MFS4EvN8maT4XuI54UcpMmaF2l4G8WY25FytW7FTSGSj94iy2TntSZQDwFCUfAhjqXpdDaVb4rCdBmkUtc+9HJOLKqRQWKM4zN8kldVOGolNkhPsq8lfwF+kUTCufFjX5hjKXVMx5zxM2o7oF4Opa6/jgJ9T9stPGPtiF6Si
+KrkQ9fuRtioMDmlsacbW3coFjuUdftWEorXlp5bqYrKk0KlB2lMQZ2kQSPRKPcAKI2RD117x/+rAXBlXqUp/47y1soMx9/92PfDxVoWSkJfWfwTg46Fj/iDvnHfmewX9FW64WSGIqUo+LnqccqxUmYesAkkykMYC/YqVrgnOu6hvATdjJ8lh
+5GRvTu53RQD+CmGSnrlUGsCZsHIZczp5NIUGet+r5vO6FsuIgmNypYaO6Mo+VIZpNdXDRp8bM1CMxlPBl4zu+LdN2sxk6HzxZDfJnoguNvhaLRZbOSjVqj1N9fB7j4lQZb3C8gXSmerrjMDABD6VI26WDrIkc7PuzxbsXIFoLNftDUjEiC53
+DOZ57DYXnAAhuG0o5pX9woaT8p+1Fannh8gGvQvPjJ7KcA5WR3OJiES+cLRlfUAA16C94wXZcuVusti59UK86KZFyD8Q8jBoRD1/q9+lTqOSELoABs85JefOhWkBq9iK69onHOIWlAP3aMJF2WvumUSXynnpOHXJQq0CnREeaykynW7mUZDf
+zWuLXlAja7Djmd75um+F9QCf0AYAuA1TtPzKTvW2cNw30uXwQjKimEGUD6s/y6oHhrpXdQGR0W6VDmNevQpDh2Knn1BghbS9nWmbKgJyvL8jqjfULXuRIJdkIZbOfpcB4kHlaQEPXTrjjND+eiPNKsF6SkGMZfiTThO4oPLvMEsgEnjW+xl+
+0QvqI4lg3p9rOQ5RhiYeU0fNM5vnGI8tudC7GtozVfV0m97cuvCY4CvXas1y/KxCiyZ5uc4jExLMh7tSQWZjEEWb+7WUzCngTlaXbhKeoNAC/fbe1r2P9jP/cVbDUpVexZE5JpLULlW16UMbtWYOwmKUIIrQ50gOEqUDDd6Q/I6+8fhC2wic
+djtRplQV2ce1DGU6qRkxdSjT7WNK0zoHJwvp8Zl4xA0pek3X7bguxUGkFCYboX7h70gkoq3Ir2LOn+i1qlRxdrbmmySLkndNBVDeo4J/caPDtoCKfKOGlIG/wNDuSo9LDLYaEUHsuSeqLQudhirpThd1EU2ic+yYTqD/EgHDrj42DxhX6BqX
+BsjYqX/rqNvBCoG9+AiFUfbxWgggO1uE5t9p0CUZPFNEWzE5VgQo0JUE6K6F6JguS4aoe/hkpBTGBGPov++9zQiUwhaJaixaJiBHDxGkq5iGU7bnNpYB0Dbj7petXe+WGjPruAnM2yhUMF5px4IZdHTYVc/9cKLLsqIMkIx4ud9iaQ17dL0I
+oLV1FQf3duP42QTXoiY9NSMCpUgl0fh7mdLIkvz6LXnQWoHrgre+ozeH9ATebZ5FfuM4e7pxF91rCVD7gD4HWn9YDclMAgZbjSycLyj4z88Odc03CCx3hsWzuqsz5H7Cl12zgY0nGjloPlPXpTtl7SB6TSYuB5+aBsc3J1kPZXkGGYItUWLe
+375ISllfD9B77xzcMJ8K3+z8UBfsUrxt6tbjK/1HV56gqnZkQNrPCHPYuxMpFzd/FI5DKO2rucCMtiu/GPXjQlih7CmDxKIXmsokm3wapVa4dKfOo28xGcreRYmY4qwNKX0SYiM+o6hHVOZ2okqcBnjnQlZ5dkijN7U24BFMIw3RNCYqWDuV
+MgthgnvcZQ0t1+bT7hs3uftn/9LoSCuonrf+OvfD78aBWM8WPmXv/cJ8kfozpYbuiI7XsduZ8Of3UDOvNcQ6fs8wCon3lH91N78Kz7jcwI2pvSvCnZfQKorw/4Nj9+AfGP8EyNyhR1uSck1+N7J6QiAb00lwV6FQqDPDGdXDQajxAoKR9ER4
+RFn4s4/mbM6ZQ3FiJEW1ajdnFA5kKN2UQCTLE1VWSm4PZoRmeeKkVMzqpiJSRSNlHsnBWuZosRHpre772Hdu6MbYMcWcA0gaJ2sjxNTwct0RTWjNE51k8Kd/4gicWBT7yZu+6CZBdrDGUwjWMtS8q4bl+3luqIpDq5r/yBmrsXXnlMYSzmor
+YnnnmnxXBu1Tn9dQEDafsG4l9uMcSln0TqiT2hm/Gbn6fuX8KHTw/AURuJAQ6dXGGYWBgP5gXN6v2YdxxBRUCRxRigFY/vTvnKWMfOi3dk7AG2TrHg2zNQNxm7SmcCqTEWhrwatOv1NOtuM/GeeFXDe48qGau0XeQ01QxocC0uZvH2tG7aNG
+3z4TPQKPLE3engnbmMDiToJowTZNl6iHcXwaBeOT28fBshQabAxqAQu7uQ66K1J9g0pDW/ot0evoqlfuIA4fM7D2nh4WQfPBGatwtpwLN+Cv+VDMM6LuOg7D6Zv/AFrstORdokWF9qxZujT9cQzbCN645C6NufeU2PAilXP1/4jop6CjriBH
+auGfGQ370pufVT1S2hbzFt0cYhYeGKcJC9jIR/Z2ASkQeAB4/JqdiBpZTIRrVLaZbrHtoKwLhaUhd0fftuuJL9YTSQqScMHfaZ2HdYRkYKUSBfqOZTAxt45PIdeTexp25O4Qd4wfzhCres/A0Zi1lfpZy3MUTZtm5kuZ3F8dUOOoT6LZxCeS
+AML8Dmk66DvHip0yEAyxp4WPN48faCXx/imYuuZ+6K+4cZanZKi0zBbtt2PH556gBlqa0iyIGVGPLXB/8dguBF5GTsH+P747bcN83VZ9d6WTcEoWZ7S5VfYJ2/YgBUITK5zbLihgBJEiMfmrA7zQtEdgTR8JfLRd9rPzXLldEFqq0tNxpfJh
+/COO0j1PiZtMSTnN4rBcJgWx7wmfCBaE4FKHbrYYegMm5NI6worfOiMVYdTlkX/Uc30QQvaO4O6+V4Wz+oYOFKc0x9gZqNKsh5a2C/a0WTeq0NNn+gAyqYU3T/W1tBAv5gEXQl1lB+ZshDBrLO16pPOe8yid4TASmEdvbPzd/QxeSe4M4VCn
+77Vg8vM8D3Vylgy+ksEWrPQtfIALpqiiLndYl38MPrbBTB9clN7I5aiMB2hs4MitHeNcT7EUD9jNlZH2GRO83sjI2xY9HfaGIlGcnCa+MiK8F1Q0f2tsyprqZGlyczcNbv4RbpFvrqlvyIjQcCHB2oA8wYb1D6r5in+90Q/LcPSFgTH0nfxS
+dB2r1osxQmu/UfXRw7aGnil0DNAXhpLai1wdYMZMNevtyR/IOIqEpAMjUgjyWLYBvzUjlgrY8PmqHh3ynSC8/23kmJNoI+/MYfMS2PxhSND1srGoqUUqUYAtM1ia1jOEEkWJswURUbLKYB9bRnBautIUK0THvsGAYT3GBYeIlWoRdUkC196F
+1xWZ+MkVrTwjtO9SiAxoq1i1G4q30ZIMZngutczJCuRo+UElxVweX4mV+3UfDM3tH+YYegqqN40CIHMF+Y21a1w1U8YnFY53+Hz5LrWQEQfR2St+3phz6kTH58PIclJxwc7FVE6yG6RNKsAKv/dN9frHioSh+jTrOkSOjzHog8NjxPlF6FjD
+AXimR2SzkJiL3h2IfHq5lbHgK8LVfn1ZMExhTR+PxD8kJjQTg0q9D4XhHVgxmuzr9Ni7P+Tu0gc89MCG6YXucNApnNaWUDl3TM7ihQD4ZIqNAx6SHw/H15/OyQ1DDpdvLCCQ9E0kC4WuHyJ7ryms6/31EKdtNwS4y3l1eIDASEm30aLM2F1V
+MBYiCt5U4wq6cxnC23IunBBD0kknhVUl7OC9wvLDgxRrJ20AZtSZAHPqLAvOTAHMq5oVgQIMfTMWAIs5aOFO9+rqMOHBYLB4PtK+WhJmUbRsctrr8VyNZq4++3XjFh11O2tBvnr5jrZo6/TWSYHu7pzKfBkk/H6KsPTLdbKF2+o614F6tDDk
+h6yymm62qzNa/Rkvr49tbfZUpi0R99dDT1V4FEeluTryCUk0JgvWtuHY5I4S7Ii6NGQubWMK94qruqPl7du2qMABU0Dxal0+uInduEmE9Qdhb1C6icBVSdZkRP6lBgiVE5WO5naVgLgkxUuuk+PKs0InKH8+J1ftX7rBxFRo3jMG7fw/lZdu
+H1YLIqeInFHd3/gMUcmBmWO8m5BiSm5KV6dtqnvgQ/e/39goGj6mUjuoN1upCcmAv0FYYojRdlin6SA/07D3hZCApi3RL6gHQ9vtKvDzOXYbEDr6xAHpS5YhV9KqEqUW+oaqa6kYUwXeoE54HnrJuYbj2/31AaSCpTx9PF+4SvFttT5A5Sye
+FJhcMyNV8J9cIQI0Lj9ij/0GkSkm7EGDoMZchakneJKjOAM4+RY+yk6yKmEY3FC9423keMw4SJMKssImXemGC1CUr6RRhw6ayWesWGUO3lFWoTT/XOZdnOLYNFwlLMefCaAKipXkdz/HJ388UzAwQfamHSkRhAQ4IP/gkJdYJFdz3EgwV8cu
+9A73r60OOwdZrekOdDmTTYX8xBdx97OHHJQkfEHbieh0AFSCIU+PRdpfp04XLtmdpxw0nlD4rj0IAJBze94Y+pybvp38gugH5AkiOuO7NQBYfQ7Yu0FOucGSqr0+Li8cnb0sgnXUwo6RnatKfcUPq2gPo4PduvDWtWP2xwiEcNH0E/xI0AQs
+2m50Zv8tkPL/g4K68t8x5L8q6ZsczI5uighCY2B47L4XkL5Lsn50CRROBF4/j+hCS0OY5Ej+5jrfhdC9ClEjCzS3APRjoB4O/zcy24Btv/rEEvVLJeV/+hnQg8t0uHO9QyfafIkM/Lh1p3gw/pgAUB3nxZ2JITrrCpAMxhnkjiK6QtnsFX5d
+UAxn5ToLOkwvjnIFuhB0zXyQp2tEKAX8whjwM1DtLPsLR7Sh0Ii6YhXoVt2aWA7yQ8itaanoYJwJTbKhP9u2NVK3w8Z6mPH+1OEuyvXceqwUsxqGXI4a/MSMe0g49HA5fL2GW/RI6sCqYiKBXFobPOeeD9DVMHu84wAKBOEef8Q65U96KEY9
+m4zS44fIfqKF67RxtKNwHyWqKSP4pUInC9T7F/EAVPW/tRsqQKJ9XVHDH/HzXVQoBT/0CTwg0iVVocs500X6JRqlbqG9zjleeVsAvLTxEiovMCPaP48tZ/ZSiKaD5Z6QvOgUqwxV2si0+hvIqFkBON/TCywTe0QIhQNblDgZOr2FRqyxTuiP
+tLjO8Y5plJW6ewS0DwZ3/fhKRYozISMTYZgQmhkjZKPujq4CKdZZFcGnYf/luzcA3hFcmjC1RwCjotnyM3j5gzY1NLf4IjL1b6XNfKYm7Q0Eml8UNBUjQX19FBPbO3N3bwgkYwGuUeu3dbDQ6PCZ2NoVvwuTarQIleAMF7khdFFrxukj7rI2
+WP4ub8F6FsGY1CpmaH08OKXg3kgAD0paq5U0OoQejCQES0cgFZticfj3j/mG2i8+ZMgMyYa8tmWOmPhvEmEj8pAKVIEDo6BPnJNOuwfnfJoT5sZgg6AWyjzYuLZv0Md8gzhTXba7p3Di2fngVaXU565QDNUjRgENtTNI876KiP7wNs1tqneI
+w1y5HXoAGRunJDxbPO1wwkZkB2lHqMzShievU65l3n95HIn62S7Y+o3TE47VNghTKXKSdmpzRHVP0lKvbeQG009yq7EWvVLa5z7JCEX3gB0IKdyFqeSCzp1rf4U8hfA0OxioHa9FUoWeTgZ/LAVmivko/TQ5IIR+saMaid2QjKcWhCWDNK6y
+6TpcIh7lHdZ/MF4Iq4E49D/uha71Bu6AXjA1i8yvhYpL/SW+E5EiRc9kuQ3mkibrFZXE/ul/gVfHuUSFoi/vhb/3QKsCmN2G3rLWLXb0VCW+1ZOr0/VvlhOYbVWR0jlNWSFKU8v4KBEhfCV6ahIBcAfaMIC41rglEUCFcnRl+YL5HQVUQBGF
+xCb2t/lgROIlpu+vLX23LA6XOmt52NqiDVDrqdKQbPwilkWJWN0iNVlJ7tAVjfcDXtnh2ed5fkGmj2dS74IaZUBb6E9AGwrbN+mf6bCaGUNtPWyqsVHbRrK6bEw/L1ayyvXCGyLstApnZJMsvcgZ3Z7cNp6VtZ6KZX3fD+8S+ca904RLh1EN
+4fZumul4vVOTGZHyp7yj0sq55GdnE3uovbS7iIlEcsg0BL6pB9s3DL19VXVMt87Cwk3GapxxV7u85TwUZA9RCKURKgAj1qtjsZfmLjQXY7dnmkQBoxPJ4Fn9OJZIFDqaebA2Tjkvt9m0rICBCUHPZpcm+PgDTn6QkkMSkRXuEJ/AxEkrRfB6
+RM2XxvYhQhz52ALaNhGxGJxtdiXaCdWjUoullx8KaMWmhXETrUflPDnW67HGbG9e0t4LusEp4IQtGsG+7rBUI50dkV65ldvCdvOh7gNOmRtBSQfLdda3GJVmp9qNd+MDCWADnJdds8TnEYrTdE7qrVk/4oNpMiQ3043MK4DJZn/4KWqDwuDM
+6+YYxckg/NAbRxvsUKhsIQUQpXNG5ifks3bJ1ieLYZkqaFyUHbIrHbGeMmKzI0hKP68dg2yMWYV7iZH61Qaw8u1cdZcWXxlJPvIzLGdVkJc2j/7Kj0JK1fNBlG1qEl3WNxsvcJJuWIlIJrt54WNj9jKAuEIHc0TAQIQVO79A3ajDAaNrZaQG
++CZzVWF1FPXu1vi5TsiUEymC0z6AT2HulgaVkC0h+nw7e7i7J46v+m1P+5/D/Kqy4PUFS1CXug9FQ9nmj7EssYzZELyBH883zVRtU9IEkUoLc/4u8S3QULZgvwI9tbshwtfKkZX3h5OoXSF5y/TUA4gEaJsPVAaMvcMCHPhMKsmYWRSrc3cP
+Nr34UybSl6owkJp0QRRYEDmVDGiOBj/sdHNFJigTD2VI2tmPZsDKzn2VvaLhFuIeY/DNe92diaLucUpbTz/dUontes9wuqu4QGJaUpr5Y3Xfk9EBNGhyLslXYnbnbnxduR0NQQ6xr5I7GQMp7Mr0O5ezFtm/Dk4b3h+6heQ6dq0ReISFwxP8
+mFqfDgV3aM3RoUjKmOkrVodjEDMauW0INX0QQWhsIuHreS3QGywUkf60m0XUVCLzFIqCOeOlBpaXvBdwZJELpqyum4RYeAF6MCXX9/kw0bYev47a2754iCvosot2/qD2crL/mdQ7BDn87NaXhuLWSAKghRBzaw0BXVej99XZUi2Qdixk/JE1
+dipIMyZgphJekGELM6o98cotGJ5hCtWcktLIqYAf2M6IcxJcNh6qQ1/rrqHG3D2NKPhFrKx90AfWDfTtvM/fKGyENiEP5byhLHAssIbmQr6lpR/bmkX1y/n1zv1Cs6/C8At46YBS0XszjvaNoFD+OMtvPZ2zntxIiZj4ji7EuykRsjOuHIYc
+srCF/ICnyJ6SlxWz7eE4MfjaJW7oHbUanyP1ffJrJCqGHVS2XVaduxYdzIaOyo/EyCKmrbfnoktVszt2oFCWLHc+YprGFzcXR+GrcMjK8QFTHumu+Ezks1j6Aa4dtTW7cZwDu/kECbArLP9O6nCsd+1uZdXlnK6Qje1iN3132OkFRceIjB/U
+H8E/RzlE4o6LHqjJ8wAqTjeQMHVtFMd8jBqHIddCSRliaHOMNeLBNW3KyFaVqkuP4l7fKTeW5ox5VQVHtrfv1GEcd/RRr5uXnH7BWt71PVRstDnwBdrNsprvr3gT/Q5yuQnsyBSNVThaOPlVELal+6MwoqscpYB71Ins44ICslZZONR64ljD
+DgT0W2vZWEmgjY/Y/teZ09YXN85Ohb44sAR7iyHRvmcnBKfDURgRqnbWJ0rg6Fosl5RVDYN/WUrUuJDLT1T8UnkqJKBo4h8kMHxnMCgXGOVsotLgsKPxcjylZZHFiaJ4zEE9CgvR9xQmY6RluzXt6bqsuxJSoLBEoWtGmZFRaUZGCxi8NWop
+89ssSYzGesbUEcEPyMaTDVv3sI6PFRd7WdAYAPSKkCKusYtpBDV/pKaSvQxTnao4LJxzYUcKTxKoE/phsmgtlE+KnlyB8Piov7y7i0HQBOtidlixXIL/bB7QGxGWtbnJZxtDOV//bK0lYO0PdjgNHlWkOa2Yf9tGCDQjolp5BI/MMwyJY8Ap
+QERYfntMefRZ35Ei2na1nS+q2lcLjo4jKCOf+GAJymTHz+l0qnhIFAmTd8zmVa2Vhys9eh8e8XsWiJOY43uW2I7P1wwQJdRJJzrs8FnK3ylNj5TUDBtsJER6uAm55CqZpVFTXFwJPiyd1wd58tXYKMsAnD29WTITvIP5xWp2TiLxGsOyqfNS
+e9Pkfm/4r1oOMOIbmmZOLC6KlzAYZeCLurP0NqmKmz8AO0xhJtRmC5zw0SOO/M2GUFr/C6vVkwijX+DmquZn2BAgIjk+IZEt3DvVnAOMIED/jUqokH4Y5eLrreue7O+agBNULO/6P5GXDF6UIXHy6NVDsnBZf0vJgPzIO3ms6Q6MQb98qQQg
+A5i2dC/HIEYBqbL63S58B79AG1rrAsHbeec2wxO6irLhHWeIC5KPjEAjec8wIXMft4weJjAK6Gf8Cwn8HVrSxA5PRI/L8wdjz9eF+WQHtCCZI+8OtW1Qk19XN3yMM0PBXaGr7E6LPiIAwana0ib4ZkmFrrJiH2DHKZq+lxjgFFdU7SAf4BBl
+K+IAS9xLSoFyOfmNJLwuSLkytNv26Duk6XIkI5deRIEwb9HOYPSyVU6lVtprnTzWqsV0cOxLqbfzBeeAWzgaXuvhLzenX/ZMS3cj+fSxdRj/PEZPMI7Lz7tRQXsFp2oGwUo6iB7gZIr+rQvgylTGLt/zftt27QWQGUCtJXs0pHOOW7q85iYX
+oV8ZMrdrVFm2x9PX6kcBAgbC4ZUbZ7zB4a6EXdQ1pjURT4wnJg0exyXDRvYKCCidV7boNsHtZyL49r8M3GmqCPvHEb8sTLDY0soQAlnOvUdxmDw9UpYYJ2dLj65rSHZdmyjuX0hCfG3CUqTkudx7A5Z5LsIRwJKD3cBx2Z7wbr3uKmwtv+BS
+c3UTXFMTogS8Rnwx9HEvejqZATdihj1+pv3+GqcAuk6tBCvDFyHQ52JCPJSF8poB5MEtvWT1iH2cIHZPpkkDyWV+MGNrE6a0fSlVg3GRLBIygGgCST8lcwNWtvpZCvplBXkQq1JGyQKxfN0OqKhJaq0yYIHS9xMi1DGkiuaHCuGdgekgJvC7
+66tvBbeiwYWLHZARYBj+mtyBXjRcqx5pNFMcdZYiHw0VzJJbIpg7KETNBiINYiaS1CApTvg5lOzJ3DKWGepiNFsxbv81I9d/7UoJ9l1NLkd/3bDK7XAlBEtkiJ3TBzZLmGR1VFcNmqDdXL4NjdSWzENKLXrvGpzlFldhWkBn305E/eiN/aPm
+6AtFaMiSPu868XD5+N+43yhL4ZqOJczgczS3zreYNAs2fMA7EVVrc9W5eAXmOvfbocjY7xHanrSul7u+Kle4GuKrG1cF2FOQsN4zQft3zUnLpLEUS7PwK2j283Anym/AWH+eXnLEBAzPrX38/NrkbCzHBDL+jnRoRveRiQEOyFb/FoChxD3J
+a5ek6ERtImjoJ0jB+oxehC/lFXjgfKZvVg0QMG3FPz4Nvbq6d50P4O1nMYrYcKswnmdJDiPVx+u/lpwXgmHUqQ0py+zMLCWhR5xDTd2sldEYtqqVYHdoPdHO2ltRQl41g6FOwQ9l3EakPYsXPYr8swlOtpd+B2xYGmNportizg2ZYWyDevbw
+rEOp14M1IvW0SzpjhBjtxilSIEbErg4AMtLt3/nqg4gaV0i5RTbjj5mXCdeo5R3iq+jeWyqcB89kQD4GH9P8Th13PLgG2S8/81Lb52G7Z842S0bkCBThPFGsauPiqrmxV7e9q6rAI3vX2Je9M+jKaVNF9/kLr0pDLE/+ZA+PX415tDLLiyCT
+D+4O1yCb7g9U8nRW6yROnaSlWkC1gK7wUJxD2otnyp9VozgwX9RXnYSYstkzNucAazDr4ZtF0XmWXngmKlZgAQNOabpYkNtr8CJsk/2FglGbr3pU5oRDiWzwCaSh+977nKDqWHD6EUmVtPpLa12t7awKSsu2knYQ8C7krVNhrciz1BNpCeN/
+wCVNqt7+e7g1frXpNV5PmYrXNZ0VgfZsyTnT5wFpxFF3Sz/FB+YIyMORXO7NkZn5i8BtITj1c8GluLhFEbD/2I/0pcagB9RgMwXUEbTbXtT3nn5wofc4egV3BkqRXYRe7iQ516+W6KFhjxFaptGB+X45rU7hz/KgmxknffnFGygyWsmvbATG
+3VF+yLu8KH8TtvkTpj99fVD8vNZOdL4vG8FKeIQ7RLinZ/WQLondlAHexOX1x/LaSLtsABHm5uUEsBhBpIH4LQEYjEYeKKQ5/soDEYjSmszOtG84hZ7OvUYgCxmHkeYS3XPgtm+mXhJUM38xM1KtOvDG8ckZNGg9BmNvrnSHczEC2RptJ6i5
+0RAlB9c8BRhTZReEH3Zf2uvWFkmQc4EBIl2m+KJuMYORnX+nWoZ164jVclDN1SEHZ7KpuEvh2RC4OOA1gbbRRVEFkCJES5pVYAVB+LbjtFx4n+L9X/g5mGhexTlzuVoPbjRoonj9myMmfO4igy3TJlTHZP++Rf2cx+EhFjFH7Qvf2RDKbgUL
+fw8UZQ3+3gjTw8gQrnLDn0EzISrKBkR+hwPMrZ8123InloDirZ6Yayq6xXsFJE4D2ftSSdi+i/O8w85aa18xUotrUiZ8vT4crQL5OKKo6cWtqc+n5EJ4YT0PuMHxQ53n+e8hmhfYDqkKKLa7IXE62FQYLrf56Mf3qVxp/zXsd9mUopwFM5ww
+8PwHz9P90zZ3vdJvooEBdB2qqQnCrQuC1ibOmObVHnoqlr7crMaXJ733kgNUXABF+VmyRoP23c6YsB6NrEMu2CzvO2ACJ6jYcCkBNcQQURsX/ZrY/dVEZst+3yMC8E12CnaF76V+AmA4Od1XYpQwd2h6umw7yXN3E4IP31p4fV5n+QwD2G0P
+K4sMnL0KP///dJgGotaQFlwcYuEu5eeKjtISu2p02uA+EeCZX3E6YVqIkpuEUwh1l5RP5HTl7JdsT9xaAJpJa/zIqD4dWVaMV8Az+MuAmhpxsKiVwLjL5cjdKdaIQgLB9rqLM2G4n9geTC6kUZdZhaKnN4iMUpKWn2K6tNP9IAkkz+zvAegy
+eYQsGYsm4x6RYvZnO1YIkWIhIbBK8onfsRuvSMjKFTfIkJl9Mpz1G9jG0QVr1AehniLQp2cJ2asgcENbxyqLPsfN7pXMaUnCMF/XMquuwUeUIHxoshU0rdX27QLi3b2phXuwMEe50Vh4Gtw7KZBDQsDruR7Fx9JWp/pPqSUB4Gm4kvnaHTn4
++/ZP6mthx9BIfV+Amv0EHe1iPwGFiLeBLopIoNWNl1pMZAm9JVL07wNABhumxy7L3KwDtmg3cZM1oO77aBYUFkRAaDdL7sgfSQmjUNtc2zJ239eozCgoeOZh1flZDzhwnMBoRIR6d6FAFSOVW4LyqT7HvAFoEL/zPgj4YS3keJnPAvqTRW9r
+CsyQ38CZCD1BRJjsG+DFAVCqB41AdyY/LF3e9e8xE6ryUVhUTl/GpNvjo2dz0gyHgP4U2QEx2fNKp307nBySwO0MvLhiMX4lThT9SQSsVKP37fRxXifuWydviNBu3P4M1jhvzieYPJv+sCCRrskbOVMwZQ3JXDghkRuoMh4RovFlmkhoF+Hg
+Qu7FeOfCJ8UnuLr6HtfV69cCx9re8S4PgTwV+SYk3rdT7QFoHi/I6uM3THR1aLgrNJme/2BdKAHgqXsR0FucoFTQTzjz2IcIUXLXbVOdvJ3naeR6D8IgN2LkrdwHpSQi7K4atJgrpRnFxFCDM2Umu7NqDvBmkzwODc/JusxseLjENOPno6i9
+pHTbCzC7NC9QmwraGiYhD5OF8GduO0a9PdlynTvRv/ZP3ujmmFvgpTqlEoZKhDKgOPRuOkO4wVUi0Na34OgmiSV4s+RIhLVf5FBI6zS0pVq05AoZbeW4k1y+DG2PTjnXsa763IzhTBC8Wlj5Ct9PfPkgLcM9SiWdW87VWKoscClyo2c4wFca
+RBnMMJLDpuTnc6ihvxyBsd83V7UMrB/J5HnJd8V20cjtH48ByPx+y8APOl21nYT4ho90IUHFvycRFuCL8IR6T9BQBB4PSQL4quIIEyREOcIK0KqA5YcUcJ3DYDfEgujqawrCZKFFcvKdOxjJuZxaly4knZ0bd1mYMuDy5Ef1Q1A+sJttDhnn
+bvIPfWM5iH7uJnPVzIgVPwZ4VnV/Ipp26gWDPuRBj7yw1XGgxTIkgnZQRJbVnlkAYWA0LeG+pB/4n/LWjC+4rmw5skb0SBixp65CS8k2A0J0ay785UH9NGCw616yVvPv5XYojpszODeGXWW2ALQ/dh4XNjf5uxeh2/U1qbFW0C9KXsQCau1f
+WJ2WCnXGy0aIxpGUA+7YN3Vl44TeN91L+JbITD09JzXE+UiHG/jgtidfxUcNpG/0LYfl81BTKWZCDgFjdSc2XV67b9fkMJ/6VKJkexvHygMlIhL2IHFRss4/GDSqu88jl3T3X444TqoMVpU1zmtuhVs+35smXaU1BTe7Ja/KyxfiatXSZcbG
+SUzGTr+I6xNB490g9tiNFqYLU6fSFLkVdy913ZRPQQrQA8mjcyTi4ztcEjhRrFLUAKzvlb/Liq0s8zYi3bcHeVjhdxv2gX3xgsn9kWvZNTkp8rBtTNnIQxPk1M1GgaylBqrzFuNcYaIGy9pEqc/QtWq2O0RHlCbcAFUQQlhfklH8fEq7lipk
+Dwfcv/A6puLoGrODdpfw+KjJyg8M4KPhMbWs3uA+LGnrXy1R1dhdIam5H7j2F2TkTlrYF/OVmyTU4xmIkZd98PA5bF69w88mJtx7iIE85G1Xlf/Gr58R8NYl9Tzgz2zFy4cXKLyD+8G/8dsbSZL/azP2dpldDDp45d3EgJE6D//APRZhxeG9
+yoRQl2WDZpgYjES6DwYGvNoqH4NFlQgsNPY8T/ufJ9qDhfEytWFxoIFah3aJpURq5AwJhsYYlSo68ENWe+hJcXuuM5zokqsQNxk6YstfBnguSXUW9a2F75Ym4FhzWpXpWeeEGdJbmhpqfxeeMq21pE9fJjjxM3ss0tATR1Q+vF6YLDFISZ01
+V9OGqSsiXTwIynQIgb/UNfkhLAQbzizu4fOUaWCCAhcnPxe+5YyqPw4cYDkqO2ugb9sNlqx8Cut/Wr+xvaWzie6QrKjdEUSWS5jeYuJiriO2dp2zNPi7tn3BYJg438ahLGMubvcTZPVV280RU8NVOj0y9dLQc/k42+0kEvNCmjHnA6JWLKQz
+pXCKYSMLq0XwnIVoQRYz79bZY5/E6x8FZCp3dOJSiDTGbl0VNzwIcmlT7GqzMvq1byi11uG4E9joAzI2blWKVHY+mYn9WPIXuyfSiwTD2t1DaycAOdYka/CTgOWXapXsXFqHA/R54HLusQ5xPdte2XirXaledlMXU3bFiuS0RH6wMEqNe4Eb
+huf/OIWSvhwQ5HgT7juc56FUWHXFr3/MnSMeApqt83pkO74l8TyATaLnllL6Uh4XHO4IXyI+hBh3Bekf1rARwAgm0jfMTq8zFA/kDBV1cvxTtJDWusAc/nUz0LVpD0UVyS6b5U90Reu//LmfgjoJHJvuRZCNl6o2NDfF0CfuSUk0IUQYb0sa
+2uaW44N89YuUMAFj4GFqKJRTDRUiztOaqr3sxgMCISXrvfWoSJdnLsMqnIVtcgJFtw21X6S9TdlDakLdieBJaCZuhGBEaNPzWVRDXqG4S0SJXLoI+hHS85voM2CXMCGlIRKAd0yQcUG5N/d8BHQ55YEHspedcBGbLk/k7/8DaUoH2h1ZjGZ3
+in1eYyxDhX9/tjoYWvmLdVIEevsDhIy83paNah4Beoa2YMSEhF63Uzayzs2fCftJgh8cBvx53qf5XXzG84MF5mNhkdQHQAaNt5/PfrH8IyYKpUROqyjsBKrPR/liCWdR9oAZfAtF7zrMCXHqzVUB2Bx0dzprPJV93cbHinUaqWwHmKZoonrU
+l/mpw+KF4NzwCxjVXZXiPWpw/DnpsLPuBTzC62o1waKkRqDCWZrqquamwd2rEBSNtkEerGAYHDStD+okEHNpxsRpmfiQiWneWxQ0CAp39QDPUnXn6wMOxYXmluu9Fby9bMucIyuJ8ZkTUBTIA5noEsfjccpm85KDNkrUq2JQK8bZ1QSXqCEP
+4LVe1Wi9NKluzkej6Hl0z2+tdKf55y97k8I3l6PH//5RPYphn9Qf4g8/o4Gfo44BYtUqHaEAuhSe30UnPsSZlRe2X5ZIWNJzcRDo9scmMzYsb4gNwcPqIQBwzcpOCV5FRRZd3vwcb73l1q9zabCPPgcg9UuVO/WwI65Cyjy5Rnio59Mir8ph
+KYwEAwKGtr5jBqOB/chfMzJPdEBkdqWHHIr8RVhvnAzrm/t/spbTMnqznwcwLKHKooMiW2eZiOeWVokdPcD9X0R4pZmiBhwensBo5o1qGkD04AWwUzlReMxGn+sIdBe8EJa32AVqyVx7B+DRbdMzmSv4CUsZkNNw9tRoRP9OS54IANWjKEvm
+/wQYKoS3hOuIW06NUL/YfF9YxACnUrP4hSM1M7IuUmBvWbmIUuNpX15PBvThf08Es+cafjtd+WIkWXKaNJTDecdDpFCvnUZHpk483HsCStJLj4UlK9M7dXDsceLRDnRPhc9Kepu2g5UtDs611XbZmJ4rncYuy6VGffNxl1ECxH3nR0Kvjjmt
+3rMIBCbgnP84zUJVEMw48QV0HnpvMfnz9SnbZ1VVjAwUXbsSbjNmhyP17xfmpccwmdAa5EHggqGlvOnfOL/JHdROQx0fh1NBeGRAiJ7ai0wRDfT54F2JgNDP9eUKMEIj0Fi/1/T6Bz7N/q0QFj1na/L7cPH3ptqwYXasvZZIvwqdbQ7cHoTk
+eTuk6UwPX1KuEcRTrjy6Bvav6oq801rpQ7A9yftvOSiHqt+r8Suh3qkOd7i/CZxSIVsVVmUExbgigzaWc1SZekA4kbUw+Y/WgcPAZOhSF9CTf8ScpD12I+1k1evtJLyWe2AH3hDnIS3O46yELJ8EsVmg/XXuSFTt1DGKRs9NQtrU77oQbORE
+mMgQimDzPoKp/eEbyaTalhYcYwTJq/YivCK1IpU5Kh3EwqcuPhMBw41dBh9+GStSyR6R0D7qNluVxUE7+Aa6ElJ9IlzkCpa539ufgBRA4OOOdQxoaIorP9L7IUuUAkb3dTnuWjfjNy+SqGqu9r/W6hipBDRKnLNPbHVB2Pc6rfOY40Apbmu8
+la96xT1mauKjF9Z/S4JqEvkh14jx/9a5PLQTHXizGmuv0Lc4MHbZ0hPZMY2aHdx7Oqnn1gPfl5KFnzhIQ8Un04oAWu1ytphwCNiP5tcZ4WtgOBBix7yqFvO0NYyppA1NqjAoxv1IyU1cknNqPa40nTSJ7/CBNOuS8WwokWm4nvzMDP6gL4Eg
+q6PPTEfzWgbqOkwbXp52ryf5M9KQy1wS5f28YUzawMHiE3Sui6nwk0/1zSGyUzfaWxNzR87oy5i+lP1xAk7WV4uQRFhud7DjX/IezmMh5//Hjmt482UB/fGa5SUnshl7gmBcqBaDdThmpHPNSrgEqlWt0LBzSNZLf8lEl7BmyZtJdrqouaV2
+Sep5W2ZBvvmponiCjU03yPHPCgOq3X1hFJNriHJoFXH8y/cntuREZEF8+N8fJke2oJTsmPekqP2hdEiVWylQ+McQbWB7C44PQrifGjCtCalCfsjW0HJlE3h2XtIbQIMazUYqTnVWqw8IumCWHarj2CJgnGZleosxLzPnNWSb7GJzkGCCI7GL
+ubi++DKdiZlsFcKHKW+a1km7G0WDiHv1Knq4Vpy+3k1Kt14pOVc9Prmsb+iBcuvDLXLVoW86DtxZEMeEob0VP3BE9N9XF1zZB0Ki12JjXXzwLPBlVCKNAW/wT9AHlvAIffxm4dACLLqZ+p8UUHaKnx7hRY+2ifoWw1OEpxTHHi1h/8b0FxBe
+zk7bHXsihF4RHk4veAEVYWc+QVNF/JTci9d3NkLzOLuDuYjPO/c2ftYKd/+rLIIVy7KfdZHBoauo8r5kKxuaLToyzuDM9vvZw5CeVXlfiB5e356eoiYS4RLdHyAsWi+rS7dAHNmH6MHKkbX1RNKvkdz+OHZk/OqSoyaFmUeGoVxyAacPCROx
+B8bf7jkOmQJf6gb8OlKZlCiRk5qZOi5zo3dtLPoYifXlFTpNyJ1Cv3mtCi+xwoE2aTd0nZRtow5YMQsZMCw6HfU+5x3xdpFFY1mFaHmjfWqmYjcmdi8pzyB+1lTdRyoN4B+Zf9GAnjohX0P6aKv5IEqBTh/KFnG/6UOvT1176hg+lJVtPmpr
+1auk6fyhHzktpqPjNX/Rf/5X5GwUGc9rvSFRUxwUPjzxAjNwamn8JTN/uxUM/rg8L5EhDzFA3y2KBNPypL+ozP3en8CnYXPBF028wx5wnWu42dIMvli+N4B+9woQ6azz9AMZTLk9Oh1Wj/EURW7tdK0XniH72BjflC37OK2Q5InGMdtuZORh
++s+pss0+U8vKn/sWnko8iAHuxgylWRyIwtpV3OXdmEnQT7qFyZU1opSxLfNwLcCBEzv+E+plHps5liyzcucX1SvVxBHxbjujKIdVwGhpepT3BHRBNwi54aqnJsln71V0p2/TAtfA8IfkehfRd6bJcz2GZ+P80kIMTSJcw/Qip77OUb4Hv96E
+HNa2x38wDvHxAzVCAJieZgABw+PSCc+p52vcIx402cfBCZR52HV1WBKkJF1zh58RZPWpXUUqR9JWoEG8jy/9ZxB2aPOW6uNCrZtrHEucsVwtdEalRK9PmwT+xB93m+AXbFcLc6G4GPWAF+BkCmEzs3xlqMrKwnX+II1GVTLKaeK+b12R7rCK
+/UXSaGXwE+Vn9F4Q7nD6bOX+p8Aym2bBBhmq+PNTcJ1Ok7SdHj7lXbdeWQstSpMWYXxSm0BRSjRRRj4pGbb9qlJTxtli2jAyk3IRUphkJJKbMky42SyNXWhbXe9OLsb6F9QSfxtbPBXOUfXn9md7RMJSOkoE2Lh+Lfu9Coqm+WhTcQCJed/B
++qPPhkiJh9pb0Odcr01iZcdYrE75DKEdVLfkbmlbw1ZRsCvKLjY/Y60LwbS8eh8PTftMQz96n00BKwsDFMNGGtVAYHPRxvFpyFJySacz0U2tJtVybTAs0DjKCEjQOQuFruX8s0FH9BAEvrcbgOtXss3xieFgktDdOkfzoaCgsXqLLZwCw43B
+YhodjxklNHD8TX+dQ0n97zFoxIN4xgyrjkEphkbA4/QbSuxThpQs0QfD3V/PkfJikWa5x+tGpwWd0WQlH0R3j2sCO4DSRSukWFRK1C9xQ05ZlXOa0UDThj8lpVsgz36XCP5dxrbbJRlM53a0Manz3zcW09mvQGLnOSeKxymnlM+cChIcaDaw
+wqcKSVjkX6eZXcGeNuBtc+CMkaG9vorkWYVuLItfIG/3sDkuh8DRFj9mTeE6CpyXv9/b5QewPTKJ3mul54Lfh1WSSa3SWSlOS9CIEH8kusXqA74s7Hm7+DiQYsjLemYH/mxdKvWow10D0QJw7MQKajxJLzuXBRLkq9D3vEPGbb+m5dCEQekh
+HJ48n6PYTwz3h2uI7Bt3fOhZCUH3I4ORVMC/ZelCdjauJAQf/Jzjl2KYj8g+6Zwy5cdyIzCqiwWSR+WoUgOjB7YMKuUnBL4w3jxaqJGTFWldG/a/yhihEFT9tVpOidcJjk6U9/bPP2uW6p31tMSJG9BLrBGhHqmRZAaIUknXXwqBzcQ8xdCe
+7Tpa3BUmUivK1hFhWmqBPwqu4clk9gO5iGXeZp5vfFP7V6tEDg4SyzH32Ufs5elc43F9UCCxUqicnX4ShypA+I9B/Ge4KuLLHLqGg3zwzw8QpVJ5gsocJqlg272qDFkIV5/4MEOUeaPijlCDMRfBXUhU6AlJ34/AKQ8O2FQi5C4TFWSdtwC0
+axwLTk0zHoxvgYuyOhN124hX7RR7JzmDtRKF4PrVyBDroSjK5pQ6og4F/v4kJEzFUXan3MGHZT4hHOUJ1+ufXcXHO0UlCQaS9YaCddf/SZkJL9iUdFZ9sycGeE52hLYEXU4GVqxyjeOfEEGfPX4yYJ1U3eKqMCPJfyBUlxuDFaz95Z6IggMU
+27AHQL/GT+LpdH5gjCsHt2YqT+ddqfXzwet2RtENVyxa8maaK1jMvD4ut9FUCVAEqSqi2JH26+leiOpHt4yCzM+7rZNTeAH+s0lL0exJHZ1+rlyYOZslaXdXeeVayM9SPbL6f2fu6QUyoUIGVkp6KbgoPL9zijKFGwatvfpz2/t8cBwOIm8L
+X/mxRAextAbo5jc6AvpkAhNokm8lBTh786eo372242XCTBT6mzVYNYE8EmQYaDLGhslmLgGNuPFrekMU1ZSDsJXx63tMaAzbSdP49ob5oNUebm7x5WUs06KHsK5urk85qVyo1JUtWWiHLnXPTsyBO0q93Qknvy+OUYlkLZlkqJyG1Ugm6BlR
+7ShGYwo38wAw3TiETE2jOxLyqCa5281F9n/IR8YhJ765yDnh1Ml5sTa9MswHc6gmS2P+vATWGbr37t6WeCcqJSHx8wyP0vzG7qdTEVm6NYgU3WkAWAxHUIFeae2lQJaWC75dVn0+HXSfe8iKriCK29W656sbM33IMSgxNr+sJXxDfYfI/NmR
+ara682qYkPlku0NwZWz9GI395oToV/ejZR2+sekHttZ0x29+vYX4CKF3jD+mc2JOBMaO0djYtuuum/AyRMAIKqNJNygaNt/M14PswAduHYJImwmObQljzwL1o2sArHh5oPHbbULYlJ2JqgxZQ6YJVZ7DNp9gAGVepR4O86eKgaoI34PvqMGB
+rsbJAf5Se3smxgvhw1ZHLno14rwlGKgFI144yoYlm8/LhXWJMBNddjzGY2Of5AiaHKBRR76AoQGT2+7LIqiyB71N/vzoj+4PgTGnT1cKMO+vpZ0AUOrgTFmHVyADP7JJUzUQ6wXP4oWKzUzw1IgOmw2bKSp/Q5Y/XntUfXVa0P4qWRoOqdoj
+eQCadSKCadxMz6nuhpS+j2DYUIJXZI1lzOUHCsQpV+YT3tLDd5xpmQEfMTrRFkJyTGzrrgFOuQgFPwozfaXR6OyvF4l+Q10h3T9L9kPsqLCDFGuByB687djAtOgD9X04RiCpsydpBGGZwPwQUvNVB27f13z4nK+KUWzHN6xNy7wCsZQDRnXo
+KgihK0h3s/2cMOwwfs0j0+DQDcO7o3UJ7ASbnzu107ymgsffF71elvrqYue3u8XG74o7SKnzI1oi+1Hv6fI8lnHf6otWV1k+139Tzl49CmGsNA5dZ55EqsTzUwTVlvhLrxXFa5x+o0biKc0vvCoDYPeGEY78Q+umaiscdwT5vqeGXNPqV8lc
+ROMYLeJo1RT/qEMSGI5ZKOK9UaZNS65PHggFseFTlJ/fR/w/h0xPKU0SGT3Uy1YWfziTPTnFm5TlVIq7G6lOpvo+Y1DTvcFsQXGCyNWSrsvIy52MwsNkkR/VE2Oxx8eFn41tRDwqPD6XyFqMAi0bOakKialwAAaylAYWLAgyLd3yxxGf7AgA
+AAAAEWVo=.
\ No newline at end of file
diff --git a/examples/example_framework/instructor/cs102/__pycache__/homework1.cpython-39.pyc b/examples/example_framework/instructor/cs102/__pycache__/homework1.cpython-39.pyc
index 59aec17144bee92c76e761ed5a8bcfd0b24ba30c..1187814c3700b1af82cc3a51a6457b05d23a3dc1 100644
Binary files a/examples/example_framework/instructor/cs102/__pycache__/homework1.cpython-39.pyc and b/examples/example_framework/instructor/cs102/__pycache__/homework1.cpython-39.pyc differ
diff --git a/examples/example_framework/instructor/cs102/__pycache__/report2.cpython-39.pyc b/examples/example_framework/instructor/cs102/__pycache__/report2.cpython-39.pyc
index 73d91c083f8b5090583cb8dc1300bcd761e1b41f..ad44b5a3a43bbd858c8328dcffce1bb6179dfa31 100644
Binary files a/examples/example_framework/instructor/cs102/__pycache__/report2.cpython-39.pyc and b/examples/example_framework/instructor/cs102/__pycache__/report2.cpython-39.pyc differ
diff --git a/examples/example_framework/instructor/cs102/__pycache__/report2_grade.cpython-39.pyc b/examples/example_framework/instructor/cs102/__pycache__/report2_grade.cpython-39.pyc
index 7bb5a6c93bfe0e6a73143e0ce837738070306234..8e8a09fc6b0a4aa73c73cd24388a5ecdc1e91b68 100644
Binary files a/examples/example_framework/instructor/cs102/__pycache__/report2_grade.cpython-39.pyc and b/examples/example_framework/instructor/cs102/__pycache__/report2_grade.cpython-39.pyc differ
diff --git a/examples/example_framework/instructor/cs102/deploy.py b/examples/example_framework/instructor/cs102/deploy.py
index 706b1e46da6d1de4b9237de216696e6cb5b99c9c..bbcfadce026aec656a48f8ceec99cfded5b02c2e 100644
--- a/examples/example_framework/instructor/cs102/deploy.py
+++ b/examples/example_framework/instructor/cs102/deploy.py
@@ -5,3 +5,5 @@ from snipper.snip_dir import snip_dir
 if __name__ == "__main__":
     setup_grade_file_report(Report2)
     snip_dir("./", "../../students/cs102", clean_destination_dir=True, exclude=['*.token', 'deploy.py'])
+    # from unitgrade import evaluate_report_student
+    # evaluate_report_student(Report2())
\ No newline at end of file
diff --git a/examples/example_framework/instructor/cs102/report2.py b/examples/example_framework/instructor/cs102/report2.py
index 04682d22d6df8cc2d8480bc4d4c40c5e9877d465..2f200a6cef841e8d981e090b4aae3483a61232dc 100644
--- a/examples/example_framework/instructor/cs102/report2.py
+++ b/examples/example_framework/instructor/cs102/report2.py
@@ -22,7 +22,9 @@ class Week1Titles(UTestCase): #!s=b
     def test_add(self):
         """ Test the addition method add(a,b) """
         self.assertEqualC(add(2,2))
+        print("output generated by test")
         self.assertEqualC(add(-100, 5))
+        # self.assertEqual(2,3, msg="This test automatically fails.")
 
     def test_reverse(self):
         ls = [1, 2, 3]
@@ -57,8 +59,8 @@ class Question2(UTestCase): #!s=c
 
 import cs102
 class Report2(Report):
-    title = "CS 101 Report 2"
-    questions = [(Week1, 10), (Week1Titles, 8)]
+    title = "CS 102 Report 2"
+    questions = [(Week1, 10), (Week1Titles, 6)]
     pack_imports = [cs102]
 
 if __name__ == "__main__":
diff --git a/examples/example_framework/instructor/cs102/report2_grade.py b/examples/example_framework/instructor/cs102/report2_grade.py
index 13a61a65fc7ee10d8680ca276ca8694b4bbc59a2..90155184105bf95b700d6eaa30487d9ae8045eab 100644
--- a/examples/example_framework/instructor/cs102/report2_grade.py
+++ b/examples/example_framework/instructor/cs102/report2_grade.py
@@ -1,3 +1,3 @@
 ''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
 import bz2, base64
-exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/example_framework/instructor/cs102/unitgrade_data/Week1.pkl b/examples/example_framework/instructor/cs102/unitgrade_data/Week1.pkl
index 3e94c9f63cd7ce80ac71dc95ae4e5981ebc3855a..7baf56e3ca1a147813ccf7eb020ab6eebf1c0f33 100644
Binary files a/examples/example_framework/instructor/cs102/unitgrade_data/Week1.pkl and b/examples/example_framework/instructor/cs102/unitgrade_data/Week1.pkl differ
diff --git a/examples/example_framework/instructor/cs102/unitgrade_data/Week1Titles.pkl b/examples/example_framework/instructor/cs102/unitgrade_data/Week1Titles.pkl
index afe435c082fd18662075c52a0d30a84774febfd7..7215fc4fe237a4ab398b8a2480875d2891b2e66e 100644
Binary files a/examples/example_framework/instructor/cs102/unitgrade_data/Week1Titles.pkl and b/examples/example_framework/instructor/cs102/unitgrade_data/Week1Titles.pkl differ
diff --git a/examples/example_framework/instructor/output/report2_b.py b/examples/example_framework/instructor/output/report2_b.py
index 07f63bf3984296d2cd055ded791e575d716b16a4..e5dc8fe9178b7ec1199e0f74700381379af011cc 100644
--- a/examples/example_framework/instructor/output/report2_b.py
+++ b/examples/example_framework/instructor/output/report2_b.py
@@ -4,7 +4,9 @@ class Week1Titles(UTestCase):
     def test_add(self):
         """ Test the addition method add(a,b) """
         self.assertEqualC(add(2,2))
+        print("output generated by test")
         self.assertEqualC(add(-100, 5))
+        # self.assertEqual(2,3, msg="This test automatically fails.")
 
     def test_reverse(self):
         ls = [1, 2, 3]
diff --git a/examples/example_framework/students/cs102/Report2_handin_18_of_18.token b/examples/example_framework/students/cs102/Report2_handin_18_of_18.token
deleted file mode 100644
index 59fb2e97d265c24c880ac3e457e284649566d902..0000000000000000000000000000000000000000
--- a/examples/example_framework/students/cs102/Report2_handin_18_of_18.token
+++ /dev/null
@@ -1,252 +0,0 @@
-# This file contains your results. Do not edit its content. Simply upload it as it is. 
-### Content of cs102\homework1.py ###
-
-def reverse_list(mylist): #!f #!s;keeptags
-    """
-    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
-    reverse_list([1,2,3]) should return [3,2,1] (as a list).
-    """
-    ls = []
-    for l in mylist:
-        ls = [l] + ls
-    return ls
-    # return list(reversed(mylist))
-
-def add(a,b): #!f
-    """ Given two numbers `a` and `b` this function should simply return their sum:
-    > add(a,b) = a+b """
-    sum2 = a + b
-    return sum2
-
-if __name__ == "__main__":
-    # Example usage:
-    print(f"Your result of 2 + 2 = {add(2,2)}")
-    print(f"Reversing a small list", reverse_list([2,3,5,7])) #!s
-
-
-### Content of cs102\report2.py ###
-
-from unitgrade.framework import Report
-from unitgrade.evaluate import evaluate_report_student
-from cs102.homework1 import add, reverse_list
-from unitgrade import UTestCase, cache  
-
-class Week1(UTestCase):
-    def test_add(self):
-        self.assertEqualC(add(2,2))
-        self.assertEqualC(add(-100, 5))
-
-    def test_reverse(self):
-        self.assertEqualC(reverse_list([1, 2, 3])) 
-
-    def test_output_capture(self):
-        with self.capture() as out:
-            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
-        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
-        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
-
-class Week1Titles(UTestCase): 
-    """ The same problem as before with nicer titles """
-    def test_add(self):
-        """ Test the addition method add(a,b) """
-        self.assertEqualC(add(2,2))
-        self.assertEqualC(add(-100, 5))
-
-    def test_reverse(self):
-        ls = [1, 2, 3]
-        reverse = reverse_list(ls)
-        self.assertEqualC(reverse)
-        # Although the title is set after the test potentially fails, it will *always* show correctly for the student.
-        self.title = f"Checking if reverse_list({ls}) = {reverse}"  # Programmatically set the title 
-
-    def ex_test_output_capture(self):
-        with self.capture() as out:
-            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
-        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
-        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
-
-
-class Question2(UTestCase): 
-    @cache
-    def my_reversal(self, ls):
-        # The '@cache' decorator ensures the function is not run on the *students* computer
-        # Instead the code is run on the teachers computer and the result is passed on with the
-        # other pre-computed results -- i.e. this function will run regardless of how the student happens to have
-        # implemented reverse_list.
-        return reverse_list(ls)
-
-    def test_reverse_tricky(self):
-        ls = (2,4,8)
-        ls2 = self.my_reversal(tuple(ls))                   # This will always produce the right result, [8, 4, 2]
-        print("The correct answer is supposed to be", ls2)  # Show students the correct answer
-        self.assertEqualC(reverse_list(ls))                 # This will actually test the students code.
-        return "Buy world!"                                 # This value will be stored in the .token file  
-
-
-import cs102
-class Report2(Report):
-    title = "CS 101 Report 2"
-    questions = [(Week1, 10), (Week1Titles, 8)]
-    pack_imports = [cs102]
-
-if __name__ == "__main__":
-    evaluate_report_student(Report2(), unmute=True)
----------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-4feb7306886b544a50d7c0783f0a521df06b49981bb92bbb57cf4ec9357af4b3e2d7fe806f0e3bee56e81e768363e5d79224c7a47cf9e626f04a66b2c4cba906 27932
----------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-.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
-AAa6jAYeAAgLSj16xxGf7AgAAAAAEWVo=.
\ No newline at end of file
diff --git a/examples/example_framework/students/cs102/Report2_handin_3_of_16.token b/examples/example_framework/students/cs102/Report2_handin_3_of_16.token
new file mode 100644
index 0000000000000000000000000000000000000000..2525f056eb68e1cf7e2ffbefdbb2a28282c1a5fb
--- /dev/null
+++ b/examples/example_framework/students/cs102/Report2_handin_3_of_16.token
@@ -0,0 +1,252 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs102/report2.py ###
+
+from unitgrade.framework import Report
+from unitgrade.evaluate import evaluate_report_student
+from cs102.homework1 import add, reverse_list
+from unitgrade import UTestCase, cache  
+
+class Week1(UTestCase):
+    def test_add(self):
+        self.assertEqualC(add(2,2))
+        self.assertEqualC(add(-100, 5))
+
+    def test_reverse(self):
+        self.assertEqualC(reverse_list([1, 2, 3])) 
+
+    def test_output_capture(self):
+        with self.capture() as out:
+            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
+        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
+        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
+
+class Week1Titles(UTestCase): 
+    """ The same problem as before with nicer titles """
+    def test_add(self):
+        """ Test the addition method add(a,b) """
+        self.assertEqualC(add(2,2))
+        print("output generated by test")
+        self.assertEqualC(add(-100, 5))
+        # self.assertEqual(2,3, msg="This test automatically fails.")
+
+    def test_reverse(self):
+        ls = [1, 2, 3]
+        reverse = reverse_list(ls)
+        self.assertEqualC(reverse)
+        # Although the title is set after the test potentially fails, it will *always* show correctly for the student.
+        self.title = f"Checking if reverse_list({ls}) = {reverse}"  # Programmatically set the title 
+
+    def ex_test_output_capture(self):
+        with self.capture() as out:
+            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
+        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
+        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
+
+
+class Question2(UTestCase): 
+    @cache
+    def my_reversal(self, ls):
+        # The '@cache' decorator ensures the function is not run on the *students* computer
+        # Instead the code is run on the teachers computer and the result is passed on with the
+        # other pre-computed results -- i.e. this function will run regardless of how the student happens to have
+        # implemented reverse_list.
+        return reverse_list(ls)
+
+    def test_reverse_tricky(self):
+        ls = (2,4,8)
+        ls2 = self.my_reversal(tuple(ls))                   # This will always produce the right result, [8, 4, 2]
+        print("The correct answer is supposed to be", ls2)  # Show students the correct answer
+        self.assertEqualC(reverse_list(ls))                 # This will actually test the students code.
+        return "Buy world!"                                 # This value will be stored in the .token file  
+
+
+import cs102
+class Report2(Report):
+    title = "CS 102 Report 2"
+    questions = [(Week1, 10), (Week1Titles, 6)]
+    pack_imports = [cs102]
+
+if __name__ == "__main__":
+    evaluate_report_student(Report2(), unmute=True)
+
+
+### Content of cs102/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+4a1695ef1eef9700c3f56f94a20514c7948f8f78b59a251471f50253d05ed006ab3b7e6b459f2a01e7e2851c26d0e6b2482e640c2423c63c4ecb9212b25653b0 28136
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+.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.
\ No newline at end of file
diff --git a/examples/example_framework/students/cs102/Report2_handin_3_of_18.token b/examples/example_framework/students/cs102/Report2_handin_3_of_18.token
deleted file mode 100644
index 7d7248bbd21baad45b2ac9e972d35cb89d381e19..0000000000000000000000000000000000000000
--- a/examples/example_framework/students/cs102/Report2_handin_3_of_18.token
+++ /dev/null
@@ -1,249 +0,0 @@
-# This file contains your results. Do not edit its content. Simply upload it as it is. 
-### Content of cs102\homework1.py ###
-
-def reverse_list(mylist): 
-    """
-    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
-    reverse_list([1,2,3]) should return [3,2,1] (as a list).
-    """
-    # TODO: 1 lines missing.
-    raise NotImplementedError("Implement function body")
-
-def add(a,b): 
-    """ Given two numbers `a` and `b` this function should simply return their sum:
-    > add(a,b) = a+b """
-    # TODO: 1 lines missing.
-    raise NotImplementedError("Implement function body")
-
-if __name__ == "__main__":
-    # Example usage:
-    print(f"Your result of 2 + 2 = {add(2,2)}")
-    print(f"Reversing a small list", reverse_list([2,3,5,7])) 
-
-
-### Content of cs102\report2.py ###
-
-from unitgrade.framework import Report
-from unitgrade.evaluate import evaluate_report_student
-from cs102.homework1 import add, reverse_list
-from unitgrade import UTestCase, cache  
-
-class Week1(UTestCase):
-    def test_add(self):
-        self.assertEqualC(add(2,2))
-        self.assertEqualC(add(-100, 5))
-
-    def test_reverse(self):
-        self.assertEqualC(reverse_list([1, 2, 3])) 
-
-    def test_output_capture(self):
-        with self.capture() as out:
-            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
-        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
-        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
-
-class Week1Titles(UTestCase): 
-    """ The same problem as before with nicer titles """
-    def test_add(self):
-        """ Test the addition method add(a,b) """
-        self.assertEqualC(add(2,2))
-        self.assertEqualC(add(-100, 5))
-
-    def test_reverse(self):
-        ls = [1, 2, 3]
-        reverse = reverse_list(ls)
-        self.assertEqualC(reverse)
-        # Although the title is set after the test potentially fails, it will *always* show correctly for the student.
-        self.title = f"Checking if reverse_list({ls}) = {reverse}"  # Programmatically set the title 
-
-    def ex_test_output_capture(self):
-        with self.capture() as out:
-            print("hello world 42")                     # Genereate some output (i.e. in a homework script)
-        self.assertEqual(out.numbers[0], 42)            # out.numbers is a list of all numbers generated
-        self.assertEqual(out.output, "hello world 42")  # you can also access the raw output.
-
-
-class Question2(UTestCase): 
-    @cache
-    def my_reversal(self, ls):
-        # The '@cache' decorator ensures the function is not run on the *students* computer
-        # Instead the code is run on the teachers computer and the result is passed on with the
-        # other pre-computed results -- i.e. this function will run regardless of how the student happens to have
-        # implemented reverse_list.
-        return reverse_list(ls)
-
-    def test_reverse_tricky(self):
-        ls = (2,4,8)
-        ls2 = self.my_reversal(tuple(ls))                   # This will always produce the right result, [8, 4, 2]
-        print("The correct answer is supposed to be", ls2)  # Show students the correct answer
-        self.assertEqualC(reverse_list(ls))                 # This will actually test the students code.
-        return "Buy world!"                                 # This value will be stored in the .token file  
-
-
-import cs102
-class Report2(Report):
-    title = "CS 101 Report 2"
-    questions = [(Week1, 10), (Week1Titles, 8)]
-    pack_imports = [cs102]
-
-if __name__ == "__main__":
-    evaluate_report_student(Report2(), unmute=True)
----------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-b07038a0b034c106f5b09a9caf41338fec2b87d22a1ec09e7e928ebdd8b369fafc7af5a17147e8169155306549044a9353a5631917c44709182c615ce4659f6c 28048
----------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-./Td6WFoAAATm1rRGAgAhARYAAAB0L+Wj4IW4UetdAEABDnjIwEN61cV3uyv9rA3VXYLFhUS3UE9IKKB+Hkr+llxPiuwVkUHoYT0UOO6gT7Cf8FhQlmKlNwIqhIY9sCxxV1TDF7tWmHl0FddsiS0kkB01/ASj05lCXuCTJUGTTyejnra206y
-mi7uQlp4NFFTx4yEvUf80JCFB7JV0nWZ2+kT8dqYlIwGMWJJ/nlk+gsDR5YSCkqKDwescO03QEwLXhvv1cOHU9CoYwk2eQBcgdGjv7FbBxUojXQ9mNtW9eVD/YagWm/YYl44cIPrk39qyoHbNCX6wp9+NLfEHlr/VC7s+bh0QUV351gMg1so
-XfpAUOdg4O0nKg6ldiIivBvCBOXtwFo0gIOLFTf7LMFiU7aDr4c2EH1JMldLeff3buByqC/rjvGl0DsiDiUQUdtiMg+kmvL7koDTGJ+xu8+oshVpxXbU/UAR0sh+GX1KMQiRkwGudvnWuHvdg2Gjw86P9x6NweAvZtEVsWPbQmlmoLOxmk/9
-x3FYyUIzPzMS9FkqUVg2iTA9Q9irrWcEg2O9FIwqZxFpFCojFnAXvRpd9ZEa8EBsuDzibfbxMv1eOhAf6pPdG4lSK6z7pE92Nbhdke/Kk21eBWdbeyzt48MD7LMSmEOZ+tFpfW9MUhN/edZYVsN99FIkEIOXUitesZIAIA9xSINmfEQqJu4c
-C2OwA3cpN4LIKhp4NyWrRevp9UK30yyINBmX4sCp3joLGIiimJy93ylVOLG8EVJ8fp6aKuoLQQhhbUa6McVYDzAO587I2B0enw9yJ3EMvNWFEKZKvE3oZZlavKT/wL3Einbjre8PVS5lLtmMpoisMffUBctUue5PFu8CXrd0FqI6+cARvNcc
-r4sjDjpnLJ7sa6Q85CJkDo83HlyTzD3njBhPQCLgOg7nlLyzuETbBqy2RjUwNjlb+pvnkwKXxnswqKic4kOJhJUohMCgL6mTgPq0e2jjKUaFHnKXMoH6EVUa0zKvRvnEf/pUUVW1MjlvQasdjRhf1i+Jn3bGeV+O5WqE1l1M2Wdlz0BiwZni
-d8u7sQ/OaIDatlZKE9G05fuGkqbtqHw40jlHLUGhHe1pcArxwCPZ1+Vhjqp2OyLA0bP4qD1HyhBTs8sY0vvCycmuVO0ywgn8+WF7Tip6VSPiAPzsLOLiKi5Y7aPFwrDFe0z2FUUdtQfaa5/CUvYAAvQUGO12uiOA+auZ9uP0ZbHu5FjMsI9C
-UPGSpHKn9l0LG/TiUXfpRVOD+DZSmn3ajrZvCFCiWCUJY1Gb2HBWWQW0PBSbZtEw6ROE/IAISfhc/gc0d5UNIR31DV/4fv73gs/tgK0paoxjlpV/Fuo/xNdsd0T5y/90V2Eb5S6NxHfYfzMlHBPfhHA2HUSRxh+zMq8zsi7rvk3i/whOSy5P
-3lbOwRgjSnxSZJRjeNL2G6JVc0CcDzXqvhFXyBir+SCcfu355eUPfWbSCu8i6NVUawcJ8e3Ab3CaZH+8GhR3bzVCFLJkehnkRrnNlD5Piis3v2vJwgIBHM2ej1i+YFQLlcLD6SY1+VbFjODx9pBNj+MOaO+LPqTMHLm6b2agWptWr0G3C3j2
-cOWiqwrL4hkzE/oWiKTj5d+MkytXbir92/t9elpYgMvM422QH+4oJwl/RYetmhNiUh5VMWYEtWW0B7uDPUfFEwC8uiSlcOeojsWg3USd/IHZ7MiTsd+Ehn/bdu+Cx5chTgF4NBAr8vO7kaJGA1sYaWrFBgTA0XWKZLjtGzQ7z+jH4RQ69MKi
-oY2huKGe6nf5zxknJkKB3dGvw82p3xKqy0pBhlaXmdLWh4d7rqw/6GCGjo3L4GLs1xfRMRi5IlN4d8WEp5g3kpf3mDPdQzJ9QcxSDv9T+QHeCoZDshqqc/8R0wmVDvYD+s2W/vOPysezW10U/5y/CKXthTvW0OEod4hHfJFwZMMH19OnfGrI
-iGe51rGOFPnU9TnlpqixJvAjXtO9Q3CJfCI+3C3RtZrJpky9rvYjyZdAkTvmicQt/FwTMYNWbz87bS4+NuXVOz+PziY3rDeemUqCAxTWmiTEupbdH0i3gvvkx60ALT4aEmm0N0nOL/g4J5u4b4B7VpYM/Ea/HprLri7A915VXAvO8dBH6UW/
-st2WhcF1ynUOmQ6unS6ZcpboYTBaAHaB6LbcWXnF/okEs9utFRAE2WGTAufQHZPU/klLAPa2+ckcGONx2Qc21cMc1gXQ5ZRgG5TPhNLbGwxLI5szWyVvT1YKKls5hQLI2fjBWV87BadENv5Bevb3Z95TknIoqOuIxbKM8QloswL0+D32+diR
-2XkOsn6+V1XUbK7PVH5UemlFxF2ZAKeVOryljfd8SZOlyrncq7iy9345nREh6aP6xtu4JeSnJfsNjcDcASdfkp5UnwQw//cJWKiF/z2hNDHfzMAiPHRrdCDNNIN+IxHb9CffkrVFeiK3rOiVfJolBk3XOlyh9ZxyFpXJIuNoQuJEqex3QMOg
-mYMsT3DfJTltxIOl/TLR2hwHmgRZKBdKbY3bFEd2dz3lSny+yIPp6PPFuF5CmbJQCQjgF9LFWkoxlqt0gxx5TRfUTfHtSS3E6ld6SJMTeTKgjjECTwFNqKGqLKuH7ge3q5Xh7eMbMy+aG4r2uAd/dOXoezcU9D3ZyeJtlPMqIAmUUihadTZw
-E+K60gelux3AIwvT80Xuof+87uHznAUlfexOlgOgOC1qgc1as0DNf9QzNicg4fMyrET6DKVgQxlmJQGAw3p/DY6C/WvTA5bvgUU8+C1OE2NUUcTXn0wj64RbyMp1hS9MtCwMFhKo7ClZv0NRl/HoXdfkiIGX73XyBVOH6ab2mNd8zmfJC86M
-zPGnIaSCkrOmTWWh449ePULnttBDDu2oBP86+eXJrdeKWFue1Y7Tx/G0fy6ae/RiYv1lUJWIWmJaGv/9bftiV+5ieR1ndTcuq6pC44HMkJ8+ARfheomlM1i7wTUJUfe1cFsbEHZkWJHGQ7t2UTvTb85X/YCwoLJBVGbtwDn3Euqq7Dwm4DQU
-9dF63Qo2Kd2b0jXVpOJbt2UT0ouJxNnRdWH/yv5HXCztFE5A46RcAmrtf6Ei4qqRszlNicAXjIOG7JJ/9ZVLL6RVMooIhaDMbJjP7RElAEvprJhsbwoBnWasWpCnMBHPx+BrsF81S41vtF0QhR6GtNGYBTF3Ag/2cXSGurptXHE/gQaMVISm
-rNwyVgAWzDkHJD8DMu9hErrJKTAxFUO9u7UB1sU8BNu/P9K0Z7fBwiwUG9DBVBnhlnckUPEtSVTYeH+oCbLHvSK6vVHu9nqKmFAFPgG2YF2HcPJiN1nJoN8zU9TZLpQruCCF3z+3VGHzaXGKID1f24Vl70OiVGyi0Aq/feZ3nf435nbaERE8
-1LFfhDJWbcTWgQiyruPPZ/gEoD/vYX8jwsAbQTfSgUw1XNS8swn4/mlV8oiMjmEIqfXtQluokW4ZRd6rxqSk3VJFwgS3xg/Ihdut4sQpbXErmF6PhOJM3YwqY6hWCZXL9Ikkl/wJW8Xgf4lZx+1TCV83Y258Sz1YtN6u+r2j2mW8LYqWZXzA
-zqKSO33JTzLwuF/ZFG3dNTAeo+LZAsATKQK17h0W77B7AnrrIxMerBCAWliYELenH2KA7Rb2fHE8sig2WeRXlUI4r6ss38HfrJlTCWjy/dF+F0O9HPyG0Jx6pFyujrZUYYQc3qvoCiKqZ5OP3/rHX+oQJTKnR4RQ62sYCr8D3tBd2o9bvQft
-Tt8nLHEuNuvrZpdPkonM5mPvopvg93slF8B0K8Jx9yX0L2IumgrOMtL9yybbSHojdfjaWEIrF2o0UwB6l5d8kCnmHy87uydt4fr+R+jKaYpPvli0kqyli2V0GeLX5WuzK6RKtX/M54DFhN5ZV4vfsGQ+V2wqKfJcslMMmnrB2Uq4rmukqH9q
-IMDBX0f6DzSpX/hhBMHjidKx6RCc7rFyeb3rGx4TdeJ4tc7KN/M+FtUvCe8tBcxb4cAIKZCtix1++MpEQ35VZYo8klAcLhbMDiZeUZrVjpqWRVhFCur6Oh+h+nOsQeM5pTEugCLhmCxQA4h+AbhWtt+e52iepNXwtNRQ/0ula50Vf7QRVA+O
-9cF5cWdJtYiSQZ0xHq4+e7V+MMVIXGuBkLe2yoosFpMio/2TGf8Dv8efkiqHy31nGk84KawIRSAaT3Be+BD50zlHT8PefhuDfp0X5GdUk5NsY2YmUQ3LOkiuTYm2rA3HODsWimhYvWJuQ618Eow+nswm5AnW59RDmsPkSjNhEM3GZmIY3KCs
-0IDx5BBonDzS7KrtZ2k5Av2QsMVvtSC7AB28DLvUvHIirol9Q6omZiKESzzHZy3UcyfgJzTvRrZlyfnHumq4bxS9z3geVVpaXao4d6w9XPCMM2/OA0EnIu4JWvf8GbRy9GiAZ7BKouS1v0mJCbNaEKTDUCvAU9lalUIdZmTsa6dFUKUGvV91
-FrAzJQtvMd8pfbekCnfBGl2IWFGu+n85TReqQS4fdUWUeePhEr8rNs/JAJVk1jpBiBpJlxcHlj7isyr+YYUsolNQT7qUdrTi/cvcqSXSh7OSmb2G5tTQP8EjI2ZgerYWKB+Vif4/8dm9rAYVqn9/B/1nvxV1DVZ71zV1XOyaJ7t5OPRslUNY
-289fA7uNNjGJbbffBHc1lJtBMYJ4LuK225zoj8R9rqYeJ+OdIdw9SXPAZG/Lf1AzDFlXR2lMwyB+Efg35eReHT/kr6jSGkHJ0+3656O+ZFVCn9qvLWH2/cb5tGWIGddaWaF0CS82400g/n9RJYGph1A9z4z4SqM0JtibTfHOuHsvLwiG6SJO
-WJ6ZIeQlbKtKGk8yNNJaTv4FPDz4DmeKgs7GThfcaoqMN5RN8YCOY2FG0vGCnpO6WsAb69rmsc+LI0Xi25iMGhH6Xh/IMLheO2SEpD4DWOlritYYWWzvnIvARmNU68zl9MvRfvlK/DFvO7GERf6Uw4iCLdHndvJBnowAWWIETYuV03Xr9iKY
-xpD098H7rGkOoTurLHSB0SQ9T6i6/3Hs33OSuVdSJOYSrdoA/UvQdzMkDbZ82OZUkVkamBIs69nwwAdjnrPl3HA/uoAtXi/mSTy9s1l3FqPUSoh+iSfu3+2q4PvkSD4pzv3No0GrOuvl702WWWslQAaDlwnysx7B2AAasTgT+80xgah7n44V
-WHdXirzArDBMHNGuAmwOtg/EoCHXngqCo6NJ66/+mQyfiXklFb/JvczT1fWhL0ArTw2oYfsDAaQeGq+07TBXf2tbS56yqiYNblorAf0bjoZfuvSLlGykIayDZUu8RRRtJYmq69aeLjFlkNIXhgUFgBaO9PiyXHATfHwLiwnKIZxdAzje22QR
-hAmsgivk5IwQhjJeI3BVkNlsWPBeBGl7eukovjYy0SW4Q3ppA/HTtoYJGqG3GhCAXtRyIgjrLrwvtGwqYqkxQOrL8qOS1nSxogwtoMnusr3bnx+DsOm+emhHsA7U3/C/Cff1yq0uJ5LK2OinydLiXFNpo9MU/rACnyAilPeI4AqKqkzw3XOP
-/X93NrRLA4uIYZ+KyusWxmnX2GQsOcZCEMlroyWUDuIci8RSBlyOT/OKsdWy1KZ+AeKhmX5uZhCJzDhcusTzBpY8cD+w5fA5ZSUOEyEXIG3j6lWO/XO6X5kxlF7Zg76ZmnEiW8jv8Ae1psETZ23SYqQeBKx4Mlx3ddNHL1eJLM8G0riwknVK
-9+WrYeN5ZrUNZwmPre4Tb8ORwAPuBonkrfxGZhSzk7jlcK98Wyze+meeU6d2Lsm69mh0k/aJX53cCxJzucWBTqcfVfvtfyG2KOMa8GAeP/b5jjPSKluSFmpKBJl/wPXBDTqwjMRQc36Pph+BUAO3drCqMPJ/51gVbiPkt4cHcqKX4uhtyf+3
-KMxwgBIBeT4vd/oKfbjnhjAg/YddysvCLjkTJMc4NY1D9CehbJQi/+JW2SYHVJ50kcrdaDb5B41IZ9WDef7Pekr7dpXUiBFhdhbCR8zWAKFg/B+pWpvkrpa3Jg6h5suLCFfBCFSoeZjRybKrK6krqIrd4nOl67kSksPyBkdYuSsGulJ7dg8E
-yiAqoGs0vXpmEso0cgjOPVpygsin/q4j5Baa5F8jMKi9HjcJ9MDCGAKxUq8MWcvEJ1N++l7qU5TOwtiie3yBr0Z9R3RKMErg/AUGE3flOsf1RJyRrSz0qP9sZ6Aa/Su1PNeThiRvLbPy64wxtym63iKrvknvco0za4U2U7WCoBCUXCQTt3Z5
-9XzMMmbKS8QETsYuWjiLLQZqdojLEQjF3C3LGmyFmp86TWNOWWKxXLFR/WCqAL8EMeqqu7jGWErrMNsZa9U/QFDFwjUUmh1oQzd0em9sdG3IBGhKezeMhqrCdrpB4hiF335nU6VwT5FuaM8TPSd5+vV6Ie+addfX9FJ6X0Mum6vdCObVwaNh
-hLXCApRleODytXy1AGo+gfY2qztrIUC7aKizXxcuKyn26FOmB/ZNkng7/4SBiDV2dCyFl82Pk904xpEvsGCIX6kx6oQSn9erABERW2ovOuyIAT+6k2Pz96fPggTtCz5G6WdnpBHAh8/B10SxsZ84Nz0duCw4OAU2TJUxHN0PbEB04J9SqTbY
-56p29o1JMrWSrVE8/fjvLSBMBS0HG7C1PNg7VRvC73fRyj79MHhDy2VUfNcEa/VRNpBllIdk1iYm8WdjR04RPvQIxaB4Yd6DmdmkCmFXdLPnxCu5DQCvs6cR7AaofARGDi56ln2lnzRIVN0YlZzedFQdxMEvgXwOs/QWNMlwKXMxZenE1IDX
-+tAHsECCQBbvDTcEQLHCX5KDhUNJCghttFTA0qsI4XeFXuw0p04f8ZqPseZF8vYdEU93Y/LBpYLh6MPkHocqyzLqMWe7TuPgpaEuDA30WjdouAvqv/RdSnUJ+6iysM44cKMJEBtZ7ddEGkiITLaz2XjxUUZHxym5XCYly87VPeeBSSOgmlQD
-afT1//cUe896zpKSQ778p6+/EoK75DBSmL1b/o6uuN3+K99ex8pbRAAV6c7qIRx3cBtWoVln5r8Z+iXpkwxnWTyBLu3qp5/+tp6glgCpR3ps/hxY7vZEStnyGxS7Sb6BTWyAceR3GADJZ2k3kTYiTJ/AMrozWkOu4Wr7lGhKP/HWIG1ZGezL
-JR20ZxW5Yk5m6wk1R2ySUfO8ekTnh8vo63jRpCYg8qUB/ktio8PRqlWnPEFn9Kqtiq3Ltu6ZhyI/Fc+49KapT8ks2sNr7bgVf/72c0VPyn7Tcny7jPW/TciOqiQJkzmZMMLoIgK2ACPAKpk+qKZMJ7fv8DnJHsPGCm6e1EktuNQYnADVScT0
-ZIzgBodd4wiuOeeV40gn1FDCOJZLe/Kkj9V2JkPjKELGjzh/sVtMlWmO9JXM/lHwU1YViH6sQKw5npUTihtvdc2miTtrxVUytfio7XYQGd46qN5F5c0ua5qvEkegdTSiRGcghbE0AWmmVtp6imJrY0tByltC92N+2ObQ2/T3w4Ymy9g6KeXv
-MAZzxNHCNIrk3qoJGtMygVXfYGVLfGY/49raiBHfoUCz6RPmwPdkMQCuQ7G3WWF/6f7QTnppZNceNNGNojrnBqsDWdPO5AV/4vO8Q/6d/cJKVwNNbHdg7DyeZ2CFqy0xsjnKZPZpnYQY17AeWFRqTFaRG+t4RUt2PpT05nRp/Hc+Ruthx67C
-I4RdJN7lqrfBBhp/sRyaM6pKABTsti4kjxyAmRZ8gm4LV3IBFAYE+/PsbqsM+kzmgiAp+j+7ufBf8rYB4oyfmf5KZf1BBIcvwO2FgTNGfqZmifse4po+lf8ubNAK3IEBdZasiKUiq486r0f8r/TiZcox3gUE7gHZlGY85Zk/XygPdcVVAysr
-+dfwUs6WwWEGRSfqMEpdiWf/QGfbgx8lj/viqHY4Xs2jPTG4vVCoGd9pwvJulU52Kqm3WpOxOsJkfrDGKjJjupXYWVfxyo/fT5/z7JTFNVd4ygZqA2sq01+5+oM1aqLu0TRnU8SZ22QVrIaB4ViebmfAfwNN28wM1QdzZWD5G+T1y8ARcgcE
-jScxKP8KEOyeDunsANYERbP4oRMI+hZs+Q8BcrWjiC2Mz20OF5Pur2r1VfrdiUlJUeVyZ3Ry7OBOOgjlHPKO2t1TxJhjBmtndj0rtb+TPjwMYQcWVN0WB1MzaHIgW83IJNJ94VDMf/bK4CURpI3DvkSP5Ayz16ZdwxtwkM70d5GP5e2gOqJy
-/BcKw25V7ggff2iT33DKq3tyGrNBnlEITIJDB/CNrEIXhVq+f/0jO1tdkwJpEY6alPAbqub7+NCvVZ1C3eNn5c/FQkFmIaYaK6/iZcNCeXZUSR91JHiXUjqEKvNAb66QkjbQsPe4uaFCMuKKwrLhlExggUBZ79RAdSmt1tiIzQ1X00wN/B91
-hTe3H46t9JMbZX2pSm0FVlwSoicbcO6RQ47bmmG53pZBXEyLQIcPSvHs/P8FzjcrO7SVHO3+8L7exw6TxVPIDX+oEJFdcTHZJxTO8ii53FfC5DuE4g/2ttKAJ9FwqVGIGrb0WH3NUfVEwrAFQuTvEz4z7smHr8lu8NXqDD96AD5C1YEDOgG+
-gV3VEuypRxbJ2HYwB09gMzPQl+T5naRtY/sj0jc6vRZAlCBDsrWBRnhjowRmiFPr7pl+Erl1Atnb1CU2CM8pKCkhbAaiQPE5vIjdK/QRD29QUzZqpMPTzVK4ptoVCTbcTaBmlOc2NJE24mfd6Xlv/fCqs5sfM3Xq0SY/sbfA/j4n19rsMZCG
-TtLmAB7s5cFcEewAH+gd99Qef7InDbFnslAnWPmjl8CWrDn8podFmmIq2xxKbMf5Dhjnf1vlGp/M6pUKz81xzYwsdSAh9rVOJ8YsLWTLjJ13PcoWxvtHh3z7+//LkkUOOQIuPkcdHlnLddJ4U+EKw1iWIAhz2UKKg/sdYIkf4ObcfRyHBFM0
-KfcGI38up8GrhrW5QpxQoy3BE84tKJKVirdAsp5IhxVt/9Z8W7Ogk/3uBLFJtyiCGYPtcAl+frauorY0Czbt/WSvpL8ZFay/3h6H8C17Av4F8Kmg0mJQn60yp9VyvtNC9UchUi3lrmsZDsFxO3QaS2N4uZdvJm6nIPz9t7HNS8/g6lDY8yvh
-8hUSjWkDeTgkrAeOjqAvplTvCGY8K8nicbTVKKHCLSkFgdxmrWaANiRkyPCXrFW/5nCsFcvBgnHe1y6mIXjGUP/rUBZ2PRR9HARR9dCUJGcjnk+EpnZgwcfGQjkMefmlvTNRcBao70jbfD8A/APECzWyjWhefwINS8LsSeZ+unUC4E5z/W5T
-VyOa+4fol1aIqSFwuJoiAj7tqcK8ReTFaZFtjtJCKNp5Su+JaVeHmGStLRm2ou0yVsV2vF1djbNQSKvcb4HCOWVbxnPRSNxkVE0zSySRsfMcUoknhifkp4Z9r0LwFgrRZEvyhn1gzH9LElG29J/Rxx534Kc9fiZjIAcQFP/FJI0g3YGZsLvF
-EEqSXSrMEHf5q9YE05DYLu9YiAE5hGkGSaGxurO5N0DbLMvELBynAindBB/q5G283mtMlUhC5jXI3WVas5zf+l77/HHviLm6rq4nacmSl6mOsIJA10W0JS9ZbcWHaZV4kw+ImSzA/yfmtGGEVPxf0Dawg3Wcbjhrwrj1A1L7vfh1912LM81g
-wRcF9K6Bb15yD6eIPZzk57dWGH5H7aaLTj93pUje8ci6ncLpxInyXTGAfBJGb1f1wPSJIYkQlch4erznb8VJfcEE3K5aSTOUzkxqNVHLUW4ou6iFevcnMjmGoQxcoVmXbYjAQvIUwufp3cYyd3srThrgitcY+sMyDi87BtIWIKd6vUjxfFk8
-cFu6fPEZzknj9Zlpfo2Qx5T/+85F8jE1Qg9Y+x9pN2LINLpYrR+7O4u+qfxoJjaWCDjiwgn2k1MVCXNcMb/yYcwOyb2kEfU52WteuoGxckAcEmLCACdMfCqo7mFrp4+aeg3xDuH67tw80cmeh7+eJMr5So7jVTsZ+DWDs/1k9ZCYvO3w3Ht5
-zxCckPZwcvQ1Q3eQ/SG1Ji+ScdBefXt3IpsVtEDOYv7ZkxEdEP7mttEb0hsnOsJzMWIEQbv1Hwjtbh9M5/AMvnbAkPnZATPnThN7GvHcl+MdCuKFJHTxCjlxT8X8q89XxIGq6lgZFaWmnMEScJzGEl3Bxb2HC5Qs6VZVDf6PrTMUU+T277ud
-osGHAxzoEgSJb83WEDVhyVMYXWW7tjr68iiDhPh0AfVmHRVelWkpLQ3i9IMzmlR/lRXLWC9vMq400774yZGNdKf0uEFcwW+YJgSXm4ABYZJM2RG42mK2kOmUVI/Nn79FLyvC9eBJE4sI2ofY8J/D8qcXksiOWxklWsTPpKXQoJPrmPi9HPMc
-TRucVx2+Fp80NXGbH52abvAPrvBUC5bkbv0PHoZ1ioXcYPNar4UYL/Xknn0801jK26vkRXJuosAfXrfLn2uQwwFNq+TKRuvCjTfPV1D7IoVFjsEmMKAYV5+RCAh0uaWFAvaxE9P+bx7h5ASdWZMf5jyDhAcku6EHrLk53GSkff+myXTsAoem
-uLWfHQnUokphho/xpdPPIaw064pCMM10t3moq0qrF1PXQcJwBfcP4I+p1RLybZXj9IzBoiLKDaELDl0WMkVaca0O7vEtneorqUZEmVZa8iGptChSA2wdQb23spo6JSAov2i1J6lPO0fbDxAEtPfWjpGmGgYnEdMly2NN9yHBB6sTQpgP6zDT
-7AvlNBb8hwtmNWzt3oT7ZyIZ+HTU4V+TCgyoOmWMXZh6YjyUNNdi5O0tv+IM94E2jYqRRQc1xFPN3PYFjg61T5lxANeHGNqM7/5z9eDo3tpR4qVy9rUjgAs1fzi8s6NaLeAojLUpKH2Sdu3vfNBNPFAqKZPyL2jGi0rFl+ZqRPaT793Ba2Ix
-AqOOjFzv6oZgzUErp5rt0/HbvAw5iYR9dXd+0vYD96jPM+8rz0WE5hCc0+Drwc4f2Wjics9X440tE7/g0mScs+Jq8Dg+pfuQPs1h6GNjQYq93tE3xCnGbymjnkn3MNsZO/lL1uBWbqcXjv1MAKpxSzY5XXPrXCDSCQowpcrvSK+ob++GqN2O
-I7N+YU/L5VgzPmsFP2Kzoyqar/nfuxfM6VmtOTb4WhM6hUpK1xJEayszF5YkoI48/wXo5A+9p0cu1CSYkxJrDiRNYaCdhKOVU50A4jOCYaejNOKdOj5xhcMLY0n3TWINUH62tV24sXBcEULXmbJoapr0ABUqGzRcMeBum9PLROEPR0BByROt
-SJj2EDQDGQ1X5CoBIVVtCVbqb4D9rIRK0DeljWaW3cbR9fBoVcXkG/AQdg5Ucnxfa+25QqDf+fi3xgVmMjKfiRrvxiMhDzV+VP9AtcHcs8wECyScL2L4t4LH7Y/1YkSCepGbrpVwc848T2iECX+fXtFAldPn1iaaM+pd2mbfG/53HNQCqTMV
-8uzqV19NLS8uy3MjX7A9CGotibRBzqP9j2SP5erkjUKFfcZU0i+tT2Ow8ID8Nqwvpa84r1TaMZ0EXrHIQxkSrDIL3CdaAjiuLRlBsrbVqQe9lflqXtGghQ9vFhqixmwVq0YLNUlaTCGABKBXzXJMNFsi2r2A0g7FrvzxAKA6MG7crwPz8NeQ
-rzXiir3Jcgb6zJI7UOBHaq3HNBoSH0Nps9pWCFrtcfS64/UzDmxvr47tZ3Zr3IvywhD7RbH2DXm3U3VAEm+dHFtBuw4YcOvPYwZYld0/ascChwHSQPoX8pSy0WvMvpxDvDoGnP81W8qFY2GzxgpWN/PtWtpRx8dUX7lKsBJktvTYDJYY7xGj
-NIBT7/mgs8dJ0fUl/XAZcehvQRg9NnmN1uRN0qKw843VTLpeUjcvnjgNmw7BUkQCddcq+Dzay6idll4PK5Q4wIg8jFqh5UOuSX0qjwF7lFI4ll+MBi6NSeo31LCCe+3e98WhPQj9XhSQLAsFz0ixHFUFkpc02w9hA+1eZnkLjeV6qcVd6vGb
-6t4DTfmBx05cdbwSy8xyZCAH3F34b3O0ZxwXW2tRILknFxgQphjdX7HsFUhmrLzCPtiPiPVnGc2Q6jsJ1Q03bmmPFVPQRzB/slhkyqpod4XTmLDTD/RCw29Tr1oSRME1vVo0O2Tl+D2eaZq97pJkB8y0xoz4ImWu3QQyMmUYepuSooUwvWsk
-nnA/MXwXBpVZ/zvw9OrZUZUCwCBeov58AN+3+AivvgV2qORwltRvParuUifyzPCb4gMH/1I43BINYSG27SSDVPSju+EZkjU/SNLWEg38iVr5DhEcZ+n1zz8eQ1r/NUjtflCd+b32L6MXNl2EH9iGpPeYYBjbXeL7ieAUYMj/NNOT0Uo4YReO
-+nFec1Z3nQzZWLJno0eTHmi3MNe3ZEbBq/dTaQkpXYlbHPnU4/p9s+riGdGa7gXzd6qIHw8a0faFxeEj9qecYI/kkbhki1Eze3M7JeV/ZtcsPDn6kGRsq1xrafdoA9GSctIWqg9lhmzTC5iq6ulGX6XuRAtZCQjqxh5Kkj/WkTtlJ6K5m8md
-/MGEq9Cau5hVnS5wWv0E4IYsEGADxKVjUMKGDPR+VMoafRY7/N4zG8gqA0R9tJg5I/Lp8dJwhtropEvVW4UrLUbVsaOXGtBASnuV9rf8N5HHGt9l8Sj4T1tL4YuwSOMkOOGswKpFmA0X7oLhrqitpXW2EgbGKbw44LjsuOKbDhEz4HK1j5I5
-5z4+BIbIUkZ26vUSg/PawbTmImh/kcY4Ht3JxiNOyh7aB1Z1XfEGJ5JBBr8QzMQu5hNZnzMPpac5ebfX2W1P068USXHyNR28/e41023A+D7MivZ7uEYBq7Xt4yOtDfS4nVV8VxMBoXNPItlIfK1tM5PvryEx2t0EPAvE1lKy2osvCpNxaciL
-ycY7krPkD+ezOUsv7+NMKOYwYjlbUaeHj2Gh11571uurTmFDuXtuFsxYkKXPD14P5z5wvrcFCEHcUrQcvnTQcyk7bP19/QvhTHNO1qdaSAA9+eynsO3um3XmFQPCEYBXEeVvu27c4C4j6ZBGW1YoSlWTeUJ6pTCom6lMgR+U5HM7LOKovRV7
-N7d7ioAc5hrZthGjNt141Mz4EkERb5zYJPXmaWPvgNd3HkJj6oE6vEQJZS/JV1X10TWxukJ7VuBHMfjlbGcgmN7XvybL4s4OgOX6NxzGYA1awedC5LpG3937vuYhAU7EcgT9RdkMejIZdOJJ5kDIy80D75CWmhJl1ZgAeTbDRh0Ha9O/WFdq
-R5N+Nt7ksCMNZ7qNs2VADbRyKQDGq6pGaBBiHJg9rVBqgN0Kybkb5NzPje+mECBVEYsGtHO5oboL1FGwGaUT+VmbHPPad74dqGpPz34erWDCj4R5sNkdT9NwWSpZgDXAR8cf97Moy/EWwQt+p8cDh/aHbTXXMOvt+yWD2WUZLwrsCHtY1Onx
-SO9Z/bDaeUS5a53KAwrNrLkKu1sfUENjMg9RJirlrcJl9fcdWuPbFS6nzOthCPccRP2EvjeAs6MHAHWRYgdMr9frVEwjpGa6zgjvKRYzQB+r++f73KRJLFewbV5FBEnGeOLLFQBP+qw8/gVHiTeJMTL+XNib9gvwa8AWaWdESWguYvWNLOou
-N9fK22j1A/Neff3YypPwdBi4pSoL6T9aeUJO6PcwncDQEmYezSZbTYiMl5KR76wmZWR/Oa4YDQ3+OqFebOLQRcNpeDH7ixSAG8tfnplBIQWmOG2WMNbaczo+3LM3BzkQLnpknHMljlitg4QscrrPNlNZ3pESJuUO85dUQqlxiSo4jQk43L3i
-yG3ZPNZgiPW0WG9mqxARO0sVcBdKXKMWgB5Q15y5zJG1dWv6cK6TQPeeCwoNLm+6QJg4p5hlEwxCTu1y/IDzXKuoYTFQIayMGo9g97s7RzXeK58DBK7s39bNlGg//f3m4EtVd4/OP7R1IonMCWg6xqxN5OhGY4saqFq5MBTWLTeP35MkqW6S
-9Mi3lU9HksS+1nvFQyWN1+4R6v76o/cOQxFOYgBaMmLC63JmOzfn/sUugtbbFVE2dWLVFwxqEvuQMITTOdKqiyYquPsd5zGwg60Hw8LMqMkKakFCG+PlRwfYxNknZcpssQpXNepzX0gUg34Y8qS/Asmig979r7BsQS1ImjmmQenr7rrdIPKd
-et3U5v7lNIHIo/1CHH7mkyuMUJpfvPeybs69kN+gTvDRtHPiqP/CkVVa/jr2qwKO5NjMd37b5S2WV/LOmUK6tcl8sCmUXdcbJXHCp+lg4eUAB/TXGWZPwGXemmxWjV/jRuxCkuG4dTkQoQEQfq33F6kdVg1WDoEPpDuboyhoqJVArx0e/9ow
-Az3HSP90TqJZ2vRCeoGKxP5av9sE9DSeraZzfLlC8fBnLeoDFgVpuvmk57adkTdcPzZLFNE/NZX1YRMBN8Qxuj4fSTGJ6FQl1VfyPyIhWfkbu4/e7czVYDD1eV6+Q5QPhOW0QAFYDI0FOqkAsvdRX8iN6ayDzNl0cUwD5AyqcujPDdWQn7y8
-3upWtAIpgJdV1QkujLWkiX3wEQ2ZrOCacq2koXGKKBCFpXMSN+HThxrVhgELHFYnuoRJ9Rd0Tub4hAAp02p1vHv8gV7Fcar2de1Y//5/VqfK7wat22Nz4WRu+F/fDc1jz+ZkQXAoBIazSJ7MPn9rMWe8r9194SSdcpoS4PhD4ZBNXnOyViSn
-B7XjLSCfbaSWQpv3JfDkIob9qr0BPPHkbWvwZcGOXmWC3p4UYtvUOvGrPKMubBLjI6ga7tWe+WWzMbZ8A4pHc6kcxNSWt9qAfESyI4hlxh30q0S20iM9zxabno9qOjiuOih0RTMYMTbe/7GUsoR9rAdOsoSa60iusAt4cahQ8tlCe7Os64n6
-Ccr0+KL3TlL2FpflIuskVmVCkGqDalP4TXyjfpwP1LYxjQv62I4ItN1qAypUGxwU9w7fasK98RoZWcxpl4HxXJNltwAAJU0bIp5wfBKhfYdSL2lEvg1wJWkEq0+l52Xo54/vJETJBmTs9OkKbHqEWe7uPLAgSU7sLGzAkqibMw8PV2qnn6FK
-6u5PrQk0KdnPP8ka2oyDO53xvs1qYH4s1gwGt55/rdmj2ot5rkseAFdoqhZgUM/GR6QtAte+JhFl1Y9cPBjuxO3k93MMlB3aI99OGxYPNNWEXd6XayZiHSvHblupYQLqIgdrRxj/tTPpb3QSra5/uKgbhOf1pYgF4f4zxsvBFd4DL35IBjxj
-aWxHWEbNseWbzA/yjMzGmE7xnDADCA3oGW5X4lVVRy3Ap3AbfuL8bObU0Y3PEpQ416LPzc9gMrGYNwOsCHLon7u2VTyCh2BUNDV7I8l4NY8B2XT7mgih4w3xAAYUw3F1D8BCAtGCjfZXgKThfssKcCxlx9F81ClRsGNgcbtABbmW/sSuxFhD
-uLa+IWr52skr14XT6sXj5V5Zq0LuNyxm+IRsy5/PkqrfqCneKwB47SqUSEMwP/CChsvhfyWfo0UUSoX1KlIK4G8MnVJEWntB3UcVPIDMui+uXRVq0w7Ds8IIVObx3/1NgD5GDvXPTKFOKrLMRBPVB7hf0Sbuoa0yQ8rNjst9x14Go5E/WzIl
-ZrXgaeYXmymS6xdZKGFVXdJ1/u4ZUH74WeLjzEsxL7jio1a0YGmSN9hUlpul0wrFs/95/6DDMosPh4XrSK0hQoHIn+tM/q5H9xxJ1xYAAdxtnz2IIdl3M9Nl7MTrQjKYDzUVjUqOXU8jp+WHyfbWBhIhIvpsAu7X8t0oZMKdqfGuEwGJxSvE
-zcD6+dRj7PG1D/wr8lbE/H8QY9/3WngCwXjVsRUYH1kDTv0o9ZjfkJ8Z5gBdDPoU5YY0suTOGZLtFeppe4Hz/BzNYdqXMwQkaIH5ojBkN0mToJthwd+t8qfdQfO5By3QN54VU89oXd+OZMVQlyABiW7OEWlA+c9+synGP79G7lvfIo8DO++h
-ehev3QIwscYUCI8nPdaDYo1LzDPX16xPAklQNDjcLvjmjrX/RP15dKYBiITjZv5wgIF37IFPmLaafbfWiT9nC55KXpcaEa60iZAOJZQ+UnulFZzdMl+HuNYXjqAFFlP2LieL27ii+3KDk7fM78CgzXOOJIsy/PTinoIjqILzi9FsdAsfE03H
-JLHud2IkNByPizYhwYU7TUGUwjmws5C4+WRtCMDb0WAhm5DGIepATAySEBqM83UsFee/7YsSjHKbetxrqHA/3AzZGNxl4fuC4RLSRr38BYuXutqtU6t0LxhOoKIyLCsnra0C9gxFbVPzmbPgphER1ucqY415Cu+FZ11ZJwpDEQsNYa9DHuZu
-CYduzjCtCTilhdcmdV/+7G5EVOvq8ironq+IdEgeEFpL5lx5YlKJeGq1+bvgXbClLnCRFE3WExucaOUxGSNMzNY+Qb30rL8LqGi3EAj0PoMBCMzVv7fG6mQBWqcQYKZi8SHT7wz3k26jyMsASkP2JJtm7kDeZmzhtAZUiEb0PcuDnj4elpXG
-NA8QFj6gT4QNu/Ol6wln9SoKm1IbailEtceDlx7I2QuSxuCLO6w6OkzRBns0IaNfif0c/0PqHKFef3ugap+9MQE4MeqGyVBjHVufzx4cfTC7xZvyPLfLU185yoCTchsQqO57oiOP3pjuR42/IY2H5MUZ0L8E/rY1e431CNj89jr2gB48Pjzt
-8pW3ddeWHJEwyxFgPnlJkj5HVia0fkY4GXYtaQJtTLM4JaYglpVw/rQKKBsVBbMevZUavhIBY9YD65L+5UkP2IBUf0rVpZG2z7H13rQMi4tdY+k/DEdeBIeoSrJf5MpzHJtJ3TjynPXLDYq+EdVM60632UYYel2kxx27YocWv8BSu1dR7W/E
-23vb3lGAxSpbyiJp6LiKZ+MoN2xcIou/CG3UKM61L5s++RRlNBHaJYLmz//tPJL23CdnrEQr4nWUcM/9HE8Pm9Ibc/EfDRCIrHHpL3CupJ8+vabyVHs9quL8gLEJv/mcOFpN7F2O7ogN84lshTBBbezsx7v7RMNUps+jidRwAzBDEiC2wCtx
-m+9SW4I/n66R0+NN+DGIQtzlh5inpZM88NdQR/ddUz9Dzge5z3YzFYb0FO+nWG7gqwu6L7vRomS+XsvZZXjBIk0dX7J+ElypKJWP5ucFTjjnKaxcE4UDdY940scM0tNYZ661R7izzBCFIOSpaAjc2Y7r6rFWzX3wGRuxT5pOzta7SYG6YeH9
-ECWa0bGXNoImF3ouv71VFhQFrsS55tSNOn7MnUqeBVtz8lIa6Bvk2vBCzpMraytj+HPGHyqAEZDK34+Wt1Tvt3n2YpxFlCmn79zaUH4EDGyxY3Tzu++MwxpmeJnTQqgGm1dihP/8z4iC3ozFhXibM/RlXThghhaqwQZAaxquVRNOqcQsLZQh
-awuOuLSZNXe6tJgEyGBuK0ZFYg52STZ+DVDiIpX8H9SOEYIOFj3CAMQkqQDJXh590hkI3Y38PVeUi9ehK5ZOA37p5hAtZ0HFDe7bGQ4dpLSiso7ef4bdBTJycvMuFW7qzr7ivLiZQ2bRurIonjIJXSSrezaWZtCQ7fcPYuU6ogsBuKVeV4qx
-mfzsyf3bPYslE0JaIxP7MHF/x6S+od+7L5GthbTQBfVJ2d2A3zRtSDsom8c0b4BvhJRwX2lKgnXQvybni9bNgql98aE0ws5MTZcqprxd0N1rL9qgRTs+Tx5asHmADBhJ0G0RqPOhb3nCrVhqUY3f/5752VsH3r4esPBZWLCwH76jn4jkADxA
-OzoYmi3XmyPn1Wk8PuBN9YYDUm9xQI+z/dui+t3YxIhI6xR+oEC6oQXf7EVK0XovBY15Nhhu8S7uMIjT4sxhd4KBjan/wS91zCRBWFiXP4cf39n0WLNTYt3akA4W5Ts0zLumnHdJYKs4FSHZj0HIotaPcIYWnOXeMPPBI+/iKnsirO7ITjyP
-G07lkxLz8iGNUnXoLq8895NPnFs9EiFWYnOvbR7YSMOydhsbN4nKxSZf+OL0HCIiqR4hD82z+zJZyF00wva+vga5UdXnWflC/Z84B4xtgkFXwjNN05owUW2LNH4DhXd41Tf/r42BCRTB0y9obFTVdNmcsIzL610mlgA+vu8QSXuiPNt2dWd+
-NXviWcetcVWWmTfg3tPzEC5JPZ8eEfhfCfioYyvpEd+J5mhln7QUULWqTsVKxri1Owr6NN/w94fJiOfKtTLIRwGuOfpSMzGsBDmfKTHCehOX6PohfIHE9EWaNp99V87mio4wa5rj7gPJysHw1tjzz0wvsA3FVy7nDXqhFg3sWN/uf8AXM86m
-SxqCv9feJNg0adD8G3LWI9bmGqLS3LDPkwdpiOCRs8bYDPYO1HMKL5OGFSypgkFt8IYSr3PfAWpV4ufX8D5k/8UOZuffgmUdym9aXtRCi8OkOLoyZvLf0UFbK/sf87jU3Q7/tRuYU6924DMoRSG6TbB+Xq48vgkQN18tkuUehsGhM/oINYJL
-vob5ZsFvluZvPZZm3yKemApa8DS16sXm0wpsmKLqsYGqUR0tXg0cIzOkd3MHAXG9ZuwTG4hcrAN59e11FkhSCu12LUGwoZOIBvCQ123GoVc4n3axYV1N/5nUHPScS0mWMkczzLcoAHwJzTs4BWy8tbheJvikUCOOI1jsFjmWEH3PzN9YQRSW
-xkB9oPswbjgCo5FonK0CcLU7w9ih64IF/khE6ApwcDtc0z38DvFn/qzkM4DQrUbo4y/5Rn/0ABOqEt5vu4qx+22cJjIe3Xv3C7dHpbSnS8/IcGGvxaJcGAF5VKFpwKN4fZmYH/gXzQqlUk75DiIIjNxbAOKdEXf0oesVD0SCMT6SKm6/G4CO
-kDckVoMhZiCT5Wnmao3Cbg69T9fqhc/H8Zcsx1ptPuQqrFMWwszKmJXRzGhzgseKt6BN+l47rWJ+ceCqFhpoXItb940/kkcnH/9M8RW3wnBBR7jc11B9gLvHBUoZMLdS5KNwquessyECMG+GkQdZu5HbIYo9hBr0nLhdFb1g/l55ktW33H76
-/sAuIFDOoHFOuPH8R5YNzbW9xRCbs4Khx74cAP59WYanuDuJVXNRdT+RjbHmg2vy0eAyLbO7dZy94c0XkGBkrJDKeFB4a9VILtWjBHIqWlO8KCngF/ezxbsBcFXJKosM0A3GgcZDUhCRK3w9NyfZPVxNRjLpZbKIbZNfKS+PLV2lBvIIkc1O
-Xxn9EQDv7WzsU+uZqKS9QONuk4MiaDdIPuwkyWcSA5EbprgfrfRt3isCeGSCTCGEHUYgS5aD9FRGlNpCmHg9wjzueQTtqk+RbCKrfRWhVqeqMcs8zQXIyuLpFn8SLO2IoLIPurF2wH6qk6g+/apD3Sq5D9c9np1mCdDcfidaInG706iLMR5H
-CAcvFsbP+F3fUeDH8Br9Wg/zo5o5M0OfRaS709UxuAhCz282JH4T3pPgO/XbiI7naL9eWljQNqCJ8OSPJciy6XiwSPo5Lb03e2YzXCqruN+745nu5v71huingNvmmCuARlyuq1+CR2jQDvXBTCer3X0sNyUEGF1hyu+u26izSOvqA46bqffJ
-wcELnxNb38iCvGHXF3PhV8a2Nyy7oZcMtmbsuVVqDB7OxGHs1Nb7gHQHeu7wQ5LlLXKsxGmDqCQUFTqR0ukI+DVDHpcfaq8spMpd8A5UKeERKsEixRJ5bX7YHSG9wdNQB/juQ+v7WpyykJKrXZiVEdsCN4emDBkhuFJUs80OFQKvLSQ9JuLj
-pk/zzTx6egNGXj2zZlsNtrSpK0VlCNzEC9fb3nFQpMFCuL/kBIZIwBW6H3OLbR/d8u8VU63d8xJKjm+MAzHmNV9FP7MB7bqoyhiNwN3zKnLco719Vo+ipi0CKzVQDiYyaabSat/Tj3P1jneKhm31ePxE+9WKPykW45b9pwMlqHH5SBZwMvur
-NbwJyRH1DZe8vXcAXztZ93SUyPh9U6+VPuIBkXjSjYUIimfy4SvLKCShUB5KNa5kyKhaIXb40g/5KxVxBDn96tvcnm9cv/Nf+DnvVrOa/dMVZ1MsmN90eV8tR4hombjV2fThbQKCU9HO5e6fXOxpzAr63ugNqVXODly0ft9Z3dEmAAa4ugTW
-Nok2NkRc58yAdrxor5XkALWryLJ0IGUUtEnjKzrrlt8KnEf+o/6cialu2BUo623GUU9BjR6swrhQNIz4vKNOPY7pZAfgaNO6zTf/z3WF4llESsxIx1c9q3oHDzPLeGHu1/+9rtJUTmeI3S1S5GDzMybQRypUfIoDNeoqOcF3mbir/0V6xce+
-EeCnWzakRz//G4qlu0CXyDy74lUVqHuQ23IGAm9p+CZMGdB0Agab8OC7y/z8DbOSLv7gdzsbvNIp35NvtpmrW1N5BqpMGF1+eObziYOKcRKBM6pY43EUH4b/He1H6ymugtzHs75ATKGdDd58O0Q2SEv2VW66ugryZ5NP6ZuwBFhfj8Rhmgp1
-LG9+qkmx9smzTEpm5arW4DUT1qD5GsP3CO6j8qK4JvgRj6Pil1aNviuzyVY5L0CefFWklM9BZH67JRS+I1D3cGmVS6ko04gihR2JSNChoCTc0BgD1f2JP/VQjizdNFMXyxluNkFTkecsrNNB+CoqlW5Ve9DgsfIMFT/iw0iQCpSTCDMCJUw8
-89In3F2cEgAPdPQAsoWpzq3oQArQI8HgxBip2mlCB+RgjedlKq9UOTFEN1TnWUprngEK7Y4knCUZDOCT9JAe+ruRihRo98aYlZuCgxSi/ylPOdq0L5oisDjYB+h8Yoa7oTjErOFsA2gu3vpps3stkWZr1rUzNPt5D16SGc+TIAA3gL5NYGaN
-tOQTilVbNnXZfmN7EX+mJkboQOfXQmJM0jl/0Qdk8DpQWsPnhme7NR0eNnhiYasP/FAT3Dy1rHI3J55/M6I7Cb1ERV83gOuvuhj4oaeowBW3qxlG5w1FXb46uZtHtDSeAt/RrWjdeOVJAFsPzzwxFxPky/mOBqSOpHX/sdaUKw+5BCN8sEbB
-RKN7NhLaOKGkzyX6KfyL6vj6MlA4VdYDyVr2RfY2eu2qUGZPr+CbqNk5J4PfWZTUQQYHBAbjqadCrRvegonfvsSplqrxdqwCPQuv1MOzMtdI4dyQ+M5D8+TI/3Z7cWC4Em0c+kGwmdb4O3+kVa24iMwsXXXmnmJdzSNI420IAdp++MrCsG4x
-EC950I3nylJ1497ht6j5kR9dPkhB+I3i2AH6vanv6egWvqdGDLuikdho2uT7jMiN8TTpzU72blsLf2Qo+DFmB6zD++mdpWJv69P8jbtDcyv24HwQyBBiZlY7FeZj6AVmWXeOcw1w5amb5JdGc+8QlkSE/f/WFHF+ilAEjZT4B6rNds+LpHOS
-JmbII3naHKRwITTi8k8BZ76BGUUiI5s+HXUWddnERY/5Ui489MguUVFte7h6dEtb8JqyHBPHTnAhgbhLoZkQD6jiuS8DWUkRW/ai1ZhEqlr6+Rp2yvp5+UTdZVQ9NVnOBZijKjIu/S3DYssqXICYohWzsIpLq8lpJDQEjJnWUSYWxlrkpqDV
-CTj+gZ7fH1A9fuVJoKyMLKh+jPPBv7etKk+d2LgsdOpX0eQuXkTXZvfdaDQONrr1MWEaDl7kJvqtMHWKMzXga54oABfQImRl1VUc9349Q85CmJOLmhYE7jRRAts3yrH/xFmF9NeMVIxRjkCvueIJWAIE+EQ7wMjC7v8pfcfoBOg5rSIcrKAj
-eXy1ToNxylCXSeTlW3hV3n+WbV+394wQmxjwcVr7LfaUF8O/cljFyeqOObIZjtJnWB/uW5O4CaOuDb6QTlsILPi+O2QL+jccWG+x8znwhTHgCdk05DqRe3u24lyr3jqm3vBt+Vg2Ca9dyuAMMQqxSwwa8+PYYQwl1/lWLSew9Hn/PSrM/rBx
-KX2QzvTpbquGxIHY/ref4VMOsvrJCHHY7vnpxomSnydIYR4yH6LuYQDEGBTU5XD7uWrYS70Q8PxTmWgQtTW1pFMCqqGU8nPNEiU18g9oCRYswMa5HFNME6I/9g1rvcSo4Hrh5D6dgwyhv+aDSDvTeDkLffcGb8lZif9ZEkApp/RwePip6yTA
-C42RlCEilzuErRGMq2u8k0XOG5qihEqgWbcQJP73ZNGogILfk+ZHJn99B2jl3DD2RAbI39VGM98Ox++92UfzLv5lb3OJZYFWwImIg0U4GwiqrlaznUfQKhxhkV/+mDPTBsEfxod6f1qbnT/zkVq6Vz4QOIF50mR+AXTzaWwvFJl7oXIc4sb2
-zqRi4mfth7DTb1Ap0H+iVEzF/VP1MLyRkdnOlZ4zNip5FztfYOUCZ1go218MmCKaGKtsofS8ZxnNDroLlYOoaFduN1++4cZIY18v7CAeh+bqI+X6UIYne8px8+78tiuBGvsO4uRqFOQjNi1CsKF+n2wcy/5ioUXQc4o49q2/6k/pefG92lxz
-FLLwJ+4nochLcY1LzX976zyA/Kleq+6xysmK0U9zYcC+qlVO2DFwGygkUndvwRVI4Oxv4LAqS5OPD/ozoaDmbxeY2QVKiJq9nVyNrDbpfkH3+UozDT/GXAn0zK0P1GURcZPnKXSl9cJyFAu5YcAZMYF0HhrRrpqxCefRL+2KbeTBcSaQUGTS
-QfzGA8nndVf+dllWSU7VahWwepzCREyu9C7vHT5r+I2aRgmtLcMHsvllJdgnmTL/Rwqli+8e/kkuUI4bpAGZg8yZgkNaIBM0WBzMgB+haJ4cOgEMBSyqWu4J7r6keKHkm9z3WOwriq8YEbSbWKZKHF4ZVBvP3pA/aG81XCnS0Bp7dDmAfQzz
-6xnxbhjUPOQNBi4OtWOfYG69jwfcgFrfV0Rarb0OzmUeZ8F295rgySl4FyYzDa6ZwlQWNoUhJHHwExBQMRdTw4bxU7iBFTJYwvI47tio8d0jDjw+ROB4COJvJkGDYjYSFJoKNiX5zXy4hupYlbKENPp6HvvTOYZzL9YOnytEfdzNpqgra2Vb
-tIQFnafy7rBAkHPSqG1MMC8vmRGdL7oqpVwD75LWC93P3FqAg2K7HWqh0o6gu94/QmOTslc3/UapokXARmGJr7my2vDNerRnKCl94c7IlPhSHN2kAbXiy60ADJEa6uzbiX1kVIuXNVK102CmuaaxT/zRwk6iKGemNGZy66KZrfuAuP38gl/U
-QGhokYZ0gIodoq+30phpWfGCjWd9atecma3E0YxNMzDncq4/WfkXI0w6hvWwrf7DQBsVq70LEMNpWqrHapigOVZwv8hpGzhUfFx9FTnvWPe6xlcGxkYn5U9us814zEcBcVS5vfDyf5DINFoiSuDB30+CsZn0sEte498DPabjZgBscg4D0XS9
-cBm8X6sVeEhueZKMZn5aTeIcwin9vUn6aMdyv2xvJ8ARZ2PFI6fQuJyujnITETbiMvec3XuHdEBf7gd03l1sbUGHPxjoMEv3rccRokQ0thKTISndzQJL7CHZ3xw6zskHcb6aU/caVoVQRY0Whbnw7LDxVselgoVI3caqMvgi53rAWF6cJDuZ
-Qte/djBlvrOANBhZS0oGurjGfGigLI+LNVwJ6plRrVXz0UWCjVnHwXHqmr4emvAd+xlojvMaWa7uUqBDWGjcz9CkSwf1AoXnlKQTebDwmjgaCz1UwpUacRJL26eypRkY4tGA4LQzTTJb7V94CtlbYbVtOaG5lr/IsH8qsfy0Ga0kUJz64c9P
-vydVcQvPO5IjLrVaJcSyBKC2xwI7+vfywnJEbYk2o+dKqRNQmss6pRbzeopAOEUQhZZyPTooWPQA2HHJNo1ZXnufenIi1JMiYnVoa4PwhZI9Zl/Eb4LBzeEsFiX9HDbRymYbb/SCx1AzENeg7SMnBv9qDGFqzb81foSwkQ0ORVhgwzTIZRJs
-sHDVjGYoLPGqY7WuZhOaXJfCy0zzr+y2Zv6GLXMWKo5VVB5yNf6P76qkMng5ydtoXYTkkNQRVHt7jVVqLZOOrIIUB4/kfYeUxCkVRqSsKRU5JhDbI6zQsbjNmUtsnEq7egH9PB6ites1PhkWxYlqx1Q+RMcLJy3TMZH3SjCJtjmWZR4OXbWV
-B2eM/Qy9wFdRefgGI8rcvWeOmfqps8vZ+K1k2iQNn+l72j5zkYXZyZI15bDNsAELLD8C/coq8FY/BjIU0JSTCvmuIn4MSSexqsuiepPVO3rXAlDq+UD0AnNcsGSUDMX/H3wtIn2QD0+uIZokPzOWN3adWOuvv1U09Bg7pOlCRXFZlWzU4AlG
-2juGdP/4MRkUuN/DicBq+aV+6oAQ8jIZAFZdY5fzt+PropcgdLUVs/5yaegmPVkormdIgc6NVv3mc648BtY3sT2vc/U85SE8l6Fq8fu1UM+XhObkRzpT/WrMSo5mVjyHAgHP6OWdvlwq31x3QrePS/jH2Cjth9SbGXCHe/73AE+UBb0UVyQD
-QoHVE32ZZU0U41F46AYxuUs5BU/JgGYtAAKyQmAcBO732V59zPN953FHYojUcr+g9Wy4PLoG+ciCjXDPMI0svd8Wuzj+XHYDlZE9xzl2vaKDjahobUWeoUwLbDSZ7khBoMDTwLv7BbW/466WTY0rpq52ZwC4YM/+gh0f4GsGg+OhG4thtxkz
-BGOoJ0Fgo19W4XAm9sLFbaBRmfShUU5r4sLYSuDuFs4WUoMSFh31Yrd76tcPZAADolBr/92EZJTbkjDfgY/KlL02krMzmQv5aBQo78vOBF+hWaMh0PvjebBwpq0dGKXE4Jm1AmkTLb2UvjUPPlSUNqc2Z/zMczAFd5rZ9dNXwDtu1FrRIgDD
-M+AstRU3IRhwPyooybmrWQUgqaz107fqHu4jENNpnu8h+rZfoYrlptbDriDwHTqi6UdYSSTeDZEQ3NxFeOWEC+MMZtG/d8ENWerf/Ecwj07QWhNDS/P5P4OjEoj0Zoe9iaXp1IlU+dVNh9+G/9VDuCmnaacH8iVNwWjDNH+GnSSWCATJEEs5
-Dc9WYhz+4r2PeFfllZ32C6pk3W1kBN1HFShQaswYreS/NIU1rNsDLI9pgaW7nXom5ol/uDFV/Ueft3bOrGJ9HJqyDoHm6MAzBxzomlxrZOB5nqCPo4WBMh1ExLhTnX/Vfbom8avf+qBdcN3Ce0yjVCjmB4SfsnOIsNk0apUuvftB2seoWQpy
-0AWy9wEZ32nhErLL+bwS4YRh1fBiUrF8v1jLE5Z0h+O0C+JEkvNbBCJQBYJzcQBttKL7u5n/lmsWb2umAcA1P2hqXxfa4aoC9bxTotpOcUs7clhmWfrXqCWOE0IAtf/UwGDPRzD/e7kaDBu+31uaiaVoj3Q7Jh61bVpXBo7gmGAzf/hQc6vP
-wFidgSG+5O9i1YjOAdutKsPts069VVNcsLEYMecGLr9hl9oRle3unrnImi84nppPYXK+S9T3dargKNHkN+PivW4Ks1gEir21CudJxLCV7azixANWGyVV6Cy6VxAr4JnuXVRpW0cJPD9p+PT/CyUD5U4X4tp5X6/sxcLS9+1qW3ef/fQw0BRI
-TOq8hI7uAmxtoJycNl379rO12r9JRBYmyNY0FfKVIgp4TISeWzoTKPGoUPV2cUdLbVHzS8YaeHktteP5ndo5Uel5zq2dFbHVH6mCKNSelk0RW009MRzJ9XG5OXTs29bbgOQJwLg4IA7TsDD1y1kiPhLtofjRBnAg2QeA8mxgfxrxRoOxOoK8
-tN8gd+rZyfIuyzbxhgSk1X7dkcAUKKuttZQYgO3PaEhHR1Wrnmh+kBftHKmwEIuOP98fJRfE1WMsDrvCKMXKUhWWKZJzAdZPTdccJcc36pY0cOq+Cd4Gb3cDBz6AnR5ar7cvLqBw462oU7yfq0Qzv2A370bcWLqL14Ifz+BCjXxmvi2Q5Zgb
-jldzFy0Um7cOkTtWhsIBpO7zTZ9K9p0VzOXq6tk5QxyAUf5Cgy2oUiksH7Zbb5IkgFpcaFrrH0BwFva7NMwW4XxLVAdcFb3IDxEAn6z22q/pi7431cVStwHHSaqMW/+bwOMBi1o6EpWegi19XPQrJvZ8vXoLNcZLGiG5LWurbNZKCEXk4hUn
-ITOWJfWyfR/YFECKBv9JsAWvf45b1p5JFBVVyTmluqr2/qa3StWViwyhmO3UJU/6b51fA3rTbRsOgITzTJ/4m1xdYaXwo2Mmc7FMwpiuYUamtv8OAvA0eJ8EOsl0LFAimtAP5zYh2i5m9JWit7ZVgUDDz/kbTF/ETGizQMBk0g2EP8BCVAsF
-VVAXjrP8mLa5r8BmzLC84qOtsTFo/Lin0k6092bJjmS2rDiptrbSLyt6oJhvRpGX1KJDAXcn0es2OcqscwdaEmMefrqf6nH3JtCgY0BVbPvnT/o3BDSUcZUTYoJzYps7I4ukV/DLOP4QY16ynufI4ddKq/2JmC9VDLRL/oeAaYqeQb10VHt4
-t/8uyCYzvf0thSGalhurFLILW6t9mLgt6oA/dOH+vIgaK8iGdE3khRCTmeVl2aLfQgsF33cMFBheLJrRi0vchFePM0h9CfxTqvSasFFZ30xCrSfqcca1U12j6rOVIQh1Tq9EvIv03CiXzij62ykiDohe1UfhY2uDcGL6MjdKZadLfWRktb0U
-x3QobTr0C4nA1AsBfvjJy8gREZho99VBFPndIFkS94V4l3W7AxSJOzoJWFkPmZa2mXCWJ2mYo9MWQCMpxSuicvjDQNICxU8oM8QVA6ba7hSkzTLiYlbWqe1/VaGqlxnUB9R+R/4pDL3yaS8chtSEKtCzJV0L4u6Az1vq/agxsbRXgqGsGEpB
-L76SiuQFNqoudohdugzhIgXS+G3AaxYuju+v32XfyDNgmWiug+NvnSlcUmgcUjIZyKRE1mOLOSR2ygu+pAh8X3K/wln1jTeB/990x0WC5Yj3diQm3NeaeLmipRd3hclj/qgJ+ZNuaJNedEL9nSu/WUHP+otELBttRsXA7BqkxWmSxLCZm0yg
-EaNnM4KmOYrd4vZMm7rDBmImXcgKXcDsGvnO2dQDuxjmNnlX4SJWK3Gdp7CRq2kupyvmTnbdIo3PGnHJgEhn72kxJfFHKjHMAD40tDaTLEStDgsDwq/luWwPyRiciIRtG+Q/lhxJw9qCK45kL3s30hgPHvRmtn3GJa9sjP6jhU+OP0xa4y5W
-Bmw4qsd1Z4rbvDY4JKK5JRMALAXYTQK0ce+8gudNprzbcArpxYJXl1Z0CHjFUCqLLSBRkV2hZQ8B+ZJL9sjyF2zJD1ksPzOHK43lQzHYpM7DTzP+YEU4TuGY5atPfPnsgDvWRIZp8Nd9YoYf+D0KcS6o3gRdNY2tBDznjsxCp3cZdcHcLIvd
-EgSFJb3O/xOJWIFcLYMwyY9NN1z316pblwD/MIh2BT3/j7PmuDuFAtnN8oU7c2aJb0LJQkUe+q9R+828ikAw0EoBkMiNTdC7uO2cUFa4Rcs4JC9laik3tr8TXLft2Fq2WHfCrvQAEx69Ary/mUtnDHlwmE0W5ET7kTS01Kac6kwlwfeSo1DW
-tznTr1jvTjX7hKaAkvxRmJ5ymptDF2Buh2caYXLDdU7DufY/L0Urohj0BsaiHQkQM2XR55kHa86FGrPqv2bp8fM2o4KlGb6S6VypwMIRIp+vj2tOePYiFoTkuUgBvWU8vI73odwiiXEoqoj9RmHbaO3GwOWKjngXb6SNwhXLrOKSJkZ3gw9S
-KLRj3oGJIr+VT/+BB27uMyWF9laDnjEEKI81d0+x8i4wK5O898jgWty0uBc7lJ5dSGEGhFs7xHnJAW/Vtgkk0FVxhk8vIHW24tMcW/E56cerN1r8O8en+NUfMoeYZfY51+gwGdZfP59m8YfIO33tMkvFbhvqgXn/wlyaVse/y+gAmh/lUzbo
-8dRQ6xqe38LQ8dfUJSa0ZUhePMRNh7BFVuikpGVHaejmyr2t2mDXpYhZQLAbPLfn/Lb2jXKhBnhyzUdGUjB00S4iQvN+G5TW0IVbuOtcAAEDh9AG2WHHiAAGHpAG5iwK9Sw0BscRn+wIAAAAABFla.
\ No newline at end of file
diff --git a/examples/example_framework/students/cs102/homework1.py b/examples/example_framework/students/cs102/homework1.py
index 5ca8046b784e75d91b031a38bda94ef46bae934c..c314aab912bd438c5947d99a871a63989dc90dcd 100644
--- a/examples/example_framework/students/cs102/homework1.py
+++ b/examples/example_framework/students/cs102/homework1.py
@@ -1,21 +1,18 @@
-def reverse_list(mylist): #!f #!s;keeptags
+def reverse_list(mylist): 
     """
     Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
     reverse_list([1,2,3]) should return [3,2,1] (as a list).
     """
-    ls = []
-    for l in mylist:
-        ls = [l] + ls
-    return ls
-    # return list(reversed(mylist))
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
 
-def add(a,b): #!f
+def add(a,b): 
     """ Given two numbers `a` and `b` this function should simply return their sum:
     > add(a,b) = a+b """
-    sum2 = a + b
-    return sum2
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
 
 if __name__ == "__main__":
     # Example usage:
     print(f"Your result of 2 + 2 = {add(2,2)}")
-    print(f"Reversing a small list", reverse_list([2,3,5,7])) #!s
+    print(f"Reversing a small list", reverse_list([2,3,5,7])) 
diff --git a/examples/example_framework/students/cs102/report2.py b/examples/example_framework/students/cs102/report2.py
index 894b76932fef4cd30b2fa663191e572ca1415385..3637e8b4b864c13776dfad06b7845912a0b8eb6f 100644
--- a/examples/example_framework/students/cs102/report2.py
+++ b/examples/example_framework/students/cs102/report2.py
@@ -22,7 +22,9 @@ class Week1Titles(UTestCase):
     def test_add(self):
         """ Test the addition method add(a,b) """
         self.assertEqualC(add(2,2))
+        print("output generated by test")
         self.assertEqualC(add(-100, 5))
+        # self.assertEqual(2,3, msg="This test automatically fails.")
 
     def test_reverse(self):
         ls = [1, 2, 3]
@@ -57,8 +59,8 @@ class Question2(UTestCase):
 
 import cs102
 class Report2(Report):
-    title = "CS 101 Report 2"
-    questions = [(Week1, 10), (Week1Titles, 8)]
+    title = "CS 102 Report 2"
+    questions = [(Week1, 10), (Week1Titles, 6)]
     pack_imports = [cs102]
 
 if __name__ == "__main__":
diff --git a/examples/example_framework/students/cs102/report2_grade.py b/examples/example_framework/students/cs102/report2_grade.py
index 13a61a65fc7ee10d8680ca276ca8694b4bbc59a2..90155184105bf95b700d6eaa30487d9ae8045eab 100644
--- a/examples/example_framework/students/cs102/report2_grade.py
+++ b/examples/example_framework/students/cs102/report2_grade.py
@@ -1,3 +1,3 @@
 ''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
 import bz2, base64
-exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/example_framework/students/cs102/unitgrade_data/Week1.pkl b/examples/example_framework/students/cs102/unitgrade_data/Week1.pkl
index 3e94c9f63cd7ce80ac71dc95ae4e5981ebc3855a..7baf56e3ca1a147813ccf7eb020ab6eebf1c0f33 100644
Binary files a/examples/example_framework/students/cs102/unitgrade_data/Week1.pkl and b/examples/example_framework/students/cs102/unitgrade_data/Week1.pkl differ
diff --git a/examples/example_framework/students/cs102/unitgrade_data/Week1Titles.pkl b/examples/example_framework/students/cs102/unitgrade_data/Week1Titles.pkl
index afe435c082fd18662075c52a0d30a84774febfd7..7215fc4fe237a4ab398b8a2480875d2891b2e66e 100644
Binary files a/examples/example_framework/students/cs102/unitgrade_data/Week1Titles.pkl and b/examples/example_framework/students/cs102/unitgrade_data/Week1Titles.pkl differ
diff --git a/examples/example_simplest/instructor/cs101/Report1_handin_10_of_10.token b/examples/example_simplest/instructor/cs101/Report1_handin_10_of_10.token
index 028a26e87656348088dc67b1568cbcd9fb819e54..4d35b2cce5c9b2463f99ff54612d8e902ac889da 100644
--- a/examples/example_simplest/instructor/cs101/Report1_handin_10_of_10.token
+++ b/examples/example_simplest/instructor/cs101/Report1_handin_10_of_10.token
@@ -1,27 +1,30 @@
-# This file contains your results. Do not edit or decompress its content.
-# doing so will cause subsequent evaluation to tail and be investigated as cheating attempt
-### Content of cs101\deploy.py ###
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs101/report1.py ###
 
-import shutil
-from cs101.report1 import Report1 #!s
-from unitgrade_private.hidden_create_files import setup_grade_file_report
-from snipper import snip_dir
+import unittest #!s=all
+from unitgrade import Report, evaluate_report_student
+import cs101
+from cs101.homework1 import reverse_list, add #!s
 
+class Week1(unittest.TestCase):
+    def test_add(self):
+        self.assertEqual(add(2,2), 4)
+        self.assertEqual(add(-100, 5), -95)
 
-if __name__ == "__main__":
-    setup_grade_file_report(Report1)  # Make the report1_grade.py report file
+    def test_reverse(self):
+        self.assertEqual(reverse_list([1,2,3]), [3,2,1]) #!s
 
-    # Deploy the files using snipper: https://gitlab.compute.dtu.dk/tuhe/snipper
-    snip_dir("./", "../../students/cs101", exclude=['__pycache__', '*.token', 'deploy.py']) #!s
+class Report1(Report):
+    title = "CS 101 Report 1"
+    questions = [(Week1, 10)]  # Include a single question for a total of 10 credits.
+    pack_imports = [cs101]     # Include all .py files in this folder
 
-    # For my own sake, copy the homework file to the other examples.
-    for f in ['../../../example_framework/instructor/cs102/homework1.py',
-              '../../../example_docker/instructor/cs103/homework1.py',
-              '../../../example_flat/instructor/cs101flat/homework1.py']:
-        shutil.copy('homework1.py', f)
+if __name__ == "__main__":
+    evaluate_report_student(Report1()) #!s=all
+    # unittest.main(verbosity=2) # Uncomment to run everything as a regular unittest
 
 
-### Content of cs101\homework1.py ###
+### Content of cs101/homework1.py ###
 
 def reverse_list(mylist): #!f #!s;keeptags
     """
@@ -41,157 +44,168 @@ if __name__ == "__main__":
     print(f"Reversing a small list", reverse_list([2,3,5,7])) #!s
 
 
-### Content of cs101\report1.py ###
+### Content of cs101/deploy.py ###
 
-import unittest #!s=all
-from unitgrade import Report, evaluate_report_student
-import cs101
-from cs101.homework1 import reverse_list, add #!s
-
-class Week1(unittest.TestCase):
-    def test_add(self):
-        self.assertEqual(add(2,2), 4)
-        self.assertEqual(add(-100, 5), -95)
+import shutil
+from cs101.report1 import Report1 #!s
+from unitgrade_private.hidden_create_files import setup_grade_file_report
+from snipper import snip_dir
 
-    def test_reverse(self):
-        self.assertEqual(reverse_list([1,2,3]), [3,2,1]) #!s
+if __name__ == "__main__":
+    setup_grade_file_report(Report1)  # Make the report1_grade.py report file
 
-class Report1(Report):
-    title = "CS 101 Report 1"
-    questions = [(Week1, 10)]  # Include a single question for a total of 10 credits.
-    pack_imports = [cs101]     # Include all .py files in this folder
+    # Deploy the files using snipper: https://gitlab.compute.dtu.dk/tuhe/snipper
+    snip_dir("./", "../../students/cs101", exclude=['__pycache__', '*.token', 'deploy.py']) #!s
 
-if __name__ == "__main__":
-    evaluate_report_student(Report1()) #!s=all
-    # unittest.main(verbosity=2) # Uncomment to run everything as a regular unittest
+    # For my own sake, copy the homework file to the other examples.
+    for f in ['../../../example_framework/instructor/cs102/homework1.py',
+              '../../../example_docker/instructor/cs103/homework1.py',
+              '../../../example_flat/instructor/cs101flat/homework1.py']:
+        shutil.copy('homework1.py', f)
 ---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-5fe041a8eea8ce897998f76662c0dc3169ad1e65612210897750e9730ecda63b0c8b49c0e7bacc254234894fd0dcf4a6e2ac14548af326045d42665291e883b6 22928
+0cc504e7f4f19409fd68fcc3c4a708ceeae90cdee5940eb77e31860fd4aa91829de3608a07313975687766a035ea26aaced13d2f2318679588a56ac25ad82279 25848
 ---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
-.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.
\ No newline at end of file
+.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.
\ No newline at end of file
diff --git a/examples/example_simplest/instructor/cs101/__pycache__/homework1.cpython-39.pyc b/examples/example_simplest/instructor/cs101/__pycache__/homework1.cpython-39.pyc
index 797cf46e4a10aa111b1af224256cb5ec15734be5..2c1aa511260c0952717cd51ba68b56fad14aed7e 100644
Binary files a/examples/example_simplest/instructor/cs101/__pycache__/homework1.cpython-39.pyc and b/examples/example_simplest/instructor/cs101/__pycache__/homework1.cpython-39.pyc differ
diff --git a/examples/example_simplest/instructor/cs101/__pycache__/report1.cpython-39.pyc b/examples/example_simplest/instructor/cs101/__pycache__/report1.cpython-39.pyc
index 802eef731989182b2f0977ff0137f585c62c9517..03cc4ab83bd617b53eb335b8a967ebd8951ce21e 100644
Binary files a/examples/example_simplest/instructor/cs101/__pycache__/report1.cpython-39.pyc and b/examples/example_simplest/instructor/cs101/__pycache__/report1.cpython-39.pyc differ
diff --git a/examples/example_simplest/instructor/cs101/__pycache__/report1_grade.cpython-39.pyc b/examples/example_simplest/instructor/cs101/__pycache__/report1_grade.cpython-39.pyc
index 89015333993526f97453687a09fdaee1fe3a38f2..957f9340f5be71bd1ab13921d01f7ef403bae07c 100644
Binary files a/examples/example_simplest/instructor/cs101/__pycache__/report1_grade.cpython-39.pyc and b/examples/example_simplest/instructor/cs101/__pycache__/report1_grade.cpython-39.pyc differ
diff --git a/examples/example_simplest/instructor/cs101/report1_grade.py b/examples/example_simplest/instructor/cs101/report1_grade.py
index 66d13080f49fe80a7f9fcce12b942980a880ddb9..43da14b77ba5b271afb542e4ae2e098397dc3fd8 100644
--- a/examples/example_simplest/instructor/cs101/report1_grade.py
+++ b/examples/example_simplest/instructor/cs101/report1_grade.py
@@ -1,3 +1,3 @@
-'''WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt.'''
+''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
 import bz2, base64
-exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/examples/example_simplest/students/cs101/Report1_handin_0_of_10.token b/examples/example_simplest/students/cs101/Report1_handin_0_of_10.token
new file mode 100644
index 0000000000000000000000000000000000000000..ca16ac4aa865f72adb0f380c2ab7795f57d25190
--- /dev/null
+++ b/examples/example_simplest/students/cs101/Report1_handin_0_of_10.token
@@ -0,0 +1,191 @@
+# This file contains your results. Do not edit its content. Simply upload it as it is. 
+### Content of cs101/report1.py ###
+
+import unittest 
+from unitgrade import Report, evaluate_report_student
+import cs101
+from cs101.homework1 import reverse_list, add 
+
+class Week1(unittest.TestCase):
+    def test_add(self):
+        self.assertEqual(add(2,2), 4)
+        self.assertEqual(add(-100, 5), -95)
+
+    def test_reverse(self):
+        self.assertEqual(reverse_list([1,2,3]), [3,2,1]) 
+
+class Report1(Report):
+    title = "CS 101 Report 1"
+    questions = [(Week1, 10)]  # Include a single question for a total of 10 credits.
+    pack_imports = [cs101]     # Include all .py files in this folder
+
+if __name__ == "__main__":
+    evaluate_report_student(Report1()) 
+    # unittest.main(verbosity=2) # Uncomment to run everything as a regular unittest
+
+
+### Content of cs101/homework1.py ###
+
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7]))
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+eb9da76a1e7a395c1f3516d4b038c32e3d0d2cfce1ed36315a690955abeb5ccb3e7faa69b0e528465e71805049b8e7c6268b49ce2099794375b6a4f6fac2dcf6 25472
+---------------------------------------------------------------------- ..ooO0Ooo.. ----------------------------------------------------------------------
+./Td6WFoAAATm1rRGAgAhARYAAAB0L+Wj4Gt7Sl9dAEABDnTTyrg+9NNr6wxzmezcR+L3mJcv6ceUP1qtGirAr8d2QvF5G9xkxfiWTnF8I3a3lr9eWfjFHNkrVy5ZyOJO7vTJqZNSHImZHCchYvDXGVhJfg07PP5U9U23U0GCUALDUDDIn/x
+/V4uKI+X4SAjRgzzh8VtOLtH+1Ky+kC8m4JrcCyP/mNDbdqp8ICGKt3lnmH7K48h4iVg4JmG3uvsez0w2VhuRgJcjkh2d0EumlQIo3FF1N65zatMQy6xw5RDcReR4UiAQ3s5HsgBGIhZm/j/FYP362zVCiKk1sV2/qe5UdRbW6Sc/EuXIom+
+zsyZyJJ914HDGNM8RN7JaGYffuXoIeEc+20W+UanxfyA2iV4cPgEM+GX7Fd2Y+36mx7bGFGXNzwZxGaEilEd44Z3j5GzsiGa5I5fTEdcxAr7qT7y4ZXRBhYoM67ka/rEbj8ZqLMrRF4RZNIGCE+e7l8hCvW10bbb+YryrCDNHC36fdcgj5Cn
+40k8fq8A8/hFNCahsaJrfuPs4tLryz6DVO9cWUYUYz0t4u83P90lYuL8Hn+lSPnNWK27ovR23YDsrFBRiuCi+CO2n8YaqkP3TRHVn18PtPS02YxB6/rxyDmxqfKrQ5bDCcGixutcZjkjjVlaHSLsDBUNFPv+1eW1D6fASmMgk5oPU/TIR/tA
+5WZNfaMxoweiTr9mddM87drVczBzFyRBgi2Ux60/pGL5a3Ji54R3zXggjbxXm8K0baIcF7XRk30DmkpuJUrnpISC0HLybKSRzfgktmaWFDB88XFC2DPqnbvZEiJ2ASmvxjzB8opbuIHuszcsQ3TwsRbjWuLzlr45dRMbRvmELkqwtdQstdEX
+0KnB3b+L5ZI+LBh2UqvD5s6SYzaGLpi+6QMUpCLraz64E7tRpgIrlFBktVBaCbrOGj4X+JkafmaM0v6P8LFBO+H4rCIE38AcNJg098FDpVpXruvr1330dSNtOHSNH7blFzA0KAsTfXbqlo51MAZFx/n+Vdttus5dQs1ENpTjSYTp7aktvHte
+XT+W6Qn9nhMld6/w8d1JKhJUrz62tjTlt+L5XAXhuIQbLH6ANvs0+D0XxIR/Xmgv5INeauFEU7i/f3glZPsZSJgJbE4g8HX1g8Gbfq2DRQQvurFD/S5eIiACC959ql0NGYLKXJ84LS88Dh1Zb54YasO+GqHjD0eC8oOdwnALTzIoCa93Ya3E
+yxjgjB8LnutemMJlTsCdi/5EYxGftm+9deuCMFhwX0DFE1mkWejoGJ6mzkcZg2RTR3kLbS0YqTFdov/wOYnObsMeIiB6BnYG2lEUDY4wK6TVB3m+yGI3Ds1qzf5JUCzvGmeDeaa4qiWl8RWtB6q0xTfzVE+xD+NJoaRgEZ4lZUdoJZTiW0fF
+3M8JKNpyfJEuGILG9mbVFtQUYQR24A638v1zV84u1e14saEpyitnx8SsK/xdgBhehI0u+ZLSlpCGQwP0OSxwrGyBgzUswtfhKqwLQR47YFIj5IprXVwxMGN/lI+tCltMI5IdJyDaTWXlf+3aEUMAb5cnoYYZkex2Viq5W2NLQEprotROBb5M
+OuDlhwJdZzT31ktElWoPh3Zw94l6O8o+m0lmUKC+Jsa6eycbn25A7P227WJMHQOlK7dTaO9J2H77/LYJml481ojBKsPkot4tTG/zMa/NHd7DN1FeREYDQ7ddoOaawuIVziqsmMMMt1ou+RXs39wRmQXc3DNHsrWR89Xs0jEJFtMC4H7k/+BP
+xe8gmzOYBsORRUg/MEvqwLQL/DgMVU8tVJFNE7AcCFpHMLZccIF4PUZpJI+hugwe1O5Uz3nB/NgZaTOKrTg63QOKB1bN/CLFM88glUa6H4pFiJCcKdD0veefdhLhla9YkxElE8EytJxESCM51ck57yKc7m4zkNxJssa4E9Rj8UBz2YNUcrHK
+V9Pl7d6e850GYMAJPgsG+tGU9/3rLZDxhzMzoy0ZzNzclXt93lfgUq4hnKlriWE8XS2wG5qjgn18KcDnKK0U/ZCFHntVWRCyAKlTMwg6YViXvp31C5OTdCR2maWcEH9Tim3gterNKA0WHsetlv+KfqPgGopdm2gGr8j7BT7HNxo8wIaV2Q3e
+eIJlwcJ1Xu4c+I3Wj+/ftbHyrn73/iMVUDgVx4NLmdLhG3SV37TvWoLzj4ZhFC1T3cVSqrXT9KuYKTPJKlVsnmpKM7zM5K6qQh2NhTFPSN8LaENFQddvS0Kv+B2gtw3lJaw4J+E3xI20o1Rxzo9WfM9DiCQkMasO8me20NITUJc0l6N8KKv5
+6ywUyDqRK6IBMPU4VtdW5AQKi/s585Jtqlgtxvw0waBRKGOSfktYX/Ss/RwNRCpHKMrsPX6SdBzLULB68UDEZT7Rq8BX6S2QfuD8vO0Y+4zjnW7rXg9rMhofjhxN7wI+jw1l9w/3/j/ZlbdmAJMABM2isGH0Wm4JsPfp8kNnLoXnfRu7S/L9
+1GUWJezGw91LdtwoHihkafj+plN8u2t6LMj98txbccdOzcqqROVHNKbWD72XeH4ry87tQx5OYKu6DJDNzxkd3sE9Oa/lDOBJ2jGxew7gjDEoEcLRuphAgvBRuI8vRL2Q1XYDKNIpm9l2HEI7cTQ3B7G7yUtQ2ClTN7tdjlnLphV3F1RHxlyE
+mkybkg+A/JUTaePcmLFx+PNdHyGTxLBoXkKl33+1uIkXRJoLAaI6/JjltGulc2umw1OksA3Z0CgWmZOX1JsA24NzFClKcQHEymjbVy/eck7uPdLVHL8P8KxZgSPEErwHOn/SGHbpVJYp3g8r9/WGAAAUBUaKJpJEQgpc4mlt1e0Bh9EYDuWX
+uLIEteM5Mf2Ve8TQ/FSiOR5dekd16MRlYJngNAXP35+fpnhZvOzYFm1AR2aqA8gG4I254zb1ws4QN0mEYLH/tN5y7k263xrcR92GvZhCTV1WMeZVRpcM+q5xynbfeovDO9bfBgAut9nqOkp6+RMuxTnW9AgjGbPp0Wfh4ohKofDiAPhrK7Rq
+K2Iyzlzk0MNK0c2mmiltm/gw3s3inrxkVX5BefvkmrtnNsnjdaQmBYLaCQSPMO72nyvK2APvxHQkqBU4tTQ3hepBz+QiZdJIYzVX0TS47Quk4VCgZm74B2/zVE2pvUHx5mftQ/wVj5qfIeLUTl64JfzTCpY2+e71hfnNjICur34LEupV7hsb
+6fP7Eu71jTRw2JZUa1R/mbqJ1HRH+mg9Pq0xWj75d1qhj13EUVP7VsVRj/OqR/sWHkToOjH0u3EGifvhHS6JhTcj9Uky0N0zHAFhkBXnE5kN4FtDiMhvPQqdMx9Kt+WHh7lnoMcLT4qG7K2COefKzXbbfvtLgY3JCJ7J/f39SJxV1vv2V4DC
+8Ld39bSeiczEoEsYi3w3HcdoiHbwbyWs1bwlHkUg+cxos61C0OG5AOZu23+F1G72XeFDq5NuvTJ2utMmQrZ7783NV7BCtIO5A9j4j7eQJc/8CrlSLb+8Xj44aJzRz5TCTVmdiqiAEESKADFOwmU9BZd6htdueXpfA8rjX/SVlFhHbSEpvLLC
+BCs053Pnl0TRtbHADiYpR69QGsyS+6eVYvlcdwk44m3LCmrTYkYuHFcxUXFD2whUe1S9h9SdDGnbxB3PG8S+KVhKQ7pJWnqfDpk6cz72/lI4PBb/beLhH2NC3Gl/jvN6lAhB2eGfWZrJl42S+d0wM5xaqXQ55ZOayLXsf0qvsXb1EQkxh8A4
+w3wccj2Gh8aUcEykGcahxS9SrYWbQ1eXfiDRzR1uKDYbzczPkgVosSfPj+8Py+Lavqyqp5ZthFlb2Hfddtr62mt/A/Gvr5tUBILJKcia/HFGocUeQpyoWKRgIx55gF6E4s2mx6N82iUW24L+B3By0nOypmszB+vu/v8wFIULGim+Ac5ei0r5
+q15f1SYcHG0w7LPA/Lkq65kHcxewPmZlNS/15M/rQ6U4++ylzh4YDX3xgQDSQiw3oFx2LPpdrXUBRVn3QGAP854W+BZsrxk4hRXihrKAFG+A4pBOk5pdG1T+oE3uFzXVYQpyaHxeL6jnzk3n+MRc994X7BkYcQ5VTTTvsj9xjJ1aXvPY741O
+kOTfBrggJUwwMqjkMH2PV3OTjgm6OCwYQezOwcul2gkO/k6CacK1O/2AiyK/9OukdBwcxyw5uU8SjN8i5A0JUg47grzjH4SfZMT1bEd/guqWjqSvceTpUCPTplsYJ2CgBaMbY9oUvT326I9gNEHAdTyUOmOSWXSfeCk1+K3tIJovp/GFnz5S
+oQrQVLpTt34WpbBBzxL606ry97OchHSMUEUXCo6G3Tpri9LbRC6Fw4HXQGIs4b/hp2USZWMsMqWBj9QbwB4oN44uadNuii3ICs6azkHtkld3Gji5dGbRSqHraImTd+fWeTavQtWI/uRyX2zTfI9Sqs64da9zHK6uH96liA6QMbClX915uRIp
+h2jZJ8Zl21cU+t1XVtu+4eGqTBCsIWkyouh/5sxWyB2JtnGuMU05B3S6kNqLFYrFmI9I54ijypMrXqmZ3RoOv3AwhUoCSaf4x2R1eCv3wfOap3yNYnYsk7FnqfYC95YJZJIQ+m8e8dojtB8SPFcDTiNHnUxFkfwbgpro2vqsVjqn4j+kOcVs
+RQUgxfQ62LnqW46P5lEbXFNQA8x2LzZYy8XCE65uACwb1Z1oZP68jni4OhjXAJ81KpQt1qGqAnDkTPJL3HXVUhpPETQKf9ZtTR5RDdHcPF8Nk/BWEimdevx8DA7ShQDwRtRSN6xNrFQ6KxLrymO4xiA+8CwlZV4NJ7JlHVPk9tatRAi0iFjY
+e1sqd4HyBO86r2tid1Yt9i2ZqNuIdlHD5zhKoSyy0xTpXIpUINcjk6O6XWRSgIMfadCBLJI6APk1LgUdSHC+7Q3DDYbczB/f0JgeL9ot/aUynsxfvUtzHJS2PIl85ae31RwPrFU5jCKN4nFWcfBRpTI7kGgvyFokMlx27pSI5RH6wLNfhaHS
+jc1HPWgwuJ0IoeAG5ybZfwIi5ADJ3v7Ba6aBWqfE5PDoby9q2A8m1Vjp/FGpI5RvltQpFXipNE0owX3Ety8hHyOZzkuhMiHVKnVG9yMwa1FMK0plzNZwAnelt+kpAEfcIM5V7KfjL7jQa4bpsayjf5Pw5wkQfoBBiLOHnuF2A/PX864V3GQI
+usDhrS3/3Wep37VzrRZ535hHRAZFIM2kKCivELn1iO5VVankvxE2H78Fu1fMy6otn/okJIhNBVtIQlN0eqVqBquOG3c3KRIZ3iSRsN1k5FswY3Hs1xyTpG6gzKPOTjGWvF5WkJbw0uJqsz2TAJUAaYnldF7o7RHh+FAAhwDDWZ6Uc1KVUBX6
+X7swHoNxrLHd7N2dZXHS8ilv7TtrrBENbusL/ritfTEAnx15pWfJr/ZlM/GIDPQkRX0vlrNmYxs+S6bE3BQ8E071x/whHBUROEPkHyEwHHxWc3PfAtjpBlNcn4a0xmQuuRgvqZUgU312xe4qjcYhQ8ymqKngTV/tBg6sWCkkTQJ0+PP/bVRS
+DW7XIl58zkEl0MAqpxKDuq6eevyHSwoOxm3nZ21QbfkE1kg9XTS+nWXr+e3gcCaXKl+wAAh7t0LY5NxE/CXb/tfbJjQDHv8A3ntDg2riz2HOHSfnGrGcydNHxPDSB3lIC4zG0trVtvqVFc/+P1NalWqmGyJ9t+g7/lGa/ifBp84La06r+0Fi
+7XEEaT8GPiU5ayUhmOoC9VorNlZ/fJN8ftVYJgri11DGCtgb4eV8xMFQ+blihpT/LktBNkLTg9b+sFj/Z3tXQzcbbFX2WssjKDx85pptXn9fSANiptqGSnSiF/lTQMM18ra4ei+wFp9u91rtb55r727oteBa1jR9wqk2JdrKq7ZJVcrX6x1C
+1Lvsrtq+adQgKwKjWYW7kv+jfJVJUXzzdr08V24Hn7E3HhSfdPekZKYlLt+bX+9ktnKoTanZdTt1AdIb7AZSqVaYWv/cTvIgqvUtBH/Ub1eBTlUgSC+aBXTY9ApfhNt6ak7DEIAhZC9AMeX5Lk+dbCLCABRvVo2puM7cVSWuyQPPgkWriq8i
+Fau12DqVhrxcofb5UG7kWhJHmA5cTQkrFCR51NNOs2Uu7EpXQsXN8zPlaC+EacbG90mfOou2KrY56U+ZHn+1ylZvkN+WI7gUmI6cm7LEr4/+hch5xlkmOEyxTlFMYU8fKXBS/JnqLRqMwtEvWqEB2Ca2Vj/TL5ODzSMkE3QllYr6NFYBRCru
+un+ig9WyDvPN38SwQwBAemzYMvmzbs1aX67nUTO2P9EWYdpfWSOhxzubFtknQYpAiBBWLimyyklIooSIAqstIBm1htQIrhZczsCkLdozRhTuaKkNG8jZ394H1HNzs0nhS0Ksi8bxXGz5LFgx7p4zabSd69NZwB4qvnIe8bue0e+jtiZwfReK
+2ci5jJMuQw/Me0k6Zs0DqI2gOM4gVIE9b0aT4ZA40fCp8AY9k6CfBpIvlLvcowXmLyqj54/l8yOgZ0nbE75Kk3IZ4tT0N8aaFSZyHkiXXeLQRas2VEtwTNnXC00/g3gk77jvcITSESkYLekqX8awU9fhlpKBS5e/psLz3AkSk8iVFTV4yKLs
+sqzdfrMqN/a5LNxrPMF7MUWb5fVqDVDClxzbTzlrXKm9ilq/ErlDlpiyCS5rM6Euz/8xe6EXufi0XRSqLfTb3EfUnWBbAQLRyNcxg93OwRh0JX+s0NBCP65XHdwaZUxQkWU8l+C6vzz8cn6OiMwNXgyYhr0xwBW4V5X/V6H5Ae2Jk9ukbrtU
+Qpcqc9s46ciN20uLcal/J9ByUbXCVOVAvZn6W5L+lsyK6fG/NR+v/heMNjEGsgp3CLWilS2R3VVJBJcM0I5NoQTN8O47qcjaCjkUrClc3+K5t87fa18cyDYUoCD5BIf7CcKcdjgcGMCLV/cTGNXyadjcS9Tui+Sgp7Xtl37Xf1+XZ3P8kVQv
+tnYnkaQ9evma5LBm4k+7uIAlTFR5U0+9Sfr/EsRQlehYGXWH2WNcxlCFoPEm84734mj00fd4WRFA0U51iOgvSRV9AtRZIog5igkEQK3t+G0FlFC1dnKPVeLnBg5nbGOfrQ2i5cBSZCeTBPGFf9UzEuor7FWIPtwNRjSLwWmsJMHxbWYUiedW
+D0HPE4j+cACMzZSgE8/K9buHOwnJjqEPJECGpBzKQCwkPdlhkKNt4k4mXCCFS+eIMHLWd3jjfZv3d+W1beIeWZJday5+C02Qy+CzBSxMeSW6L+ZoejdnbznZcWJBCz7qj4pVdXG9g8KxJbdsga5pMeRzQoZ+V0KEEGTagkv0ghYFPKN7fn5t
+czkvQfJ6X35Zf+FsY8WoCOeJ0zJAPsOv3oa3+c8C/zkJRfLtzSW6b3i6NPHFM3eDQbiIGehH4f/+B8d5lUZsTl1KM875rVn7fgoVHW/ZsHCekDOA7/tDIEJLc3bBMEnwcdNK5NrE04Mw9ApBldBunoruxISOIXK9tALzJt3bdt2XlYtkwa47
+WdqNLRoo0xRAC9KckyGWkyFqBaZVsYuHdpATdg8Ynvr8qh5c7jeBPJncVJB6KSCeZ764wwl1+wWOgJ366QmVYDBCMX42DL5vG+r/4nCqUI2c+BMMOTQQJEls58hZrxENVgsgj+nRe80+xLtb8deV1xUJcII1Oi8VyqKW/mdjpxIAEXVkcqzr
+o68JDD3s3JCeePziJE3llm4AhvKe3a506gGY6FdTpfvM95hM/k7c3IvKLId5tOsrpbGJ+uYnN0kOFZ0nZU+qwIVclgMkwt3M1WXOg8YNsmTtVEqYdYUKkdCJaI+1B37Lxt9fnrk3HCqCAHQ8OQLENdhEWICNICuAirSo/l7RBNePMPlu1DCO
+FYcn2wi70Qk+5+WvKlhBj84RlG9aWOhqnAOHrSdlls4zeO779+Eb3ykpkA2tvCokUV0dbgmN2+da2HX0EZlO3y/UbVT7jkwNRoq4xixSghwbqnBjqNOm5qq24onJ0tLAWfvEOIW2iNcaI4ySsVMt98UJotSlghwtIRhYMhNeApdCA7MJy8lv
+3ScEK21W2AvC+r/cfWxxKNy5ieMLvuLJYmaLn8J414TuPUbOU/7GU/FdybsB6kdtlu8Ga1F/QtL0Ex+xwjT/tBnz44twNcOkgKzVHXpnRSlDAqZDTnoLh3dRKVwPi5+mWRLEejiRnXMvPTV3L4TqIuf6iRD9MYEJxONGZA6WBFYWA0fLVpZv
+u7Uh7r7szPKfIpfBV92+KmdmtaumoNgpdIMjL44RH8+m0ZYOeB8cudEDy7qu2PHqlLj6qRDTmVYcK7OKL9K9+rZrwhldvrveKPAo/Uj61YKMJKk9Yq3k/nVvSLOzTSNCjWkFf82FAsw3o3/kL+PHTgpuubzoEjNj/2t32wKTeJcI7Un4ddK3
+DvQwjyOxes3Jp4r3/ENBWAn7g3rJsGbO4PcZaeC7uQtK7j3o0krYSPtbI9/9tExG3TxsGDsq0wa8uc5891UT4MmLHn8xDjrZZg7mIC3lYBUc6gfbN86wE8aBAYXmHq7wg/ZBAj0OSaazn9QVfScQZC6lea+46ZGOAWq8nBgIdzOWeG/S3Bju
+rP1381dQmdlPxiWR9yA4EYOSSgv9tyGwKIsq2K/lvwe6Pc6T0W7jEZL15sb5fyy71xqVY+4FffH85cIRSSSxJb9AXMWSR1PeF6oaeQ8yV1nScSPduixgHVnleKO+rDbA3apzJJgi1EogCpuHS9V1s8L+un2sj22s/1ljK20OybPhidJFicBy
+4Imz6fB6WNTtIINpK8BSHJjE57l2pVI3TxyQ8fOqaAV/+yOt2OMrBFmJ4Mr4ukRwnw7Pz7prbtO/cCyQs/y2HN4CHfUQjNNFcS7AUfuMwM83scHuHSZggcqD4o0cuBmJHdsWymycOS8gbUTh2hwZXb2zgvPTD1OC6qmHr1+GBUw7pBsgjvg6
+G0frsKJbXZcZTDCiwLCi0G58VIHWzwOOxtYTq/gKg8sqh6T9SrRr08nyk4WJ2Z7J4lYpa2PZmb6+qsLp1Xw8BkO/7FLfyUqjpgaiWMnUWEYpAWQMujLjQcdXyrmvd02ITdjfmsy9vHzSafHFBuwgnwLpItXif7eMejSs03LpfhlSKjkTUfvt
+iuW9gFHPBuHv17VNBginDqont/FCFUQIQmz5cEsX+CW1wMy4cNFAOsdLtp+1cUsVzIeq0w7UVP3FboiB3zth1+KKek9SbWTW9xZ2NO2V5xy4q+IFVjqA6s4e4XWkCLipWySgiwlH5eQk17r6fB+q96h4Tj1uKUDOSM5SfwtjY/iCCFVHYUng
+Kx5vqRuUKSgg2gl9Ozq87QHFV30wL8vIZCNQOumFFsE6YzCEe5FrXFA1H44CAn9IC59eonZeoqEjrvszb1UYHwutnrSptXu/nMZll3UqG8dfKSa0a6dUJNo8b/4mGgvI0UorqDFHBrTi8b/IZkRQOKAKABtG82mLltTYknAh05g9fkzc2B5f
+4wqAPNS+dKGwKk0jCfg9FdNSQ+TfDVht+gqog2Pi1lL3hHixnlBmu36LklbC/8yKCaIWtGlS+k6qtzSG5d+pfLilbFfAwqxTio687Ist1kUienJRQqqMGXlPDLXNRhHRXVNWcr6odk3FOEayZ+vzjYOxmdyU4q4qaOgC2/aJwEU8DrcMa4Po
+3S5QDPj5V9xiZEurVf58I5dhEz0O5rdsdgOZZJz6DfBcwsor3ABlpGXTiMMp0npRLVRR3VG/kUfu+NEBpdeiA3LCY6ARBI6SUvLGMEy3Pojc1fm8XU1+VpS2sTE19AzzNphlfjf5n1ayhJeYmbQUKCI5Ad6i30UBwoi9QbUA0E9HW90Qm+td
+feKVzdiwl7Fs9DH6D27OfSXOOWibHsni5OQiCrARhBv+e+TC7bLHyUwm1Q7O9kfjz6KVRedWPo5jlwrAJqm/hI5e5B/3DZys+hstgK6+DAUMgbX/P9W9IMFTGOUTtOsML9oZ9W8eUB4KLn9UkGRCY3n2Otarvu5jHG1EtfdWTFR2cy+AJmWS
+bxY9ac+gzUYRfEBbA17dZd0LLUn4EiAHqtDo+DJ/1qDEu9XmSFtKu4HXsYrgBCVqjb/h7X9bThqTau3fSYddxpRLJvbL9M6wkksDTZiW0QgD7VfAdGrW/ENAkcPEMLcIhgNOUn+eKLUezG1OBsQFa8qiv565eAaBAUZM3Cvb90QDMjwAWL5N
+yhni+qK6iwIRm7lY2EQ3TTcBzQNOpxFZm0dFDFnRHRok9SgATYtHWjxCL6KDCS56o0PlHKYkcSPp9G8yQdc6M4ou4ySyNMOe/6rI1UICJH7FlwkmRj6u9cpKuI4AjhS+q1nVAiz+dzxGUN5Ij0Egora8wiSs21Ytl6DWw95tRa0L3W1tZ1eK
+ZAgBXNJcOeUbLbn5CFJ/+SEhBhV9K3uP7bG4BVu5zstIUp7ORqUkp7EqJSCQTplY1838qQJ89YlsNnOEtnHsWLBUmQJ7Vp6UNlKqkKIkCxcR8InPbz/IbQYKGBZ+ry6s6yjrB0My54We+qITvJu9++3hey4wNOaSF+Z+tj5bLuifL02gShmJ
+6ENl65tP+Xq7yga0ZMZ4Azeyfj0yKu9DA37PhLLC78K6av9MBANwTxlZajRaXNqHg2RfQItIFYQadIKXi+mYduZS1PtalL6zC0rPAh5soq2k4PbzGW5ZGbkFWQn+1RkPHUGvBebrXACgWM3NFL8eaGHd1r6kLRVTtBHMTuAYHkZ/kc9Rdffe
+xexq+Fgjelw8fXiv/w5tDxEa2aSbb0357bBSE/hYK0c3V8uw+Qib7zz+mOp42pRb+NfjDBS1x1G2VlAoHR1jb8peaxT0/UK4Cw2KG3KvhkdDRVxa4bzpOg41/y1h0xjI5nVx8Ei8RPDYYgJXiRWoX+1iDQyxfZIj4OUWcy9FNLGUwmivT3t9
+xiOpRn/i5Y7JHB/Pzf3A1f0xhREANoFeJDQd/lfzgH6BbazqfhwGITIm6cmJIJTipkdWs3K1o/nQ+Fiz6XsqINECjofviaQ7vCJfSftpDppgNXIZptJ+6FR1RqbBvfEmmmNMaDthcMAW/cCj5XNsyOG8aPNljGuH0zDrM0Hlba9sipOl3EnN
+Cepj/Srq+IyuOgchfXbuLJfjHK/+2NAd9zYANDqm4GN3fYE5N/JDIIs/SpGfrWzmbj96n4ZFrkghrSZ/25jgffHfTdp9juH+Bd8uzSgDHiVPJZyJlTOcr3+NXFSlqxPv1S5wG2zPbenj0f0x7g0sRrm5EjGi5K1n/MZD4jS7PeKqWaosR2Ua
+SwUVsbc6rR8j9CtDusBZAlra0iOUqgjr5oRvZo+NGzBDDSwMvCZmA1kTF5roTIYnOwEVZmZ0jwbyDNVrTM9L0XgWxnQB52eiFccLdg/QZ5gBk6MuP9Z2EsSDR33L5dxFi3f5dguM+X6rsdlMAC8PB9GTZSLcGx/a/CcQsovXO93Z51B/9sT1
+ZgqyGSn5D/aLrzLrvrhU2oXDOUcKPJVM0OlP3fs3UUxtqgXOwMUSxnCrxUQuHaczZTg5QiuibKFnsw+psNnRvCmRk1qIUFW7QS1jnYigpUQyrj8/9ZsaVP49/fVdLcWACDJL/nkir9f50YfSUDfrY5cVNZ/9z45Don1vktCVO4n2P/j1XRxm
+zh27ydsHgQI9V0/xoyTHZ94wR+0kUuIkfQgqsN5CkufQ4chuvD0OUaWIi4RPPwPlL6IeCFOoN+W83RfZ9XpBfQspoeWrF5woFjCVYR6Tk8q3yEjI6PhhfEuBh1P5N+dJ070HA3Q86EjUEuRw6ZPpr0eQOr6v5JINuvQv2OwwxcbK4h45nBhZ
+4F8OQt8Cm/Qz1MRopA1BTNg0UMtz7gaASuUTheyfoB1N+Hy41xmQPr8lly24RU2bQXslUoKD8QhZn430wPUTIqD7tWMRcmy5MLz81K+9TYjsq6rfzixA7TnXsor5dT8hsB29WFMWHQ4OLRXj2rhrxIkptR71/HnzRw6slLD4yYf5aQeiK/3K
+D7sqW27oNn+VuN/0ngbg+J7nKJSzotkZx53NxfO3EpkRQpDAMduX5hu8IyqV9fHW5TkoNa6jR4w9doVDvuNEHnJlJe6C4RcuqgdCsPey1NibpmnkYffAPZGTNN2PVxf7yJxe5HnU0eFN4RiueBHCS6d7oGv0Fdw4l4ModLrjKmnAzB7F+NkV
+INnVVmql8JJdrtbg3PWOZCZhABoEN+R5uOBPzqIrPH8zMvPsOsxxM8M93vLshDoiCuvUoEWW0a+ILhgkIlb7IpAGoOZPfsxtRyytNCqKub2sDhTGtoBT6R9hnGJlplgwLci0RA74Tm1zpbmei3AzLmiuTaAMCOaIXWWFsFpxA2StniCkZkSW
+3XL/m42bPbAmU9dmnxNBgkqW/OOL58fK6VPAQ6dnMMzsH0uQMXzrSdT6OaC2W+HPOWciSMzeQJmZjDOXQqgL/7fp6UkT6VZLIEoeWKPWqpBo/LZjuDgFo+Du8nqAcyCxYdq8mz461D8V5EXLOamGHa59g5Ydk1K6wwWgjkxaYEP0jGK3k18v
+OP3Qtsu6Wl8OYVZql3fNQF468MuQcr0Gkr97Ao+PsUefvBCkXXh0sGIowuFX6BfVfHK5AcdTTQvyeEfap/yNDAK1fACXpetZRy1hS9kmlBiQnjXY/wMRum2Sx81USEa7VwTjssGCgVCfzcAm23lsp0PblF2ro1jdxwcZF1WoKKFc5cMb/iQ6
+DQvI5irk7KayZ0f+QQLM0TBPNqErmkxceBrmTc9vpGcI0rGW9Eqb4P5tqMR7FSY9tN/epom8Un4R709O6E14/+Tx2MKhjBQChAAsX2oYpnlPeljMU2aMHLdQcpBX3t+5v0WkxtMW+W03l7Dww1dd92xYVTV+hoSUhBB85zmHRBgWaa6Ak+Es
+LNERR+FgCJhglCa+CA8Ii84xr7g5EWirxthkKfHg9W94KDsCMExf9pZ4Z2yq58IqwX3YB8dpgOWKm1M+1wFqyIE06I6nMKQjK8kYoJlVjGU9phy5qBWr/wEoiJ8oxppVvSTLXl+nwx7aG4KwAuWgcaQ0gKg/oHVNNXJNFsNa4FVkfvnfgsiZ
+6q7Bfn9tslVC8rV0UNcXEHr1nOe3N0wZ5zHORJyv/W3h8C5fOmgBe4bTm+Ml+88hUsi4PmyhYSYkL718ZlhmjfstqAWaKUz6YPwHfILDoap5mQGWhih0sjdL5V/U4UK/3c1yT+mh6xQE3/2Wc5flOaX3V9DbfT+N+mSQKZI+r7B2fGI+UOh3
+PadlkQMTZBJjvgqM9yH44TmiVKBdY70kyWkEQ37xIXBCGnCl2Sn61JkRo7MiIT6szkpBFYtIypRJuC5NxRaiGwdWWIRDvJQdJedNBLAR7W4sIPc2qhMysGtKSoswdlIdN2NAhA2f5vdeN8NXMIVp+vv642fCuAEhKD2HzLkbUImJNIz/Xzr9
+jg50v9xi5rWHaFOlH/LMq77IAQ64Epd0npjP8agvMre2qwHMtlUciB2CeqE0q6vHQCHjUl0VWErh8saAScjCv21e3jLcTm9k47Sndu/kf9WzmA+gDQ6mgLvuRBkRkZNVBvpxMoqKpU/Q1zQu6G/PB7N/OfmkmY17QOYwAtd6w+giYoOfcf8+
+DUbNWjquryiBfxBAUQJOnQCBLSrHB0Djn0nRcsUW30pPC383rSmzCBeeZOj0Qchc5X7f5rA6+naOt8lvT9AQexzz+i5stURVALY1mRvFlHOoSF+ZBE6c7DBepYmoSnzyMsWq4TtItrF4X04X/tldZURyUTQBWP5UAbw2fBNdh/+AOK6OAX/H
+2RCqO7JvDVcbnJU0Xw6UlITjvtchY6Oq2b3RP4tFhUCM+JSBnjn4mYeaXhoHuSuUEzce2w2eSBJOXYpVnFjJeMoGpvNpD5Ep9i1CH//LTjDF76j+emKknKYOdoTEjCEkwjlInEP9UmHzDHIiNGyjPV4Kbgw2Mjt8m+AeviEpV9Wy4j7sY4SU
+StkIBc0CU/BlSqL3goyqdqj1+nR1EcSBYQRD5P28wltKBfTNpQi4CUosmyaLxSlZd314a+clql4f41ZpYk3NJtdTKjWLFrIWHeCMQwYPgxMPI5EKBGzcoRhjkJAc4MOCh5j/BDPgOES0ZA6efUyNiRnG5nXwa+BOJO/zrRP+s8b0HZhhf8cO
+2Ajvp4GYqlLW+hmUI3v2xtW3lxh1o48L17i2eybL29VDBvg5cXF/gALPcmd7TXvrJznC/tOWQAz5S+t3NNZncKaM4G6ZT0LywUnNhwAY4LrVAYiVtKZpwG8d4IYxQc1jJW+W/gDIGoJAux6b6/l5ZkymUCkvIowEBi55Ik086k50WlBBQ171
+8FtBMEeYI6nGI78gmKO5qqYg/gm6qOifGVvvdQ7eWjdpiw8SD1THJ0jkkE0NFqEOqJQF60AjP8oaKg6zGSgjOaYhTVdVTi+cNKAJ4dUrsTrZgx0jcLR7fi4CKroM1sSLfmdaCXRHBqkz70/6tUqYpCw3MyqDO674kaYCDXit18bCJMDLwVGV
+sH+yyxo0RdMjLcOV9kokwkqt4oafHbh49pDQXwbtpiApcd8mp+7VnbbHkFKHr7gQAI2D9nKljgx/p5JOqlEq4VINFppqv5FDm3X/wx99G5nCW9tAPkfu2CblFMB8EpggmPXlXcNzN1VmThBLLkOMxmWJxx4CWIhcqD506jccGBWiXPO3kQGI
+OlMcrc84RqJn7fCzEk6q4rUBGhP5bJIhNiueU1Y913wbxk9URfSJ9slNJkA1pAu0ZYhr3OOXx05niD8ONUaGvqr/iwM5sI+EV8wVLmV2+Ee+MbcrYGB0FOahZhNVmzJfbRK4sasfhvHMixFj65JtufkZB74HN2PrF3IlMCFqRAxzAE4l0+6Q
+KnZLmKtjCItHlvKI9WFRToT+6U+phelFNnqVBIWJL9l8J+hIL1DDmBZ+lfWkxKcQ8cZi6LFpLY4+KMxpITx2DGZ6zzi+hdS+kduADCC4YmYIXzfQhjpePK7LJAHV7Qu/BJUSz+FheasKOh0tl9cyx2gtgHzoFpfm0iXyO42tG8bsi3/STvVo
+75dEd0EyvAX2LjE3NBcpNcCGjJCaD5a6i8GNzwzT/1PdBWNqdnu3liFuaeVeJTmcNVlEoib2FY0Fpp1wVE7QiNXv5CX2O4fHX6IWHDtzmLxB0uHi92w7ckE3hE7VWBAg2zL1gCGgIG5m0aFgFRNvna048zvbC/zHGimlQTnbihs8aupNCYK2
+k9C0SzA4Ng+WPRQmN9N7jE8H1s69ATPEUKSPFN/pGsET2XD3jGCAQ1EfRJB5T4ASOsXepRBiS7itqpU/BaSn7jFnMC/JIpJ+Fo8E4JG3tc5uJ2usRDXPKMPF9HI9+AUcokirWH3yN4HhXb/njmAdHUepb4rhQxX8oxy+w5ZTMLEhoVvB5l2n
+uz8ubCklnFIeVxdM9OAVRwjHjrClIQeYY7QyaHe5CKZoBEkMkmOciHKh1NpSd8pDi+OP9sdYp9JLZqrl6G7GmqNgBaUv0heO+BHFkDGm0ol8Ed46CQaELuwnJ5s3FiBmtRWuFJ46nXyjlc+G/TXICaJlwmsPdfgNABr7Y1b5L+uOgJVMR8/L
+otE5m3unBYl0e4YY0dkgO8YGC5p+Cq/w55+knzbT+MqFc5kI7+Vo1gqSiTnoJQn5hugv+WinwwVB9U9VkHZ507jvVg8xMdwrb72F9lLoDYdc/XR62p0XD9nIDZUYt6t+MBD+QyjblHrS9gUYTAkxm1RKDn8AS2D/2hUgX54RhLhfR4WNrOif
+g8oG2TeHarx9UWJ+n7d6iEPMDRUTSmp6N5Iiz7zrYV6WgA4qmodzoKr2r3GHa1KObP/Lq1NPpibPwk1mDoGlSQ2t53qLV3BiXLYKdrUfSYSiF+ud2wGnLu18/uhfXiezULTjzExcOAHEnmer2I3NmUYerVXWQXwFJYUtzoGbmkXam3CiuxQM
+FlMQDfXOrKHpsSwctYgE70lHSyE/qa4/vGUboqx3OpDD6DDmnNFwum7qYlIchHSXMwDM+0rKWJznO+ZAHPNYILonpWoL/msr2Ra4dbRFLBlzUXKC1fBHjIZHugP7QEtuLC3sv6+E/KXrC1V/7TidX1E0XMD/bkEwiEYgV5SYZIpB3YMjjFEZ
+Wle2qVh8Sosm5bth7oC5Pqn/qtWq3CKzYULgs2PqM9kDfklkGBRmgeHOGQWpeAPvDwMa4Cw9oa/uBayhpAv7H8Qp3b7U7PPIO3dTcxmiiYocUyAwrfjaDS0/Ev+7/QDmS8Agjd/1yES5MDcExYfWnKhvf+htwUMpk0nZx93uu7NYmW/7TlyO
+BFeYXUvc0BS/yH4k3fiynZxKCJAk6wSOTLSq59HsA0EDnDOuqtBUvaXdP/34hit/JeZnDfFZ1rnfoEjqUQhHOIsm90IafT+4QofP4/z5iwwaw2zBAhJQnjpkIU9h9hxbm2SmU59PlKsZYBeRn+u2Qslc/2EoBaXONn0BUjHCqp9TSoVHVQnU
+3KHgPwrFEckRgxtt4r3WIh5yud8IiaA6x5u6MJZH6Mc0zMbM3tTUld3Ku+reb6hClwZEW+sgj0xeCUbtARpg1lWvj81VMgp5kPqngaPNiZop8FLctD38rpK00BVzLj61+64pxQwoL7zwtdI6MMmgP76IJSL4+mKdhGAgCdQDl1pl6djUIJX7
+lDPHjGAcYiD8QumItU12ecaH9hp0mo+VsPsLNcqDTiPAaYvdozOSk+sgbrUkgcZV/CPr73YDSBAdKrJGXUatitAKi1wpzIPvsbrFGkHum34AJ9QtHCjeNeBNNzbh8/6jI/bFMATXgUFvafQyT8rH0SQeO+HYWGIovVy/fnRywGwr5rViAMc9
+4Ee3dPE1QxW5FWnt0HLCVFP1n1AVD/Kg24u9aJxUkkjmXYA4HZeV5VyDYz3/SmzL9GWEas8fnVE3eSW4QvtB7ICrGzokSI3r2VHuN2op5chgjKdZLFUUY+MDYyIA0FGASWDnxQMyyUe6TDiWSfxNh3GR/QSrLk7C0G+790QPJQkd5Eo5ECCl
+Bfi7vTfV2Pry6mKLseIJ/axGPkf7dzeF3XNK0pTWat5IZ7PevIHobh52hvDK5qpDLA5jkDvF9YXyL2cBRgSJD93X7dBOnEHGg3DsWWPNLHCZkl7yp+1iiEEScXFGupon36dmMLFb6f6ZoSE4aFq3nfISRl3TYjFV5A1GN69hfxNblCkCkp9Q
+rC5UPz/apslauG7thPwG41F9TY58ofOYmM9JxncI8xc1Y9EUvGB7TnMPOc3Jqh4WK0UakrqBseOxfl3qGpp2Z4H2Wq3+BmchnBvvjepJxHnl6gVbPyIAkanjml7KJFQDY5+T3mwI/BINGbzNSaz69XMaRD+bDF9cDBEIL9ciNEPACy03PRm9
+ydATLUKDtRtyrP60zWVNQ3UDzzIZtCsQT7GoUNqo+vf0GVE41vpW6Rt6L4V9PhmFC6g4BKBEZCagHh/l66EXTngO6cs0Bo+I7BXnOt45/ZveM9f9i6vCZvgkTvfxBSwjJyllFh8NyT2vNTwEYeaKdzsHsCFynELO1bl1NNO1H6sRjDCuSQ1J
+T1P3/vzw59vJWCV5l88zynw3zvppl+gmhhchWfVE69NXYva78A7Gb2p8ObBpNEgMDU8UZUhH8YHGIf0+4tIN6cVPuI4XiKyDJXY578z7f0w/9dRF1Wqjfi/cTHS0BrUYRwHa5MpjulfYHS7smwpKg6cwlSMVIkXZD+z4tDiC1VH6nWZMF1wH
+5rjfXUT1Eccp7YLXhBsjNRB4mD+hpiS7upUpIzMkKkEUbr6oN8DIuVm0APTkIGOTaMOY7+tI0Sbp/TtG61lj4pglHv+cuZhZPwLJ/ZBON8tVfOnK0344yqzWYBIsf/53nzHQ7yxb3gHTIzTIFpEhbfsqBSWUqs29aToEmdLBp7oDMicF0qzf
+1V+nSPf7cpRkt0knbdE4NE1z1ImrtWu7gjLyED+CHqpUHzzYNeQP1FPsk9QL0XpgqVBJ9hxfc/hUuWjAafhkE6aCshYS97ZPNakFSSY3YQxV7rAKrnxjY2DuEpCd645Le+bkx2dr54zMRFQwQx6veCnLb/oSz09q6KsTcWAgaw1jeIdESxPJ
+rsGTUAhw8mbJQJr6jh9Y62crkt7zCA6mloqbYIUThGWPGthuJjEKh2FYJv2o3LutJkpB1RLUHoEv2nMeXQi96tUP4uTga4H1mp+TuYVtFueciE74gl2zjrhs/nSLr7Jy+wQRbGlkJHd2m0HqSzo/bSc7R9i1s2YOedmAq0oS1qeaP73Yyzc3
+o4NQotWUiZ56ni/veySzqenvH6x8tUjBFqmayH1q5W8CQTIl5x3yU6w7gfoVzEMCGEobypZpwPy6E0X2EQPOaxj6q3BViBRD+LxWlxj7F8vQrw/Jn8uMVsb6VaAvNBKtj/0WP+OZPkj4BDTeTLEKwlu29GU2kxoi9GL2ZdBBxUJvRLX83QoB
+SMAjONlsRr+rMHsb6rvK8JvLfkkc0RSVkIQaD1xyYqUveoJvAgyaC4ll5kNn8qfQX2aJaK67dh1nm5o11v71HzfxikAzkhs9fScdaJjLsrL2E0y3Q7LMxDRilfQQCy6quAxmnJmF/N8fMsvoYWXvXEn211piMLmTTyj9HBX1vcm2Kcc5oPBW
+tNHqtV7ZlgDX4RBsZaUmScDBXt/7JpVyDdmIYE4mDhPNLyHgqiv4B2trJhO2+nrXQ0pDwOkHZBqylbIhT8Z84VjR3M30l57HBK/Uk4JVAXMER5v7nuVKu3VO4meimEWA704YbdrVk0YI+4oU+/ica0/cWPqtu3zUxHFKWIyGdwFHqKABlY6K
+Ds5/sm6Gpr0YCirPTTQCUEyLVycnQA1aVh5OLq2g/yxS/EwCO05U9d/0f7UmLrjXXa6sMHklYhBSiX5UKWpPuMhuKzo5Nchj1jK3TM5tzf+U08vyJwgLXTbnTfE0vBOoVaN86sj9kO4oGacmOvEj/nOmkb/TYOTViHDY5wL9L9BtGoXCDjU9
+Amro7GBz1GW2MwoI9RgzDE9ehs3OS7tdjFKXq1c87XmlEOslTnzdgmUkihiwK4W1vdTrgHvBKWC5gbsdNLbUvU25oPPD4rxOWzBGVi0by4I+BWRlILRxCV1kDs/CCaLNfzCsTwl+2a+lU0eJNDS6RrJqHVkkJbRGQrct5j31CQkXLMroT9Ye
+uI1fAVmEE6mHlP8nkzc0mo0e34jg02UIBh1taK1gXhuRMLyPhNVr61iCsd6Ms+38JJNn7ObdFVryl5lUnIAfanTkJx5Bi23N0wBrF7ZLzMAQigTIii2EcJQyVo1TDO1Qd3g7ylZmdyQYVvKv+Mxu99vd+mnORCPe9h5uY0Kznaue0NYsBe9+
+OuqUoMm3lUPHVbKNY+wYdr4JZeAkTwj0hwtkgeu1E4x2MlYhp4UhPt+XmYVTfntU7wNPtAc3qKgiGHypv9p7OAablD0CIcmAMqpRGyjhttLIjDmUnO63fNO5TUGT2sfAzPV96PtpKZXeCbOt4jHBNMSsST4LnS4Doo/dUGuzzpTlXehwwkKa
+DTxEN0MHYDt8uK5to5bmA+dgGBEA4i8iRwsihLyyShY/+hPbzHrno4U7bUL4zVziXqSSXs6M6WwxP02jKNPUguKBcw/0C3V+4pdMk5xubufxVbvsKa+zdwiXD4EWN5hteAX5Im/Scm/lHVoOKjRE1svtjo12qjtu2UqBNd8TILVG1Dewybnp
+oWY4vCnncjnXNfSvsQiKvzXR2wX/+Mnilqroacpc16tara4PaxAxVkw914oXlOlqr/Dd8D13NnZBr106HBiMRpKwkZQMYNA2LI+q8WK+hahunMAP6uSxaMNQKAuWk+oNjqv6wRLzyq9i8q95he7xaRDhuoOUMySUDKoi6v+EwhAgRksfwpqJ
+yGOc+jmR+qGDBmKKaVEaVY4Iw1VwBdu7b1/zMzAKNd+5pTqGgZlFkPYUuH8U1KypZ/fIIY7lN+DmBNo5O9AFQvjAINFElnjlZsYcM0MX+/XfqGl9NV0AAAGSWsQ0rC6KqHcMW+ZPfrbMgcipwol1cnkJLXOYR5TFThteq4g2x19O39hTxaEj
+nlWduQLiHyg/A//ymyfzR9jV5PIWEnpsjZKU7iqhln+gBoy5GMDB3kkHqRzHXV1//TX9U0tuJKrTyu01MxJF4EMFJYa2SnBPZIqdf2xYyr4JMLiWc5xR92s/AxaCywD1w1P2JlfoLH1Zt9zT1C9sqnPc8GcNN5FYBUhsptlyeY7nu91LH1Gq
+4RusCaIaJWIXnQRLIXFiFlstlf/BoWePlIxVcJhvZAMJ1VvoBYnpRBYAq10uNo5CorfBTQbcy8JVpUmBVrZECvjEaZACH99k9L/21ChooLDNd6M8xjPyhi8Hcx83tKZtiSexX9NtmoI6MCzvmyEmvQFg6yEz/sHVljjxYZ/Oe7KSSy8dA5YP
+YjnvHeZDOgoPM266Qrp0a7Pxc+DwvJA5wkuNC3LVdSkvVBL4QJR2qdx4sbNHMrNkDW75Ir9KIb6lnF/8xML7NLz7Y/71QmqIuclL/KgMlfynW4V4Weay8B1aCyAUas2EuSFhSoKlcs/6bLCoDFkN+f2wiCYr1r+ru+u0QD+7jKFF9tjFAk+W
+X6I9GhYZiRVVfrkfNkUceFKalWXtWyyOrx2dsAIZOCJNcNnUx3q1P923bobjZg9wkTfh2sNkf2REHrdgT25TE2AqIYJ/zgEiFwuFJaeM0EPdpMWNIrpYwGqDJ7K4BK06+Bf28lGW8Ka5HEuusS/4nw0gjUVFVf/YMuB8++pAGGdahaDOxSw9
+TyTAAKtn9KaC58y61oyX8j6fUtc+1koEY3+Jwh/RhIeVSxv0lbGJxa6DPKoqq+KRTpdsq5nPkBrU2FGtbCQn4TtH3v4CRW3+h+zQeSKzS8o+KfSCUTdDdyy6JiGJ8DLXo+NlLXV2C7o/k9uKWq5P5gewDn9cRIzyTPQjz6Cj4AT7/Yvacczm
+OAU74fKHS3b6EZHl4DaJCA5DtWhTKgVd3ZMKzH0zQRFoLeKPJtVXk+n/LpchcV5xLNJ3C/5pSCPnrabCLnEgN1VIUOOMS9uclsLkYNcS/aqsnNZrNW1MAb3Wgyq+Sm5TTHs0dXSg6RzK/fpwc2yVjy48eCGHrrzkr9T+A77GqyZ2bRYzEuhI
+4bHVjRHrpGUobWwGjNzlb4CjUAL63QtsQFgdOKm6hxUS5LHQmygDVk+4rWndkv1CvjzyjeAb/McMYwYCzz+odMBCyBgt8oAG/qlimUGUGWtxQrVZ7A9PW0K5l4vgUF+88plqrcNJDMAdHM8AcCbRWGkJMglfz7WeIUTvXYFNrHq14WqevFIV
+jXk1PwCg3Sl9Mv6gJvRnXnO3JhKdmYgSO1njxNf+tKUqkNtCDfRnPs0poFxX4AwxT/9QRuhqrehZT7QYj9uyggPsIOqY2fRQCx71A7Z4dvVVwWMzFS/HQicZfIqtWPI2+/809GA8g2eqR+JFslCPjeqyZIRZ/9gWyDOVif9yxWbOI6FQE7nt
+B8B8LdPfe5yZiHsWoN4TuploYUAFcsZOTaHx4hU+z3GiKOjhmy0dVfqFtS5sH8SdBu6VYA51UPBZesA5vbQnDfCmi3fcm9i4bFdu2UlldQPEArW2WzgWYhA/purCMP24j8mDZNTelHaP2aLbL2F30ZOjZJVKyrKEPNCiTJ55lxYa5c6NfY71
+5ASOdzfGYeCci/U5FIpyy4kOWQkOIl50WYwcSk66Bh1EJFT0kCVKXskznG1Oj3xqmoI3IxVM4nry4BKBq/A0qhNjHTplyTaCI8WYxXuB+5f1vD8TbyReRxxtqE53fALQQ2cLjLEJC/i9wgWA+IZ8FrNlYc5xvdCqiGoBpEFIjudpjJZvWWcT
+hq2yQc5vPKqxeCNf6sMuG4pE29L1RykuDCBxI7uMiZNbMlzdDSoXBwdf3iKAeE25tMSMGbiRw59Avw3O/YVzQcwHq19wbLn6crCl99zyPi2z6XDdJxBQNqJomQUCk4YlnhDo+1ep4hZEZsKzkcFeyxd/TYO3akAfyYRLZS0+zLrE7laqSFdE
+/D8rdxg+7YTMRh9/QfPhZj1XlYdt3d1bEL39G1urzw3IApi5vJ8LLrnyhoVKcsOthVbdVsdGBTIyh17ZspdGg07RqbtNxrnpv+gfcxs07Z0e9G6vtQJfo3RdX0sgp5mhOhU8QE3Z4cWod4m4iAg3Ym859Wb6KAnbtBTSd8ERcSCHLblVxGK4
+mjYF0Hyc7LECsNrzriXdZMuVKfN3rtMDATZGcBUVwW2uUu0gziAhJXJP4OqUN8Cjb0AAqGcCYideQB/vKezclh3JafdvcC6OVs5LGinuHu4wyrKh+Qo3zhezRdt57kTGrpZuKHl9zGymhxrXhCAUgst7BKpTf3GJY9NkONapR+3cKUDnLQ1W
+dcaxS8ndbHHN7tZKNou3OtuMDNSMOhleroaoLThTsLq1xJJAZMPCw2Jpf2zoyCQ85RIlWycZR2PCgUChv6APtL0myqNvZGxRQQqfgrqInvZ6tT1crvgb31mu9pVNhTCW1yeMhFcTgBmT6TjbUOyu3ioc8+UmXjcCRX63nCwWFmaN+S11wngf
+xC1ABpDpUxYuSKTCJyVWjt4zU+o6DqOXtm7NmR0Ag/nmijuWWR2YWrHhElancq/bsQTriEX0izm6DM5pP9cIdVM3o/BPz+nVafMUqs0oiIsT01vnQ24Mst9SRD+u207C89wcoLroH4yo0kQHej/MWujqXkLu0YqVq20eH9E8tl25aiOh9v3c
+OpZZ6ZiPQ606K3VbvaCpYLaVf9Crj4teenO/TAQXp1u1RSvvt7BwIilHOf2AftAT6zhV+86/UAcbCrG1PsxPgi94IcCgykyG83jxyKro97tNzN5IzpizdvoKoB9KC6T/kOU5MjClDs/SZrnUy4enBKvAwOFtrEyjiRJ9VjeomIWUCT3qhlJK
+zX9uAm/5mId1SxvvUC0iTIm1cpn2m7UJvbtffV1oISM4KzdC/HLIIIBjuCUOT6gBA5YvUEy0lRFfajHTpTt3/gZSLfD02n3BwhBBBzamj7yk3qW5GTPh+htEGFtItc3Q2+6/mqNFLh0VgIaFLyMBlbuvaxilbkKE3YL+2/xEVkTgEwNoLiS9
+o66ofKA8hyxZw7NaYvU3cozAJUp6uj6qg2hha6JQqMwctgpFoEjKbqqTiaygwT1HeYrt5mQ30YfY7BXqkjNmvlC7Gwp7eKdmSUWY0AwVsmAp0VC/HhLmE3HYRAzX8UJQy5sYFp+Sc/mYstj0irzisncvBUb6ddffm0l5vfVc0kV88bkzp3aU
+83gPTRRlLldlggk5DG16I4xsWX9HiGJi6SpK4afbk8acfF76l8qBSPTOqFHXzW/tONcRh7XjORotZTXqUye/N95TudjzuM2x7aLpiX/wsqfCJD/EOmGDaAtF84L+CCUBq4RyU/+FbcDf8VAF4wYpocKPO5V8v1bYUOxOnXXslMqSOv1vt0KY
+qYSUc2a4IanewygfibWwkvj/3zuQ75uNmBwG9uBdTcz90YDHe8IFa13Lijx4ku7PT1LJMhmZDgn33PpKX3PD+4+NQNogmAcNZbXdHoUti0aLwKAhZ0n+uYf1ssNlU92vLGPeDjQXbnjcFQXnw0b7T4vuK3Cr7LskzMYscXzkHUEe47G4jrv5
+u2nf1omZ6iZdxvbsG7z/oQV65LnTQrdG8/N8DasRSJ0NLlSoKtabgiRTnY8ps+yPBI5S/N4IXypuIu5eVMfrmOi65PydRQ/MuiRdki80TtnAnogkBFKolTrZLyQM7tS5bH6nhb4004Q5BtX0kjf+b2dt34rsxqZ9NHltcVV+P1WkWzCjKiVs
+4JhCmyOruI3xZfbhDfrmkJyjL1j6NSclT0i8/dOuuHMQ2tOub1DFPAKNP27gKHT6Kj+Q1kIpV/W/4pPVQ3qQf4dDIfEh4rrIn2vX4Zn0OlA+phb7XOjQwswMnqTFkCZl/UytKDI5mBfRgU/e30ewDTUtX5eEPd2wW3s+AtI81sTm8FcDZh+l
+Xs25BhAFsJ8jR22kfMVbI3Jpo3wH9VOhIk3goZC59nXJWpJutpVGn0XAwg1uPAka8zjTkmJYbAxwpkEOeo+/MvVEoiEkLxLuW0v+KCQzF2DBhJ8MtDzczoXp391xAilwufev6tdO5WHJb+xIhMDgNAIzf+C3awMVjiVGFWx6ZTngU6L53GMc
+NI/lIzgZei+tl+zEgvRpz9LI8AXVV4vNvBykTvaM8LaMviBeaP7Qaeerri5KGL3Pjs73wdhCU8lTTwRIaku06l0na0tdYUEcqj8JHBp4SnsHTbd9BMaVcz3nZAgy+G9/tWEvFRXpkDB3rFMY7AnXnWXc2VjpKs8xtw+BdCeHdaAKOH5i1kdy
+uhzEzPiddShVmoG81Ny/Bo6VMCVcDC1OA3C7vMfzUF7KMU0P6cUCs1asPgnNxqgRyZbTteiCGf8421nv+sRHbp31RaZ8bI+xPflUVYQjUhsfi1g1ZQ73oh6Zw6z/VRm6Z1cu+na5ASms4/C5FiDzRdbbIqj6V0gxH7zq5nbOeTT//g0R36FD
+d2E5p3/DrCiDwew5HJhZC63rTLQqREQMd5EgtND4qJm3AhdvonShMFE/QVfxjzX9S3gcngT9P0vHEB2ooDVmK7wjye5tFP0RVTNY+CkT94/AGp5IC6We1rICTIXEMRBh2FcSrVhLimJZWuuNFkFssseXedkiVRlUT3Mv7UIYh1Dy3sSlUQof
+cs6BB62D2nVrL6z/c6Al/1vLKNtLx4yq3WabmrvOxrbPBZNC6xXFYeX7BMeifc26b/vHzN2PxyfWJxqsbO1iw1uj+Hqs80ftlB/Ck/M71q4zB8ptNnKJnf/dqQlEvMcCB4csPoi7M8vNrJMaurh6wtTC6OTTf/YzXNdbvsEXuv1sU/sW1Y0l
+j6tJ6wagiAWj/9EpYyYNfhrEoCj5HAyVlpeZohfowVELtHY6tAIT/3SsRH1ofE+XyLUGwpStbyWapVnEcJ5pPdFi4rz9vwbejOMQhAojT8Vqt0E+zGps7pG9cIpUKWlCyfZQ5pqcL+c60Y3TOHtnPK5/uMctf6h0mJ8TZKchU0SRHBNE/pRv
+L4jpUkKwdAhHl0wo9CDss2+gVp6B1k1mVmc+zGzn52/ID75yltde0EY61LzxKZRqAzM0OO18YixxZoAyV28M2jlbQT9n11sh+IZpVSyVdDd0x4drXIZg1t9hzF2l0Gr7BwrUnkVGKQiKkU5AHpl/oesl2oI1Y4fmXP5VFaY9hxvl8Ho+Sc8z
+xZ9hJ90hg6LGGyUxfJNYnTsMtmGRbD7hZ1SZPQXz7DMbACQ4AAKVc4KIXIm1SAAH7lAH81gEJA4E8scRn+wIAAAAABFla.
\ No newline at end of file
diff --git a/examples/example_simplest/students/cs101/homework1.py b/examples/example_simplest/students/cs101/homework1.py
new file mode 100644
index 0000000000000000000000000000000000000000..c314aab912bd438c5947d99a871a63989dc90dcd
--- /dev/null
+++ b/examples/example_simplest/students/cs101/homework1.py
@@ -0,0 +1,18 @@
+def reverse_list(mylist): 
+    """
+    Given a list 'mylist' returns a list consisting of the same elements in reverse order. E.g.
+    reverse_list([1,2,3]) should return [3,2,1] (as a list).
+    """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+def add(a,b): 
+    """ Given two numbers `a` and `b` this function should simply return their sum:
+    > add(a,b) = a+b """
+    # TODO: 1 lines missing.
+    raise NotImplementedError("Implement function body")
+
+if __name__ == "__main__":
+    # Example usage:
+    print(f"Your result of 2 + 2 = {add(2,2)}")
+    print(f"Reversing a small list", reverse_list([2,3,5,7])) 
diff --git a/examples/example_simplest/students/cs101/report1.py b/examples/example_simplest/students/cs101/report1.py
new file mode 100644
index 0000000000000000000000000000000000000000..032bf42f362ef942dda92ac66f9951bb263636f2
--- /dev/null
+++ b/examples/example_simplest/students/cs101/report1.py
@@ -0,0 +1,21 @@
+import unittest 
+from unitgrade import Report, evaluate_report_student
+import cs101
+from cs101.homework1 import reverse_list, add 
+
+class Week1(unittest.TestCase):
+    def test_add(self):
+        self.assertEqual(add(2,2), 4)
+        self.assertEqual(add(-100, 5), -95)
+
+    def test_reverse(self):
+        self.assertEqual(reverse_list([1,2,3]), [3,2,1]) 
+
+class Report1(Report):
+    title = "CS 101 Report 1"
+    questions = [(Week1, 10)]  # Include a single question for a total of 10 credits.
+    pack_imports = [cs101]     # Include all .py files in this folder
+
+if __name__ == "__main__":
+    evaluate_report_student(Report1()) 
+    # unittest.main(verbosity=2) # Uncomment to run everything as a regular unittest
diff --git a/examples/example_simplest/students/cs101/report1_grade.py b/examples/example_simplest/students/cs101/report1_grade.py
new file mode 100644
index 0000000000000000000000000000000000000000..43da14b77ba5b271afb542e4ae2e098397dc3fd8
--- /dev/null
+++ b/examples/example_simplest/students/cs101/report1_grade.py
@@ -0,0 +1,3 @@
+''' WARNING: Modifying, decompiling or otherwise tampering with this script, it's data or the resulting .token file will be investigated as a cheating attempt. '''
+import bz2, base64
+exec(bz2.decompress(base64.b64decode('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')))
\ No newline at end of file
diff --git a/src/unitgrade_devel.egg-info/PKG-INFO b/src/unitgrade_devel.egg-info/PKG-INFO
index b8a0c27afa07d01088d599f449a676dd48ee61ae..6b7990843058fb8289ecb16a4a2ca9dd83ad00e0 100644
--- a/src/unitgrade_devel.egg-info/PKG-INFO
+++ b/src/unitgrade_devel.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: unitgrade-devel
-Version: 0.1.12
+Version: 0.1.23
 Summary: A set of tools to develop unitgrade tests and reports and later evaluate them
 Home-page: https://lab.compute.dtu.dk/tuhe/unitgrade_private
 Author: Tue Herlau
diff --git a/src/unitgrade_private/autolab/autolab.py b/src/unitgrade_private/autolab/autolab.py
index 597b0bda3dbe4e62940cdc073811bff7feef8353..1a6057adc9bf181827354d953a36abc3d9e6fd3c 100644
--- a/src/unitgrade_private/autolab/autolab.py
+++ b/src/unitgrade_private/autolab/autolab.py
@@ -7,12 +7,13 @@ docker rmi tango_python_tue
 from zipfile import ZipFile
 from os.path import basename
 import os
+import inspect
 import shutil
 from jinja2 import Environment, FileSystemLoader
 import glob
-import pickle
-from src.unitgrade.framework import Report
+from unitgrade.framework import Report
 from unitgrade_private import docker_helpers
+from importlib.machinery import SourceFileLoader
 
 COURSES_BASE = "/home/tuhe/Autolab/courses/AutoPopulated"
 
@@ -33,7 +34,7 @@ def jj(source, dest, data):
 
 
 def docker_build_image():
-    os.system(f"cd {CURDIR}/docker_tango_python && docker build --tag tango_python_tue .")
+    os.system(f"cd {CURDIR + '/../../../docker_images'}/docker_tango_python && docker build --tag tango_python_tue .")
     pass
 
 def jj_handout(source, dest, data):
@@ -55,23 +56,17 @@ def zipFilesInDir(dirName, zipFileName, filter):
 
 def paths2report(base_path, report_file):
     mod = ".".join(os.path.relpath(report_file[:-3], base_path).split(os.sep))
-    # f2 = "/home/tuhe/Documents/unitgrade_private_v1/examples/example_simplest/instructor/programs"
-    # spec1 = importlib.util.spec_from_file_location("programs", f2)
-    # programs = importlib.util.module_from_spec(spec1)
-    # spec1.loader.exec_module(programs)
-
-    from importlib.machinery import SourceFileLoader
     foo = SourceFileLoader(mod, report_file).load_module()
     # return foo.Report1
     # spec = importlib.util.spec_from_file_location(mod, report_file)
     # foo = importlib.util.module_from_spec(spec)
-    # spec.loader.exec_module(foo)
     for name, obj in inspect.getmembers(foo):
-        if inspect.isclass(obj): # and obj.__module__ == foo:
-            if obj.__module__ == foo.__name__: # and issubclass(obj, Report):
-                if issubclass(obj, Report):
-                    report = getattr(foo, name)
-                    return report
+        if inspect.isclass(obj):
+            # Last condition could be # and issubclass(obj, Report): but this is not safe when there are two
+            # versions of unitgrade installed (git clone and pip installed package). So use this.
+            if obj.__module__ == foo.__name__ and Report.__name__ in [c.__name__ for c in obj.mro()]:
+                report = getattr(foo, name)
+                return report
     return None
 
 def run_relative(file, base):
@@ -80,13 +75,10 @@ def run_relative(file, base):
     os.system(f"cd {base} && python -m {'.'.join(mod)}")
 
 
-import inspect
-
-
-
 def deploy_assignment(base_name, INSTRUCTOR_BASE, INSTRUCTOR_GRADE_FILE, STUDENT_BASE, STUDENT_GRADE_FILE,
                       output_tar=None,
-                      COURSES_BASE=None):
+                      COURSES_BASE=None,
+                      autograde_image='tango_python_tue'):
 
     assert os.path.isfile(INSTRUCTOR_GRADE_FILE)
     assert os.path.isfile(STUDENT_GRADE_FILE)
@@ -108,13 +100,18 @@ def deploy_assignment(base_name, INSTRUCTOR_BASE, INSTRUCTOR_GRADE_FILE, STUDENT
     # Get the instructor result file.
     run_relative(INSTRUCTOR_GRADE_FILE, INSTRUCTOR_BASE)
     f = glob.glob(os.path.dirname(INSTRUCTOR_GRADE_FILE) + "/*.token")[0]
-    with open(f, 'rb') as f:
-        res = pickle.load(f)
+    from unitgrade_private import load_token
+    res, _ = load_token(f)
+    # with open(f, 'rb') as f:
+    #     res = pickle.load(f)
 
     # Now we have the instructor token file. Let's get the student token file.
-    problems = [dict(name='Total', description='', max_score=res['total'][1], optional='false')]
-    for k, q in res['details'].items():
-        problems.append(dict(name=q['title'], description='', max_score=q['possible'], optional='true'))
+    total_ = res['total'][1]
+    problems = []
+    problems.append( dict(name='Unitgrade score', description='', max_score=total_, optional='false') )
+    # for k, q in res['details'].items():
+    #     problems.append(dict(name=q['title'], description='', max_score=q['possible'], optional='true'))
+    # problems.append(dict(name="Autograding Total", description='The description (set in autolab.py)', max_score=total_, optional='false'))
     print(problems)
 
     sc = [('Total', res['total'][0])] + [(q['title'], q['obtained']) for k, q in res['details'].items()]
@@ -152,7 +149,7 @@ def deploy_assignment(base_name, INSTRUCTOR_BASE, INSTRUCTOR_GRADE_FILE, STUDENT
             # 'nice_name': base_name + "please",
             'display_name': paths2report(INSTRUCTOR_BASE, INSTRUCTOR_REPORT_FILE).title,
             'handin_filename': handin_filename,
-            'autograde_image': 'tango_python_tue',
+            'autograde_image': autograde_image,
             'src_files_to_handout': ['driver_python.py', 'student_sources.zip', handin_filename, os.path.basename(docker_helpers.__file__),
                                      os.path.basename(INSTRUCTOR_GRADE_FILE)], # Remove tname later; it is the upload.
             'instructor_grade_file': os.path.basename(INSTRUCTOR_GRADE_FILE),
@@ -201,3 +198,61 @@ if __name__ == "__main__":
     STUDENT_GRADE_FILE = "/home/tuhe/Documents/unitgrade_private_v1/examples/example_simplest/students/programs/report1_grade.py"
 
     output_tar = deploy_assignment("hello4", INSTRUCTOR_BASE, INSTRUCTOR_GRADE_FILE, STUDENT_BASE, STUDENT_GRADE_FILE=STUDENT_GRADE_FILE)
+
+
+def format_autolab_json(data, indent=None):
+    import json
+
+    stages = []
+    pres = {
+        "_presentation": "semantic",
+        "stages": [], # "Build", "Test", "Timing"],
+    }
+    totals = {}
+    for n, qs in data['details'].items():
+        # print(n)
+        title = qs['title']
+        rs = {}
+        for item, val in qs['items'].items():
+            # print(item, val)
+            item_name = item[1]
+            pass_ = val['status'] == 'pass'
+            d = {'passed': pass_}
+            if not pass_:
+                # Unfortunately, html is escaped in template, so linebreaks do not work.
+                d['hint'] = val['stderr']
+                # d['hint'] = "<br>".join( val['stderr'].strip().splitlines() )
+            rs[item_name] = d
+        totals[title] = qs['obtained']
+        stages.append(title)
+        pres[title] = rs
+    summary_key = "Summary"
+    stages.append(summary_key)
+    pres['stages'] = stages
+    pres[summary_key] = totals
+    # rs = {
+    #     "_presentation": "semantic",
+    #     "stages": ["Build", "Test", "Timing"],
+    #     "Test": {
+    #         "Add Things": {
+    #             "passed": True
+    #         },
+    #         "Return Values": {
+    #             "passed": False,
+    #             "hint": "You need to return 1"
+    #         }
+    #     },
+    #     'scores': 234,
+    #       'pass': True
+    # }
+
+    if indent is not None: # for debug.
+        json_out = json.dumps(pres, indent=2)
+    else:
+        json_out = json.dumps(pres)
+    print(json_out)
+    scores = {"scores": {'Unitgrade score': data['total'][0] }} #, 'scoreboard': [data['total'][0]] }
+    print( json.dumps(scores) )
+
+    a = 234
+    pass
\ No newline at end of file
diff --git a/src/unitgrade_private/autolab/lab_template/src/driver_python.py b/src/unitgrade_private/autolab/lab_template/src/driver_python.py
index 96fbe4a8da9e496e26e28d445f1c2d22fb32105f..634a1d2ad2bb85c082531efdec7053f94f8a2cb3 100644
--- a/src/unitgrade_private/autolab/lab_template/src/driver_python.py
+++ b/src/unitgrade_private/autolab/lab_template/src/driver_python.py
@@ -1,10 +1,10 @@
 import os
 import glob
 import sys
-import pickle
-# import io
 import subprocess
-import docker_helpers
+from unitgrade_private.autolab.autolab import format_autolab_json
+from unitgrade_private.docker_helpers import student_token_file_runner
+from unitgrade_private import load_token
 import time
 
 verbose = False
@@ -12,7 +12,7 @@ tag = "[driver_python.py]"
 
 if not verbose:
     print("="*10)
-    print(tag, "Starting unitgrade_v1 evaluation...")
+    print(tag, "Starting unitgrade evaluation...")
 
 sys.stderr = sys.stdout
 wdir = os.getcwd()
@@ -26,9 +26,6 @@ def pfiles():
 student_token_file = '{{handin_filename}}'
 instructor_grade_script = '{{instructor_grade_file}}'
 grade_file_relative_destination = "{{grade_file_relative_destination}}"
-with open(student_token_file, 'rb') as f:
-    results = pickle.load(f)
-sources = results['sources'][0]
 host_tmp_dir = wdir + "/tmp"
 
 if not verbose:
@@ -37,37 +34,28 @@ if not verbose:
     print(f"{student_token_file=}")
     print(f"{instructor_grade_script=}")
 
-command, token = docker_helpers.student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
+command, token = student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination)
 command = f"cd tmp && {command} --noprogress --autolab"
 
 def rcom(cm):
-    # print(f"running... ", cm)
-    # start = time.time()
     rs = subprocess.run(cm, capture_output=True, text=True, shell=True)
     print(rs.stdout)
-
     if len(rs.stderr) > 0:
         print(tag, "There were errors in executing the file:")
         print(rs.stderr)
-    # print(rs)
-    # print("result of running command was", rs.stdout, "err", rs.stderr, "time", time.time() - start)
 
 start = time.time()
 rcom(command)
-# pfiles()
-# for f in glob.glob(host_tmp_dir + "/programs/*"):
-#     print("programs/", f)
-# print("---")
 ls = glob.glob(token)
-# print(ls)
 f = ls[0]
-with open(f, 'rb') as f:
-    results = pickle.load(f)
-# print("results")
-# print(results.keys())
+results, _ = load_token(ls[0])
+
 if verbose:
     print(f"{token=}")
     print(results['total'])
+
+format_autolab_json(results)
+
 # if os.path.exists(host_tmp_dir):
 #     shutil.rmtree(host_tmp_dir)
 # with io.BytesIO(sources['zipfile']) as zb:
@@ -75,9 +63,11 @@ if verbose:
 #         zip.extractall(host_tmp_dir
 # print("="*10)
 # print('{"scores": {"Correctness": 100,  "Problem 1": 4}}')
+## Format the scores here.
+
+# sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
+# ss = ", ".join([f'"{t}": {s}' for t, s in sc])
+# scores = '{"scores": {' + ss + '}}'
+# print('{"_presentation": "semantic"}')
+# print(scores)
 
-sc = [('Total', results['total'][0])] + [(q['title'], q['obtained']) for k, q in results['details'].items()]
-ss = ", ".join([f'"{t}": {s}' for t, s in sc])
-scores = '{"scores": {' + ss + '}}'
-print('{"_presentation": "semantic"}')
-print(scores)
diff --git a/src/unitgrade_private/docker_helpers.py b/src/unitgrade_private/docker_helpers.py
index e7b533d0f2d7c26bc58357290fda0ebb5165032e..b6fdf76538c9cc454a6dbf3add2d9deac58e8310 100644
--- a/src/unitgrade_private/docker_helpers.py
+++ b/src/unitgrade_private/docker_helpers.py
@@ -21,6 +21,9 @@ def compile_docker_image(Dockerfile, tag=None):
 
 def student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade_script, grade_file_relative_destination):
     """
+
+    Use by autolab code.
+
     :param Dockerfile_location:
     :param host_tmp_dir:
     :param student_token_file:
@@ -31,9 +34,10 @@ def student_token_file_runner(host_tmp_dir, student_token_file, instructor_grade
     assert os.path.exists(student_token_file)
     assert os.path.exists(instructor_grade_script)
     start = time.time()
-
-    with open(student_token_file, 'rb') as f:
-        results = pickle.load(f)
+    from unitgrade_private import load_token
+    results, _ = load_token(student_token_file)
+    # with open(student_token_file, 'rb') as f:
+    #     results = pickle.load(f)
     sources = results['sources'][0]
 
     with io.BytesIO(sources['zipfile']) as zb:
diff --git a/src/unitgrade_private/version.py b/src/unitgrade_private/version.py
index edd90a981cacd0c654b38a6ec1001023d4c172eb..af28ff89934abf4c9142f94c1e75db78a0e19199 100644
--- a/src/unitgrade_private/version.py
+++ b/src/unitgrade_private/version.py
@@ -1 +1 @@
-version = "0.1.12"
+version = "0.1.23"