add diff system
improve test with Index & co
add tpl for checking