218 lines
1.5 MiB
Go
218 lines
1.5 MiB
Go
|
// Code generated by vfsgen; DO NOT EDIT.
|
|||
|
|
|||
|
// +build !dev
|
|||
|
|
|||
|
package data
|
|||
|
|
|||
|
import (
|
|||
|
"bytes"
|
|||
|
"compress/gzip"
|
|||
|
"fmt"
|
|||
|
"io"
|
|||
|
"io/ioutil"
|
|||
|
"net/http"
|
|||
|
"os"
|
|||
|
pathpkg "path"
|
|||
|
"time"
|
|||
|
)
|
|||
|
|
|||
|
// Assets statically implements the virtual filesystem provided to vfsgen.
|
|||
|
var Assets = func() http.FileSystem {
|
|||
|
fs := vfsgen۰FS{
|
|||
|
"/": &vfsgen۰DirInfo{
|
|||
|
name: "/",
|
|||
|
modTime: time.Date(2019, 10, 28, 11, 39, 23, 462814346, time.UTC),
|
|||
|
},
|
|||
|
"/favicon.ico": &vfsgen۰CompressedFileInfo{
|
|||
|
name: "favicon.ico",
|
|||
|
modTime: time.Date(2019, 10, 28, 11, 39, 23, 463720494, time.UTC),
|
|||
|
uncompressedSize: 4286,
|
|||
|
|
|||
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xdc\x96\x4d\x4c\x2b\x55\x14\xc7\x4f\x25\x04\x0d\x29\x90\x18\x5d\xe8\x82\x2e\x59\xe9\x42\xa7\xa5\x68\x6d\x4f\x62\x62\x4b\xc1\xa0\x92\x90\x10\xe9\xb4\xa8\x28\xa4\x1a\x21\x01\x3f\x22\x69\xf5\x22\x4b\x13\x31\x71\x81\xac\x0c\x21\x2e\x8c\x06\xa3\xf1\xc2\x0a\x59\x34\x92\xb0\x62\xc9\x06\x58\xc8\x8a\x45\x13\x48\x6c\x48\xd3\xfb\x72\xa6\xa7\xef\x4d\x67\xee\xf0\xf5\xda\xbe\xe4\xdd\xe4\x1f\x6e\xcf\x3d\xe7\xfc\xee\x39\xf7\x32\x33\x00\x3e\xf0\x41\x20\x40\x7f\x03\xf0\x4b\x0f\xc0\xb3\x00\xd0\x07\x00\x01\x00\x88\x41\xd5\x6e\x8d\x1e\x78\x6c\x86\x90\x58\xa7\x47\xc4\x7e\x89\xd5\xd2\x3d\x30\xaf\x53\x48\xdc\x64\x75\xb6\x8a\x6f\xab\x7d\x5c\x48\xfc\x9f\x35\xde\xaa\x1e\x30\xe7\x39\x21\x71\x4f\x48\x54\xac\x3d\xb6\xb5\x82\x4d\xfa\x52\x48\xac\xd8\xf8\x15\xb6\x35\xad\x07\x36\xf6\x0b\x42\xe2\x91\x8d\x5d\xd3\x11\xaf\x35\x65\x0f\x9c\xb7\x5d\x48\x5c\xd5\xb0\x6b\x5a\x65\x9f\x66\xb0\x49\x71\x21\xb1\x78\x05\xbf\xc8\x3e\x0d\xed\x01\xe7\xeb\x11\x12\xe5\x15\xec\x9a\x24\xfb\x36\x92\x4d\x9a\x12\x12\x2f\x6f\xc0\xbf\x64\xdf\x86\xf4\x80\xf3\x04\x84\xc4\x03\x17\x6b\x8b\xe5\xde\xc3\x01\xc7\x34\x82\xed\x13\x12\x97\x75\xec\xaf\xd6\xa3\x96\x3c\xf6\xb0\xcc\xb1\x0f\xc3\x26\x85\x84\xc4\x53\x67\xfe\x6f\xfe\x44\x35\x93\x0d\x5b\xa2\xb9\x86\x7f\xca\xb1\x77\x3a\x07\x8e\x7b\x4a\x48\xdc\xd0\xd5\xfe\xd9\x0f\x11\x65\x0e\x19\x96\x68\xee\xd1\x83\x0d\xce\x71\xd7\xda\xdf\x16\x12\x2f\x9c\xec\xfc\x6f\x31\x35\x95\xe9\x57\xa9\xb8\x61\x89\xe6\x64\xd3\xec\xe1\x82\x73\xdc\xaa\x07\xec\xff\x8c\x90\xb8\xab\xab\x7d\xee\xdb\x57\x55\x2a\x61\xd4\x89\x6c\x1e\x3d\xd8\xe5\x5c\xb7\xad\x7d\x56\x48\x2c\x3b\xd9\x8b\x1b\x51\xf5\xde\x58\xa8\x5a\x7b\x8d\x1f\x37\x2c\x1b\xad\x69\xf6\x50\xe6\x5c\x37\xea\x01\xfb\xf5\x09\x89\x87\xae\x5a\xfe\x46\xf5\xf1\xc2\x40\x3d\xdb\xb6\x07\x5a\x23\x1f\x4d\x0f\x0e\x39\xe7\x4d\xd8\x6d\x42\xe2\x8a\xae\xef\x5f\xfc\xf4\x9a\x4a\x8f\x04\x3d\xf9\xb4\x46\x3e\x1e\xe7\xb0\xc2\xb9\xaf\xeb\x7b\x4c\x48\x3c\x73\xc6\x7f\xfd\x47\x4c\x4d\x4f\x87\xd5\xc4\x1b\x1a\x36\x8b\xd6\xc8\x87\x7c\x35\xfc\x33\xce\xad\x3d\x07\xb6\xfb\xf9\x7b\xca\x55\xfb\xfc\x77\x11\x65\x26\xbd\xd9\x35\x91\x0f\xf9\x7a\xf4\x60\x93\x19\x5e\xb5\x4f\x08\x89\x25\x27\x3b\xf7\x6b\x4c\x7d\x30\x11\x72\xf7\x7d\xd0\xf8\xcf\x92\xe3\x1c\xc8\x97\x62\x34\x7b\x28\x31\xa3\xae\x07\xfc\xfb\x79\x21\x71\x5f\xf7\x4e\xf9\x34\xf7\x8a\xae\xd6\xb2\x39\x64\x7c\x42\xa2\xb9\x73\x9d\x62\x3c\xde\x4f\xfb\xcc\x72\xd6\xbe\xe8\xf8\xa6\xaa\x3e\xe3\x7f\x8e\xaa\xc9\x51\xf7\x9d\x33\x07\x8d\x7f\x32\x23\xc1\xa7\x49\x34\x77\xf6\x80\x62\x28\x56\xd3\x83\x0a\xb3\xec\xec\x17\x85\xc4\x13\xd7\x33\xfe\x2f\x54\xd9\xd9\xb0\xee\xbe\x9f\x9b\x43\xc6\x48\x2a\x6e\x00\xc9\x9a\x27\x8c\x73\xe7\x1e\x28\x96\x72\x68\x7a\x70\xc2\x4c\x62\x77\x08\x89\x6b\x4e\x9f\xa5\x6d\x54\x9f\xff\x18\x51\xe9\x37\x83\xba\x3b\xb6\x3e\x39\x1a\x7a\x32\xf3\x56\x10\x48\x34\x27\x9b\xd3\x8f\x62\x29\x07\xe5\xd2\xec\x61\x8d\xd9\x63\xae\x6f\x2a\x7a\xc6\xff\x1e\x53\x1f\xbe\xdf\xaf\xbd\x73\xe9\xe1\xa0\x61\x26\x0d\x98\x99\x0a\x5b\xa2\x39\xd9\x74\x77\x91\x72\x50\x2e\xcd\x39\x14\x99\x4d\xdf\x8c\xff\x0a\x89\x85\x9a\x96\xb6\xb1\xb0\xf0\x7d\xa4\x60\x26\x8d\x42\x2a\x51\xa7\x3d\x33\x69\xcc\x7f\x94\x09\x3f\x31\xf9\x4e\xe8\xfe\xfd\xa5\x39\xd9\x68\x8d\x7c\xec\x31\x94\x83\x72\x51\x4e\x3b\x83\x99\xc4\xee\xe2\xff\xc9\x07\xda\x42\x7f\x76\x6e\xc0\xff\xee\xeb\x2f\xfb\x53\x09\xa3\x4e\xe9\xe1\x60\x3b\x9d\xb9\x73\x90\xcd\x5a\x73\xf8\x53\x8e\xec\x5c\xd8\xca\xe9\xe2\x48\xec\xba\xf6\x85\xd0\xe4\xa1\x6a\xa3\x92\x53\xaa\x1c\xad\xaa\xd4\x5b\x55\xb1\x5b\xa9\xe3\x8e\xaa\x76\xda\xaa\xca\xfb\x94\xa2\x30\x00\x55\x01\xc8\x91\xca\x00\x51\x52\x09\xa0\xb7\x08\xd0\x4d\x3a\x06\xe8\x20\xed\x00\xb4\x91\xf2\xbe\xbc\x0f\x7c\x79\xfe\xb5\x63\xad\x12\xf6\x5e\x00\x00\x00\xff\xff\xab\x24\x10\x73\xbe\x10\x00\x00"),
|
|||
|
},
|
|||
|
"/index.html": &vfsgen۰CompressedFileInfo{
|
|||
|
name: "index.html",
|
|||
|
modTime: time.Date(2019, 10, 28, 11, 55, 26, 243193774, time.UTC),
|
|||
|
uncompressedSize: 770,
|
|||
|
|
|||
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x52\xc1\x8e\xd3\x30\x10\xbd\xf7\x2b\x66\x7d\xd9\x0b\xae\xe1\xc6\xc1\x8e\x84\x96\x95\x80\x0b\x2b\x01\x02\x8e\x13\x7b\xda\x4c\xeb\xda\xc6\x9e\xa4\xf4\xef\x51\x9b\x54\xea\x22\x21\xf6\x94\x3c\xbd\x79\xcf\x6f\x9e\x6d\xef\xde\x7f\x7e\xf8\xfa\xf3\xe9\x11\x06\x39\xc4\x6e\x65\xcf\x1f\x88\x98\xb6\x4e\x51\x52\xdd\x0a\xc0\x0e\x84\xe1\xfc\x03\x60\x0f\x24\x08\x7e\xc0\xda\x48\x9c\x1a\x65\xa3\xdf\xaa\x5b\x6a\x10\x29\x9a\x7e\x8d\x3c\x39\xf5\x43\x7f\x7b\xa7\x1f\xf2\xa1\xa0\x70\x1f\x49\x81\xcf\x49\x28\x89\x53\x1f\x1f\x1d\x85\x2d\x3d\x53\x26\x3c\x90\x53\x13\xd3\xb1\xe4\x2a\x37\xc3\x47\x0e\x32\xb8\x40\x13\x7b\xd2\x17\xf0\x8a\x13\x0b\x63\xd4\xcd\x63\x24\xf7\x66\xfd\xfa\xea\x14\x39\xed\xa1\x52\x74\x8a\x7d\x4e\x0a\x86\x4a\x1b\xa7\xcc\x06\xa7\x33\x5e\xb3\xcf\xd7\x49\x61\x89\xd4\x7d\xc0\x52\x4e\xd6\xcc\x60\x75\x35\x58\x54\xbb\x66\xb0\x94\xf5\xae\xa9\xd9\xb2\x54\x8a\x19\x83\x02\x6c\x4e\x35\x5f\xb9\x88\xea\xfe\x56\xf8\x61\x4c\x7b\x3d\x51\x0a\xb9\xb6\xff\x69\xcd\xb5\x59\xdb\xe7\x70\x5a\x92\xa5\x3c\xf3\x33\x04\xb0\x4d\x6a\x4e\xdb\xee\x3b\xdd\x57\x82\x96\x6b\x3d\x41\x3f\x0a\x6c\xea\xa5\xa1\x00\x21\x53\x4b\xf7\x02\xc7\x5c\xf7\x50\x6a\x2e\x54\xe3\x09\x8e\x2c\x43\x1e\x05\x3e\xe1\x84\x5f\x2e\x86\x40\x09\xfb\x48\x61\x0d\x4f\x91\xb0\xd1\x82\x81\x05\x24\x5f\xfa\xe6\x34\xd2\xda\x9a\xe5\xc0\x39\x8e\x79\x9e\xc7\x06\x9e\x80\x83\x53\x58\xca\x79\x83\xc0\xd3\x42\xdc\x69\x0d\xfd\xc8\x51\x60\xc3\x91\x1a\x1c\x39\x46\xe8\x09\x70\x94\x0c\x9c\x76\xe4\x85\x02\x68\x7d\xd9\x77\xb6\x04\x39\x15\x72\x4a\xe8\xb7\x98\x1d\x4e\xb8\x14\x03\xad\xfa\x7f\xb4\xd9\x59\xb3\xa4\x79\xa9\xc5\x72\x85\x37\x42\x33\x97\x6d\xcd\xfc\xe2\xff\x04\x00\x00\xff\xff\x1f\xde\x2f\x39\x02\x03\x00\x00"),
|
|||
|
},
|
|||
|
"/js": &vfsgen۰DirInfo{
|
|||
|
name: "js",
|
|||
|
modTime: time.Date(2019, 10, 28, 11, 39, 23, 474474380, time.UTC),
|
|||
|
},
|
|||
|
"/js/app.js": &vfsgen۰CompressedFileInfo{
|
|||
|
name: "app.js",
|
|||
|
modTime: time.Date(2019, 10, 28, 11, 55, 26, 244832918, time.UTC),
|
|||
|
uncompressedSize: 101488,
|
|||
|
|
|||
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\xef\x76\xdb\x36\xb2\xff\xdc\x3e\x05\xa2\xb6\x11\x95\x4a\x94\xad\xa4\x49\x2a\xaf\x36\x27\x6d\xb2\x67\xbb\xdb\x34\x3d\x4d\x7b\xff\x1c\xd3\x87\x07\x22\x21\x09\x36\x45\x70\x09\xc8\x8e\xd6\xd5\x33\xdc\x8f\xf7\xfd\xee\x93\xdc\x03\x10\xa0\xf8\x5f\xa4\x44\xd9\xb2\x45\xee\xe9\xc6\x22\x81\xc1\x60\x30\x98\xf9\x0d\x30\x04\xfb\xcf\xc4\xd5\x07\xda\x64\xe1\x5a\x0c\x13\x57\x9b\x13\x7b\xe1\x20\xda\x01\xb7\xa0\xdf\x07\x37\x68\xec\x41\xeb\xea\x07\x42\x18\x65\x3e\xf4\xbe\x0c\x6b\x7c\xd1\xef\x03\xec\x52\x06\x1d\x07\x40\xf0\x8f\x4f\x1f\x7f\xf9\x15\x58\xd0\x71\xc6\xd0\xba\x02\x13\xe2\x03\x6b\xb6\x70\xaf\x80\x43\xa0\x8d\xdd\x69\xa4\x9e\x6a\x49\xd1\xfe\x07\x25\xae\xf7\xa3\xac\xa9\xd9\x90\xc1\x0e\xb8\x8d\x94\xff\xe2\x1a\x4a\x62\x3f\xd9\x14\x8c\x00\x2f\x71\x7e\x72\x71\x96\x2c\x32\x27\x3e\xfa\x10\x30\xaf\x4a\x9d\xa6\x4b\xa1\xcf\xc8\x5a\xb0\x64\xc1\x41\xa4\x60\xb4\x46\xbf\x0f\xa0\x6d\x83\x56\x84\x76\x0b\x30\x02\xd8\x0c\x01\x29\x28\x40\xc6\x97\xc8\x62\xdd\x44\x35\x36\x43\x2e\x98\x38\x70\x0a\xb8\x80\x5a\x8a\xff\x16\x80\x54\xc8\x04\xd9\x00\xba\x36\x98\x60\x1f\x85\x62\x4b\xf7\x88\xb7\xf0\x93\xdd\x55\xdd\xef\x02\x0c\x46\xe0\xa4\x0b\x7c\x44\x89\x73\x2d\xf8\x3f\x8f\xf7\x71\x42\x7c\xed\x0c\x83\xbf\x84\x12\xd3\x1d\xe4\x4e\xd9\xec\x0c\xe0\x6f\xbf\x4d\x08\xf6\x0b\x59\x06\x8c\xc2\xd2\xe7\x38\x4e\xee\x0b\x3c\xd1\x3e\x8a\x0e\xea\x9e\x4f\x18\x61\x4b\x0f\xe9\x33\x48\x3f\xde\xb8\xbf\xfa\xc4\x43\x3e\x5b\xea\x9c\x7d\x4d\xaa\x02\xb2\x7f\xe4\x94\x68\xc8\x72\x07\x3c\x7d\x0a\x12\x0f\xcf\xe5\xb3\x8b\x24\x3f\x5f\xa8\x7e\xe9\xde\x82\xce\x92\x34\xc3\x6a\xe7\x27\x17\x9d\x38\x97\xab\x38\xcf\x39\xf5\xb8\xec\x62\xf5\x56\x49\xc9\x29\x89\x03\xec\x46\xf5\x29\xc9\x67\x59\xa1\x44\x48\x74\xc3\xd1\xec\xa4\x7a\x2d\x35\xe9\x5c\x95\xe0\x8c\x46\xaa\xae\xef\x17\x74\x3a\xf6\x03\x4f\x34\x0f\xfa\xc8\x65\x62\x6e\xfd\x4d\x4e\xb8\x0e\xc8\xb8\x19\x4c\xb8\x6c\xed\xbf\x99\x61\x07\x69\xe1\x98\x04\x8a\x94\xe4\x3e\x7c\x4c\x67\x78\xc2\xb4\x8e\xd6\xc9\x11\x71\xc6\xbc\x42\x2e\xf3\x97\xe1\x44\x9a\xf8\x64\xae\xe6\x46\x60\x3c\x18\x01\x36\x9a\x20\xdf\x47\x36\x70\x30\x65\x51\x12\xea\x81\x14\x92\xd0\x18\x1d\x7a\x9e\xb3\xd4\x12\x8f\xba\xc9\x49\xff\xe7\x9f\xe0\xfc\x22\xa7\xcf\xfd\x3e\xf0\x17\xee\xba\x59\xc5\xdc\x0d\x9f\xcf\x7c\x2a\x0b\xce\x28\xf0\x11\xb4\x97\xd1\x8a\x3e\x62\x0b\xdf\x05\xd6\x0c\x59\x57\xef\xe2\x0c\xc4\x45\xb2\x3a\xcb\x32\x86\xd9\xf5\xd2\x86\xd0\x47\x74\xe1\xb0\xd4\x94\xe7\x8f\x84\x6d\x38\x03\x7c\xf2\x27\x85\x53\x60\x03\x78\xcd\x78\x71\x6e\x14\xe3\xf5\x53\x56\x81\x57\x9a\x2c\x9c\x09\xe6\xb3\x0c\x8c\x00\xf3\x17\x28\x5e\x42\x31\x75\x09\x46\xe0\xf4\x0c\x5c\xa6\x98\x0a\x79\xba\x4c\xf3\x24\x99\xf2\x84\x69\x8a\x57\x3b\xbf\x4c\xb0\xc2\x95\x3d\x39\xe1\x45\xd5\x0b\xf0\x64\x34\x02\x27\x9d\x18\xa3\x13\xe8\x50\x54\x68\x3b\x26\x5a\x58\x3e\xc5\x56\x52\xac\xd4\x73\xb0\x85\x34\xdc\xeb\x75\xc1\x69\xc2\x24\x7d\x11\x8c\x14\x18\x01\xd3\x94\x9e\xce\xf4\xd1\xbf\x16\xd8\x47\xa6\xa9\x65\xdc\xd3\x69\xba\xb3\xc5\x86\x2e\x7b\x6e\x49\x45\x4c\x2b\x4a\x66\xf1\x7e\x1f\xfc\x1e\x3a\x33\x60\x41\x6b\x86\x22\x4f\x85\x5a\x29\xe1\xae\x7d\xe6\xed\x2a\x73\xf2\xf4\xfb\xd2\x19\xf2\x89\x4b\x19\xf1\x51\xd4\xd5\x49\x24\x20\x27\x50\xbc\xda\xc2\xb5\xd1\x04\xbb\x28\x74\x45\xc0\x25\x4c\x56\xee\x02\x77\xe1\x38\xe1\x03\xcf\x47\xc1\xfd\xbe\xe7\xa3\x09\x62\xd6\x0c\xd9\x71\x62\xbf\xfa\x64\x8e\x29\x0a\x6b\xc8\x86\xbb\xe0\x24\x76\x2b\x56\x2d\xd6\xd1\x40\x8b\x78\x3f\xa3\x72\x6d\x41\xcf\x6b\x0d\xc1\x49\xf6\x54\x4e\xd0\x4a\x68\x4a\xc2\x4f\xa7\xe5\x2f\xb5\x00\x28\x7b\x90\x65\x22\xb2\xf4\x28\x74\x2a\x11\x5e\x13\xe6\xec\x47\x6e\x59\x00\x9e\xa8\x31\xc6\x94\x7b\xb7\xe4\x48\xc7\xa6\x51\xca\xf1\xa4\x8d\xbe\xd0\xb1\xfc\x0a\x3a\xfa\xec\x11\x9f\xd1\x7c\x77\xcb\x39\xf3\x11\x64\x08\x40\xe0\xa2\x1b\xc5\x9d\xc6\x55\xc5\x5b\x30\x80\x19\xc0\xae\x84\x5a\x82\xd9\x4e\x36\x3c\x02\xa3\x02\x36\x92\x63\xf8\x05\x1e\xae\x51\x55\xec\x81\x33\x0c\x6c\x43\xfc\xae\xec\xc5\x10\xdc\xc6\x27\x5e\xae\xef\x78\x1f\x78\x9a\x08\x40\xcc\x1a\xd2\xb4\xc7\x57\x78\x41\x58\x46\xd9\xaa\x82\x0c\xea\xdf\xf5\xfd\x0c\x4d\xc8\x77\x67\x7f\xe3\x20\x34\xc2\x4f\x08\x40\xd3\x0c\xe9\x4e\xca\x96\x27\x88\xfd\x16\x0c\x3c\x27\x27\xb9\x01\
|
|||
|
},
|
|||
|
"/js/chunk-vendors.js": &vfsgen۰CompressedFileInfo{
|
|||
|
name: "chunk-vendors.js",
|
|||
|
modTime: time.Date(2019, 10, 28, 11, 39, 23, 475307309, time.UTC),
|
|||
|
uncompressedSize: 2172333,
|
|||
|
|
|||
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xbd\xfb\x77\x1b\xb7\xb1\x38\xfe\x7b\xff\x0a\x58\xed\xc7\x4b\x3a\x7c\xd8\x6e\xda\xdb\x4b\x55\xf1\x95\x6d\xb9\x51\xeb\xd7\xb1\xe4\xa4\xdf\x43\xea\xca\x20\x17\x24\x11\x2d\x17\xbc\xbb\xa0\x68\x25\xd6\xff\xfe\x3d\x18\xbc\xb1\x4b\x72\xf9\xb2\x1d\x57\xed\x39\xb1\x88\x05\x06\x83\x01\x30\x18\xcc\x0b\xb5\x39\x4d\x63\x36\xef\x1e\xcc\x49\x7f\x8a\x07\x57\xff\xcc\x59\x3a\x3d\xb8\x40\x47\x68\xc1\x87\x4f\x9f\x50\xf7\xa2\xde\x9a\xce\xf2\x71\xad\xdb\x3d\x18\x8c\x67\xe9\x55\xf3\x9a\xa4\x31\xcb\xf2\x83\x8b\xc6\x6f\x7f\xf8\x43\xfb\xc1\x83\x07\x6d\x74\xd0\x6a\xa7\x2c\x26\x97\x13\x16\xcf\x12\x92\xb7\xf1\x47\xca\xf2\x36\x4d\x63\xf2\xb1\xf5\x4b\x7e\xd0\xf9\x43\xfb\xc1\xbd\x07\x55\xfe\x77\xef\x41\xef\x0f\x08\x89\xba\x68\x29\x48\x24\xea\xfe\x01\xa1\x5e\x25\xa8\x6d\xd1\x3f\x4a\x19\xca\x39\xe6\x74\x80\xc8\xc7\x29\xcb\x78\x8e\x86\x6c\x96\xc6\x08\x3e\x8b\x51\xd4\x86\xb3\x74\xc0\x29\x4b\x6b\xb2\xd3\x86\xae\xd8\x40\x97\x97\x8a\x32\x97\x19\xf9\xbf\x19\xcd\xc8\xe5\x65\x1d\xfd\xf6\x87\x3f\x90\x6b\x9c\xd4\x0e\x64\xf5\x96\x06\x7b\x54\x56\xbd\x26\x50\x68\xb5\x13\xda\x97\x43\x41\x0f\xda\xa8\x57\x4e\x37\x53\xa7\xf5\x4b\xde\x3b\xa8\x1f\xf6\xd2\x5e\xda\x6e\xff\x11\xe5\x6c\x96\x0d\xc8\xfb\x77\x2f\x8f\x14\xf4\x4e\xbb\xdd\x5e\x4a\xa6\x27\x07\xf5\x43\x3d\x47\xb7\xf5\xc6\xf2\xe9\x82\x6e\x63\x3c\xe5\x24\xcb\xdb\x1f\xc7\xd9\x7a\x33\xb7\xc6\x24\x96\x74\xb4\xde\x7c\x7e\x96\xa9\x3d\x98\xe5\x04\xe5\x3c\xa3\x03\x7e\x70\xa8\x26\x5a\xcc\xc4\x35\xce\xd0\x8c\xd3\x64\xf9\x3c\xb7\x5a\x6d\x59\x69\xf9\x34\x43\x1d\x33\xcd\x02\x74\x4e\x38\x4f\xc8\x2a\xd8\x03\x96\x91\xb6\xaa\xba\xbc\x07\xa7\xa6\xd7\x4f\x7f\x46\x93\xf8\xfd\xbb\x97\xab\x7a\x1a\x93\x64\x2a\xe6\xc9\xd4\x5f\xde\x5d\x58\xdd\xeb\x73\x8a\xb3\x9c\xfc\x48\x70\x4c\xb2\x95\xd4\xd3\x80\xbc\x36\xd5\xfa\x76\x9b\x78\xfd\xd3\xfc\xfd\xbb\x97\x67\x78\x42\xde\x64\x74\x44\xd3\xaa\x28\x84\xcd\xaa\x61\x11\xb4\xf2\x10\x19\x64\x04\x73\x72\x92\x65\x2c\x5b\x86\x84\x9a\x67\xb7\x76\x85\xc9\x76\xaa\x3b\x0c\xa4\xc0\xa3\xf4\x8e\x40\x1f\xc7\xd9\xb1\xdc\x8d\xb5\x01\x4b\x87\x74\x54\x47\xbf\xf5\x52\x84\x32\xc2\x67\x59\x8a\x52\x32\x47\x6f\x33\x36\xa1\x39\x31\xbb\x08\xc5\x34\x9f\x62\x3e\x18\xff\x7b\x9c\xbd\x23\xff\x37\x23\x39\xaf\x65\x24\x67\xc9\x35\x69\xa0\x8c\xfc\x42\x06\x5c\x01\x41\x48\x8c\x37\x93\x75\x9e\x63\x8e\xd1\x11\x92\xbd\xb4\x62\xcc\xf1\x61\xa1\x8e\x5d\x1e\xaa\xda\x58\x16\xc0\x20\x44\x5d\x3a\x44\x35\xb9\x6d\x68\xfe\x82\x65\x13\x01\xb4\xe6\x74\x50\x37\x3d\x23\x14\x93\x84\x70\x12\x80\xee\x46\xcf\x58\xca\x49\xca\x9b\xe7\x37\x53\x12\x5d\x1c\xa2\x76\x1b\xbd\x24\x1c\xf1\x31\x41\xfd\x8c\xcd\x73\x02\xdb\x10\x51\x2e\xe1\xdc\xea\xae\x1d\x34\xd1\x11\x10\xe6\xdf\xaf\x5e\xfe\xc8\xf9\x54\xd3\xa0\x6e\xb0\x6c\xb7\xd1\x8f\xe7\xe7\x6f\x51\x1f\xe7\x74\x80\xf0\x8c\x8f\x49\xca\xe9\x00\x0b\xea\xd9\x71\xa8\x21\x8a\xcf\x0e\xd6\xc0\x61\x72\x92\xa5\x78\x42\x2c\x1d\x44\xa5\x96\x29\xfe\xf4\x09\x45\xd1\xa1\xdb\x62\x8a\xf3\x7c\xce\xb2\x38\x68\x61\x8a\xfd\x16\x3e\x49\x5a\xc7\x33\x3e\x66\x19\xfd\x15\xf0\x43\x47\x28\x7a\x0a\x78\x47\xe8\x3b\xd4\xe7\x0c\xd7\x4c\xbf\xdf\xa1\xa8\x23\x4a\x35\xd8\xfa\x61\x40\x23\x05\xb8\xc5\xa6\x24\xd5\xe3\x9b\x10\x3e\x66\x71\x8b\xb3\xf7\xd3\x29\xc9\x9e\xe1\x9c\xd4\xea\x0d\xc3\x81\x74\xad\x59\x96\x34\x34\xea\x53\x9c\xe1\x49\x1e\xfc\x3c\x23\x19\xc5\x09\xfd\x95\x64\xf5\x06\xe2\xd9\x8c\x78\xe4\x3e\x53\x33\xa8\x27\x88\xd3\x09\x61\x33\x8e\x68\x8a\x5e\x9d\xf9\xb8\xe9\x4f\x86\x52\xaa\xc0\x05\xf7\x92\xe6\x9c\xa4\x68\xc8\xc4\x94\xe3\xf8\x06\x0e\x18\x12\x8c\x31\x85\x4f\xf0\x65\x30\xc6\xe9\x88\xb8\xfb\x6a\x8c\xd3\x38\x21\x2f\x19\x8e\x6b\xce\xe4\x8a\x69\xbf\xa7\x71\xfc\xf4\xc9\xc0\x02\x48\x67\x02\x12\xba\x77\x74\x84\xbe\x77\x9a\xe8\xad\x68\x26\xcf\x10\x1b\x30\x3d\x77\x06\x4d\xc4\xae\x27\x31\x12\xa3\xc3\x69\x8c\xe6\x04\xc5\x34\x4e\x23\x8e\x46\x84\x23\x8c\x32\x92\x4f\x59\x9a\x93\x06\xe2\x63\x9a\xa3\x39\x4d\x12\xd4\x27\x0e\x30\x89\x74\x8c\xfa\x37\x88\xa5\x00\x0d\xd1\x34\xe7\x04\xc7\x4e\xa5\x9f\x29\x1f\x8b\xcf\x88\x7c\x1c\x90\xa9\x18\x6c\xc7\x92\x7d\x8c\x39\x9a\xe5\x34\x1d\xa1\x21\x4d\x48\x07\x4d\x33\xc6\xd9\x80\x25\x0d\x34\x61\x39\xd7\x1b\x2c\x77\xc0\x01\x16\x8a\xdb\x08\x5a\xce\x72\x84\x73\
|
|||
|
},
|
|||
|
}
|
|||
|
fs["/"].(*vfsgen۰DirInfo).entries = []os.FileInfo{
|
|||
|
fs["/favicon.ico"].(os.FileInfo),
|
|||
|
fs["/index.html"].(os.FileInfo),
|
|||
|
fs["/js"].(os.FileInfo),
|
|||
|
}
|
|||
|
fs["/js"].(*vfsgen۰DirInfo).entries = []os.FileInfo{
|
|||
|
fs["/js/app.js"].(os.FileInfo),
|
|||
|
fs["/js/chunk-vendors.js"].(os.FileInfo),
|
|||
|
}
|
|||
|
|
|||
|
return fs
|
|||
|
}()
|
|||
|
|
|||
|
type vfsgen۰FS map[string]interface{}
|
|||
|
|
|||
|
func (fs vfsgen۰FS) Open(path string) (http.File, error) {
|
|||
|
path = pathpkg.Clean("/" + path)
|
|||
|
f, ok := fs[path]
|
|||
|
if !ok {
|
|||
|
return nil, &os.PathError{Op: "open", Path: path, Err: os.ErrNotExist}
|
|||
|
}
|
|||
|
|
|||
|
switch f := f.(type) {
|
|||
|
case *vfsgen۰CompressedFileInfo:
|
|||
|
gr, err := gzip.NewReader(bytes.NewReader(f.compressedContent))
|
|||
|
if err != nil {
|
|||
|
// This should never happen because we generate the gzip bytes such that they are always valid.
|
|||
|
panic("unexpected error reading own gzip compressed bytes: " + err.Error())
|
|||
|
}
|
|||
|
return &vfsgen۰CompressedFile{
|
|||
|
vfsgen۰CompressedFileInfo: f,
|
|||
|
gr: gr,
|
|||
|
}, nil
|
|||
|
case *vfsgen۰DirInfo:
|
|||
|
return &vfsgen۰Dir{
|
|||
|
vfsgen۰DirInfo: f,
|
|||
|
}, nil
|
|||
|
default:
|
|||
|
// This should never happen because we generate only the above types.
|
|||
|
panic(fmt.Sprintf("unexpected type %T", f))
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// vfsgen۰CompressedFileInfo is a static definition of a gzip compressed file.
|
|||
|
type vfsgen۰CompressedFileInfo struct {
|
|||
|
name string
|
|||
|
modTime time.Time
|
|||
|
compressedContent []byte
|
|||
|
uncompressedSize int64
|
|||
|
}
|
|||
|
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Readdir(count int) ([]os.FileInfo, error) {
|
|||
|
return nil, fmt.Errorf("cannot Readdir from file %s", f.name)
|
|||
|
}
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Stat() (os.FileInfo, error) { return f, nil }
|
|||
|
|
|||
|
func (f *vfsgen۰CompressedFileInfo) GzipBytes() []byte {
|
|||
|
return f.compressedContent
|
|||
|
}
|
|||
|
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Name() string { return f.name }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Size() int64 { return f.uncompressedSize }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Mode() os.FileMode { return 0444 }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) ModTime() time.Time { return f.modTime }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) IsDir() bool { return false }
|
|||
|
func (f *vfsgen۰CompressedFileInfo) Sys() interface{} { return nil }
|
|||
|
|
|||
|
// vfsgen۰CompressedFile is an opened compressedFile instance.
|
|||
|
type vfsgen۰CompressedFile struct {
|
|||
|
*vfsgen۰CompressedFileInfo
|
|||
|
gr *gzip.Reader
|
|||
|
grPos int64 // Actual gr uncompressed position.
|
|||
|
seekPos int64 // Seek uncompressed position.
|
|||
|
}
|
|||
|
|
|||
|
func (f *vfsgen۰CompressedFile) Read(p []byte) (n int, err error) {
|
|||
|
if f.grPos > f.seekPos {
|
|||
|
// Rewind to beginning.
|
|||
|
err = f.gr.Reset(bytes.NewReader(f.compressedContent))
|
|||
|
if err != nil {
|
|||
|
return 0, err
|
|||
|
}
|
|||
|
f.grPos = 0
|
|||
|
}
|
|||
|
if f.grPos < f.seekPos {
|
|||
|
// Fast-forward.
|
|||
|
_, err = io.CopyN(ioutil.Discard, f.gr, f.seekPos-f.grPos)
|
|||
|
if err != nil {
|
|||
|
return 0, err
|
|||
|
}
|
|||
|
f.grPos = f.seekPos
|
|||
|
}
|
|||
|
n, err = f.gr.Read(p)
|
|||
|
f.grPos += int64(n)
|
|||
|
f.seekPos = f.grPos
|
|||
|
return n, err
|
|||
|
}
|
|||
|
func (f *vfsgen۰CompressedFile) Seek(offset int64, whence int) (int64, error) {
|
|||
|
switch whence {
|
|||
|
case io.SeekStart:
|
|||
|
f.seekPos = 0 + offset
|
|||
|
case io.SeekCurrent:
|
|||
|
f.seekPos += offset
|
|||
|
case io.SeekEnd:
|
|||
|
f.seekPos = f.uncompressedSize + offset
|
|||
|
default:
|
|||
|
panic(fmt.Errorf("invalid whence value: %v", whence))
|
|||
|
}
|
|||
|
return f.seekPos, nil
|
|||
|
}
|
|||
|
func (f *vfsgen۰CompressedFile) Close() error {
|
|||
|
return f.gr.Close()
|
|||
|
}
|
|||
|
|
|||
|
// vfsgen۰DirInfo is a static definition of a directory.
|
|||
|
type vfsgen۰DirInfo struct {
|
|||
|
name string
|
|||
|
modTime time.Time
|
|||
|
entries []os.FileInfo
|
|||
|
}
|
|||
|
|
|||
|
func (d *vfsgen۰DirInfo) Read([]byte) (int, error) {
|
|||
|
return 0, fmt.Errorf("cannot Read from directory %s", d.name)
|
|||
|
}
|
|||
|
func (d *vfsgen۰DirInfo) Close() error { return nil }
|
|||
|
func (d *vfsgen۰DirInfo) Stat() (os.FileInfo, error) { return d, nil }
|
|||
|
|
|||
|
func (d *vfsgen۰DirInfo) Name() string { return d.name }
|
|||
|
func (d *vfsgen۰DirInfo) Size() int64 { return 0 }
|
|||
|
func (d *vfsgen۰DirInfo) Mode() os.FileMode { return 0755 | os.ModeDir }
|
|||
|
func (d *vfsgen۰DirInfo) ModTime() time.Time { return d.modTime }
|
|||
|
func (d *vfsgen۰DirInfo) IsDir() bool { return true }
|
|||
|
func (d *vfsgen۰DirInfo) Sys() interface{} { return nil }
|
|||
|
|
|||
|
// vfsgen۰Dir is an opened dir instance.
|
|||
|
type vfsgen۰Dir struct {
|
|||
|
*vfsgen۰DirInfo
|
|||
|
pos int // Position within entries for Seek and Readdir.
|
|||
|
}
|
|||
|
|
|||
|
func (d *vfsgen۰Dir) Seek(offset int64, whence int) (int64, error) {
|
|||
|
if offset == 0 && whence == io.SeekStart {
|
|||
|
d.pos = 0
|
|||
|
return 0, nil
|
|||
|
}
|
|||
|
return 0, fmt.Errorf("unsupported Seek in directory %s", d.name)
|
|||
|
}
|
|||
|
|
|||
|
func (d *vfsgen۰Dir) Readdir(count int) ([]os.FileInfo, error) {
|
|||
|
if d.pos >= len(d.entries) && count > 0 {
|
|||
|
return nil, io.EOF
|
|||
|
}
|
|||
|
if count <= 0 || count > len(d.entries)-d.pos {
|
|||
|
count = len(d.entries) - d.pos
|
|||
|
}
|
|||
|
e := d.entries[d.pos : d.pos+count]
|
|||
|
d.pos += count
|
|||
|
return e, nil
|
|||
|
}
|