finish single queue refactor