supporting any number of machines