code: 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
  
imports: import functools
  import logging
  import operator
  import warnings
  from collections import defaultdict
  from typing import Any, DefaultDict, Dict, List, Tuple, Type
  from woodwork.column_schema import ColumnSchema
  from woodwork.logical_types import Boolean, BooleanNullable
  from featuretools import primitives
  from featuretools.entityset.entityset import LTI_COLUMN_NAME
  from featuretools.entityset.relationship import RelationshipPath
  from featuretools.feature_base import AggregationFeature, DirectFeature, FeatureBase, GroupByTransformFeature, IdentityFeature, TransformFeature
  from featuretools.feature_base.cache import CacheType, feature_cache
  from featuretools.feature_base.utils import is_valid_input
  from featuretools.primitives.base import AggregationPrimitive, PrimitiveBase, TransformPrimitive
  from featuretools.primitives.options_utils import filter_groupby_matches_by_options, filter_matches_by_options, generate_all_primitive_options, ignore_dataframe_for_primitive
  from featuretools.utils.gen_utils import Library, camel_and_title_to_snake
label_desc: Use image node_id 11 for calling a global function with example usage: _all_direct_and_same_path(input_features) and returns: True, False