changed chaining so that performance is the only important value