new dart interface