add conversion util, bug fixed