code: def transform(self, maps):
          
          if self.transform_functions is None:
              raise NotImplementedError("no transform function(s) provided")
          # copy values to scratch
          self._copytoscratch(maps)
          # ensure that we return the same data type in each dict
          getslice = self._getslice(maps)
          # evaluate the functions
          out = {p: self._scratch[func][getslice]
                 for p,func in self.transform_functions.items()}
          return self.format_output(maps, out)
docs: Applies the transform functions to the given maps object.
  
          Parameters
          ----------
          maps : dict, or FieldArray
  
          Returns
          -------
          dict or FieldArray
              A map object containing the transformed variables, along with the
              original variables. The type of the output will be the same as the
              input.