code: def url_for(endpoint, **values):
      
      app = current_app
      if app.config.get('TESTING', False) and not app.config.get('FLASKS3_OVERRIDE_TESTING', True):
          return flask_url_for(endpoint, **values)
      if 'FLASKS3_BUCKET_NAME' not in app.config:
          raise ValueError("FLASKS3_BUCKET_NAME not found in app configuration.")
  
      if endpoint == 'static' or endpoint.endswith('.static'):
          scheme = 'https'
          if not app.config.get("FLASKS3_USE_HTTPS", True):
              scheme = 'http'
  
          # allow per url override for scheme
          scheme = values.pop('_scheme', scheme)
  
          bucket_path, values = _get_bucket_name(**values)
  
          urls = app.url_map.bind(bucket_path, url_scheme=scheme)
          built = urls.build(endpoint, values=values, force_external=True)
          return built
      return flask_url_for(endpoint, **values)
docs: Generates a URL to the given endpoint.
  
      If the endpoint is for a static resource then an Amazon S3 URL is
      generated, otherwise the call is passed on to `flask.url_for`.
  
      Because this function is set as a jinja environment variable when
      `FlaskS3.init_app` is invoked, this function replaces
      `flask.url_for` in templates automatically. It is unlikely that this
      function will need to be directly called from within your
      application code, unless you need to refer to static assets outside
      of your templates.