An internal model control design method for failure-tolerant control with multiple objectives. (2nd September 2020)