Most of the .beh file was used from the j-c-bypassing code. Since both programs do similar work I just modified the j-c-bypassing *.beh to work with my senario in j-c-bypassing3. The program tests the *bypassing* clause of the traversal code. The program a visitor that maintains a counter that increments everytime we enter the E object. Therefore, by using the *bypassing* clause we can manipulate the path that the program takes to get to the E object. This is result in the counter giving us various answers based on what paths we chose to take (we use *bypassing* to discard certain paths). This program takes on input. It creates the objects on it's own and then calls the function F. If the counter equals 4 then SUCCESS is printed else FAILURE is printed. Her is the output: [batu: /proj/demsys/com1205/w97/bowtie/proj/phase1/c-bypassing3] > make test CLASSPATH=./gen:$CLASSPATH java Main < program.input ld.so: warning: /usr/lib/libc.so.1.8 has older revision than expected 9 in E. in E. in E. in E. in E. in E. in E. in E. *** result *** 4 SUCCESS SUCCESS in E. in E. in E. in E. SUCCESS