 			if !exists
 				@machines[iMKey].apply("touchend", {})
 				delete @machines[iMKey]	
-				
+
+		@grouper.refreshFIngerCount @fingerCount		
 			
 	 
 	touchmove: (event) ->

class EventGrouper
	constructor: ->
		@savedTap = {}
	
	receive: (name, eventObj, fingerCount, element) ->

		if @fingerCount != fingerCount
			@fingerCount = fingerCount
			@analyser = new Analyser @fingerCount, element
		
		##
		if name == "tap"
			if @savedTap[eventObj.identifier]? && ((new Date().getTime()) - @savedTap[eventObj.identifier].time) < 400

				iMachine = new StateMachine i.identifier, this
				iMachine.apply "touchstart", i
				@machines[i.identifier] = iMachine


	touchend: (event) ->
		event.preventDefault()
		@fingerCount = event.touches.length
		for iMKey in @machines.keys()
			iMKey = parseInt(iMKey)
			exists = false			
