fix order of re-queuing and nil return for n<5