## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

- Auto
- Light
- Dark

# Algorand Specifications

A player may also update its step after receiving a timeout event.

On observing a timeout event of FilterTimeout(p) for a period p,
the player sets s:=cert.

On observing a timeout event of DeadlineTimeout(p) for a period p,
the player sets s:=next0.

On observing a timeout event of DeadlineTimeout(p)+2stλ+u where u∈[0,2stλ) sampled uniformly at random,
the player sets s:=st.

> Important
> 
> **IMPLEMENTATION:**
> 
> New step [reference implementation](https://github.com/algorand/go-algorand/blob/b6e5bcadf0ad3861d4805c51cbf3f695c38a93b7/agreement/player.go#L94).
> 
> In other words,
> 
> N((r,p,s,s¯,V,P,v¯),L,t(FilterTimeout(p),p))=((r,p,cert,s¯,V,P,v¯),L′,…)
> =((r,p,next0,s¯,V,P,v¯),L′,…)
> =((r,p,nextst,s¯,V,P,v¯),L′,…).
