no longer weird pseudocode