pointcut X1(S s1) : this(s); pointcut X2(S s2, T t2) : (call(void crossing_x(..)) && this(s) && target(t) ); pointcut X3(A a1, B b2, C c3) : cflow( * visiting_A1(a));