<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def parse_meta(self, meta):
 """Parses the meta field in the message, copies it's keys into a new dict and replaces the values, which should be attribute paths relative to the passed in object, with the current value at the end of that path. This function will run recursively when it encounters other dicts inside the meta dict. Args: meta (dict):
 The dictionary of mappings to pull structure of the meta from. Returns: dict: A copy of the keys from the meta dict with the values pulled from the paths. """

        res = {}

        for key, val in meta.items():
            if not val:
                continue
            elif isinstance(val, dict):
                res[key] = self.parse_meta(val)
            elif val.startswith('current_user.'):
                res[key] = self.get_path_attribute(current_user, val)
            elif val.startswith('original.'):
                res[key] = self.get_path_attribute(self.get_original(), val)
            else:
                res[key] = self.get_path_attribute(self, val)

        return res