granular DOM Observer progress