<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def reward_scope(self,
                     state: Sequence[tf.Tensor],
                     action: Sequence[tf.Tensor],
                     next_state: Sequence[tf.Tensor]) -> Dict[str, TensorFluent]:
        '''Returns the complete reward fluent scope for the
        current `state`, `action` fluents, and `next_state` fluents.

        Args:
            state (Sequence[tf.Tensor]): The current state fluents.
            action (Sequence[tf.Tensor]): The action fluents.
            next_state (Sequence[tf.Tensor]): The next state fluents.

        Returns:
            A mapping from fluent names to :obj:`rddl2tf.fluent.TensorFluent`.
        '''
        scope = {}
        scope.update(self.non_fluents_scope())
        scope.update(self.state_scope(state))
        scope.update(self.action_scope(action))
        scope.update(self.next_state_scope(next_state))
        return scope