code: def validate_split_adjusted_column_specs(name_map, columns):
      to_be_split = set(columns)
      available = set(name_map.keys())
      extra = to_be_split - available
      if extra:
          raise ValueError(
              "EarningsEstimatesLoader got the following extra columns to be "
              "split-adjusted: {extra}.\n"
              "Got Columns: {to_be_split}\n"
              "Available Columns: {available}".format(
                  extra=sorted(extra),
                  to_be_split=sorted(to_be_split),
                  available=sorted(available),
              )
          )
  
imports: from abc import abstractmethod, abstractproperty
  from interface import implements
  import numpy
  import pandas
  from six import viewvalues
  from toolz import groupby
  from zipline.lib.adjusted_array import AdjustedArray
  from zipline.lib.adjustment import Datetime641DArrayOverwrite, Datetime64Overwrite, Float641DArrayOverwrite, Float64Multiply, Float64Overwrite
  from zipline.pipeline.common import EVENT_DATE_FIELD_NAME, FISCAL_QUARTER_FIELD_NAME, FISCAL_YEAR_FIELD_NAME, SID_FIELD_NAME, TS_FIELD_NAME
  from zipline.pipeline.loaders.base import PipelineLoader
  from zipline.utils.numpy_utils import datetime64ns_dtype, float64_dtype
  from zipline.pipeline.loaders.utils import ffill_across_cols, last_in_date_group
label_desc: Use image node_id 6 for calling a global function with example usage: validate_split_adjusted_column_specs(name_map, columns) without return types