code: def merge_wells(self, right, keys=None):
          
          wells = []
          for w in self:
              rw = right.get_well(w.uwi)
              if rw is not None:
                  if keys is None:
                      keys = list(rw.data.keys())
                  for k in keys:
                      try:
                          w.data[k] = rw.data[k]
                      except:
                          pass
              wells.append(w)
          return Project(wells)
docs: Returns a new Project object containing wells from self where
          curves from the wells on the right have been added. Matching between
          wells in self and right is based on uwi match and ony wells in self
          are considered
  
          Args:
              uwi (string): the UWI string for the well.
          
          Returns:
              project