refactored ConverstionExtensions
to be self consistent