better naming
convert now uses public converters, not their private implementations