docs: def _to_ctfile_property_block(self):
          """Create ctab properties block in `CTfile` format from atom-specific properties.
  
          :return: Ctab property block.
          :rtype: :py:class:`str`
          """
          ctab_properties_data = defaultdict(list)
          for atom in self.atoms:
              for ctab_property_key, ctab_property_value in atom._ctab_property_data.items():
                  ctab_properties_data[ctab_property_key].append(OrderedDict(
                      zip(self.ctab_conf[self.version][ctab_property_key]['values'],
                          [atom.atom_number, ctab_property_value])))
  
          ctab_property_lines = []
          for ctab_property_key, ctab_property_value in ctab_properties_data.items():
              for entry in ctab_property_value:
                  ctab_property_line = '{}  {}{}'.format(self.ctab_conf[self.version][ctab_property_key]['fmt'],
                                                         1, ''.join([str(value).rjust(4) for value in entry.values()]))
                  ctab_property_lines.append(ctab_property_line)
  
          if ctab_property_lines:
              return '{}\n'.format('\n'.join(ctab_property_lines))
          return ''