files
defs
all defs
bindata
Asset - func
$bindata0
$bindata0
a - var
err - var
f - var
ok - var
name - var
AssetDir - func
$bindata0
$bindata0
$bindata0
p - var
pathList - var
$bindata2
name - var
name - var
node - var
rv - var
AssetInfo - func
$bindata0
$bindata0
a - var
err - var
f - var
ok - var
name - var
AssetNames - func
$bindata0
name - var
names - var
RestoreAsset - func
data - var
dir - var
err - var
info - var
name - var
RestoreAssets - func
$bindata0
$bindata1
$bindata0
child - var
children - var
dir - var
err - var
name - var
_bintree_t - type
Children - field
Func - field
_filePath - func
dir - var
name - var
asset - type
bytes - field
info - field
bindata_file_info - type
IsDir - func
fi - var
ModTime - func
fi - var
Mode - func
fi - var
Name - func
fi - var
Size - func
fi - var
Sys - func
fi - var
modTime - field
mode - field
name - field
size - field
bindata_read - func
buf - var
data - var
err - var
gz - var
name - var
data_publish_gh_pages_sh - func
a - var
bytes - var
err - var
info - var
data_srcco_css - func
a - var
bytes - var
err - var
info - var
data_srcco_js - func
a - var
bytes - var
err - var
info - var
data_view_html - func
a - var
bytes - var
err - var
info - var
_bindata - var
_bintree - var
 
