[ rev ] improve interface