completed (maybe) convert method