A realtime tree diffing algorithm