// Code generated by go-bindata.
// sources:
// static/gh.css
// DO NOT EDIT!

package main

import (
	"bytes"
	"compress/gzip"
	"fmt"
	"io"
	"io/ioutil"
	"os"
	"path/filepath"
	"strings"
	"time"
)

func bindataRead(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)
	clErr := gz.Close()

	if err != nil {
		return nil, fmt.Errorf("Read %q: %v", name, err)
	}
	if clErr != nil {
		return nil, err
	}

	return buf.Bytes(), nil
}

type asset struct {
	bytes []byte
	info  os.FileInfo
}

type bindataFileInfo struct {
	name    string
	size    int64
	mode    os.FileMode
	modTime time.Time
}

func (fi bindataFileInfo) Name() string {
	return fi.name
}
func (fi bindataFileInfo) Size() int64 {
	return fi.size
}
func (fi bindataFileInfo) Mode() os.FileMode {
	return fi.mode
}
func (fi bindataFileInfo) ModTime() time.Time {
	return fi.modTime
}
func (fi bindataFileInfo) IsDir() bool {
	return false
}
func (fi bindataFileInfo) Sys() interface{} {
	return nil
}

var _staticGhCss = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x18\x5d\x8f\xab\xb8\xf5\x79\xf3\x2b\xdc\x59\xad\xb4\x7b\x15\xb2\x26\x84\x24\x03\xd2\x48\xf7\xae\x7a\xd5\x4a\xdd\xbe\x54\x7d\xeb\x8b\xc1\x26\xb8\x63\x6c\x6a\x9c\x99\xcc\xa2\xf9\xef\x15\x26\x80\x8d\x9d\x30\xa3\x56\x91\x46\x73\x7c\x3e\x7c\xbe\xcf\x31\xbf\x7e\x01\xdf\x50\x43\x73\x80\xf0\xbf\xcf\x8d\xaa\x08\x57\x0d\x28\x84\x04\x8a\x5c\x14\x40\x1c\x03\x46\xf9\x33\xc8\x05\x13\xb2\x59\x03\xa2\xf2\x0d\xf8\xf2\xeb\x6a\x53\x21\xf9\x8c\xc5\x2b\x0f\x32\x81\xdf\x40\xbb\xfa\x41\x53\x24\xe0\xc7\xe8\x10\xa1\x28\x4f\x57\xef\x73\x1a\x64\x52\xc1\xed\x21\xc6\xc7\x74\xf5\x43\x77\x4d\x80\x49\x2e\x24\x52\x54\xf0\x04\x70\xc1\x89\x8f\x3b\x29\x44\x7e\x6e\xd6\xc0\x39\x2f\xc5\x0b\x91\x96\xec\x70\x97\x1f\x73\x9f\xec\x33\xc7\x44\x32\xda\x5f\xb0\xca\x05\x26\xeb\x5a\x92\x56\xa1\x2c\x68\xe8\x1f\x24\xd9\xbd\xaf\x56\x4a\xad\x3b\x44\x5b\x08\xae\x92\x70\x5b\x5f\xc0\x6f\x82\x37\x82\xa1\x66\x0d\x1e\xfe\x46\x33\xd2\x0b\x03\xbf\x0b\x2e\x1e\xd6\xe0\x77\xc2\x99\x58\x83\xdf\xc4\x59\x52\x22\xd7\xa0\x12\x5c\x34\x35\xca\xc9\x7b\x27\xb9\x42\xf2\x44\x79\xa0\x44\x9d\xc0\xf4\x0a\x64\x42\x29\x51\x25\x30\xfd\x9f\x6f\x58\xad\x32\x26\xf2\xe7\xff\x9c\x85\x1a\xae\x4a\x60\x67\x02\xca\x18\x69\x33\x21\x31\x91\x41\x2e\x18\x43\x75\x43\x92\xe1\x9f\xf4\x8a\xe8\x64\x50\x7e\x4a\xe0\xbb\xc2\x6b\x55\xb6\x35\xc2\xb8\x87\x57\x33\xe7\xb7\x9d\x87\x0b\x26\x5e\x93\x92\x62\x4c\xb8\xd6\x3c\x28\x50\x45\xd9\x5b\xf2\xf0\x17\xc2\x5e\x88\xa2\x39\x02\x7f\x27\x67\xf2\xb0\x06\xe3\xc1\x1a\x3c\xfc\x83\x9c\x04\x01\xff\xfc\xeb\xc3\x1a\x7c\x95\x14\xb1\x35\x28\x24\x21\x0d\xe2\xcd\x1a\x74\x7f\x83\x86\x48\x5a\xf4\x02\x75\x08\xc2\x7d\x7d\x49\xbb\x10\x05\x25\xa1\xa7\x52\x25\xe1\x66\x9f\xbe\x0a\x89\x83\x57\x89\xea\x24\x93\x04\x3d\x07\x1d\xfc\x6e\xeb\xf8\xf4\x25\x29\xa8\x6c\x54\x90\x97\x94\x61\xcb\xf1\xe0\x4f\xb4\xaa\x85\x54\x88\x2b\x97\x89\xa1\x39\xcf\x10\x9f\xdb\x6c\x60\x83\xb2\x86\x70\xd5\xf6\x19\xf7\x63\x0e\xa1\x4b\xc1\xf3\x52\xc8\xb6\x16\x0d\xd5\xb9\x87\xb2\x46\xb0\xb3\x22\x69\xa7\x52\x08\xd3\x31\x0b\x18\x29\x54\x02\x53\x4c\x9b\x9a\xa1\xb7\x44\x47\x34\xbd\xc6\x22\x90\xda\x05\x9d\x4b\x86\x13\x4d\x1e\xc1\xfa\x32\xa4\x93\x3e\x08\xba\x93\x1b\x3a\xf4\x85\xd3\x8a\xb3\xea\xdc\x9a\x74\xf5\x35\xa7\x2c\xc3\xf5\xfc\x64\xeb\x9c\x44\xce\xc9\xce\x39\x89\x9d\x93\xfd\xe4\x02\x49\x18\x52\xf4\x85\xa4\x46\x70\x42\x52\xcd\xea\x42\x27\x80\xce\x87\xd7\x3e\x01\x32\xc1\xf0\x2c\x23\x76\xae\x01\x60\x23\x72\x45\x73\xc1\x83\xae\x5f\xb9\xe6\x2c\xe0\xa3\x05\xfc\x6e\x01\x1f\x2f\xe0\xf7\x36\xbe\x1d\xc2\xad\xbb\xdd\x35\x8d\x20\x84\xe9\x0b\x91\x5d\xe5\xb0\x00\x31\x7a\xe2\x49\x45\x31\x66\x9e\x70\x5d\x9b\xde\x35\xc2\xae\xb5\x0b\xf8\x68\x01\xbf\x5b\xc0\xc7\x0b\xf8\xbd\x8d\x6f\x87\xc0\x91\xca\xce\xe3\xa3\x2f\x8d\xed\x58\xa7\xf3\x26\xee\xcf\x5f\xfb\xc2\xa5\x64\xf8\x14\x75\xf4\x29\xea\xdd\xa7\xa8\xe3\x4f\x51\xef\xef\x51\x8f\x29\x45\xb9\x76\xa0\x6e\x24\x9e\x3a\x51\xca\x91\x1b\x02\x3d\x0a\xdd\x9a\xf1\xd0\x6e\xfd\xb4\x91\x8f\x36\xf2\xd3\xee\x7c\xb4\x3b\x3f\x6d\xec\xa3\x8d\xfd\xb4\x7b\x1f\xed\x1e\x8c\xd3\xbc\x1f\x30\x94\x97\x44\x52\xa7\xa5\x97\xe1\x30\x00\xc7\x01\xb0\x89\x48\x65\x4c\xa6\xed\x66\x1b\x93\x6a\xd6\x89\xb6\xc3\x34\x1d\xba\x57\x7d\x01\x8d\x60\x14\x83\x1f\x09\x71\xf3\x74\xbb\x74\x49\xb8\x39\x78\x2e\xd9\xc6\x9f\xbb\x26\x6a\x4d\x89\xae\xc0\x5d\xe4\xb0\xec\x2c\x96\xce\x52\x87\x24\x36\x49\x3c\xf8\xbd\x8d\x1f\xda\xda\xe1\x70\x98\x93\xd6\xf3\x30\x4d\x7b\xcc\x1c\x73\x66\xf3\x13\xe1\x9c\x60\xe7\x44\x6f\x40\xf3\xc3\x85\x85\xac\x1b\x3c\x8e\x4d\x63\xef\xda\x4d\x33\x78\xe4\xd4\x2c\x00\xa6\x19\xca\x9f\x4f\x52\x9c\x39\x0e\xae\x36\x93\x43\xf7\xbb\x06\x2d\x81\xc0\xd7\xb4\x7c\x96\xb5\x56\x7b\xdc\xba\x4e\x3e\xb3\x0d\x17\x01\xa3\x8d\x93\xe9\x62\xc4\x4c\x9b\x5c\xda\x81\x41\xa3\xde\x18\x09\xd4\x5b\xed\x1f\xfe\x67\xe6\x51\xe5\xcc\x3c\x7e\x16\x37\x0e\xcf\xec\xee\xa2\x3b\xbf\x90\xd1\xa7\xda\x64\xf0\x39\x1e\x33\x63\x1f\x75\x70\x00\x9b\x46\xce\x44\xa5\x76\x16\xf6\x50\xe7\x82\x84\x2a\xc4\x68\xee\x2c\x17\x3e\xf9\x78\x92\x0f\xb4\xd0\xe5\x5c\x31\x76\x71\x83\x37\xae\x2f\x46\x21\x0c\x65\xac\xc3\xbb\x9b\x8a\x18\x63\x47\x8b\x49\xdc\xd3\xcd\xcd\xf6\x1e\xcf\xed\xc5\x76\xce\xd5\x3f\x17\xec\x05\xf4\x95\x62\x55\x26\x21\x84\x3f\xa5\xe3\xf2\x8f\xce\x4a\xf4\xab\xb8\xde\xc2\x13\x2e\x64\x85\x98\x79\xf2\x4c\x48\x1d\x20\xc6\xbc\x37\x00\x55\xb6\x4b\xae\x1f\x08\xbd\xf5\x0c\xd4\x14\x95\xae\xf0\xc2\xa8\xbe\x0c\x25\x16\xde\xf5\xe5\x95\x5d\xb6\x6e\xa5\x16\x45\x31\x04\x45\x27\xd0\x24\x27\xcf\xf3\x5b\x72\x12\xae\xca\xde\xb7\x3f\x6f\xf9\x2f\x3e\xa9\xc7\xee\x37\x67\xa7\xd5\xa9\xad\xd0\x25\x30\x9c\x1b\x54\xe2\x8f\x20\x13\x97\x2e\x5f\x3b\xbb\xc6\x36\xdf\x59\xe6\x39\x9d\x8b\x6c\x6a\xc4\x37\x85\x44\xd5\x3c\x80\xb3\x27\xdb\x6d\xbe\xa7\xee\xdf\x19\x73\xc1\x04\x52\x49\x97\xa4\xd7\x44\xd0\xa1\x1f\x7c\x7f\x18\xcb\x21\xe9\x42\x00\x20\x80\xf3\xeb\x3e\x16\x96\x49\x09\xfd\xaf\xf6\xcf\x2d\x45\x96\x78\x3d\x56\x0c\xfa\xc6\x57\x1d\x73\x46\x90\x4c\x32\xa1\xca\xa1\x22\xa3\xc8\x19\x84\x5a\xae\x5e\xbe\x83\x9c\x70\x45\xe4\x7d\xbf\x1a\x42\x17\x25\xf9\x3c\x6d\xfa\xb1\x73\xb2\xc7\x95\x7a\x01\xee\x9f\x03\xbd\x9c\xc5\x8b\x26\x6f\x0e\x1f\x05\xb4\xec\x4f\x49\xd2\x2f\xcf\xff\x87\xed\x5a\xd0\x92\xe9\xbe\x14\x32\xb4\xd5\x32\x96\xee\x70\xad\xfe\x98\x08\x9d\x63\xba\x23\xdf\xae\x82\x6b\x07\xed\x9f\xe3\xba\xef\x7c\xa8\xbe\x46\xc9\x7d\x7a\xce\x2c\xbe\xc3\xe3\xf3\x7e\xaf\x8e\xc6\x58\x8f\xa6\x4f\xaa\xf3\xa1\x78\x2c\xa7\xa2\xd7\x9f\xbe\xb5\x5c\x99\xa3\x7a\x58\x6f\xf4\xf4\xda\x6c\x8d\xf7\xe0\xb8\x0f\x6f\xc7\x2f\x02\xd7\x4f\x64\xfd\x28\x3f\xc6\x3f\xb9\x7b\x96\x3c\x65\xe8\x67\xb8\xd6\xbf\x0d\xdc\xfd\x32\x74\x72\x89\x30\x3d\x37\x49\xe4\x0e\xe9\x4e\xc3\x24\x23\x85\x90\x8e\xa2\x1a\x85\x0a\x45\x9c\xf7\xac\x52\x37\x58\x94\xea\x19\x5a\x46\x94\x32\x3e\xa9\x05\xbd\x19\xb9\xe0\x8a\x70\x95\x3c\xfc\x0b\x42\x04\x1f\x7c\xba\x80\xcc\x73\x1b\xc8\xa4\xf5\x81\xc0\x59\x50\x08\xeb\x5f\x35\xf3\xb7\xf1\x8d\xb7\x4d\x2d\xc9\x93\xa6\x77\x16\x58\xd3\xc3\x7a\x1e\x79\xc6\x7b\x49\x15\xd1\x96\x91\xa4\x96\xc4\x08\x42\xa2\x24\xe2\x4d\x8d\x24\xe1\x6a\x5c\x75\x9d\x8f\x50\x25\x3d\x95\x4c\xa7\xf3\xf2\x0a\x35\x11\x77\x3a\xfb\xf6\xf7\xc1\x02\xbd\x93\xd9\x9b\x89\x9d\x2b\xb3\x07\x4f\xec\x59\xd2\x8b\x43\xf7\x5b\xce\x19\x5b\xab\xf9\x36\xe5\xba\xcc\xe3\xfe\x76\xfa\x82\x79\x93\xc6\x5b\x3d\xdd\xb9\x52\xb3\xb7\x7d\x3a\x2d\x11\x94\x53\x45\x11\x73\x9f\x26\x46\xf1\x0e\x34\xa6\x4b\xae\x99\x92\xce\xf5\x72\xdd\xf4\x91\x20\x0f\xda\xdf\x28\x93\x11\xed\xad\xae\xde\xc4\x3b\xac\x63\x95\x0d\xf5\x74\x75\xe1\x6a\x65\x24\x97\x91\x96\xdd\x4e\xf7\x6e\x04\x6d\x53\xb6\xd3\xbc\x37\xdf\x03\x57\x93\xcd\xa5\x74\x88\x8e\xc1\x5d\x15\x6b\x0b\x2c\x6d\x90\xda\xa0\xb0\x40\xca\x6c\xec\xa0\xc8\xe3\x2e\xde\x76\xcf\x62\x03\xd7\x58\x94\x4d\x66\x83\xb9\x0d\x62\x1b\xdc\xda\x20\xb1\x41\x5b\xe1\xc6\x56\xb8\xb9\xd8\x60\x38\xa8\x88\x8b\x18\x42\x68\xa9\xf8\x6c\x6b\xf1\x6c\x6b\xf1\xcc\x6d\xb0\xb6\x41\x69\x83\xca\x06\x2d\x48\x78\xde\x09\x16\xef\xa0\xe3\x2e\x3e\x5a\x18\x5b\xbf\xbc\xb2\xc1\xd1\xb4\xc7\xc7\xa3\xfb\x2c\xb4\x05\xd9\xca\xe7\xcd\xc4\xfa\xe8\x79\x3f\xda\xa4\xf7\x45\xf3\xd6\x5c\x3e\x4d\x04\xb2\xee\xe4\x2f\x16\xf8\x62\xdb\xf6\x72\xb2\x41\xda\x8e\x1f\x91\x8f\xf0\x68\x87\x8d\x67\x06\x72\xff\x6d\x76\x6b\x6e\x38\xf3\xbe\x69\x5c\x8c\x72\x1e\x77\xe4\xf1\xd1\x46\x8e\x1a\x1c\x21\x74\x34\x20\x93\xff\x20\x84\x70\xe1\x9e\xc2\x2e\x93\x05\xea\xd1\xa1\x71\x1c\xdb\x18\x35\xd9\xed\xa8\x44\xa4\x1c\xb0\x68\x1f\x1e\xc2\x83\xef\x2b\x4e\x84\xb7\x78\x6b\xb1\x9d\xb0\x21\xd3\x37\x53\x30\x9e\xd1\x83\xcd\x65\x81\x05\x21\x9b\x85\x2c\x64\xd0\x69\xd2\x1c\xc1\x79\x8d\x9e\x4a\x23\x55\x6d\x0c\xbd\xaf\x07\x2e\x66\xaa\xd3\x45\xd5\x51\x31\x53\x7d\xcc\x90\xe3\xd1\xae\xcc\x53\x7d\x2b\x4a\xa7\xe6\x7e\xb5\x9f\xce\x76\x62\xdd\xcf\x86\x93\xba\xe3\x1b\xf1\x7a\xff\xaa\xd7\x81\x37\xcb\x32\xbb\x37\x8f\x1e\x87\xe1\xe1\x31\xda\xdb\xc8\xb1\x39\x1c\xb3\xdd\xfe\x60\x8f\x9e\xac\xbe\x19\x8e\xdc\xec\x29\xae\x6f\xff\xfc\xf5\xfb\xf6\x7b\xfc\xbe\x51\x6f\x35\x09\xf2\xa6\x44\xb2\x06\x56\x17\x34\x93\xfb\xfb\xf7\x3b\x84\xea\xa3\x94\x53\xe1\x41\xe8\x94\xe9\x30\x19\x6f\x32\x8f\xf6\x6c\xbf\x3d\x86\x5f\xef\x5d\xc3\xed\x6b\x6e\x53\x8e\x9e\xfd\x1a\x85\x71\x78\xc7\x19\x4d\x3e\xa3\x5c\xfd\x37\x00\x00\xff\xff\x5f\xab\x9a\x78\xd8\x20\x00\x00")

