code: def get_valence_of_out_shell(mol):
      peroid_table = Chem.GetPeriodicTable()
      valence_list = []
      atoms = mol.GetAtoms()
      for atom in atoms:
          valence_out_shell = peroid_table.GetNOuterElecs(
              atom.GetAtomicNum()
          )
          if valence_out_shell > 8:
              valence_out_shell = 9
          valence_list.append(valence_out_shell)
      return valence_list
  
imports: import numpy
  import rdkit
  from rdkit import Chem
  from rdkit.Chem import AllChem
  import rdkit.Chem.rdPartialCharges
  from ogb.utils.features import allowable_features, atom_to_feature_vector, atom_feature_vector_to_dict, bond_feature_vector_to_dict
  from local_feature import bond_to_feature_vector, get_bond_feature_dims
  from copy import deepcopy
  import hashlib
label_desc: Use image node_id 17 for calling a global function with example usage: get_valence_of_out_shell(mol) and returns: valence_list