improved implementation compare check with better param support