integration + optimization