adding the rest of the features