def _all_direct_and_same_path(input_features: List[FeatureBase]) -> bool:
    """Given a list of features, returns True if they are all
    DirectFeatures with the same relationship_path, and False if not
    """
    path = input_features[0].relationship_path
    for f in input_features:
        if not isinstance(f, DirectFeature) or f.relationship_path != path:
            return False
    return True
Given a list of features, returns True if they are all
    DirectFeatures with the same relationship_path, and False if not
    
featuretools/synthesis/deep_feature_synthesis.py