code: def filter_params(self, fn, override=None):
          
          override = override or {}
          result = {}
          for name, value in self.target_params.items():
              if has_arg(fn, name):
                  result.update({name: value})
          result.update(override)
          return result
docs: Filters `target_params` and return those in `fn`'s arguments.
          Args:
              fn : arbitrary function
              override: dict, values to override target_params
          Returns:
              result : dict, dictionary containing variables
              in both target_params and fn's arguments.