a library that compare objects