if opt.deadline:
        deadline = datetime.strptime(opt.deadline, "%Y-%m-%d")
    else:
        now = datetime.now()
        p = opt.deadline_profile
        if p == 'soon':
            deadline = now + timedelta(days=1)
        elif p == 'very-recent':
            deadline = now - timedelta(days=1)
        elif p == 'recent':
            deadline = now - timedelta(days=3)
        elif p == 'old':
            deadline = now - timedelta(days=9)
        elif p == 'very-old':
            deadline = now - timedelta(days=60)
        elif p.startswith("-") or p.startswith("+"):
            if not p[1:].isdigit():
                raise SystemExit("Numeric deadline profile must be + or - "\
                        "suffixed with a number")
            days = int(p[1:])
            if p.startswith("-"):
                deadline = now - timedelta(days=int(days))
            else:
                deadline = now + timedelta(days=int(days))
        else:
            raise SystemExit("Invalid --deadline-profile")


    examiners = ['%s%d' % (examiner_prefix, d)
            for d in xrange(0,num_examiners)]
    all_students = ['%s%d' % (student_prefix, d) for d in xrange(0, num_students)]