Fix: Factor out duplication in Negotiate class.