def make_monochrome_scheme(self):
def _wrap(x, min, thres, plus):<EOL><INDENT>if (x-min) < thres: return x + plus<EOL>else: return x-min<EOL><DEDENT>h, s, l = self.__hsl<EOL>s1 = _wrap(s, <NUM_LIT>, <NUM_LIT:0.1>, <NUM_LIT>)<EOL>l1 = _wrap(l, <NUM_LIT:0.5>, <NUM_LIT>, <NUM_LIT>)<EOL>s2 = s<EOL>l2 = _wrap(l, <NUM_LIT>, <NUM_LIT>, <NUM_LIT>)<EOL>s3 = s1<EOL>l3 = max(<NUM_LIT>, l + (<NUM_LIT:1>-l)*<NUM_LIT>)<EOL>s4 = s<EOL>l4 = _wrap(l, <NUM_LIT:0.5>, <NUM_LIT>, <NUM_LIT>)<EOL>return (<EOL>Color((h, s1,  l1), '<STR_LIT>', self.__a, self.__wref),<EOL>Color((h, s2,  l2), '<STR_LIT>', self.__a, self.__wref),<EOL>Color((h, s3,  l3), '<STR_LIT>', self.__a, self.__wref),<EOL>Color((h, s4,  l4), '<STR_LIT>', self.__a, self.__wref))<EOL>
Return 4 colors in the same hue with varying saturation/lightness.

        Returns:
          A tuple of 4 grapefruit.Color in the same hue as this one,
          with varying saturation/lightness.

        >>> c = Color.from_hsl(30, 0.5, 0.5)
        >>> ['(%g, %g, %g)' % clr.hsl for clr in c.make_monochrome_scheme()]
        ['(30, 0.2, 0.8)', '(30, 0.5, 0.3)', '(30, 0.2, 0.6)', '(30, 0.5, 0.8)']