s/ ^ \b (? [ \w \s \[ \] ]+ \s+ \( ) $ (? .*? ^\)$ ) / $+{body} =~ s|QUALIFIED|| unless $+{head} ~~ m|^\w+?clk\[\d\]|; $+{head} . $+{body} /gemsx; #### doit if $x ~~ / (? \w+)\s+(? \w+) /x and $y ~~ / (? \w+)\s+(? \w+) /x and $+{x1} . $+{y2} eq $+{y1} . $+{x2}; #### { my %+; doit if $x ~~ / (? \w+)\s+(? \w+) /x and $y ~~ / (? \w+)\s+(? \w+) /x and $+{x1} . $+{y2} eq $+{y1} . $+{x2}; }