bug fix to support cached versions, also only cache values if some kind of conversion actually occurred.