Sort:  

Good analysis, this is indeed the correct pattern