fixed interface handling, added handlerfunc interface