interaction basic struct