2021-01-08 22:22:43 +03:00
|
|
|
|
// Code generated by vfsgen; DO NOT EDIT.
|
|
|
|
|
|
|
|
|
|
// +build !dev
|
|
|
|
|
|
|
|
|
|
package assets
|
|
|
|
|
|
|
|
|
|
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(2021, 1, 8, 19, 16, 4, 19648059, time.UTC),
|
|
|
|
|
},
|
|
|
|
|
"/{{.File.Package}}_micro.pb.go.tmpl": &vfsgen۰CompressedFileInfo{
|
|
|
|
|
name: "{{.File.Package}}_micro.pb.go.tmpl",
|
2021-01-12 13:39:43 +03:00
|
|
|
|
modTime: time.Date(2021, 1, 12, 10, 38, 54, 81299017, time.UTC),
|
|
|
|
|
uncompressedSize: 4844,
|
2021-01-08 22:22:43 +03:00
|
|
|
|
|
2021-01-12 13:39:43 +03:00
|
|
|
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff\xd4\x57\x4b\x6f\xdc\x36\x10\x3e\x47\xbf\x62\x20\x14\x81\x14\xac\xa5\x43\x6f\x5b\xe4\x90\x18\x09\x5a\xa0\x71\x82\xb8\x68\x0f\x41\x60\xd0\xd2\xac\x96\xb5\x96\x54\x49\x6a\x1d\x43\xd6\x7f\x2f\xf8\xd0\x8b\xab\xd5\x7a\x0d\xa3\x40\x7d\xb1\x48\xce\x37\x9c\xc7\x37\xb3\xc3\x34\x85\x4b\x9e\x23\x14\xc8\x50\x10\x85\x39\xdc\x3e\x40\x25\xb8\xe2\xd9\x45\x81\xec\x62\x47\x33\xc1\x83\x34\x05\xc9\x6b\x91\xe1\x1a\x9a\x26\xf9\x48\x4b\x4c\xae\xc8\x0e\xdb\x36\xa8\x48\x76\x47\x0a\x84\xa6\x29\xf8\x97\xbb\xe2\x77\x22\xd5\x87\x12\x77\xc8\x14\x18\x39\x78\x04\x59\x95\x54\xbd\x13\x82\x3c\x40\xf8\x4b\x08\x8f\x50\x12\xa9\xda\x36\x08\xe8\xae\xe2\x42\x41\x14\xbc\x0a\x33\xce\x14\xfe\x50\x61\x10\xbc\x32\x37\xde\x90\x8a\x42\x58\x50\xb5\xad\x6f\x93\x8c\xef\xd2\x9a\x51\xa9\x48\x76\x77\xc1\x45\x91\x1a\x91\x74\xff\x73\x4a\x2a\x1a\x02\x00\x74\xa8\xac\xa4\xfa\xe6\xd3\x40\x2b\x18\xf6\x40\x89\x62\x8f\xe2\x09\x40\x2b\x18\x06\x71\x10\x34\xcd\x05\xfc\x74\x8d\x62\x4f\x33\xd4\xd1\x80\xf5\x5b\x48\xdc\xda\x84\x07\x1e\x41\x09\xba\xbb\xae\x37\x1b\xfa\x03\x42\x77\x14\x82\xf6\x3d\x4d\xe1\x0a\xef\x9b\x66\xac\xa0\x6d\x3f\xb0\xbc\xe2\x94\x29\xa9\x53\xb0\xa7\x39\x4a\xd0\x81\xc0\x7e\x7b\x87\x2a\x27\x8a\xc0\x86\x0b\xf0\xc1\x20\xed\x2a\xd8\xd4\x2c\x5b\xd4\x1e\xc5\xf0\xed\xfb\x9b\x3e\xd0\x49\x77\x00\x4d\xa0\xa3\xb9\x27\x62\x74\xe5\xac\x64\x60\x04\x75\x04\x04\x61\x05\x0e\x7e\x7f\x42\xb5\xe5\x79\xdb\xf6\xe7\x74\x03\x8c\x2b\x88\x74\x86\x09\x65\x12\xa2\xbf\x25\x67\x10\x6d\x95\xaa\x3e\x57\x8a\x72\x06\x49\x1c\x43\xc8\xea\xb2\x0c\x63\xf0\x90\x68\x05\xff\x44\x71\x0b\x49\x0c\x61\xd8\x09\x74\xf6\xe9\xa0\xbf\x3e\xb4\xcf\x3a\xa2\xff\xb4\xeb\x6b\x08\xfd\x58\x24\x4d\xe3\x28\x1c\xae\x7a\xd9\x2f\x44\x6d\xd7\xf0\xed\xbb\x54\x82\xb2\xa2\x09\x9b\x46\x5f\xae\x77\x21\x69\xdb\xb0\x1d\x24\xad\x9b\x87\xb2\xd6\xd0\xa9\xac\xe7\xcb\x7b\x9e\x3f\x4c\x7d\xd1\x7f\x7a\xd7\x98\x39\x88\x4c\x4c\xd3\x4a\x90\xe5\x23\x84\x53\xcb\x05\x44\xc9\xa5\xa1\xf3\xb5\x12\x48\x76\x94\x15\x31\x44\x26\x21\x28\x86\xad\x11\xd2\x6e\xae\x41\x89\x1a\x97\x6e\xf8\x95\xb0\xbc\x44\xb1\x86\x50\x54\x99\xb3\xa5\xf5\x12\xdf\x05\x48\xbe\xcb\x73\xaa\xb3\x49\xca\xf7\x94\xe5\x94\x15\x12\x12\x3f\x59\x89\x09\xe5\x5b\x20\x55\x85\x2c\x8f\x26\xdb\x2b\xed\xbc\xf6\x39\x0e\x0e\xad\x19\xd8\x78\x00\x96\xab\xfe\x74\x0e\xb9\xb4\x12\xa8\x6a\xc1\x06\xe5\x81\xad\x4b\x9f\x2a\x6e\x01\x94\x29\x14\x1b\x92\x61\xa0\x1e\x2a\x3c\x2d\x66\xaa\x69\xb9\x44\x4c\x0b\x11\xf8\x8f\xdd\x32\x0d\xe4\x37\x56\xd5\xea\x0f\x7d\xc1\xb4\x73\x26\x5d\xe7\x84\x11\x52\x56\x23\xe4\xe7\x5a\x3d\x19\xda\x11\xc7\x67\xc9\x0c\x97\xc6\x18\xc2\xf2\x59\x90\xae\xf0\x79\xa0\x86\xba\x42\x8b\x5c\x93\x4f\x2e\xed\xff\x15\xbc\x69\x9a\xc1\xfb\xb6\x5d\x41\x92\x24\xe3\x46\x9e\x5c\x92\xb2\xb4\x4d\x22\x86\xc8\x0f\xf8\x4d\xaf\xd9\x6d\xaf\x00\x85\xe0\x22\x76\xf6\x62\x29\xf1\xb4\x0d\x2f\x7b\x25\x1b\xf2\xfa\xb4\xeb\xcf\x0b\x81\x91\xee\x92\xae\xa5\x8f\xdf\x6e\xbe\x5b\xfd\x2b\x75\x8c\x7e\xcf\x21\x5f\x0f\x3b\x93\x79\x06\x77\x1e\xe9\x66\x8b\xec\x20\x01\x5e\xb9\x01\xb8\xc8\x46\x31\x78\xb1\x36\xa7\xd7\xc8\xf2\x4f\xb2\x88\x7a\x54\xd3\xc6\x36\x88\xe6\xf8\x2b\x66\xfb\x85\xe3\x49\x15\x1c\xf6\x5c\x53\x05\x47\xfa\xae\xd6\xfc\x8e\xe5\x97\x25\x97\x18\x2d\x66\xd2\xef\x52\x1d\xe4\xc0\x0c\xdf\x02\x27\xaf\x5d\x8c\x3c\x5a\xf9\xe8\x69\x47\xd4\xba\x3c\xb3\x47\x56\x3f\xdd\x5a\xcb\x0d\xfb\x3d\x7c\xa5\x29\x7c\xd2\x84\x06\x37\x63\x49\x55\x6f\x36\xb3\x8d\xd6\xfd\xde\x74\x82\x5b\xbb\x9c\x27\x42\x27\x3b\x4e\xff\xab\xa5\x66\xfb\x9f\xb3\xfd\xfc\x26\x3b\x19\x98\x8e\x64\xf7\x9c\x56\xb2\x50\x3c\x46\xeb\x01\x2b\x9e\xd4\xb1\xce\xd6\x3a\xf0\xe1\x79\x1d\xd1\x23\x5f\xa7\x7f\x8e\x6b\xf6\x07\xfc\x2b\x16\x54\x2a\x14\xc7\x38\x23\xdc\xb9\xf4\x99\x66\x06\xe7\x13\xe8\x48\xc2\xf8\xc9\xe0\x92\xbb\x02\xb9\x3d\xc6\xd1\x15\xf0\x4a\xc9\xa1\xb1\x3b\xa0\x3b\xed\x7a\xbb\x71\xca\xf5\xb0\x19\xc6\x6b\x66\xf1\x7b\x14\x1f\xa9\xd0\xfc\x9a\xf2\xfe\xff\x4f\xfc\x13\x9c\x98\x46\x7c\x42\x33\x8f\x58\x2f\x44\x2e\x1b\x52\x4b\xaa\xf1\xf7\x30\x02\xcf\x76\x25\x90\x4a\xd4\x59\xf7\x8e\xb2\xb6\x2c\x64\x71\xa4\x6e\x6b\x1e\x32\x8b\xd2\x8e\x30\x8d\xdc\x5a\x88\x7e\x03\xde\xac\x26\x2f\x21\xcb\x81\x13\x4f\xbf\xc1\x38\xc3\xcb\x7e\
|
2021-01-08 22:22:43 +03:00
|
|
|
|
},
|
|
|
|
|
"/{{.File.Package}}_micro_grpc.pb.go.tmpl": &vfsgen۰CompressedFileInfo{
|
|
|
|
|
name: "{{.File.Package}}_micro_grpc.pb.go.tmpl",
|
|
|
|
|
modTime: time.Date(2021, 1, 8, 12, 50, 25, 183502330, time.UTC),
|
|
|
|
|
uncompressedSize: 6715,
|
|
|
|
|
|
|
|
|
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff\xcc\x57\x4d\x6f\xa4\x38\x13\x3e\xe3\x5f\x51\x83\x5e\x8d\xe0\x15\xa1\x0f\x7b\xcb\x28\x87\x51\xb4\xa3\x5d\x69\x93\x59\x4d\xf6\x1e\x31\xb4\x9b\xa0\x80\xe9\x18\xd3\xe9\x88\xf0\xdf\x57\x2e\x1b\x30\x6e\xa0\xbb\x43\xb2\xbb\x39\xa4\x85\xed\x72\x7d\x3e\x55\x8f\x57\x2b\xb8\x2e\xd6\x14\x12\xca\x28\x8f\x04\x5d\xc3\xcf\x17\xd8\xf2\x42\x14\xf1\x45\x42\xd9\x45\x9e\xc6\xbc\x20\xab\x15\x94\x45\xc5\x63\x7a\x09\x75\x1d\x7e\x4b\x33\x1a\xde\x46\x39\x6d\x1a\xb2\x8d\xe2\xc7\x28\xa1\x50\xd7\x49\xf1\xe7\x63\xf2\x47\x54\x8a\x5f\x33\x9a\x53\x26\x00\xcf\xc1\x2b\x94\xdb\x2c\x15\x5f\x39\x8f\x5e\xc0\xfd\xe2\xc2\x2b\x64\x51\x29\x9a\x86\x90\x34\xdf\x16\x5c\x80\x47\x1c\x37\x2e\x98\xa0\x7b\xe1\x12\xe2\xa0\xc6\xfb\x38\x4b\xe5\x1d\x6e\x92\x8a\x87\xea\x67\x18\x17\xf9\xaa\x62\x69\x29\xa2\xf8\xf1\xa2\xe0\xc9\x0a\x4f\xad\x76\xbf\xac\xd4\x41\x17\x5a\xc1\x92\xf2\x1d\xe5\x27\x08\xaa\x83\x2e\xf1\x09\xd9\x45\x1c\x3c\x02\x00\x70\x0f\xe6\x2d\xe1\xf7\xad\x48\x0b\x36\xd8\x51\xfa\xda\x1d\x9f\x90\xba\xbe\x80\xff\xa1\xab\x97\x57\xda\xe7\xa6\x51\xab\x77\x94\xef\xd2\x98\xca\x50\xe1\xa6\xfe\xc6\xd8\xc1\x2b\x08\x9e\xe6\x77\xd5\x66\x93\xee\xc1\xd5\x5b\xae\x94\x25\xe2\x65\x2b\x23\x3a\x90\x7f\x85\xac\x78\xa6\xfc\x5b\xca\x65\xf0\xf4\x0e\x94\x82\x57\xb1\x80\x1a\x4d\x8c\x87\x26\x5e\xe3\x0f\xee\x30\x79\x43\x29\x78\xca\x12\xd2\x10\x99\xce\x1b\x79\x12\x74\x94\x4b\x51\x6d\x36\xb8\x7c\x4b\x9f\x87\x7a\x7b\x55\x31\xa7\x91\xa0\xc0\xe8\x33\x94\xed\x92\xd2\xb0\xa9\x58\x3c\x23\xe9\x19\xda\x83\x71\x23\x7d\x98\xd2\xaa\x3c\xe3\x54\x54\x9c\xc1\xe7\x53\x62\x52\xc7\x97\x10\x07\xe8\xf2\x25\xfe\x6f\xa4\xcb\x75\xcd\x23\x96\xd0\x3e\x07\x37\x54\x3c\x14\xeb\x36\x53\x9c\x3e\xa9\x05\xcc\xd3\xef\x6c\x5b\x89\xbf\x64\x12\x86\xd5\x1b\x1a\xd5\xab\xc4\xca\xad\x21\xf6\xbd\x12\xa7\xc9\xa5\x1b\x88\xd8\x1a\x3c\x56\x08\xd0\x11\xb8\x13\x9c\x46\x79\xca\x12\x1f\x3c\xb4\x91\x72\x63\xe9\xa2\x69\x54\x94\xbd\x18\xfe\x7f\x4a\x10\x64\x40\x35\x44\xbd\x58\xec\x41\xe3\x2b\xbc\x56\xbf\x01\x70\xfa\x84\x37\x75\x8e\x37\x4d\x00\xc5\x56\x94\x10\x86\xe1\x30\x43\x51\x96\xa9\x6a\xf7\xc1\xb3\xd3\x74\xdf\xa9\xd1\xcb\x01\x50\xce\x0b\xee\x63\xe2\xa4\xaf\x34\x2b\xa9\x74\xd8\xf6\xf3\x03\x7c\xfa\x30\xf3\xff\x33\xe1\x47\x91\xb6\xe6\xa4\x88\x6d\x2d\x5b\xa3\xb1\xea\x2b\xdd\x40\xc1\xc7\xca\xc9\x3b\x28\x3a\x94\x01\x09\x52\x1a\xe5\x78\xad\xac\xe8\x38\x8c\x43\x75\x46\x7a\x11\xe0\xf7\x2d\x7d\xfe\x41\x9f\x2a\x5a\x0a\x2f\x0e\x25\xbc\x02\x70\xed\xb0\x86\x9d\xf7\x6e\x80\xa0\x35\xdc\xac\x1b\x5f\x79\x1a\x86\xa1\x8f\x4a\xd3\x0d\xea\xfb\x74\x05\x2c\xcd\x34\xe0\x3b\xc8\xb3\x34\x43\x73\x70\xd5\x70\x6c\x0c\x3a\xd0\x34\xf0\xcf\xfe\x99\xf6\x5f\x5e\xe9\xf0\x85\x77\x94\xad\x3d\x4e\x9f\xfc\x2f\xe7\x3a\x46\xd9\x5a\x67\xe2\xac\x8e\xd7\x46\xbb\x56\x06\x34\x81\xbc\xdd\x28\xe0\xf6\xce\x72\x2b\xad\xfc\x3c\x2c\xa2\x5a\x6d\x1a\x29\x97\x25\xb7\x20\xe1\xd2\xf3\x40\x2a\x3b\x29\xcf\xd3\x01\xe9\x76\xf0\x2a\xc3\x23\x0c\x92\xec\xa4\xe7\x15\xf8\xc8\x54\x1d\xe9\x00\x90\x32\x41\xf9\x26\xea\x66\x8f\xc6\xac\xe7\xdb\x28\xc6\x5d\x99\xeb\x9b\x32\xf1\x3a\xa9\xba\xf1\x15\x2a\x71\xfb\x07\x8d\x77\x33\xdb\xe6\x30\x18\x19\x04\x58\xe4\xb6\x73\x3a\x99\xf2\xe6\xaf\x6c\x7d\x9d\x15\x25\xf5\xa6\x5b\x43\xa7\xa6\x2f\xad\x56\xe4\xc0\x0c\xdb\x02\x7d\x1e\xcb\xd9\x6a\x56\xb6\x74\x7f\x7b\x7b\x97\x65\xb6\x61\xf5\xe9\xd6\x9e\x43\x85\xba\x3c\x0e\x39\x91\x42\xc4\x90\x73\x28\xa3\xda\x0a\x3a\x37\xf8\x6a\x10\xec\x4f\x1b\x04\x9d\x55\xfe\xa9\x09\x83\x9a\x38\xf9\x38\x4c\x1d\x8d\xd1\x7d\xd8\x96\x55\xee\x13\x47\xc3\xea\xaa\x85\x95\x83\xc7\xe4\x29\xad\x8a\x38\x0d\xe9\x8e\x7d\xea\x8f\xd9\xb8\x73\x1a\xe2\x90\x76\x35\x57\x88\x53\x7c\x45\x65\xe3\xcd\x9e\x0f\x0a\x6e\xc8\xe8\xf6\xa1\xee\x99\xad\xad\x4b\xd4\x4c\x01\x75\x4a\x65\x7b\x7e\x89\xd2\x16\xff\x39\x1c\x42\x7c\x42\x2f\xe2\x29\x5f\xa4\xb5\xcb\xff\xe9\x5a\x11\x79\x4a\x6b\x5d\x1f\x21\x64\x6f\x0b\x83\x97\xc3\x78\x97\x38\x1a\x07\xa3\xc6\xb4\x6d\x16\xee\x16\xd9\x76\xa4\xe7\xa0\x75\xf9\xd4\x60\xec\x87\xbb\x1d\xc9\x91\xe1\x7e\x38\xc9\xe4\x15\x13\x88\x02\xe5\x6e\xeb\xb9\x49\xdf\xfa\x07\x9a\x7e\xcd\xea\x07\xda\xf1\x66\xf8\x5b\xc4\xd6\x19\x0a\x74\x3d\xd0\x9e\x78\xfa\x08\x1a\x32\xfa\x26\x82\x7f\xed\x51\x74\xc6\x30\
|
|
|
|
|
},
|
|
|
|
|
"/{{.File.Package}}_micro_http.pb.go.tmpl": &vfsgen۰CompressedFileInfo{
|
|
|
|
|
name: "{{.File.Package}}_micro_http.pb.go.tmpl",
|
2021-01-10 03:33:10 +03:00
|
|
|
|
modTime: time.Date(2021, 1, 10, 0, 29, 55, 92183584, time.UTC),
|
|
|
|
|
uncompressedSize: 7027,
|
2021-01-08 22:22:43 +03:00
|
|
|
|
|
2021-01-10 03:33:10 +03:00
|
|
|
|
compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x02\xff\xcc\x58\x5b\x6f\x9b\xc8\x17\x7f\x66\x3e\xc5\x29\x8a\x2a\xf8\x0b\xe3\x87\xff\x5b\x2a\x3f\x54\x51\xab\xdd\xd5\xa6\xad\x92\xd5\xbe\x54\x55\x34\xc5\xc7\x36\x1b\x18\xc8\xcc\xd8\x49\x45\xe6\xbb\xaf\xe6\x02\x06\x8c\x6f\x25\xd9\xdd\x3e\x34\x66\xe6\xdc\xaf\x3f\x98\x4e\xe1\xaa\x98\x23\x2c\x91\x21\xa7\x12\xe7\xf0\xfd\x07\x94\xbc\x90\x45\x32\x59\x22\x9b\xe4\x69\xc2\x0b\x32\x9d\x82\x28\xd6\x3c\xc1\x4b\xa8\xaa\xf8\x63\x9a\x61\xfc\x89\xe6\xa8\x14\x29\x69\x72\x4f\x97\x08\x55\xb5\x2c\xbe\xdc\x2f\x7f\xa7\x42\x7e\xc8\x30\x47\x26\xc1\xd0\xc1\x33\x88\x32\x4b\xe5\x7b\xce\xe9\x0f\xf0\xdf\xf9\xf0\x0c\x19\x15\x52\x29\x42\xd2\xbc\x2c\xb8\x84\x80\x78\x7e\x52\x30\x89\x4f\xd2\x27\xc4\x33\x1a\xef\x92\x2c\xd5\x32\xfc\x65\x2a\x57\xeb\xef\x71\x52\xe4\xd3\x35\x4b\x85\xa4\xc9\xfd\xa4\xe0\xcb\xa9\xa1\x9a\x6e\xfe\x3f\xb5\x84\x3e\xd4\x8c\x02\xf9\x06\xf9\x09\x8c\x96\xd0\xef\x2a\xbc\x5b\x49\x59\x1e\x61\x9e\x58\xd2\x89\x26\xf5\x49\x48\xc8\x86\x72\x08\x08\x00\xc0\x1d\xb4\x8d\x88\x3f\x97\x32\x2d\x58\xe7\xc6\xf2\xd6\x37\x21\x21\x55\x35\x81\x0b\x13\xa9\xcb\x99\x0b\x99\x52\xf6\xf4\x16\xf9\x26\x4d\x50\x47\xda\x5c\xba\x67\x13\x7a\x78\x06\xc9\xd3\xfc\x76\xbd\x58\xa4\x4f\xe0\xbb\x2b\x5f\xf3\x12\xf9\xa3\xd4\x09\xe9\xf0\x3f\x43\x56\x3c\x22\xff\x98\x72\x1d\x7b\x77\x03\x42\xf2\x75\x22\xa1\x32\x26\x26\x5d\x13\xaf\xcc\x1f\x73\xc3\xb4\x04\x21\x79\xca\x96\x44\x11\x5d\x0d\xd7\x9a\x12\x5c\x92\x84\x5c\x2f\x16\xe6\xf8\x13\x3e\x76\xf5\x6e\x55\x25\x1c\xa9\x44\x60\xf8\x08\xa2\x3e\xb2\x1a\x16\x6b\x96\x1c\xe0\x0c\x5a\xda\xa3\x61\x23\x43\xd8\xa7\xd5\x7a\xc6\x51\xae\x39\x83\xb7\xa7\xc4\xa4\x4a\x2e\x21\x89\x8c\xcb\x97\xe6\x7f\xa5\x5d\xae\x2a\x4e\xd9\x12\xb7\x39\xb8\x46\xb9\x2a\xe6\x75\xa6\x38\x3e\xd8\x03\x93\xa7\x5f\x59\xb9\x96\x7f\xe8\x24\x74\x8b\x3f\x6e\x15\xbf\x65\x13\x65\x8b\xed\xf3\x5a\x9e\xc6\x97\x2e\x80\xb2\x39\x04\xac\x90\xe0\x22\x70\x2b\x39\xd2\x3c\x65\xcb\x10\x02\x63\x23\xf2\xd6\xd1\x44\x29\x1b\xe5\x20\x81\xff\x9d\x12\x04\x1d\x50\xd7\xe1\x41\x22\x9f\xc0\xb5\x67\x7c\x65\xff\x46\xc0\xf1\xc1\x48\x6a\x1c\x57\x2a\x82\xa2\x94\x02\xe2\x38\xee\x66\x88\x66\x99\xad\xf6\x10\x82\x7e\x9a\xee\x1a\x35\xee\x38\x02\xe4\xbc\xe0\xa1\x49\x9c\xf6\x15\x33\x81\xda\xe1\xbe\x9f\xaf\xe0\xd3\xab\x99\xff\x9f\x09\xbf\x61\xa9\x6b\x4e\xb3\xf4\xad\x65\x73\x3d\x40\x74\xcb\xb8\x3a\xd3\x25\x16\x68\xf5\x34\x65\x02\x82\xbf\x44\xc1\x20\x28\x4a\x64\xb4\x4c\xad\x58\x88\xc3\x10\x7c\xb6\xce\x32\x3f\xec\x31\xef\x10\xc6\x37\x28\xca\x82\x09\x14\x35\x25\x72\x9e\xd3\x52\x97\x7f\x4e\xef\x31\xc8\x69\xf9\xd5\x76\xfa\xb7\x94\x49\xe4\x0b\x9a\x60\xa5\x22\xa8\x2a\xc8\x90\x1d\x12\xa8\x54\xd8\xa8\xb6\xad\x7a\x71\x1f\xc1\xc5\x46\x8b\x3e\xd9\x8e\xaf\x7e\x55\x5d\xdc\x2b\xe5\x7f\x83\x99\x9e\x16\x13\x08\x96\x28\xaf\x51\x08\xba\x44\xd3\x98\x76\x52\x5f\x6c\xe2\xdb\x64\x85\x39\x8d\x7f\x13\x05\x73\x3f\x6f\x70\x11\xda\xd1\xac\x54\xb5\x8d\x43\x2f\xa6\xfb\x1f\x99\xc9\xdf\xe5\x0c\x68\x59\x22\x9b\x07\xfa\x31\x32\x37\x00\x3b\x2b\xca\xcd\x9f\xc0\xaf\x2a\xfd\xf8\x27\xf2\xef\x10\x2b\xe5\x87\x11\xec\x65\xf9\x42\xe5\xaa\x66\xd0\xbf\x1d\x83\xa3\x1f\x95\xf0\x73\x52\x3e\x64\xda\x07\x5d\x87\xd7\xb4\x0c\x6c\x1e\x3a\x46\xb5\x42\xb4\x73\x10\x92\x46\x73\xc1\x87\x26\x5f\xb0\x33\x1f\x1d\xa7\x30\x07\xa6\x03\x74\xcc\x93\x38\x89\x2d\x8d\x6e\xb8\xc8\x3c\x7f\xc2\xc7\x1b\x7c\x58\xa3\x90\x41\x12\xeb\x4d\x10\x81\xdf\x9f\x00\x71\xd3\xa8\x7e\x64\xf6\x4b\xab\x23\x2b\x15\x46\x36\xab\x71\x1c\xdb\xea\x4c\x17\x46\xe1\x9b\x19\xb0\x34\x73\xcb\xa9\x59\x4f\x2c\xcd\x8c\x3d\xe6\x54\x91\x4e\x4a\x76\xc6\x9f\x52\xf0\xcf\xfe\x6b\xdb\x7f\x39\x73\xf1\x8b\x6f\x75\xa5\x72\x7c\x08\xdf\x9d\xeb\x18\xb2\xb9\x4b\xc5\x59\xdb\xb9\x0e\x77\x65\x0d\x50\x91\x96\xde\x1a\xb6\xb5\x4c\x61\x86\xca\xdb\xee\xc0\xab\x9a\x66\xaf\x73\xae\xc7\xe3\x88\x8c\x6b\xcf\x23\xad\xec\xb4\x44\xef\x8f\x48\x73\x63\x65\x6d\x5d\x32\x51\x32\x00\xe4\xbc\x1a\x3f\x19\x03\x36\xee\x74\xc1\xa0\x0d\x6f\x17\x6c\x59\x05\x44\x59\x63\x0c\x04\x19\x80\x1f\xa6\x5c\xfb\x46\x36\x1b\xf0\xe9\xb4\x0d\xd8\x58\x15\xc2\x0d\x26\x9b\xf7\x6c\x7e\x95\x15\x02\x83\x83\x4b\xcc\xcb\x87\x73\xee\xb9\x84\x3f\xc5\x5a\xd6\xb5\x58\x06\x79\x48\x3c\x97\xa2\x59\x9d\x22\xcf\x90\x69\x2a\xa7\x8a\x78\
|
2021-01-08 22:22:43 +03:00
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
fs["/"].(*vfsgen۰DirInfo).entries = []os.FileInfo{
|
|
|
|
|
fs["/{{.File.Package}}_micro.pb.go.tmpl"].(os.FileInfo),
|
|
|
|
|
fs["/{{.File.Package}}_micro_grpc.pb.go.tmpl"].(os.FileInfo),
|
|
|
|
|
fs["/{{.File.Package}}_micro_http.pb.go.tmpl"].(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
|
|
|
|
|
}
|