ordinality must be > keep at this point, should be a do { } while