docs: def _handle_config(self, data):
          """
          Handles received configuration data.
  
          :param data: Configuration string to parse
          :type data: string
          """
          _, config_string = data.split('>')
          for setting in config_string.split('&'):
              key, val = setting.split('=')
  
              if key == 'ADDRESS':
                  self.address = int(val)
              elif key == 'CONFIGBITS':
                  self.configbits = int(val, 16)
              elif key == 'MASK':
                  self.address_mask = int(val, 16)
              elif key == 'EXP':
                  self.emulate_zone = [val[z] == 'Y' for z in list(range(5))]
              elif key == 'REL':
                  self.emulate_relay = [val[r] == 'Y' for r in list(range(4))]
              elif key == 'LRR':
                  self.emulate_lrr = (val == 'Y')
              elif key == 'DEDUPLICATE':
                  self.deduplicate = (val == 'Y')
              elif key == 'MODE':
                  self.mode = PANEL_TYPES[val]
              elif key == 'COM':
                  self.emulate_com = (val == 'Y')
  
          self.on_config_received()