package main import ( "bytes" "compress/gzip" "fmt" "io" "strings" "os" "time" "io/ioutil" "path" "path/filepath" ) func bindata_read(data []byte, name string) ([]byte, error) { gz, err := gzip.NewReader(bytes.NewBuffer(data)) if err != nil { return nil, fmt.Errorf("Read %q: %v", name, err) } var buf bytes.Buffer _, err = io.Copy(&buf, gz) gz.Close() if err != nil { return nil, fmt.Errorf("Read %q: %v", name, err) } return buf.Bytes(), nil } type asset struct { bytes []byte info os.FileInfo } type bindata_file_info struct { name string size int64 mode os.FileMode modTime time.Time } func (fi bindata_file_info) Name() string { return fi.name } func (fi bindata_file_info) Size() int64 { return fi.size } func (fi bindata_file_info) Mode() os.FileMode { return fi.mode } func (fi bindata_file_info) ModTime() time.Time { return fi.modTime } func (fi bindata_file_info) IsDir() bool { return false } func (fi bindata_file_info) Sys() interface{} { return nil } var _data_publish_gh_pages_sh = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x8c\x57\x6d\x73\xda\x48\x12\xfe\xae\x5f\xd1\xc1\x54\x6c\x27\xbc\xc4\xf9\x78\x59\x92\x53\xb0\x6c\xab\x0e\x83\x4b\xe0\xf5\xa5\xd6\x7b\x41\x48\x23\x4b\x17\xa1\xd1\x6a\x46\xd8\xdc\x26\xff\xfd\x9e\x9e\x11\x18\x58\xd7\x5d\x5c\x2e\x40\x33\xfd\xfe\xf2\x74\xeb\xe8\x55\xbf\x56\x55\x7f\x91\x15\x7d\x51\xac\x68\x11\xaa\xd4\x71\x8e\x68\x28\xcb\x75\x95\x3d\xa4\x9a\x4e\xa2\x53\x7a\xff\xee\xec\x8c\xfc\xb0\xa0\xeb\x30\x1a\x09\x19\xd3\x2f\x59\x58\xfc\xbd\x10\xab\xac\xea\x15\x42\x7f\x74\x8e\xc0\x72\x23\xaa\x65\xa6\x54\x26\x0b\xca\x14\xa5\xa2\x12\x8b\x35\x3d\x54\x61\xa1\x45\xdc\xa1\xa4\x12\x82\x64\x42\x51\x1a\x56\x0f\xa2\x43\x5a\x52\x58\xac\xa9\x14\x95\x02\x83\x5c\xe8\x30\x2b\xb2\xe2\x81\x42\x8a\xa0\x9a\x29\x75\x0a\x31\x4a\x26\xfa\x31\xac\x04\x88\x63\xe8\x08\x95\x92\x51\x16\x42\x22\xc5\x32\xaa\x97\xa2\xd0\xa1\x66\x8d\x49\x96\x0b\x45\x27\x3a\x15\xd4\x9a\x36\x3c\xad\x53\xa3\x26\x16\x61\x4e\x59\x41\x7c\xb7\xb9\xa2\xc7\x4c\xa7\xb2\xd6\x54\x09\xa5\xab\x2c\x62\x19\x1d\xc8\xcf\x8a\x28\xaf\x63\xb6\x63\x43\x90\x67\xcb\xac\xd1\xc1\x02\x4c\x4c\x14\x8b\xad\x15\xbc\x60\x5b\x3b\xb4\x94\x71\x96\xf0\xb7\x30\xae\x95\xf5\x22\xcf\x54\xda\xa1\x38\x63\xe1\x8b\x5a\x0b\x96\xad\xf8\x38\x12\x05\xf3\xc1\x9b\xbe\xac\x48\x89\x3c\x67\x19\x19\x6c\x37\x1e\x3f\x5b\x68\x68\x58\x4f\xc9\x61\xd5\x4d\xa0\x8c\xe6\xc7\x54\x2e\xf7\xbd\xc9\x14\xe4\x27\x75\x55\x40\xad\x30\x5c\xb1\x44\xe8\x3a\xac\xf3\xdf\x22\xd2\x7c\xc2\x0c\x89\xcc\x73\xf9\xc8\xee\x45\xb2\x88\x33\xf6\x4a\xfd\xcd\x24\x6f\x86\xdb\x70\x21\x57\xc2\xb8\x64\x33\x5f\x48\x0d\x7b\xad\x1d\x9c\x8b\xf2\x39\xc1\xcd\x95\x4a\x43\x38\xb0\x10\x4d\xdc\xa0\x1a\x71\x0e\x77\x7c\xaa\xac\xdf\x4a\xa3\x0a\x32\xa4\xa1\x94\x95\x51\x7a\xe8\x6d\xcf\x1a\x71\xe5\xd1\x74\x72\x31\xbb\x73\x03\x8f\xfc\x29\xdd\x04\x93\x5f\xfd\x73\xef\x9c\x5a\xee\x14\xcf\xad\x0e\xdd\xf9\xb3\xab\xc9\xed\x8c\x40\x11\xb8\xe3\xd9\x17\x9a\x5c\x90\x3b\xfe\x42\xff\xf0\xc7\xe7\x1d\xf2\xfe\x79\x13\x78\xd3\x29\x4d\x02\xf2\xaf\x6f\x46\xbe\x87\x33\x7f\x3c\x1c\xdd\x9e\xfb\xe3\x4b\xfa\x7c\x3b\x83\x8e\xf1\x64\x46\x23\xff\xda\x9f\x41\xec\x6c\x62\x54\x36\xc2\x7c\x6f\xca\xe2\xae\xbd\x60\x78\x85\x47\xf7\xb3\x3f\xf2\x67\x5f\x3a\x74\xe1\xcf\xc6\x2c\xf5\x02\x62\x5d\xba\x71\x83\x99\x3f\xbc\x1d\xb9\x01\xdd\xdc\x06\x37\x93\xa9\x07\x03\xce\x8d\xe0\xb1\x3f\xbe\x08\xa0\xc9\xbb\xf6\xc6\xb3\x1e\x34\xe3\x8c\xbc\x5f\xf1\x40\xd3\x2b\x77\x34\x32\xca\xdc\x5b\x78\x10\x18\x1b\x87\x93\x9b\x2f\x81\x7f\x79\x35\xa3\xab\xc9\xe8\xdc\xc3\xe1\x67\x0f\xb6\xb9\x9f\x47\x9e\x55\x06\xc7\x86\x23\xd7\xbf\xe6\xea\x39\x77\xaf\xdd\x4b\xcf\xf0\x4d\x20\x27\x30\x84\x8d\x85\x77\x57\x9e\x39\x82\x46\x17\xff\xc3\x99\x3f\x19\xb3\x2b\xc3\xc9\x78\x16\xe0\xb1\x03\x4f\x83\xd9\x96\xf5\xce\x9f\x7a\x1d\x72\x03\x7f\xca\x61\xb9\x08\x26\xd7\x1d\x9a\x98\xe0\x80\x67\x62\xc4\x80\x73\xec\x59\x39\x1c\xf2\xfd\xcc\x80\x84\x9f\x6f\xa7\xde\xb3\x35\xe7\x9e\x3b\x82\xb4\x29\x33\xef\x12\xf7\x18\x4c\x46\x72\x85\x9a\xcb\xd7\xa4\xc3\x6f\x02\xbd\x5a\xa1\x7e\x1f\xd0\x5f\xf5\xa2\x17\xc9\x65\xdf\xe0\x48\xff\xa1\x92\x11\xa8\x95\xd0\xd4\x15\x74\x44\x53\x2d\x4b\x6a\xba\x2e\xc9\x2a\xa5\x29\x09\xb3\xbc\x46\xb5\xeb\x34\xd4\x24\xa3\xa8\xae\x94\xe3\x9c\x4f\x86\xd3\xaf\x37\xee\xec\x6a\xd0\x83\xc8\xbe\xaa\xa2\x48\x76\xf5\xb2\x74\x66\x6e\x70\xe9\xcd\xbe\x7e\x46\x6a\x87\x57\x83\x87\xb4\x5b\x86\x0f\x42\x39\xbf\xfd\x46\xed\x33\xfa\xfd\x77\x7a\xfd\x9a\x1a\x92\xc0\xbb\x9e\xcc\xbc\x01\x8e\xbf\x7f\x3f\x38\x93\xe8\x84\xac\x60\x1f\x2e\xd1\x83\xaa\xcc\xd0\xfb\x8c\x0a\x28\x68\x5d\x2b\x54\x7b\x22\xab\xa5\x45\x07\xfc\xb7\x95\x8e\x45\x55\xd9\xd6\x7d\x14\x68\xc2\xe2\x58\xd3\x23\x6a\x9f\x1b\xb0\x12\x79\xb8\xb6\xc6\x87\x0a\x24\x04\x52\x60\x80\x6d\x4d\x68\x00\xa0\x54\x3d\x42\x4b\x30\xeb\x63\x15\x96\x1c\x23\x23\x0a\xcd\x6c\x69\x53\x3c\xe5\xdc\xbe\x12\xbe\x8b\x7c\x25\x54\xaf\xd7\x73\xc4\x93\x88\xbe\x82\xf6\xe4\x94\xfe\x74\x88\x80\xaf\x6a\x70\x7c\x8c\x5f\x30\x8e\x4e\x4e\x28\xa3\x01\x9d\x7d\xc0\xd7\x2f\x03\x6a\x1f\xe1\xc7\xdb\xb7\x74\x7a\xfa\x01\x62\x41\x43\x24\x56\x68\x4c\x30\x0d\xee\xdb\xed\xcc\x9c\x64\x09\x71\x98\x70\x46\x83\x01\xbd\xb9\xa7\x37\x08\xd8\x07\x36\xb3\x30\xf7\x84\xf4\xfc\xa0\x3b\xc1\x70\x0c\x0c\xb6\x3e\xc5\x12\xf8\x26\xe8\x8f\x5a\x6a\x74\xfe\x63\x06\x14\x00\x4a\x30\x38\xc0\xb1\x98\x5d\x2e\xc3\x4a\x73\xe3\x43\xae\x41\x6e\x82\xe2\x1a\x2e\x34\x32\x8d\xdd\x2d\xd6\xaa\xe8\xde\x7c\xdf\xb7\x5a\xd6\xc2\x5c\x89\x17\x88\xf8\xd3\x12\x24\x6c\x37\xa2\x2d\x1c\x7c\x73\x05\xbd\x65\x7a\x36\xd2\x5b\x09\x2e\x21\x59\x3f\xa4\xdb\xb0\x72\x45\x6d\x6c\xe0\x1c\x36\x36\x77\xcc\xf0\xe3\xd9\xa5\xca\x3c\xd3\xda\xc4\xb9\x00\xda\x66\xb8\x2c\xc3\xc8\x0e\x8d\xac\x40\x8e\xee\xd2\xf5\x27\x28\xc0\xf0\xa8\x73\x3d\x98\x9b\x08\x72\xb2\xac\x5d\xef\x3f\xbe\x3e\x9b\xb3\x21\xa6\x48\x06\xed\x4f\x8d\x51\x5d\x63\x5e\x13\xdc\xa6\x82\xba\x85\xa0\x77\xfb\xd1\x15\x51\x2a\xa9\xd5\xb6\xc2\x5b\xf4\xf1\xf5\x7b\x7b\xfc\xc4\x0a\x2c\x9b\x63\x5c\x76\x0e\x69\x8d\x49\x1a\x63\x80\xde\x39\x3f\x1c\xc7\x6a\x9a\xb3\x61\x1b\x6d\x6a\x4e\xaf\x06\xd4\x6a\xed\x6a\xb4\x32\x6e\x72\x11\x2a\x46\xff\x25\x4f\x1b\x9e\x4d\x9a\xa3\xb1\x46\xa5\xf1\xcc\x2e\xd0\x3b\xc8\x25\x2a\x4a\x6c\xe6\x1b\xc7\x67\x7f\x08\xa3\x94\x6d\x5b\xbf\xda\x98\x6d\x8c\x3e\x73\xd8\xd8\xe1\x6d\x10\x00\x0a\x37\x0d\x69\xcc\x5a\x60\x3b\x88\x52\x04\xac\x1f\x8b\x55\xbf\xa8\xf3\xfc\x3b\x71\xb1\x74\x0b\x3a\xee\xff\xeb\xfe\x4d\x5f\xf1\x27\xf5\xfb\xe5\xf1\x7c\x2b\x60\x38\xb9\x06\x7c\x5b\x01\x95\x58\xa1\xaf\xd1\x0b\x74\xe5\xb9\xe7\x73\xc7\xb4\xf7\xfb\xa6\xbd\x2d\xe1\xd7\x6b\x80\x37\xa0\x73\x80\x73\xf4\xf7\xc1\x61\xeb\x52\x14\xa2\x7a\x69\xa1\x40\x08\xda\xfb\x2a\x5b\x8c\x03\x37\x88\xb5\xa8\x56\xc2\x54\x51\x59\x49\x1e\xaf\xc7\x8a\x18\x7c\xb2\x87\x82\xc3\xa3\xa4\x6d\x88\x2d\x00\x44\xa9\x88\xbe\x71\x9d\x41\xa4\x04\x5b\xf5\x98\xc1\x60\x15\x55\xe2\x91\xea\x92\xd2\x2c\x8e\x45\xb3\xc1\x34\x39\x03\x00\xee\x08\xdc\xc9\x55\x54\xee\x5e\xb4\xb7\xe0\xd7\x37\x21\xde\x49\x78\x13\xd9\x6e\xb7\x90\xdd\x48\xe6\xd0\xfc\x1d\xbb\x98\x28\xa9\x45\xed\x3d\x64\x6c\xcd\xb9\xc7\xf7\x2b\x02\xd3\x06\xdb\x19\x25\x42\x43\x84\x41\x6b\x76\x56\xf3\xe2\xc6\x21\x5f\xa2\x5b\x38\xd7\x0a\x1b\x1d\x54\x66\x0c\x71\x8a\xe0\x8e\x09\xa3\xbd\xcf\xd7\x26\xfb\x16\x98\x1a\x49\xed\x3d\x6c\x75\x1a\x45\xa8\x2b\x50\xa0\x50\x94\xde\xf2\x7e\xda\xf6\xc9\x9e\x33\xe1\x8b\xfe\x58\x26\xd5\xdf\x17\xdf\xff\xff\x6e\x6e\x4a\x7f\x2c\xe9\x78\x9f\xfa\x78\xa3\xd2\x98\xa5\xd0\xf1\x43\xf6\xce\x22\x82\x68\x40\x69\xe3\x9c\x5a\x2f\x17\x12\x9b\x5d\xb7\x12\x89\x29\x43\x58\x94\xa8\x7e\x2a\xc2\x58\x1d\x58\x61\x18\xab\xa5\xc9\x61\x3f\x2b\x62\xf1\xe4\x38\x16\x4e\xb7\x65\x65\x53\x1b\xdb\x72\x00\x24\x61\xd8\x2c\x31\x35\xb1\x45\x99\xc9\x27\xd6\xc7\xbc\x0c\x47\xba\xc6\x9a\xb5\xde\x50\xbf\xda\x81\xed\xee\x5e\x5d\xbc\x5c\x46\xfc\x87\x52\x7a\x99\xee\xf9\x67\x43\xb9\xf5\x34\x8c\xe3\xc3\x5b\x0b\x43\x3b\x34\x11\x70\xa4\xa0\x6e\x12\xff\xe1\xec\x00\xf7\x8b\x53\x75\x2f\x03\xb9\x8c\x00\xa2\x4d\xd8\x0f\xd3\xd1\xb1\x3d\x64\x27\x9f\x7e\xbe\x7e\x31\xd5\xc7\x76\x63\xad\x42\xcb\xc0\xbd\x78\x90\x31\x23\x8c\x05\x75\x17\x07\xdd\x40\xff\x53\x72\x03\xbb\x8d\x57\x7f\x15\x77\x40\xcd\xb4\x47\x3c\x26\x37\x1b\xc0\x37\x81\x82\x05\x0e\x00\x64\xcb\x5c\xa0\x89\xd4\xba\x88\xe8\x24\x16\x78\x30\xbe\xe5\x06\x85\x90\x76\xd4\x77\x54\xd5\x89\xb6\xdd\x57\x02\xe6\x32\x09\xfc\xde\x87\x28\xa8\x2c\x6b\x7d\xba\x9d\xff\x94\xab\xae\x7d\x0f\xfa\x4e\x4f\x66\x12\xa1\xd4\xba\x89\xd3\xac\xf7\x5b\x29\x4a\xe6\xb5\x11\xb0\x10\x78\x1b\x30\x6b\x95\x79\xaf\x30\x2f\x5e\xbd\x58\xea\x6e\x53\x7c\x8c\x55\x16\xf2\x81\x65\x60\xc9\xb3\xff\xf0\xa2\x32\x4f\x50\xba\xf3\x0e\x4f\x46\xe4\x8a\xdf\xac\x78\xe4\x84\x39\x80\x6f\x19\xc6\x16\x19\xe7\x59\x32\xef\xf2\xd4\x11\x66\xd2\xcb\x05\x94\xc2\x63\xbb\xe7\x7f\xdc\x14\x60\x37\x48\x76\x8b\xf0\x0d\xf5\xb6\xb7\x3f\x5b\xcc\x1b\xfa\x9f\x2b\xe8\x0d\x35\x52\x73\x84\x2f\x7c\xb8\xb9\x16\x55\x81\x80\xae\xc4\x73\x60\x6a\xc5\xe9\x98\x03\xf1\xe6\x3b\x06\x9f\x50\x14\xef\xa8\xa0\x0f\x0c\x89\x80\x24\xf1\x14\xe1\xdd\xc7\xa8\xa1\x28\xa1\x2e\xf5\xe8\x14\x29\xe0\xcb\xa7\x6f\xe5\x6a\x85\x23\x48\xe1\xa0\xed\x72\x77\x97\xe1\x53\x2c\x4a\x9d\xd2\x19\xe6\x1d\x36\x25\x0c\x32\x3c\xec\x52\x70\x1d\xbf\x78\x65\xbc\x43\x70\x90\xf8\x4d\x18\x5b\x7f\xfe\x68\x41\xf1\xfd\x07\x4e\x37\xe0\x1b\x6c\x66\x42\xd7\x05\x52\xa9\x38\x81\x5b\xd0\x48\x43\x7e\xcd\xb3\x33\xfd\xa7\x97\x84\x5d\x0c\xe8\xba\x7b\xe5\x6f\x57\x86\xee\x12\x8b\xc8\xfe\x74\x6d\xed\x92\x95\xb5\x3a\x1c\x01\x2f\x37\xcc\xd0\x20\x08\x06\x63\x98\x20\x35\xcf\xab\xae\xc3\xd5\x5c\xed\x16\x8c\xe3\xfc\xb5\x07\x5b\xed\xfd\x45\xa3\xe5\xfc\x37\x00\x00\xff\xff\x5c\x24\xc6\x2a\xe2\x10\x00\x00") func data_publish_gh_pages_sh_bytes() ([]byte, error) { return bindata_read( _data_publish_gh_pages_sh, "data/publish-gh-pages.sh", ) } func data_publish_gh_pages_sh() (*asset, error) { bytes, err := data_publish_gh_pages_sh_bytes() if err != nil { return nil, err } info := bindata_file_info{name: "data/publish-gh-pages.sh", size: 4322, mode: os.FileMode(420), modTime: time.Unix(1425049421, 0)} a := &asset{bytes: bytes, info: info} return a, nil } var _data_srcco_css = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x9c\x56\xdd\x6e\xdb\x36\x14\xbe\xcf\x53\x10\x29\x0a\x34\x85\xa4\x32\xb6\x6c\x27\xf6\xcd\xba\xac\xc3\x2e\xd6\x61\x37\xdb\x3d\x25\xd2\x16\x67\x9a\x14\x48\xca\xb6\x5a\xf4\xdd\x77\x48\x91\xb2\xfc\xa3\xa0\xad\x1d\x07\x14\x79\xbe\xf3\xfb\x9d\x43\x55\x76\x27\xd0\xd7\x3b\x04\x9f\x8a\xf1\x4d\x65\x97\x88\x34\x56\xad\xfc\xce\x8e\xcb\x34\xee\x3e\x62\xfc\x76\x75\xf7\xed\xae\x50\xb4\x0d\x80\x0f\xef\xd1\x5a\x49\x9b\xae\xc9\x8e\x8b\x76\x89\xee\xff\x60\x62\xcf\x2c\x2f\x09\xfa\x8b\x35\xec\x3e\xe9\x9f\x93\x8f\x9a\x13\x91\x18\x22\x4d\x6a\x98\xe6\xeb\x15\x7a\xff\xc1\xeb\xf8\x4e\x05\x9d\x3f\x05\x29\xb7\x1b\xad\x1a\x49\xd3\x52\x09\xa5\x97\x48\x6f\x8a\x77\xcf\x38\x41\xdd\xef\xc1\x39\x98\x6d\x34\xa7\x17\x21\x75\xce\xfb\x90\x88\xde\x70\xb9\x44\xb8\x3e\x0e\x02\xad\x09\xa5\x5c\x6e\xba\xed\xc7\x59\x7d\x1c\xb3\xf7\xe6\xf7\x89\xfb\x9e\xd2\x73\xe0\xd4\x56\x4b\x34\xc7\xf8\x18\x0d\x1c\xe3\xe6\xe3\x04\x63\xa7\x0a\x7c\xd2\xea\x10\x5c\x52\x7b\xa6\xd7\x42\x1d\x96\xa8\xe2\x94\x32\x79\xe1\xc0\xe3\xb9\x07\x41\x53\xe7\x29\xe8\xa1\xaa\x0c\x7a\x7c\xe2\x0c\xff\xc2\x00\xb3\xa8\x8f\x3f\x11\x5d\x0c\x29\xcf\xf3\x6e\x03\xdc\x22\x90\x2c\xc1\xd6\xf6\xcc\xfa\xac\x0f\xc3\x99\xaf\x35\xbb\xe1\xc2\xe4\xc2\xe3\x80\x19\x46\x9c\x1e\x87\xdc\xea\x77\xdb\x53\x26\xc0\x42\xa9\xe8\x99\xfa\x48\x8d\xcf\x4c\x0a\x95\x7c\x56\x92\x94\x2a\x79\x51\xd2\x28\x41\x4c\x72\xff\xa2\x1a\xcd\x99\x06\xba\x1c\xee\x93\x9d\x92\xca\xd4\xa4\x64\xab\x57\xdc\xab\xb8\x65\xa9\x97\x5a\xba\x50\xd2\x83\x26\xf5\xea\x95\xca\xdc\x4e\x69\xa1\x8e\xa9\xa9\x08\x75\xd2\xee\xc4\x67\xd6\xfd\x03\x42\x92\x77\x40\xc6\xf0\x97\x3d\x3e\x20\x2e\x0d\xb3\x11\xa6\x29\xd3\xa9\x26\x94\x37\xa6\x2b\xf6\x28\xd3\xa6\x8b\xe9\xf3\x74\x71\xc5\xb4\xfc\x94\xd8\x01\xd5\x9e\x4e\xbb\xd7\x9c\x3f\x23\x57\x9f\xe5\x65\xe5\x02\x46\x24\x64\x3b\x3d\xb0\x62\xcb\x6d\x4a\x24\xdf\x11\xcb\x15\x84\xdc\x32\xe1\x0a\xb4\x26\x50\x12\x9c\xcd\x0d\x62\xc4\xb0\x14\x5c\x51\x8d\x45\x8f\x9d\xee\x74\xa7\xbe\xfc\x28\xe6\x07\xc4\x23\x23\xc8\x69\xe4\x9c\xa2\x81\x74\xbb\xba\xc6\x51\x02\x67\xb1\x58\xa9\x3b\x4b\xe3\xe1\x90\xed\x5c\x56\x30\x7f\x42\x39\x2c\x3b\xda\x94\xb2\x52\xe9\xe0\x8e\x54\x92\xdd\xac\xd4\xf4\xba\x50\xd0\x28\x5c\x32\xa2\xd3\x8d\x13\x62\xd2\xbe\xb3\x0a\x60\xd6\xaa\x5d\xd2\xd1\x60\x32\x9b\x25\xf1\x97\x4d\x67\x0f\x08\xbf\x4d\xae\x0f\x30\x1c\xb8\x5a\x3d\x0c\xa2\x0d\xb5\xf9\xfa\xd3\x26\x71\x92\x2d\xf0\xb5\x41\x9c\xe0\x6c\x8a\x07\xf6\xee\x20\x69\x69\xff\x41\x92\xec\x07\x8f\xb7\x3f\x90\xd0\xcc\xaa\xd2\x44\xef\x7c\xa2\x96\x08\x1a\x12\xc6\xae\xcb\x7b\x21\xc0\xe1\xb3\x2c\x5a\x55\x0f\x73\x5b\x2b\xc3\xbb\x7c\xaf\xf9\x91\xd1\xeb\xc4\x76\xac\x08\x35\x72\x58\x7c\x63\xc0\x75\x1b\x6e\x58\x0d\x1e\xe3\xe4\xbd\x6e\x87\x49\xe4\xbe\xf3\x3d\x23\xa5\xe5\xfb\x38\x68\x02\x68\x7a\x26\x82\xce\x65\x28\x37\xb5\x20\x30\x88\x0a\xa1\x5c\x74\x9d\x54\x2a\xc9\x8e\xdd\x28\x13\xd4\xa7\x1d\x99\xa9\xc3\x79\x72\xe9\xf6\xac\xdf\xf0\xcc\x24\x82\x6f\x40\xb2\x84\x42\x33\xfd\x1d\xd1\x5c\x7a\x14\x93\x31\x1f\x08\xf7\x9d\x14\xfa\xc1\xcf\xc3\xfe\xf0\x3a\x92\x37\x25\x76\xdf\xcb\xc2\x91\x02\xea\xdd\x58\x76\x3d\xcb\x4d\xa9\x95\x10\x57\xa3\xe8\x22\xd2\xe9\x69\xc7\x17\x78\xd2\x3f\xf6\x89\xee\xf8\x02\x8e\x49\x68\x89\x74\xf0\xda\x71\x2d\x71\x72\xfd\xfc\xaa\x0b\x71\x0f\x48\x8e\x4c\x2b\x2d\x39\xc2\x84\xdf\x54\xc2\x39\x07\xc2\xb7\x18\x0f\x24\x07\xd0\xdf\x9a\x59\xdb\xc2\x35\xc1\xa5\x17\x34\xb6\x15\xcc\x64\xe8\x1f\xc3\x28\x44\x62\x2b\x77\x83\x58\xcb\xd7\x6d\xf6\x1f\x6c\x77\xa0\x7f\xf9\x0e\x99\x46\x16\x8d\x36\x16\xd9\x8a\x41\x39\x8a\x16\xfd\x46\xf6\xd0\x1e\x7f\x32\x5e\xa8\x3d\x2f\xfd\x54\xca\x8c\xd5\x09\xf2\x0d\xef\x96\xe8\x6b\x7f\x23\xcf\x67\xbf\xe2\x7c\xb2\x42\xdf\xdc\x4c\x83\x23\x67\x1b\xa5\xc0\x2a\xc6\xa4\x83\x66\xdb\x03\x8d\x48\x58\x0e\x90\x9f\x26\x4f\xcf\xf3\x3c\x20\xb7\xac\x3d\x40\x03\x02\x92\x12\xbd\x45\x35\x97\x5b\x8f\x2e\xdd\xb8\xe8\xd0\xb0\x1c\xa0\x3f\x7e\x72\xdf\x55\xb8\x39\x5d\xb0\x30\x30\x2d\xd0\xb0\x0c\x1a\x41\x7c\x07\x6c\xf4\xbe\x90\xd6\x2b\xb3\x6d\x1d\x95\xc1\x72\xa0\xec\xe9\xb9\xa0\xeb\x75\x00\xc2\x11\x03\x94\x4f\x39\xb4\x50\xc3\x3c\x56\x70\x1b\xb1\xb0\x1c\x60\xa7\xd3\xa7\xc5\xcb\x4b\xc0\xc2\x11\xd3\x44\x00\xbc\x07\xd6\x8d\x8c\x40\x58\x0e\x80\xeb\xde\x22\xec\x97\xb6\xf1\x73\x1d\x90\x9e\xe6\x1d\x54\x9c\xa0\x62\x04\x2a\x08\x14\x1c\x3a\xf0\x0c\x68\xc9\xa6\x0f\x94\x6c\xc6\x02\x75\xef\xd3\x1f\x8e\xf0\x4e\xed\x64\xdc\xfd\x78\x19\x33\xb1\xbd\x7d\x58\x0e\xd4\x14\xb4\x58\xcc\x8b\x4b\x35\xc4\x42\xf9\x0b\xe8\x34\xe4\x1b\x1b\xf4\x6d\x2b\xb2\xe5\x41\xd5\xfe\xa4\x6a\x3f\xc6\x9f\x1b\xaa\xf6\xc4\x79\x33\x24\x14\x5c\x82\x51\x15\x2c\xc7\x2a\x01\x47\x70\x73\x0f\x2b\xf1\xcb\x8e\x51\x4e\xba\x0e\xf1\x2d\x38\x4e\x6a\x3c\xc7\xa0\xc6\x89\x8c\xb2\x17\xe3\x79\x20\xdf\x21\x4c\x8e\x42\x09\x1a\x50\xa3\xac\x85\x77\xef\x11\xca\x3a\xd8\x28\x3f\x73\x9c\x8f\x1b\x1b\x65\x26\xce\xf3\x20\x32\xca\xc1\x3c\x8f\x81\x8e\x72\x0d\xe3\x28\x32\xca\xaa\x57\x73\x31\x4a\x22\x1f\x54\x10\x19\x21\x47\xa8\xc3\xb7\xbb\xff\x03\x00\x00\xff\xff\x00\xd3\xa2\x42\xfb\x0d\x00\x00") func data_srcco_css_bytes() ([]byte, error) { return bindata_read( _data_srcco_css, "data/srcco.css", ) } func data_srcco_css() (*asset, error) { bytes, err := data_srcco_css_bytes() if err != nil { return nil, err } info := bindata_file_info{name: "data/srcco.css", size: 3579, mode: os.FileMode(420), modTime: time.Unix(1425049421, 0)} a := &asset{bytes: bytes, info: info} return a, nil } var _data_srcco_js = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xac\x57\xdf\x6f\xdb\x36\x10\x7e\xcf\x5f\x71\xd5\x43\x2b\x2f\xb1\x9a\x3d\x6c\xc0\xe6\xf9\xa1\xe8\xba\xad\xc0\x9a\x0d\x68\xb0\x97\xa2\x0f\x8c\x78\xb6\x98\xd0\xa4\x26\x52\xfe\x81\x21\xff\xfb\x8e\xd4\x2f\x4a\x96\x1c\x27\x9b\x51\xd4\x09\x79\xf7\xdd\xdd\xc7\x8f\x77\xcc\x4e\x28\xae\x77\x89\x56\x52\x33\x0e\x4b\x58\x95\x2a\xb5\x42\x2b\x88\x67\xf0\xcf\x05\xd0\xe7\xed\x5b\xb8\xcd\x84\x01\xfa\xc7\x80\x8b\xc2\x1e\x20\x63\xe9\x03\x18\x0d\x36\x63\x16\x76\x08\x5c\xab\x37\x16\x70\x9f\x33\xc5\x69\x11\x21\xd5\x1c\xe1\x4e\xef\x91\xdc\x56\x0d\x0a\x19\xda\x4c\xa8\x07\x6f\x51\x1a\x2c\x1c\x24\x45\x62\x90\x67\x5a\x21\xec\x32\x54\x7e\xaf\xca\x89\xa2\x18\x58\x09\x25\x4c\x86\xbc\xc1\x70\x59\x0a\xb5\x4e\x28\x25\x2c\x10\x4c\xa6\x4b\xc9\xe1\x0e\x09\x64\xc7\x0e\x60\x35\xe5\xe2\xa2\x18\x88\x0a\x34\xb9\x56\x46\x6c\x51\x1e\xa2\xc4\x03\x88\x15\xc4\xaf\xea\x8a\x37\xcc\xa6\xd9\x27\xe4\x82\xc5\x6f\xe2\x0d\xdb\xcf\x39\x6e\x45\x8a\xf3\x9d\xe0\x36\xfb\x11\xbe\xbf\xbe\xce\xf7\xb3\x37\xb3\xca\x0e\x4d\xc3\x86\xfb\x6c\x59\xe1\x2b\x34\xc4\x17\xd7\x69\xb9\x41\x65\x93\xbf\x4b\x2c\x0e\x9f\x51\x62\x6a\x75\xf1\x4e\xca\x38\x4a\x9c\x4d\x34\x5b\xb4\x7e\x2b\x5d\x40\xec\x9c\x05\x39\x5e\x2f\xe8\xeb\xa7\x0a\x27\x91\xa8\xd6\x36\xa3\x95\xcb\xcb\x30\x50\x13\xcc\xd8\x83\x44\xf2\xa9\x53\x5f\xa3\x7d\xaf\x37\x79\x69\x91\x7f\x76\x3b\xb1\x07\xf9\x22\xbe\x26\x39\x2b\x28\x97\x0f\x12\x5d\x4a\x57\xa0\x4a\x29\x83\xf8\xee\xd3\x9a\x7a\xcc\x24\x43\xb1\xce\x2c\x41\x57\xbf\x12\xf2\x9f\x85\xce\x91\x0e\xf9\x2f\x26\x4b\x8c\xa3\xca\x20\xac\xe2\xf1\xa2\xfb\xdf\x25\xc7\xa4\xbc\xfd\xe3\xfd\x53\x5c\x58\x9d\x36\x20\x63\x34\xd4\x20\x53\x44\x30\x7e\x5f\x1a\xfb\x51\x71\x42\x8f\x6b\x5b\x2a\x22\xc8\xca\xe1\x55\xd5\x13\x68\x67\x51\x33\x72\x43\x55\xf7\x6d\x57\x44\xcd\x6f\x4d\xf1\x35\xaf\x42\x29\x2c\xea\xc5\x39\xc4\x95\x6b\xa2\x57\x2b\x83\xf6\x56\xe7\x70\x09\xbd\xa5\xca\x32\xc8\x21\x08\x3b\x60\x37\x0c\x77\x09\x51\xbe\x8f\x16\x03\x16\x15\xdb\x3c\xa9\x27\xe2\x70\xee\xec\x4e\x11\xe9\x71\xa6\x68\xac\x36\x85\xc5\x4d\x2c\x66\x09\xe3\xfc\xc3\x96\x42\xfd\x2e\x8c\x45\xaa\x3c\x8e\x52\x29\xd2\x87\xe8\xaa\x6d\x02\x31\x6e\x87\x72\xb4\x85\x58\xaf\xb1\xa0\x3a\x69\x33\xb1\xac\x20\xc9\x24\x82\x87\xfa\x98\x0d\x6b\xb3\xc2\xca\x27\x8b\x53\x74\x44\x73\x6f\x79\xaa\xbc\x0a\x6a\xaa\xbe\x7a\xf7\xff\x28\xd0\x29\x26\xa8\xb0\x93\xd1\x64\xa5\x6d\x71\xcf\x0e\xeb\xda\x52\x2a\xb5\x41\x63\xdf\x4b\x66\x4c\x17\xf7\x0a\x22\x3a\x74\x13\xcd\x60\xb9\x5c\x42\x49\xfa\xa7\x86\x88\x7c\x98\xf3\x0b\x6e\x54\xf3\xe1\xc8\x28\xa5\x2d\xb3\xe8\x8e\x74\xf4\x6a\x75\x25\x76\x3f\xb9\xd2\x1f\x17\x17\x17\xed\xb8\xe8\xe7\x4f\x0d\xe8\x8a\x96\xe8\xe7\x1b\x92\x5c\x30\x49\x7e\x45\xdb\x98\x82\xef\xac\xdd\x49\x2f\xc0\xb9\xc1\xeb\xd7\xd5\xf7\xab\x65\xa7\x97\x7a\x6b\xe9\xbf\xc2\xb3\x18\x90\xe8\xb7\x7d\x58\xc7\x3d\xf5\x5f\x65\x99\x50\x26\xee\x32\x19\x52\x50\xa0\x2d\x0b\xe5\x71\x8f\x3b\xdc\x63\x50\x5f\xaf\x03\xd1\x99\x84\xe1\x3d\xf3\x7e\xe7\x53\x29\xad\xc8\xa5\xa0\xd9\xb6\x84\xef\x16\xdd\xed\xae\xa7\x45\xed\x38\xa5\xff\x93\x17\xfb\xd4\xa0\x20\x66\x7f\x11\x85\x21\xbd\xd0\x90\x25\xdd\xf8\x31\x5a\xa5\x94\xf4\xda\x9e\x44\x1a\x87\x04\x7a\x53\x6e\xee\x48\x99\xaa\x99\x06\xe4\xf3\xce\x92\xf4\xef\x68\xa8\xc4\x91\xb7\x8a\x66\x81\x06\xfc\x23\x80\xc6\x33\xc1\xb3\x3c\x97\x87\x20\x80\x1b\xba\xee\xb7\xee\x02\x03\xbd\x0a\xdc\x40\xa7\xbb\x68\xdc\x1b\x41\x85\x30\x81\xa3\x0f\x93\xf4\x4e\xb0\xca\xcf\x9d\xfd\xf5\xd8\x20\xac\xe0\x97\xd0\xe6\xdd\x23\x72\xb4\x8b\x34\x1f\xbf\x58\xf7\x65\x8b\xfb\xfa\x28\x09\x2b\x3e\x3a\xba\x6f\x9a\x3c\xe6\xf0\x2d\x29\x26\x6c\xd8\xfd\xbb\xe0\x69\x57\x74\x69\x0e\x57\x53\xcc\xd0\x26\xe8\x55\x47\x50\xce\x6c\x16\xfa\x63\x35\xab\x4d\x32\x98\x64\x36\x33\x93\x75\x06\x0d\xd3\x19\x8e\x3e\x31\xee\x2b\xe5\xdc\x93\x72\x3c\x58\xab\x9c\xfb\xe3\x3e\xe0\x0d\xbe\xdc\x7f\x3d\x97\x1d\x4f\xce\x14\x2f\xfd\x6b\x13\x8c\x0b\xc1\xc3\xfb\xf2\xec\x57\x83\x3f\x7e\x9d\x7e\xfc\x99\x5c\x04\x77\xc1\xe7\x6e\xb7\xdb\x6c\xfa\x18\x7f\xf1\x2b\xc3\x59\x17\x5a\xf7\x5f\x10\x8b\x9e\x3e\xdd\x36\x8d\x3b\x6a\xc7\x75\x32\xd4\xae\x5e\xf9\xc5\x91\xb6\x13\xf9\x94\x48\x89\x47\x5d\xa7\xef\x40\x03\xa3\xb3\xed\xab\xb6\x2d\x8a\x72\x72\x5e\x8b\x63\x9c\xae\x1d\x1e\xdd\x86\xee\xc1\x70\x5e\x34\x8f\x37\x7a\xa5\xee\x34\x3f\xfc\x27\x94\x94\x15\x85\xb6\xc7\x10\x2b\x36\xa7\x75\xaa\x70\xfe\xc3\x75\xef\x95\x49\x37\xc3\xe0\x80\xb7\xfe\xb0\x72\x71\x66\xa3\xcf\x52\x77\x52\x2d\x73\x21\xf9\x43\xc2\x4e\xd6\xd3\x57\xf2\x48\xec\x1a\xb8\xd5\xc5\xb9\x12\x18\x18\x17\xb8\xd1\x5b\x1c\x63\x73\x3a\xdd\xf3\x7d\xce\xd2\xc4\x34\x5c\x57\xb6\xbb\x91\x93\x02\x69\x87\xc5\x14\x69\xce\x5b\x0d\x66\x66\x33\x15\xd5\x89\x91\x58\x2b\xef\x85\x73\xb1\xed\x9f\x4f\x95\xda\x3d\x56\x2b\xa1\x9e\x4a\xab\x91\xf2\x74\x4e\x35\xc6\x54\x56\xf5\xf6\x78\x5e\x63\x17\x62\xb4\xa7\xfa\x17\xea\x90\x52\xc7\xd6\x68\xea\x63\x74\xfa\x3f\x87\xdd\xc2\xd9\xca\x1d\x18\x4f\x34\x01\x6f\x75\x42\x82\xcf\xe9\x05\x47\x7d\xa0\x2f\xa9\x41\xa8\x80\xaf\x7f\x03\x00\x00\xff\xff\xba\x7f\x40\x24\xd9\x10\x00\x00") func data_srcco_js_bytes() ([]byte, error) { return bindata_read( _data_srcco_js, "data/srcco.js", ) } func data_srcco_js() (*asset, error) { bytes, err := data_srcco_js_bytes() if err != nil { return nil, err } info := bindata_file_info{name: "data/srcco.js", size: 4313, mode: os.FileMode(420), modTime: time.Unix(1425049421, 0)} a := &asset{bytes: bytes, info: info} return a, nil } var _data_view_html = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\x8c\x53\xcd\x8e\xda\x30\x10\xbe\xf7\x29\xdc\x1c\x7a\x23\xae\xd4\xde\x9a\x70\x81\x56\x3d\xb4\x02\x95\x5c\x7a\x74\xec\x09\xf1\xae\x63\x23\xdb\x2c\xa0\xc8\xef\xbe\xe3\x24\x20\xa3\x5d\x65\x39\x31\x99\xef\x67\x3e\x8f\x86\xe2\xf3\x7a\xb3\xaa\xfe\x6f\x7f\x92\xd6\x77\x6a\xf9\xa9\x18\x7f\x08\x29\x5a\x60\x22\x16\x58\x7a\xe9\x15\x2c\xfb\x3e\xaf\x62\x11\x42\x41\xc7\xce\x88\x2a\xa9\x9f\x89\x05\x55\x66\xce\x5f\x14\xb8\x16\xc0\x67\xa4\xb5\xd0\x94\x19\xa5\x1d\x3b\x73\xa1\xf3\xda\x18\xef\xbc\x65\x87\xf8\xc1\x4d\x47\x1b\xa3\xfd\x82\x9d\xc0\x99\x0e\xe8\xf7\xfc\x5b\xfe\x95\x72\xe7\xee\xda\x79\x27\x91\xeb\x5c\xf6\xc0\x20\x0c\xf7\x0f\x45\x47\xcb\x61\x8b\x0d\x79\x0e\xc1\x59\xce\x4d\xaa\x77\xdc\xca\x83\x27\xd8\x9f\xe1\x3f\x21\xbd\xa0\x23\x75\xd8\x03\xbd\x2e\xa2\xa8\x8d\xb8\x4c\x56\x42\xbe\x10\xae\x98\x73\x65\xe6\x0d\xbf\x4e\x98\x00\x29\xca\xac\x91\x18\x30\x4b\x38\x0b\xcd\x3a\xb8\xf1\x08\x19\x08\x57\x15\x45\xd9\x1b\x0b\x01\xcd\xac\x43\xc4\x67\x0d\x86\x11\x0b\x54\xa6\x2e\x89\x01\xee\xe0\x17\x52\x2a\x56\x2b\xd8\x34\x2b\xdc\x3c\x68\xef\x42\xf8\x30\xd5\xbc\xe7\xce\xdb\x23\xf7\x47\x0b\xe2\x01\xe7\xb4\x4c\x96\xba\xb7\x52\xdc\x5c\xfb\x9e\x58\xa6\xf7\x40\xf2\x1d\xec\xbb\x7b\xa7\x44\x63\xcd\x29\x09\x92\x22\x22\x46\xec\x7b\xd9\x90\x7c\x6d\xf8\xef\xea\xef\x9f\x10\x30\x68\x52\x83\x72\x78\xd7\x5f\x74\xed\x0e\x3f\xf0\x4b\x8b\x78\xe4\xc9\xf3\x63\x88\x28\x5f\x19\x01\xa3\x26\xf5\xe7\xd8\x8d\x03\x52\x78\x50\x4f\x56\xef\x2d\x14\x1f\x85\x18\x99\xc0\x1b\x54\xd0\xf1\xca\xf0\xec\x86\x3f\xe2\x6b\x00\x00\x00\xff\xff\x18\xcf\x17\xc0\xa0\x03\x00\x00") func data_view_html_bytes() ([]byte, error) { return bindata_read( _data_view_html, "data/view.html", ) } func data_view_html() (*asset, error) { bytes, err := data_view_html_bytes() if err != nil { return nil, err } info := bindata_file_info{name: "data/view.html", size: 928, mode: os.FileMode(420), modTime: time.Unix(1425049421, 0)} a := &asset{bytes: bytes, info: info} return a, nil }

Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.

