?-static([green,move,quit,red,start,stop]). print_state:-(_2577= *green,_2593= *move,_2609= *quit,_2625= *red,_2641= *start,_2654= *stop),write((*green=_2577,*move=_2593,*quit=_2609,*red=_2625,*start=_2641,*stop=_2654)). true :- empty,empty. true :- more,true. s1 :- empty,*stop= 1,*quit= 1,*green:= 0,*move:= 0,*red:= 1,empty. s1 :- empty,*stop= 1,*quit= 1,*green:= 1,*move:= 1,*red:= 0,empty. s1 :- empty,*stop= 0,*start= 1,*quit= 1,*green:= 0,*move:= 0,*red:= 1,empty. s1 :- empty,*stop= 0,*start= 1,*quit= 1,*green:= 1,*move:= 1,*red:= 0,empty. s1 :- more,*stop= 1,*start= 0,*quit= 0,*green:= 0,*move:= 0,*red:= 1,@s2. s1 :- more,*stop= 0,*start= 1,*quit= 0,*green:= 1,*move:= 1,*red:= 0,@s3. s2 :- empty,*quit= 1,*green:= 0,*move:= 0,*red:= 1,empty. s2 :- empty,*quit= 1,*green:= 1,*move:= 1,*red:= 0,empty. s2 :- more,*stop= 1,*start= 0,*quit= 0,*green:= 0,*move:= 0,*red:= 1,@s2. s2 :- more,*stop= 0,*start= 0,*quit= 0,*green:= 0,*move:= 0,*red:= 1,@s2. s2 :- more,*stop= 0,*start= 1,*quit= 0,*green:= 1,*move:= 1,*red:= 0,@s3. s3 :- empty,*quit= 1,*green:= 0,*move:= 0,*red:= 1,empty. s3 :- empty,*quit= 1,*green:= 1,*move:= 1,*red:= 0,empty. s3 :- more,*stop= 0,*start= 1,*quit= 0,*green:= 1,*move:= 1,*red:= 0,@s3. s3 :- more,*stop= 0,*start= 0,*quit= 0,*green:= 1,*move:= 1,*red:= 0,@s3. s3 :- more,*stop= 1,*start= 0,*quit= 0,*green:= 0,*move:= 0,*red:= 1,@s2.