interface changed, few bugs fixed