@(define first_last (first last whole)) @ (all) @(skip :greedy)@{last 1} @ (and) @{first 1}@(skip) @ (and) @whole @ (end) @(end) @(next "amb/set1") @(skip) @(first_last fi1 la1 w1) @(next "amb/set2") @(skip) @(first_last la1 la2 w2) @(next "amb/set3") @(skip) @(first_last la2 la3 w3) @(next "amb/set4") @(skip) @(first_last la3 la4 w4) @(output) @w1 @w2 @w3 @w4 @(end)