code: def generateSensorimotorSequence(self, sequenceLength):
      
      motorSequence = []
      sensorySequence = []
      sensorimotorSequence = []
      currentEyeLoc = self.nupicRandomChoice(self.spatialConfig)
  
      for i in xrange(sequenceLength):
  
        currentSensoryInput = self.spatialMap[tuple(currentEyeLoc)]
  
        nextEyeLoc, currentEyeV = self.getNextEyeLocation(currentEyeLoc)
  
        if self.verbosity:
            print "sensory input = ", currentSensoryInput, \
              "eye location = ", currentEyeLoc, \
              " motor command = ", currentEyeV
  
        sensoryInput = self.encodeSensoryInput(currentSensoryInput)
        motorInput = self.encodeMotorInput(list(currentEyeV))
        sensorimotorInput = numpy.concatenate((sensoryInput, motorInput))
  
        sensorySequence.append(sensoryInput)
        motorSequence.append(motorInput)
        sensorimotorSequence.append(sensorimotorInput)
  
        currentEyeLoc = nextEyeLoc
  
      return (sensorySequence, motorSequence, sensorimotorSequence)
docs: Generate sensorimotor sequences of length sequenceLength.
  
      @param sequenceLength (int)
          Length of the sensorimotor sequence.
  
      @return (tuple) Contains:
              sensorySequence       (list)
                  Encoded sensory input for whole sequence.
  
              motorSequence         (list)
                  Encoded motor input for whole sequence.
  
              sensorimotorSequence  (list)
                  Encoder sensorimotor input for whole sequence. This is useful
                  when you want to give external input to temporal memory.