 			# our correct position in the network and to catch our fall we we
 			# lose our parent.
 			else
+				for peer in @getPeers()
+					unless peer.isSuperNode then peer.die()
+
 				current = _(@getPeers()).filter( (peer) -> peer.isSuperNode).length
 				needed = @_foundationNodes - current
 				if needed <= 0
 					return
+
+
 
 				@_parent.query('siblings', ( superNodes ) =>
 					if not superNodes? or superNodes.length is 0


		_pingCandidateTimeout : 1000
		_coordinateDelta : 1
		_maxChildren : 4
		_foundationNodes : 5
		_superNodeSwitchThreshold : 0.7
		_tokenMoveThreshold : 1


					callback info

		# Relays a message to other nodes. If the intended receiver is not a direct
		# neighbor, we route the message through other nodes in an attempt to reach
		# the destination.
