def select_features_by_type(features: list, feature_type: str) -> list:
    """
    Selects features from a list of BitomeFeatures that have the provided type as their .type attribute
    :param List[BitomeFeature] features: the list of BitomeFeature objects (or sub-objects thereof) from which to
    extract features of a given type
    :param str feature_type: the type of feature to select
    :return list selected_features: the features selected from the list by type
    """
    return [feature for feature in features if feature.type == feature_type]