code: def remaining_weight_color_hsl(
      ws,  # type: List[FeatureWeight]
      weight_range,  # type: float
      pos_neg,  # type: str
  ):
      # type: (...) -> _HSL_COLOR
      """Color for "remaining" row.
      Handles a number of edge cases: if there are no weights in ws or weight_range
      is zero, assume the worst (most intensive positive or negative color).
      """
      sign = {"pos": 1.0, "neg": -1.0}[pos_neg]
      if not ws and not weight_range:
          weight = sign
          weight_range = 1.0
      elif not ws:
          weight = sign * weight_range
      else:
          weight = min((fw.weight for fw in ws), key=abs)
      return weight_color_hsl(weight, weight_range)
  
imports: from __future__ import absolute_import
  from itertools import groupby
  from typing import List, Optional, Tuple
  import numpy
  from jinja2 import Environment, PackageLoader
  from eli5 import _graphviz
  from eli5.base import Explanation, TargetExplanation, FeatureWeights, FeatureWeight
  from eli5.utils import max_or_0
  from .utils import format_signed, format_value, format_weight, has_any_values_for_weights, replace_spaces, should_highlight_spaces
  from .None import fields
  from .features import FormattedFeatureName
  from .trees import tree2text
  from .text_helpers import prepare_weighted_spans, PreparedWeightedSpans
label_desc: Use image node_id 11 for calling a global function with example usage: remaining_weight_color_hsl(ws, weight_range, pos_neg) and returns: weight_color_hsl