call fill complete() before solving