fixed cp35348

The logic went like this:
If it is not empty, try get value - validation is already included during a hash calculation.
Otherwise, avoid calculating hash by doing IsHashable only.
As a bonus simplify the None case.
But, I didn't do any  benchmark to provide hard numbers.