// Code generated by go-bindata.
// sources:
// wski18n/resources/de_DE.all.json
// wski18n/resources/en_US.all.json
// wski18n/resources/es_ES.all.json
// wski18n/resources/fr_FR.all.json
// wski18n/resources/it_IT.all.json
// wski18n/resources/ja_JA.all.json
// wski18n/resources/ko_KR.all.json
// wski18n/resources/pt_BR.all.json
// wski18n/resources/zh_Hans.all.json
// wski18n/resources/zh_Hant.all.json
// DO NOT EDIT!

package wski18n

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 _wski18nResourcesDe_deAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")

func wski18nResourcesDe_deAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesDe_deAllJson,
		"wski18n/resources/de_DE.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/de_DE.all.json", size: 0, mode: os.FileMode(420), modTime: time.Unix(1520374115, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

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

func wski18nResourcesEn_usAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesEn_usAllJson,
		"wski18n/resources/en_US.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/en_US.all.json", size: 20708, mode: os.FileMode(420), modTime: time.Unix(1539294171, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

var _wski18nResourcesEs_esAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")

func wski18nResourcesEs_esAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesEs_esAllJson,
		"wski18n/resources/es_ES.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/es_ES.all.json", size: 0, mode: os.FileMode(420), modTime: time.Unix(1520374115, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

var _wski18nResourcesFr_frAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8a\xe6\x52\x50\xa8\xe6\x52\x50\x50\x50\x50\xca\x4c\x51\xb2\x52\x50\x4a\xaa\x2c\x48\x2c\x2e\x56\x48\x4e\x2d\x2a\xc9\x4c\xcb\x4c\x4e\x2c\x49\x55\x48\xce\x48\x4d\xce\xce\xcc\x4b\x57\xd2\x81\x28\x2c\x29\x4a\xcc\x2b\xce\x49\x2c\xc9\xcc\xcf\x03\xe9\x08\xce\xcf\x4d\x55\x40\x12\x53\xc8\xcc\x53\x70\x2b\x4a\xcd\x4b\xce\x50\xe2\x52\x50\xa8\xe5\x8a\xe5\x02\x04\x00\x00\xff\xff\x45\xa4\xe9\x62\x65\x00\x00\x00")

func wski18nResourcesFr_frAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesFr_frAllJson,
		"wski18n/resources/fr_FR.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/fr_FR.all.json", size: 101, mode: os.FileMode(420), modTime: time.Unix(1520374115, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

var _wski18nResourcesIt_itAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")

func wski18nResourcesIt_itAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesIt_itAllJson,
		"wski18n/resources/it_IT.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/it_IT.all.json", size: 0, mode: os.FileMode(420), modTime: time.Unix(1520374115, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

var _wski18nResourcesJa_jaAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")

func wski18nResourcesJa_jaAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesJa_jaAllJson,
		"wski18n/resources/ja_JA.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/ja_JA.all.json", size: 0, mode: os.FileMode(420), modTime: time.Unix(1520374115, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

var _wski18nResourcesKo_krAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")

func wski18nResourcesKo_krAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesKo_krAllJson,
		"wski18n/resources/ko_KR.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/ko_KR.all.json", size: 0, mode: os.FileMode(420), modTime: time.Unix(1520374115, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

var _wski18nResourcesPt_brAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")

func wski18nResourcesPt_brAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesPt_brAllJson,
		"wski18n/resources/pt_BR.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/pt_BR.all.json", size: 0, mode: os.FileMode(420), modTime: time.Unix(1520374115, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

var _wski18nResourcesZh_hansAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")

func wski18nResourcesZh_hansAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesZh_hansAllJson,
		"wski18n/resources/zh_Hans.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/zh_Hans.all.json", size: 0, mode: os.FileMode(420), modTime: time.Unix(1520374115, 0)}
	a := &asset{bytes: bytes, info: info}
	return a, nil
}

var _wski18nResourcesZh_hantAllJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")

func wski18nResourcesZh_hantAllJsonBytes() ([]byte, error) {
	return bindataRead(
		_wski18nResourcesZh_hantAllJson,
		"wski18n/resources/zh_Hant.all.json",
	)
}

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

	info := bindataFileInfo{name: "wski18n/resources/zh_Hant.all.json", size: 0, mode: os.FileMode(420), modTime: time.Unix(1520374115, 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){
	"wski18n/resources/de_DE.all.json":   wski18nResourcesDe_deAllJson,
	"wski18n/resources/en_US.all.json":   wski18nResourcesEn_usAllJson,
	"wski18n/resources/es_ES.all.json":   wski18nResourcesEs_esAllJson,
	"wski18n/resources/fr_FR.all.json":   wski18nResourcesFr_frAllJson,
	"wski18n/resources/it_IT.all.json":   wski18nResourcesIt_itAllJson,
	"wski18n/resources/ja_JA.all.json":   wski18nResourcesJa_jaAllJson,
	"wski18n/resources/ko_KR.all.json":   wski18nResourcesKo_krAllJson,
	"wski18n/resources/pt_BR.all.json":   wski18nResourcesPt_brAllJson,
	"wski18n/resources/zh_Hans.all.json": wski18nResourcesZh_hansAllJson,
	"wski18n/resources/zh_Hant.all.json": wski18nResourcesZh_hantAllJson,
}

// 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{
	"wski18n": &bintree{nil, map[string]*bintree{
		"resources": &bintree{nil, map[string]*bintree{
			"de_DE.all.json":   &bintree{wski18nResourcesDe_deAllJson, map[string]*bintree{}},
			"en_US.all.json":   &bintree{wski18nResourcesEn_usAllJson, map[string]*bintree{}},
			"es_ES.all.json":   &bintree{wski18nResourcesEs_esAllJson, map[string]*bintree{}},
			"fr_FR.all.json":   &bintree{wski18nResourcesFr_frAllJson, map[string]*bintree{}},
			"it_IT.all.json":   &bintree{wski18nResourcesIt_itAllJson, map[string]*bintree{}},
			"ja_JA.all.json":   &bintree{wski18nResourcesJa_jaAllJson, map[string]*bintree{}},
			"ko_KR.all.json":   &bintree{wski18nResourcesKo_krAllJson, map[string]*bintree{}},
			"pt_BR.all.json":   &bintree{wski18nResourcesPt_brAllJson, map[string]*bintree{}},
			"zh_Hans.all.json": &bintree{wski18nResourcesZh_hansAllJson, map[string]*bintree{}},
			"zh_Hant.all.json": &bintree{wski18nResourcesZh_hantAllJson, 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, "/")...)...)
}
