def create_default_groups(self):
        for group in self.groups:
            group = group.replace(" ", "_").lower()
            self[group] = NamedRequirements(group)
def md5(fname):
    hash_md5 = hashlib.md5()
    with open(fname, "rb") as f:
        for chunk in iter(lambda: f.read(4096), b""):
            hash_md5.update(chunk)
    return hash_md5.hexdigest()