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)
  
imports: from __future__ import absolute_import
  from collections import deque, namedtuple
  import warnings
  import random
  import numpy
label_desc: Use image node_id 4 for calling the SequentialMemory obj's underlying member method code with example usage: obj.append(observation, action, reward, terminal, training) without return types