load ./q3.so

source symul_lib.tcl;

set liczbaWierz 5
set sasiedzi(0) {4 1}
set sasiedzi(1) {0 2}
set sasiedzi(2) {1 3}
set sasiedzi(3) {2 4}
set sasiedzi(4) {3 0}

fiber create $liczbaWierz {
	set lider ?;
	wyslij 0 $id;
	fiber yield;
	while {$run} {
		if {$kom(1)!=""} {
			set x $kom(1);
			if {$lider==1} {
				
			} elseif {$x>$id} {
				wyslij 0 $x;
			} elseif {$x==0} {
				wyslij 0 $x;
				set lider 0;
			}  elseif {$x==$id} {
				set lider 1;
				wyslij 0 0;
			} elseif {$x < $id} {
			
			}
		}
		fiber yield;
	}
}

Inicjalizacja;

proc wizualizacja {} {
  fiber_iterate {_puts "$id: $lider, $kom(1)"}
}
 
fiber yield; runda; wizualizacja