added M.Interaction interface