def make_composite_overlay(*overlays):
    """Return an overlay, which will composite the supplied overlays in turn.

    :*overlays: The overlay callables to composite.
    :returns: A function which will composite *overlays and return the image.
    """

    def do_overlay(image, transform):
        for o in overlays:
            image = o(image, transform)
        return image

    return do_overlay