distinct types machine