@classmethod
def make_static_url(cls, settings, path, include_version=True):
    """Constructs a versioned url for the given path.

        This method may be overridden in subclasses (but note that it
        is a class method rather than an instance method).  Subclasses
        are only required to implement the signature
        ``make_static_url(cls, settings, path)``; other keyword
        arguments may be passed through `~RequestHandler.static_url`
        but are not standard.

        ``settings`` is the `Application.settings` dictionary.  ``path``
        is the static path being requested.  The url returned should be
        relative to the current host.

        ``include_version`` determines whether the generated URL should
        include the query string containing the version hash of the
        file corresponding to the given ``path``.

        """
    url = settings.get('static_url_prefix', '/static/') + path
    if not include_version:
        return url
    version_hash = cls.get_version(settings, path)
    if not version_hash:
        return url
    return '%s?v=%s' % (url, version_hash)
