machine type distinctions