$new_file = shift(@ARGV);
$old_file = shift(@ARGV);
@old_colors = split( /;/, shift(@ARGV) );
@new_colors = split( /;/, shift(@ARGV) );

if( ! -f $old_file ) {
    if( -f $new_file ) {
	system( "cp ".$new_file." ".$old_file );
    } else {
	print "Error! \"".$new_file."\" doesn't exist.\n";
	exit 2;
    }
}

open( IN, "<".$old_file );
open( OUT, ">".$new_file );

while( $L = <IN> ) {
    chomp( $L );
    @D = split( / /, $L );

    $changed = 0;
    for( $i = 0; $i < scalar @old_colors; $i++ ) {
	if( $D[0] eq "color" && $D[1] eq $old_colors[$i] ) {
	    print OUT $D[0]." ".$new_colors[$i]."\n";
	    $changed = 1;
	}
    }
    if( $changed != 1 ) {
	print OUT $L."\n";
    }
}

close( IN );
close( OUT );
