poss(mask($v, $m), mask($s, $m), sub { my $unused = $f; # <------ my($v1, $s1) = @_; for my $k (0 .. @vv2 - 1) { poss2($v1, $vv2[$k], $s1, $ss2[$k], sub { my($v3, $s3) = @_; &$f($v3, $s3); }); } });