In simulations such as this, we often think of each node (agent) as being in a \state"; iteratively updating this state in response to incoming messages; and sending out messages in response to its current state and any incoming messages.