add intaraction levels
add self=this