import abc from typing import Optional from source import managers from source.behaviors.roles.base import BaseRole class BaseActiveRole(BaseRole, abc.ABC): """ Base for a role where the machine know what it should do in the network """ def __init__(self, manager: "managers.Manager"): super().__init__(manager) # an "active" machine shall be able to use symmetric encryption self.secret_key: Optional[bytes] = None