8 our @order, @order_final_maybe;
10 while (@ARGV && $ARGV[0] =~ m/^\-/) {
13 $flag{$_}{Result} = 0;
14 push @order_final_maybe, $_;
16 $flag{$_}{Result} = 1;
17 push @order_final_maybe, $_;
21 die "$0: bad option\n";
25 @ARGV==3 or die "$0: bad usage\n";
27 foreach my $ix (qw(0 1 2)) {
28 open F, '<', $ARGV[$ix] or die "$ix $!";
31 $flag{$_}{Input}[$ix] = 1;
33 push @order, $_ unless $ff->{InOrder}++;
39 foreach $_ (@order_final_maybe) {
40 push @order, $_ unless $flags{$_}{InOrder}++;
43 open O, '>', "$current.tmp" or die "$current.tmp $!";
47 if (!defined $ff->{Result}) {
49 foreach my $ix (qw(0 1 2)) {
50 $ff->{Input}[$ix] ||= 1;
51 $s .= $ff->{Input}[$ix];
59 print O "$_\n" or die $!;
64 rename "$current.tmp", "$current" or die "$current $!";