code: def append(self, observation, action, reward, terminal, training=True):
           
          super(SequentialMemory, self).append(observation, action, reward, terminal, training=training)
          
          # This needs to be understood as follows: in `observation`, take `action`, obtain `reward`
          # and weather the next state is `terminal` or not.
          if training:
              self.observations.append(observation)
              self.actions.append(action)
              self.rewards.append(reward)
              self.terminals.append(terminal)
docs: Append an observation to the memory
  
          # Argument
              observation (dict): Observation returned by environment
              action (int): Action taken to obtain this observation
              reward (float): Reward obtained by taking this action
              terminal (boolean): Is the state terminal