some interaction stuffs.