anchor.diff:  }
   
   sub vcl_error {
  +  # Assume we've hit vcl_error() because the backend is unavailable
  +  # for the first two retries. By restarting, vcl_recv() will try
  +  # serving from stale before failing over to the backups.
  +  if (req.restarts < 3) {
  +    return (restart);
  +  }
  +
     if (obj.status == 801) {
        set obj.status = 301;
        set obj.response = "Moved Permanently";
  
positive.code: backend default {
    .host = "<%= @ipaddress_vmhost -%>";
    .port = "8080";
  }
  
  # Please add the minimal amount of code required to implement/mimic the
  
negative.code:      error 801 "Force SSL";
    }
  
    set req.grace = 24h;
  
    # Note that if (req.restarts == 1), we don't change the backend as
    # we're attempting to serve from stale.
  
    if (req.restarts > 1) {
      # Don't serve from stale for backups
      set req.grace = 0s;
      set req.backend = backup1;
    }
  
    if (req.restarts > 2) {
      set req.backend = backup2;
    }
  
    set req.http.True-Client-IP = req.http.Fastly-Client-IP;
  }
  
  sub vcl_fetch {
    if ((beresp.status >= 500 && beresp.status <= 599) && req.restarts < 3 && (req.request == "GET" || req.request == "HEAD") && !beresp.http.No-Fallback) {
      set beresp.saintmode = 5s;
      return (restart);
    }
  
    if (req.restarts == 0) {
      set beresp.grace = 24h;
    }
  
    if (beresp.http.Cache-Control ~ "private") {
      return (hit_for_pass);
    }
  