reordered the features so its easier to read