#!/afs/athena/contrib/perl/p

$| =1;
$warrior = $ARGV[0];

foreach $n (1..1000){
	open(PP, ">/tmp/puppy/p$n");

	print(PP "i equ $n\n");
	print PP <<_FOO_;
inc       equ       i
territory equ       (-1)/i/i*i+150
skip      equ       2*territory+21-((-1)/i*i+i)
scope     equ       15

dummy     dat       #0,         #0
ptr       dat       #0,        #territory
ptr2      dat       #0,         #0
ptr2Min   dat       #0 ,        #0

search    add       #inc    ,  ptr
	jmz	search, @ptr
	slt	ptr, lline
	jmp	found
	jmp	search

found	mov	ptr, 	ptr2
	add	#30,	ptr2
go	mov	#60,	go
kill	mov 	setbit,	<ptr2
	djn	kill, go
	jmn	fixit, setbit
	mov	ptr,	ptr2
offset	sub	@ptr,	ptr2
	mov	#1,	setbit
	jmp	go
setbit	spl -1, #0
fixit	mov	#0, setbit
 
	add	#100, ptr2
go2	mov	#80,	go2
kill2	mov 	blank,	<ptr2
	djn	kill2, go2
	jmp	search
	dat	#0
blank	dat	#0
set2	dat	#0
	dat	#0
	dat	#0
	dat	#0
	dat	#0
lline	jmp	search,	#100
end search
_FOO_




print("$n, ");    
$output=`/afs/sipb/project/corewars/koth/koth -rounds 100 /mit/mkgray/redcode/puppy3 /mit/mkgray/redcode/all/$warrior`;
	@foo = split(/[ \n]/, $output);
	if(int($foo[0]) >=$maxv){
	    $maxv = int($foo[0]); # 
	    $max = $n;		# 
	    print("\n\nNew best performance against $warrior using value $n:\n$output\n\n");
	}			# 
    }				# 

