<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def push_return_history_item(self, state, call_type, state_for_scoped_data, output_data=None):
 """Adds a new return-history-item to the history item list A return history items stores information about the point in time where a method (entry, execute, exit) of certain state returned. :param state: the state that returned :param call_type: the call type of the execution step, i.e. if it refers to a container state or an execution state :param state_for_scoped_data: the state of which the scoped data needs to be saved for further usages (e.g. backward stepping) """

        last_history_item = self.get_last_history_item()
        from rafcon.core.states.library_state import LibraryState  # delayed imported on purpose
        if isinstance(state_for_scoped_data, LibraryState):
            state_for_scoped_data = state_for_scoped_data.state_copy
        return_item = ReturnItem(state, last_history_item, call_type, state_for_scoped_data, output_data,
                                 state.run_id)
        return self._push_item(last_history_item, return_item)