func Asset(name string) ([]byte, error) { cannonicalName := strings.Replace(name, "\\", "/", -1) if f, ok := _bindata[cannonicalName]; ok { a, err := f() if err != nil { return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err) } return a.bytes, nil } return nil, fmt.Errorf("Asset %s not found", name) }

AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetInfo(name string) (os.FileInfo, error) { cannonicalName := strings.Replace(name, "\\", "/", -1) if f, ok := _bindata[cannonicalName]; ok { a, err := f() if err != nil { return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err) } return a.info, nil } return nil, fmt.Errorf("AssetInfo %s not found", name) }

AssetNames returns the names of the assets.

func AssetNames() []string { names := make([]string, 0, len(_bindata)) for name := range _bindata { names = append(names, name) } return names }

_bindata is a table, holding each asset generator, mapped to its name.

var _bindata = map[string]func() (*asset, error){ "data/publish-gh-pages.sh": data_publish_gh_pages_sh, "data/srcco.css": data_srcco_css, "data/srcco.js": data_srcco_js, "data/view.html": data_view_html, }

AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:

data/
  foo.txt
  img/
    a.png
    b.png

then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.

func AssetDir(name string) ([]string, error) { node := _bintree if len(name) != 0 { cannonicalName := strings.Replace(name, "\\", "/", -1) pathList := strings.Split(cannonicalName, "/") for _, p := range pathList { node = node.Children[p] if node == nil { return nil, fmt.Errorf("Asset %s not found", name) } } } if node.Func != nil { return nil, fmt.Errorf("Asset %s not found", name) } rv := make([]string, 0, len(node.Children)) for name := range node.Children { rv = append(rv, name) } return rv, nil } type _bintree_t struct { Func func() (*asset, error) Children map[string]*_bintree_t } var _bintree = &_bintree_t{nil, map[string]*_bintree_t{ "data": &_bintree_t{nil, map[string]*_bintree_t{ "publish-gh-pages.sh": &_bintree_t{data_publish_gh_pages_sh, map[string]*_bintree_t{ }}, "srcco.css": &_bintree_t{data_srcco_css, map[string]*_bintree_t{ }}, "srcco.js": &_bintree_t{data_srcco_js, map[string]*_bintree_t{ }}, "view.html": &_bintree_t{data_view_html, map[string]*_bintree_t{ }}, }}, }}

Restore an asset under the given directory

func RestoreAsset(dir, name string) error { data, err := Asset(name) if err != nil { return err } info, err := AssetInfo(name) if err != nil { return err } err = os.MkdirAll(_filePath(dir, path.Dir(name)), os.FileMode(0755)) if err != nil { return err } err = ioutil.WriteFile(_filePath(dir, name), data, info.Mode()) if err != nil { return err } err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime()) if err != nil { return err } return nil }

Restore assets under the given directory recursively

func RestoreAssets(dir, name string) error { children, err := AssetDir(name) if err != nil {

File

return RestoreAsset(dir, name) } else {

Dir

for _, child := range children { err = RestoreAssets(dir, path.Join(name, child)) if err != nil { return err } } } return nil } func _filePath(dir, name string) string { cannonicalName := strings.Replace(name, "\\", "/", -1) return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...) }