code: def _eval_op(lhs, op, rhs):
      # type: (str, Op, str) -> bool
      try:
          spec = Specifier("".join([op.serialize(), rhs]))
      except InvalidSpecifier:
          pass
      else:
          return spec.contains(lhs)
  
      oper = _operators.get(op.serialize())  # type: Optional[Operator]
      if oper is None:
          raise UndefinedComparison(
              "Undefined {0!r} on {1!r} and {2!r}.".format(op, lhs, rhs)
          )
  
      return oper(lhs, rhs)
  
imports: from __future__ import absolute_import, division, print_function
  import operator
  import os
  import platform
  import sys
  from pyparsing import Forward, Group, Literal, ParseException, ParseResults, QuotedString, ZeroOrMore, stringEnd, stringStart
  from ._compat import string_types
  from ._typing import TYPE_CHECKING
  from .specifiers import InvalidSpecifier, Specifier
label_desc: Use image node_id 3 for calling a global function with example usage: _eval_op(lhs, op, rhs) and returns: oper, spec