code: def _build(self, lexer):
          
          atom_number = 1
          while True:
              token = next(lexer)
              key = token.__class__.__name__
  
              if key == 'CtabCountsLine':
                  self[key].update(token._asdict())
  
              elif key == 'CtabAtomBlock':
                  self[key].append(Atom(atom_number=str(atom_number), **token._asdict()))
                  atom_number += 1
  
              elif key == 'CtabBondBlock':
                  first_atom_number, second_atom_number, bond_type, bond_stereo, \
                  not_used1, bond_topology, reacting_center_status = token
  
                  first_atom = self.atoms[int(first_atom_number) - 1]
                  second_atom = self.atoms[int(second_atom_number) - 1]
                  first_atom.neighbors.append(second_atom)
                  second_atom.neighbors.append(first_atom)
  
                  bond = Bond(first_atom=first_atom, second_atom=second_atom, bond_type=bond_type,
                              bond_stereo=bond_stereo, not_used1=not_used1, bond_topology=bond_topology,
                              reacting_center_status=reacting_center_status)
                  self[key].append(bond)
  
              elif key == 'CtabPropertiesBlock':
                  property_name = token.name
                  keys = self.ctab_conf[self.version][property_name]['values']
                  ctab_properties = more_itertools.sliced(token.line.split()[3:], len(keys))
  
                  for ctab_property in ctab_properties:
                      atom_number, property_value = ctab_property
                      self.atoms[int(atom_number) - 1]._ctab_property_data[property_name] = property_value
  
              elif key == 'CtabBlockEnd':
                  break
  
              else:
                  raise KeyError('Ctab object does not supposed to have any other information: "{}".'.format(key))
docs: Build :class:`~ctfile.ctfile.Ctab` instance.
  
          :return: :class:`~ctfile.ctfile.Ctab` instance.
          :rtype: :class:`~ctfile.ctfile.Ctab`.