code: def subscribe(self, clock_name: str=None, clock_slots: Iterable[str]=None, subscriptions: Dict[str, Any]={}):
  		
  		for area in subscriptions:  # type: str
  			init_full(self, area, subscriptions[area])
  			subscriptions[area] = {'slots': subscriptions[area]}
  
  		if clock_name is not None:
  			self.clock_name = clock_name
  			self.clock_slots = clock_slots
  			subscriptions[clock_name] = {'slots': clock_slots, 'buffer-length': 1}
  		self.setup(puller=True, subscriptions=subscriptions)
docs: Subscribes this Area to the given Areas and optionally given Slots. Must be called before the Area is run.
  
  		Args:
  			clock_name: The name of the Area that is used as synchronizing Clock.
  			clock_slots: The slots of the Clock relevant to this Area.
  			subscriptions: A dictionary containing the relevant Areas names as keys and optionally the Slots as values.