code: def _find_entry_index(self, key) -> int:
      entry = self._entry_class(
          self._tree_conf, key=key  # Hack to compare and order
      )
      i = bisect.bisect_left(self.entries, entry)
      if i != len(self.entries) and self.entries[i] == entry:
          return i
      raise ValueError("No entry for key {}".format(key))
  
imports: import abc
  import bisect
  import math
  from typing import Optional
  from .const import ENDIAN, NODE_TYPE_BYTES, USED_PAGE_LENGTH_BYTES, PAGE_REFERENCE_BYTES, TreeConf
  from .entry import Entry, Record, Reference, OpaqueData
label_desc: Use image node_id 17 for calling the Node obj's underlying member method code with example usage: obj._find_entry_index(key) and returns: i