pseudocode draft #1