'Constructor.
:param int addr:
:param BlockID key:
:param SimState state:'

def __init__(self, addr, key, state=None):

    self.key = key
    self.addr = addr
    self.state = None
    self.widened_state = None
    self.narrowing_times = 0
    self.all_states = []
    self.events = []
    self.input_variables = []
    self.actions = []
    self.final_states = []
    if state:
        self.all_states.append(state)
        self.state = state
