code: func Show(w http.ResponseWriter, req *http.Request) {
  	ctxt := fs.NewContext(req)
  	tag := req.URL.Path[len("/qr/show/"):]
  	png := strings.HasSuffix(tag, ".png")
  	if png {
  		tag = tag[:len(tag)-len(".png")]
  	}
  	if !isTagName(tag) {
  		fmt.Fprintf(w, "Sorry, QR code not found\n")
  		return
  	}
  	if req.FormValue("flag") == "1" {
  		flag(w, req, tag, ctxt)
  		return
  	}
  	data, _, err := ctxt.Read("qrsave/" + tag)
  	if err != nil {
  		fmt.Fprintf(w, "Sorry, QR code not found.\n")
  		return
  	}
  
  	var m Image
  	if err := json.Unmarshal(data, &m); err != nil {
  		panic(err)
  	}
  	m.Tag = tag
  
  	switch req.FormValue("size") {
  	case "big":
  		m.Scale *= 2
  	case "small":
  		m.Scale /= 2
  	}
  
  	if png {
  		if err := m.Encode(req); err != nil {
  			panic(err)
  			return
  		}
  		w.Header().Set("Cache-Control", "public, max-age=3600")
  		w.Write(m.Code.PNG())
  		return
  	}
  
  	w.Header().Set("Cache-Control", "public, max-age=300")
  	runTemplate(ctxt, w, "qr/permalink.html", &m)
  }
docs: // Show is the handler for showing a stored QR code.