changed name to softCompare and other refactors