% % session analysis step % _Xact.Detect { % % it was after a Bnew, test before the next Cdone % dup noext term5 "xactsesf" log)( "Cdone" eq$ { % % see if it is after the time point % % stack: time-stake venue-dir file-seed % _Shooter.Msec "yactsestamp" log)( fourth "yactsestampb" log)( ge$ "yactsesi" log)( { % % it is before the Cdone, mark as this subject % *xactosub "Subject" *shootern true } { % % it is past the Cdone, keep looking for correct New % false !Xact.Detect false } ifelse } { % % not the matching Cdone % false } ifelse } { % % test the Bnew % dup noext term5 "xactsesh" log)( "Bnew" eq$ { % % see if it is greater than the time point % % stack: time-stake venue-dir file-seed % _Shooter.Msec "xactsestamp" log)( fourth "xactsestampb" log)( ge$ "xactsesi" log)( { % % the Bnew is greater than the time point, % this is an extra shot not within session markers % "Extra" *shootern true } { % % this is a possible Bnew for this xact % true !Xact.Detect false } ifelse } { % % not a Bnew % false } ifelse } ifelse