code: def scale_degree_to_bitmap(scale_degree, modulo=False, length=BITMAP_LENGTH):
      
      sign = 1
      if scale_degree.startswith("*"):
          sign = -1
          scale_degree = scale_degree.strip("*")
      edit_map = [0] * length
      sd_idx = scale_degree_to_semitone(scale_degree)
      if sd_idx < length or modulo:
          edit_map[sd_idx % length] = sign
      return np.array(edit_map)
docs: Create a bitmap representation of a scale degree.
  
      Note that values in the bitmap may be negative, indicating that the
      semitone is to be removed.
  
      Parameters
      ----------
      scale_degree : str
          Spelling of a relative scale degree, e.g. 'b3', '7', '#5'
      modulo : bool, default=True
          If a scale degree exceeds the length of the bit-vector, modulo the
          scale degree back into the bit-vector; otherwise it is discarded.
      length : int, default=12
          Length of the bit-vector to produce
  
      Returns
      -------
      bitmap : np.ndarray, in [-1, 0, 1], len=`length`
          Bitmap representation of this scale degree.