#!/usr/local/bin/perl

die if @ARGV != 3;

my($srcfile, $refset, $sysid);

$srcfile = $ARGV[0];
$refset  = $ARGV[1];
$sysid   = $ARGV[2];


open(TGT, $srcfile) or die $!;
while ($line = <TGT>) {
    $line =~ s/[\r\n]*$//;
    push @segs, $line;
}
close(TGT);

#print STDERR "Translation count: " .  scalar(@segs) . "\n";

$segindex = 0;
$currsysid = "";
open(TST, $refset) or die $!;
while ($line = <TST>) {
    $line =~ s/refset>/tstset>/;
    if ($line =~ m/<seg/) {
	$line =~ s/>[^<]*</"> " . $segs[$segindex] . " <"/e;
	$segindex++;
	print $line;
    } elsif ($line =~ m/<DOC/) {
	$line =~ s/sysid=\"([^\"]+)\">/ sysid=\"$sysid\">/;
	if ($currsysid eq "") {
	    $currsysid = $1;
	} elsif ($currsysid ne $1) {
	    print "</tstset>\n";
	    last;
	}
	print $line;
    } else {
	print $line;
    }
}
close(TST);

#print STDERR "Segindex $segindex\n";
