An Efficient Algorithm for Scheduling a Flexible Job Shop with Blocking and No-Wait Constraints*. Issue 1 (July 2017)