func staticGhCssBytes() ([]byte, error) {
	return bindataRead(
		_staticGhCss,
		"static/gh.css",
	)
}

func staticGhCss() (*asset, error) {
	bytes, err := staticGhCssBytes()
	if err != nil {
		return nil, err
	}

	info := bindataFileInfo{name: "static/gh.css", size: 8408, mode: os.FileMode(420), modTime: time.Unix(1497400451, 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)
}

// MustAsset is like Asset but panics when Asset would return an error.
// It simplifies safe initialization of global variables.
func MustAsset(name string) []byte {
	a, err := Asset(name)
	if err != nil {
		panic("asset: Asset(" + name + "): " + err.Error())
	}

	return a
}

// 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){
	"static/gh.css": staticGhCss,
}

// 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 childName := range node.Children {
		rv = append(rv, childName)
	}
	return rv, nil
}

type bintree struct {
	Func     func() (*asset, error)
	Children map[string]*bintree
}
var _bintree = &bintree{nil, map[string]*bintree{
	"static": &bintree{nil, map[string]*bintree{
		"gh.css": &bintree{staticGhCss, map[string]*bintree{}},
	}},
}}

// RestoreAsset restores 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, filepath.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
}

// RestoreAssets restores an asset under the given directory recursively
func RestoreAssets(dir, name string) error {
	children, err := AssetDir(name)
	// File
	if err != nil {
		return RestoreAsset(dir, name)
	}
	// Dir
	for _, child := range children {
		err = RestoreAssets(dir, filepath.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, "/")...)...)
}

