Fix custom coercion for support idempotent between valid?

Hi.

I open PR for #33 .
Please review?
thank you.