code: def __call__(self, graph, **kwargs: Any):
      # example how we can get input data from objective
      input_data = kwargs.get("objective").__self__.input_data
      print(input_data.features.shape)  # for pep8
      return [len(graph.nodes)]
  
file_path: FEDOT/examples/advanced/surrogate_optimization.py
imports: from functools import partial
  from typing import Any
  from golem.core.optimisers.meta.surrogate_model import SurrogateModel
  from golem.core.optimisers.meta.surrogate_optimizer import SurrogateEachNgenOptimizer
  from examples.simple.time_series_forecasting.api_forecasting import get_ts_data
  from fedot import Fedot
  from fedot.core.repository.tasks import Task, TaskTypesEnum, TsForecastingParams
label_desc: Use image node_id 1 for calling the GraphLenSurrogateModel obj's underlying member method code with example usage: obj.__call__(graph) and returns: list