Lots of pseudocode