In previous code, when tolerance was not ending on '%' it was going through 'evaluator(dict(), dict(), tolerance)'. Now it is going through only if it is string. Why it is so?