recursive convert #1