# Author: Sandeep Belgavi. Synthetic exercise; no network or provider calls. allowed={"researcher","reviewer"} seen=set() remaining=3 def handoff(task,agent): global remaining key=(task,agent) if agent not in allowed or key in seen or remaining==0:return "STOP" seen.add(key);remaining-=1 return "ACCEPT" assert handoff("t1","researcher")=="ACCEPT" assert handoff("t1","reviewer")=="ACCEPT" assert handoff("t1","researcher")=="STOP" assert handoff("t1","payment_writer")=="STOP" print("two handoffs accepted; loop and unknown role stopped")