check dup srcs, reduce explicit dep,fix example, improve test