def extract0to1Gestures(data):
	gestures = {0: []} #only create gesture 0
	gestureLength = l1	#5 samples / 20Hz = 0.25 seconds
	postGestureLength = l2	#time allowed after the gesture was caught in output
	for i in range(len(data) - gestureLength - postGestureLength):
		#print data[i+gestureLength-1][1][0], data[i + gestureLength][1][0]
		if data[i+gestureLength-2][1][0] == 0 and data[i + gestureLength-1][1][0] == 1:
			gestureData = [d[0] for d in data[i:i+gestureLength + postGestureLength]]	#remove the outputs since we've already associated it with a gesture
			normalized = gestureDistanceCalculator.normalizeData(gestureData)
			gestures[0].append(normalized)
			
	return gestures
	gr = gestureDistanceCalculator.GestureDistanceCalculator(training)
	
	print '\n\n'
	
	fout = open('grOutput.txt', 'w')
	
	allDistances = []
	
	start = time.time()
	
	for i in range(l1 + l2, 30000):
		if i >= len(data): break
		
		input = [d[0] for d in data[i-l1-l2:i]]
		distance, closest, systemOutput = gr.getOutput(input)
		s = '\t'.join([str(i), str([round(i[0], 2) for i in gestureDistanceCalculator.normalizeData(input)]), str(round(distance, 2))])
		
		if distance < DISTANCE_TO_PRINT:
			print s
		
		fout.write(s + '\n')
		
		allDistances.append(distance)
		
	#elapsed = time.time() - start
	#numPoints = len(data) - l1 - l2
	#print 'took %s for %s points' % (elapsed, numPoints)
		
	avDistance = stats.mean(allDistances)
	stdDevDistance = stats.stdDev(allDistances)