diff options
-rw-r--r-- | .bra.toml | 4 | ||||
-rw-r--r-- | .github/ISSUE_TEMPLATE.md | 4 | ||||
-rw-r--r-- | .travis.yml | 1 | ||||
-rw-r--r-- | README.md | 2 | ||||
-rw-r--r-- | cmd/web.go | 2 | ||||
-rw-r--r-- | conf/app.ini | 9 | ||||
-rw-r--r-- | conf/locale/TRANSLATORS | 3 | ||||
-rw-r--r-- | gogs.go | 2 | ||||
-rw-r--r-- | models/issue.go | 17 | ||||
-rw-r--r-- | models/org.go | 6 | ||||
-rw-r--r-- | models/repo.go | 16 | ||||
-rw-r--r-- | modules/bindata/bindata.go | 4 | ||||
-rw-r--r-- | modules/setting/setting.go | 6 | ||||
-rw-r--r-- | templates/.VERSION | 2 | ||||
-rw-r--r-- | templates/repo/pulls/tab_menu.tmpl | 6 | ||||
-rw-r--r-- | templates/repo/wiki/view.tmpl | 7 |
16 files changed, 53 insertions, 38 deletions
@@ -1,7 +1,7 @@ [run] init_cmds = [ #["grep", "-rn", "FIXME", "."], - ["make", "build-dev"], + ["make", "build-dev", "TAGS=sqlite"], ["./gogs", "web"] ] watch_all = true @@ -15,6 +15,6 @@ watch_exts = [".go"] ignore_files = [".+_test.go"] build_delay = 1500 cmds = [ - ["make", "build-dev"], # sqlite cert pam tidb + ["make", "build-dev", "TAGS=sqlite"], # cert pam tidb ["./gogs", "web"] ]
\ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 200026e3..02de0cd3 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -11,6 +11,10 @@ For bug reports, please give the relevant info: - [ ] PostgreSQL - [ ] MySQL - [ ] SQLite +- Can you reproduce the bug at http://try.gogs.io: + - [ ] Yes + - [ ] No + - [ ] Not relevant - Log gist: ## Description diff --git a/.travis.yml b/.travis.yml index 3a20b468..84d0c1df 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,7 +4,6 @@ go: - 1.4 - 1.5 - 1.6 - - tip before_install: - sudo apt-get update -qq @@ -3,7 +3,7 @@ Gogs - Go Git Service [ -##### Current version: 0.8.47 +##### Current version: 0.8.50 | Web | UI | Preview | |:-------------:|:-------:|:-------:| @@ -88,7 +88,7 @@ func checkVersion() { {"github.com/go-macaron/toolbox", toolbox.Version, "0.1.0"}, {"gopkg.in/ini.v1", ini.Version, "1.8.4"}, {"gopkg.in/macaron.v1", macaron.Version, "0.8.0"}, - {"github.com/gogits/git-module", git.Version, "0.2.7"}, + {"github.com/gogits/git-module", git.Version, "0.2.8"}, {"github.com/gogits/go-gogs-client", gogs.Version, "0.7.3"}, } for _, c := range checkers { diff --git a/conf/app.ini b/conf/app.ini index f50bc0f1..73f9a0ba 100644 --- a/conf/app.ini +++ b/conf/app.ini @@ -74,7 +74,7 @@ SSH_ROOT_PATH = ; Directory to create temporary files when test publick key using ssh-keygen, ; default is system temporary directory. SSH_KEY_TEST_PATH = -; Path to ssh-keygen, default is 'ssh-keygen' and let shells find out which one to call. +; Path to ssh-keygen, default is 'ssh-keygen' and let shell find out which one to call. SSH_KEYGEN_PATH = ssh-keygen ; Indicate whether to check minimum key size with corresponding type MINIMUM_KEY_SIZE_CHECK = false @@ -331,6 +331,13 @@ MAX_GIT_DIFF_LINES = 10000 ; see more on http://git-scm.com/docs/git-gc/1.7.5 GC_ARGS = +; Operation timeout in seconds +[git.timeout] +MIGRATE = 600 +MIRROR = 300 +CLONE = 300 +PULL = 300 + [i18n] LANGS = en-US,zh-CN,zh-HK,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,ja-JP,es-ES,pt-BR,pl-PL,bg-BG,it-IT NAMES = English,简体中文,繁體中文,Deutsch,Français,Nederlands,Latviešu,Русский,日本語,Español,Português do Brasil,Polski,български,Italiano diff --git a/conf/locale/TRANSLATORS b/conf/locale/TRANSLATORS index e4b029e9..fc96eeb5 100644 --- a/conf/locale/TRANSLATORS +++ b/conf/locale/TRANSLATORS @@ -12,6 +12,7 @@ Andrey Nering <andrey AT nering DOT com DOT br> Andrey Solomatin <toadron AT yandex DOT ru> Antoine GIRARD <sapk AT sapk DOT fr> Arthur Aslanyan <arthur DOT e DOT aslanyan AT gmail DOT com> +Aurelien Darragon <aurelien DOT darragon AT gmail DOT com> Barış Arda Yılmaz <ardayilmazgamer AT gmail DOT com> Christoph Kisfeld <christoph DOT kisfeld AT gmail DOT com> Cysioland @@ -24,6 +25,8 @@ Hamid Feizabadi <hamidfzm AT gmail DOT com> Huimin Wang <wanghm2009 AT hotmail DOT co DOT jp> ilko <kontact-mr.k AT outlook DOT com"> Ilya Makarov +Robin Hübner <profan AT prfn DOT se> +Jean THOMAS <contact AT tibounise DOT com> Juraj Bubniak <contact AT jbub DOT eu> Lafriks <lafriks AT gmail DOT com> Lauri Ojansivu <x AT xet7 DOT org> @@ -17,7 +17,7 @@ import ( "github.com/gogits/gogs/modules/setting" ) -const APP_VER = "0.8.47.0227" +const APP_VER = "0.8.50.0301" func init() { runtime.GOMAXPROCS(runtime.NumCPU()) diff --git a/models/issue.go b/models/issue.go index 94998d78..4c33bc6b 100644 --- a/models/issue.go +++ b/models/issue.go @@ -297,20 +297,17 @@ func newIssue(e *xorm.Session, repo *Repository, issue *Issue, labelIDs []int64, return err } - var label *Label - for _, id := range labelIDs { - if id == 0 { - continue - } + // During the session, SQLite3 dirver cannot handle retrieve objects after update something. + // So we have to get all needed labels first. + labels := make([]*Label, 0, len(labelIDs)) + if err = e.In("id", labelIDs).Find(&labels); err != nil { + return fmt.Errorf("Find all labels: %v", err) + } - label, err = getLabelByID(e, id) - if err != nil { - return err - } + for _, label := range labels { if err = issue.addLabel(e, label); err != nil { return fmt.Errorf("addLabel: %v", err) } - } if issue.MilestoneID > 0 { diff --git a/models/org.go b/models/org.go index 9d86df10..f70d182c 100644 --- a/models/org.go +++ b/models/org.go @@ -1060,7 +1060,7 @@ func (org *User) GetUserRepositories(userID int64) (err error) { And("`team_user`.uid=?", userID). Join("INNER", "`team_user`", "`team_user`.team_id=`team`.id"). Find(&teams); err != nil { - return fmt.Errorf("GetUserRepositories: get teams: %v", err) + return fmt.Errorf("get teams: %v", err) } teamIDs := make([]string, len(teams)) @@ -1080,10 +1080,10 @@ func (org *User) GetUserRepositories(userID int64) (err error) { Join("INNER", "`team_repo`", "`team_repo`.repo_id=`repository`.id"). Where("`repository`.owner_id=?", org.Id). And("`repository`.is_private=?", false). - Or("`team_repo`.team_id=(?)", strings.Join(teamIDs, ",")). + Or("`team_repo`.team_id IN (?)", strings.Join(teamIDs, ",")). GroupBy("`repository`.id"). Find(&org.Repos); err != nil { - return fmt.Errorf("GetUserRepositories: get repositories: %v", err) + return fmt.Errorf("get repositories: %v", err) } // FIXME: should I change this value inside method, diff --git a/models/repo.go b/models/repo.go index 75a4e660..cb040d5b 100644 --- a/models/repo.go +++ b/models/repo.go @@ -27,7 +27,7 @@ import ( "github.com/mcuadros/go-version" "gopkg.in/ini.v1" - "github.com/gogits/git-module" + git "github.com/gogits/git-module" api "github.com/gogits/go-gogs-client" "github.com/gogits/gogs/modules/bindata" @@ -367,11 +367,16 @@ func (repo *Repository) LocalCopyPath() string { func updateLocalCopy(repoPath, localPath string) error { if !com.IsExist(localPath) { - if err := git.Clone(repoPath, localPath, git.CloneRepoOptions{}); err != nil { + if err := git.Clone(repoPath, localPath, git.CloneRepoOptions{ + Timeout: time.Duration(setting.Git.Timeout.Clone) * time.Second, + }); err != nil { return fmt.Errorf("Clone: %v", err) } } else { - if err := git.Pull(localPath, true); err != nil { + if err := git.Pull(localPath, git.PullRemoteOptions{ + All: true, + Timeout: time.Duration(setting.Git.Timeout.Pull) * time.Second, + }); err != nil { return fmt.Errorf("Pull: %v", err) } } @@ -652,7 +657,7 @@ func MigrateRepository(u *User, opts MigrateRepoOptions) (*Repository, error) { if err = git.Clone(opts.RemoteAddr, repoPath, git.CloneRepoOptions{ Mirror: true, Quiet: true, - Timeout: 10 * time.Minute, + Timeout: time.Duration(setting.Git.Timeout.Migrate) * time.Second, }); err != nil { return repo, fmt.Errorf("Clone: %v", err) } @@ -1610,7 +1615,8 @@ func MirrorUpdate() { } repoPath := m.Repo.RepoPath() - if _, stderr, err := process.ExecDir(10*time.Minute, + if _, stderr, err := process.ExecDir( + time.Duration(setting.Git.Timeout.Mirror)*time.Second, repoPath, fmt.Sprintf("MirrorUpdate: %s", repoPath), "git", "remote", "update", "--prune"); err != nil { desc := fmt.Sprintf("Fail to update mirror repository(%s): %s", repoPath, stderr) diff --git a/modules/bindata/bindata.go b/modules/bindata/bindata.go index 856233f3..1c2f3420 100644 --- a/modules/bindata/bindata.go +++ b/modules/bindata/bindata.go @@ -282,7 +282,7 @@ func (fi bindataFileInfo) Sys() interface{} { return nil } -var _confAppIni = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xb4\x5a\x5b\x6f\xe3\x48\x76\x7e\xe7\xaf\xa8\xf1\x64\xd2\xee\x40\x17\xcb\x6e\x77\xf7\x78\xd7\x9b\x91\x25\xca\xd6\xb6\x6e\x43\x4a\xdd\xd3\xd3\x30\x68\x5a\x2c\x49\x1c\x53\xa4\x9a\x45\xda\xed\x41\x10\xec\x20\x0f\x01\xf2\x9a\x20\x79\x09\x82\xe4\x21\x08\xb0\xb9\x20\x8b\xbc\xec\x26\xc8\xd3\x20\xef\x3d\xff\x61\x31\x9b\xfc\x8b\x7c\xe7\x54\x51\xa2\xdc\x1e\x27\x0b\x24\x73\xb1\x78\xa9\x3a\x75\xce\xa9\x73\xf9\xce\x29\x7e\x2c\x06\xf6\x4b\xdb\x11\xfc\xa7\x3f\x6c\x77\x3b\xaf\xc5\xf8\xac\xeb\x8a\x4e\xb7\x67\x5b\x1f\x8b\x51\xcf\x6e\xba\xb6\xe8\x37\x5f\xd8\xa2\x75\xd6\x1c\x9c\xda\xae\x18\x0e\x44\x6b\xe8\x38\xb6\x3b\x1a\x0e\xda\xdd\xc1\xa9\x68\x4d\xdc\xf1\xb0\x8f\x87\x83\x4e\xf7\x54\xcf\xb4\x7e\x24\x9a\xab\x95\x88\xfd\xa5\x14\xd9\xc2\xcf\x84\x5a\x24\x37\x4a\x24\xb1\x90\xd7\x32\xbd\x15\x2b\x7f\x8e\x17\x61\x16\x49\xab\x39\x1a\x79\x83\x66\xdf\x16\xc7\xe2\x34\x99\xab\x23\xfc\x15\xa7\x61\x26\x5c\x99\x5e\x87\x53\x09\x4a\xad\x85\x1f\x63\x38\x9e\x85\x33\x71\x9b\xe4\x22\xcd\x63\x11\x25\x53\x3f\x8a\x6e\x2d\x67\x32\xf0\x26\x2e\xb8\x3f\x16\xf3\x30\xc3\x68\x3b\xcc\x16\x32\x15\x3b\x81\xbc\xde\xa9\x88\x9d\x55\x9a\x04\x3b\x22\xc1\x83\x4c\xaa\x0c\x4f\x02\x39\xf3\xf3\x08\xb4\x94\x1e\xc3\x14\x20\x3a\x31\x80\x7b\xcb\x7a\x93\xca\x55\xa2\xc2\x2c\x49\x6f\xcf\x2d\x67\x38\x1c\x8b\x63\xcb\x6d\x39\xdd\xd1\xd8\x1b\xbf\x1e\xd1\xb0\x4b\x5f\x2d\xb0\x52\xdb\x50\x6a\x0e\xdc\xae\x98\x2e\xfc\x54\xc9\xcc\xa2\x1b\x0f\xaa\x72\x5c\x1b\x13\x05\x86\x75\x92\x74\x2a\x8d\xdc\xb1\xbc\x11\x1b\xf2\x22\x4b\xc4\xa5\x14\xab\x34\xbc\xf6\x33\x69\x75\x86\x4e\xcb\xf6\x46\x4e\xf7\x65\x73\x4c\xcb\xcc\xfc\x48\x91\xfc\xa7\x51\x72\xe9\x47\x62\xe9\xbf\x0b\x97\xf9\x52\x4c\x53\xe9\x67\x21\x54\x19\x85\x4b\xe8\x24\x99\x95\x29\xae\x20\x7a\xae\x64\x5a\x11\xd5\x86\x58\x4a\x3f\x56\x22\x4e\xf4\x48\xab\xdf\xfc\xc2\x6b\x39\x76\x73\xdc\x1d\x0e\xbc\x5e\xb7\xdf\x25\x06\xab\x0d\xac\x30\xf2\xb3\xe9\x42\x90\x82\xc4\xdb\x5c\xe6\x52\x44\x32\x9e\x67\x8b\x0a\xd6\xbc\x62\xc5\xfb\x4a\x44\x7e\x8a\x4d\xc0\x05\xd6\x52\xe1\x25\x76\x6e\x34\xe9\xf5\x3c\xc7\xfe\x7c\x62\xbb\x63\x0f\x7f\x27\xb6\xd7\xb3\x07\xa7\xe3\x33\x90\x6d\xec\xe1\x1f\xe8\x32\x0f\xcf\x41\x7f\x90\x2f\x2f\xc1\x58\x99\xd5\x50\x2a\x6d\x19\x7e\x2a\xd9\x3a\x64\x20\xc2\x18\x16\x02\x55\xbd\x5b\x45\x09\x9e\x92\x91\x58\xf6\x17\xa3\xde\xd0\x81\x5a\x9a\xa7\xb0\x35\x6f\x30\xe9\x83\xfa\xfe\xde\x16\xd1\x50\xa9\xfc\x87\xc9\x31\x99\xae\xeb\x4e\xee\x10\x69\x6c\x13\x59\xab\x37\x59\x42\x59\xea\x0e\x11\x7f\x9a\x85\xd7\x61\x76\x2b\x66\x52\x06\x56\xc7\xb6\xdb\x1e\xab\x73\xd8\x87\x1a\x0d\xc1\x43\xd0\x7b\xe9\x47\x50\x1f\xc8\x5d\xc0\x0a\x97\xb2\x3a\x4d\x20\xca\x05\x76\x22\xf3\x45\xe6\xcf\x2b\xb4\x39\x81\xb8\xbc\x15\xcd\x38\x48\x93\x30\x10\x3f\xc1\xbc\x1a\x71\xd2\x8c\xb1\xd6\xb5\x1f\xe1\x19\x4f\xc2\xa6\x41\xf7\x3b\x31\x56\xd7\xf6\x1b\x84\xca\x87\xda\x77\xc4\x4d\x18\x45\x62\xe1\x5f\x93\x6b\xc9\xb5\x3d\xab\xec\x36\x22\x6b\xe9\x93\xea\xc2\x78\x96\x1c\x89\x45\x96\xad\xd4\x51\xbd\x0e\xb3\x96\x51\x02\xd3\x50\xb5\x79\x92\xcc\x23\x59\x83\x90\xf5\x1b\x79\x59\xcf\x57\x01\x2c\x4f\xd5\xf7\xf7\x1a\x4f\xea\x8d\x46\xdd\xcd\x57\xab\x24\xcd\xaa\xb3\x24\xad\x96\x04\xa8\x86\x71\xb5\xb5\x48\x13\xdc\x1f\x7c\xca\x2f\x0d\xfb\xd6\xf8\xcc\xee\xdb\x50\x03\xf6\xc8\xeb\xdb\xe3\xa6\x37\x6e\x9e\x42\x15\x17\x1f\xcf\x66\x87\x07\x4f\x0e\x2e\xd8\x04\x6a\x7e\xb0\x0c\xe3\x6d\x43\x20\x23\x7d\x78\xcb\xc8\xab\xb7\x77\xec\x70\xef\x43\x5b\x7a\x90\x84\x63\x8f\x86\x0f\x92\x88\x93\x0c\x31\xe6\x61\x22\x83\xe1\xb8\xdb\xba\x6b\x80\x87\x5b\x64\x92\x74\xee\xc7\xe1\xd7\xda\x2d\x1f\xa2\x35\x74\x4e\x3f\xe0\xc7\x7a\xb3\xf4\xd3\xab\x20\xb9\x61\x0d\xd9\x31\x6d\x32\xb6\x37\x0d\x60\x01\x98\x77\x09\x77\xbf\x82\x4f\x64\x32\x56\x20\x6f\xd9\x83\xe6\x49\xcf\xf6\x10\x61\xda\x70\xe2\x81\xed\x9d\xc0\xa5\x5f\x94\xc2\x45\x2f\x54\x1c\x15\xa6\xb9\xca\x92\xa5\x98\x38\xbd\xaa\x3b\xa5\xbd\x2c\x89\x89\xd0\xc9\xbc\x91\x5f\x87\xf1\x95\x12\x37\x0b\x19\x43\xa1\x71\x20\xd3\x30\x9e\x8b\xbe\xe1\x08\xe4\xb0\xdb\x58\xdd\x5f\xae\xc0\x15\x22\x6c\x65\xe9\xcf\x63\xc4\x39\x1d\xf4\x3d\x50\xf7\xdc\x16\x19\x81\x8b\x30\x69\xbd\xc1\xae\x22\xd0\x9d\x5b\x23\x67\x38\x1e\xc2\x2c\xc0\x17\x59\xa1\xd5\x1e\xf6\x9b\xdd\x01\xee\x38\x6e\x2f\x12\x95\x71\x68\xa5\xf9\x78\xf8\xc9\x6e\x31\xfe\x31\xd9\xeb\x27\xbb\x7a\x38\x6e\x3e\xd9\x3d\x1b\x8f\x47\xde\x68\xe8\x8c\x1f\xab\xba\xc5\x37\xcd\x76\x1b\xe1\xde\x5a\xbf\x00\x81\x03\x8a\x36\x10\x9d\x88\x8b\xdd\x76\xff\xcb\xc7\x24\x37\xf3\x4e\x49\x45\xdc\x24\xe9\x15\xd9\xdb\xae\xca\x11\xe8\x20\xb5\xeb\x9e\x09\x6d\xfc\x8f\xe1\xdb\x30\x01\x45\x62\xc3\x25\x84\xd2\x79\xa7\x06\x72\xdd\x58\x2c\xc1\xa9\x98\xfa\x0a\xca\xa3\xcc\x13\x24\x64\x32\x08\xe3\xd0\x1d\x82\xf7\x54\x67\xa6\xb2\x1b\x5e\x53\x00\xa0\xc9\xcd\x28\x83\x71\x50\x80\x8e\xa3\x5b\x93\xb9\x52\x5e\x57\xeb\x08\x84\x02\x49\x59\x88\x08\x12\x05\x45\xc9\x12\xac\x91\x5c\xfc\xb2\x66\xf5\x86\xad\x26\x42\xec\x46\x51\xa4\x4b\x28\x68\xad\xc4\xbb\xfa\x41\x52\xd2\x51\x82\x17\x9a\x21\x51\xe4\xd8\x6d\xde\x5c\x5a\xc6\xbf\xf6\xc3\x88\x5e\x5b\xed\xae\xcb\x66\x44\xc3\x36\xa6\xf3\x6a\x21\x39\x79\xc2\x39\xc5\x65\x1e\x46\x19\x6c\xb7\xc4\x71\x42\x4c\x67\x35\xcb\x1d\x37\x9d\x31\x4d\xf5\xe0\xa2\x2f\x39\xf7\x16\x14\xda\xc9\xd2\xc7\x24\x9d\xf8\x39\xbb\x21\x9a\x27\x4a\xbb\xc1\x34\x22\x47\x80\x24\x16\xcd\x5d\x9b\xc4\x66\xbb\x29\x15\x21\xfc\x88\x58\x7b\xd6\xff\x40\xc0\xec\xfd\xfe\xfe\x9d\x69\xf7\x70\x1e\xc1\x27\xe0\x3f\xd8\x0b\x9e\xd9\xeb\xba\x63\x7b\x50\x10\xf8\x64\xb7\xa0\xc6\x1c\x38\x09\x34\xb5\xf2\xb3\x05\x39\x11\xd1\x08\xc2\x54\x4e\x29\xbb\x6e\x81\x87\x47\x7f\x58\xaf\x29\xb5\x78\x54\xc1\x7a\x19\x1b\x87\x0e\xc9\x09\x6b\xef\x51\x7d\x81\x68\x59\x87\xc3\xe8\x51\x35\x5e\x97\x77\x72\xd4\xe4\x0c\xc9\x7b\x65\x08\xb3\x2d\x51\x5a\xc7\x7c\xb9\x44\x04\xf6\xf1\x6c\x16\x46\xd2\x38\x26\x67\xe6\x55\x7e\x19\x85\xd3\x2b\x71\x25\x6f\xb1\x04\x99\x2b\x08\x57\x71\x37\x97\x71\x05\xd4\x4a\xbc\xa9\x5b\x88\xbb\x2c\xd1\x5a\x8b\xa0\xf9\x78\x61\xbf\xf6\xc6\x94\xb5\x35\x2f\x1a\x01\x2c\x88\x8b\x12\xc9\x2d\x61\x37\xcf\x1f\x09\x3f\x46\x68\x92\x84\xe9\x64\x14\x29\xf0\x89\xfb\x04\x3a\xb8\x59\x84\x70\x2e\xda\x21\x12\x07\x21\x66\xbd\xd8\x29\x29\x5b\x8b\xbd\x21\xc4\x0e\x16\x84\x53\x92\xfa\xc6\x18\x1e\xfb\x94\x84\x90\xc8\x17\x9c\x8d\x49\x58\x15\x7e\x8d\x11\x80\x75\x48\x8c\x69\x2a\xd5\x2a\xc1\x34\x88\x9f\xdd\xae\xa4\xd5\xef\x0e\xba\xfd\x49\x9f\x45\x72\xbb\x5f\x22\x17\x9d\xd9\xad\x72\x38\x2c\x1c\xa2\xd5\x1e\x10\x08\xa3\x2c\x5b\xa0\xc2\x25\x9c\xcc\x1a\x76\x3a\x1c\x46\x0d\x04\xd4\xd3\x0a\xf7\x70\x86\x93\x31\xb2\x50\x6f\x78\x5a\xc6\x63\x32\x96\x29\x71\x0d\x25\x23\xbf\xe2\xc9\xef\x88\x5a\x7d\x4e\x71\x66\x2a\x61\x86\xd5\xa9\x7f\x9c\xa5\x80\x01\xd5\x20\x4f\x39\x27\x1c\x3f\x7f\xf6\x74\x6f\xb1\xb7\xdc\x53\xa2\x4a\x6e\x7b\xbc\xbc\xa5\x9f\x9a\x89\xab\x94\x8e\xad\x1f\x81\xce\x30\x15\x33\x64\x59\xe1\x8b\xda\x6a\xf6\x8e\x2d\x80\xcd\x3f\xcd\x60\xff\xfc\x86\x02\xc5\x2b\x28\x9c\xd0\x34\x2d\x16\xce\xb4\x02\x11\xea\xe1\xe8\xbb\x41\x02\x2a\xe4\xe9\x88\x7c\x73\x6c\x11\xf4\xa9\xe7\xf3\x44\x03\x34\x49\xa9\x8f\x35\xdb\x00\x05\xb1\x52\x91\x58\x5d\x4d\x55\x63\x5f\x54\xc9\xc7\x40\x95\x57\xaf\xd2\x9e\xea\x3b\xd8\x52\x35\x4e\x30\x4d\xfd\xef\x66\x61\x64\x31\x89\x5e\x28\xba\x08\xa4\xb2\x5a\x36\xe2\x06\x15\x08\xd0\xa6\x4e\x4f\x75\xc6\x28\xf5\x62\x19\x8b\xb6\xf1\xbe\x01\x86\x22\x96\x9f\xac\x08\xe3\x46\x04\x69\xc8\x41\xc9\xc6\x23\x12\x8a\xac\x52\x65\x50\xf7\x54\xeb\x8d\x3c\x78\xdb\x2b\x58\x05\x64\xe7\xb0\x36\x28\x8b\x13\x03\x1e\xcb\x77\x72\x9a\x43\xc1\x14\xd6\x90\xe9\xcb\x4e\xaa\xcb\x98\x88\x54\xcc\x80\x9b\x17\x3d\xfd\xb2\x3b\x12\x4a\x03\xa5\x22\x1b\xf3\xb3\x52\x0a\xf6\xb5\x85\x72\x99\x33\xe3\xb0\x19\x57\xa3\x64\x3e\xc7\x36\x32\xf0\xa9\xc0\x3f\x62\x0a\x6e\x3b\x14\x26\x34\xbe\x33\xb0\x77\xc7\xea\x35\xb9\xae\x22\xa0\x40\x7a\xa0\x11\x96\x2e\x37\x08\x0f\xac\x53\x77\x34\x07\x8a\xce\x16\x4b\xc5\xa2\x43\xb8\x30\xdd\x72\x1b\x8d\xe1\xc5\x2e\x85\x23\x14\x03\x30\x05\x83\x20\x61\x5e\xe4\x3a\x8f\x91\xad\xd5\xa2\x66\xa6\x78\x98\xe2\x91\xa7\xa9\x73\xcb\x6e\xef\x1f\x1e\x36\x3e\x65\x9c\xf3\xd4\xb2\x5b\x6d\xb7\x29\x84\xb9\x73\xf8\x9a\xef\xf6\x9e\x3c\xb7\xda\xeb\xdb\xc6\xde\xfe\x13\x00\x00\xa4\x54\x1f\xf5\x91\x3c\x2f\x95\x62\xcb\x5b\xf5\x36\xe2\x62\x0c\x46\x3f\x87\x07\x6b\x81\xf1\x30\xcc\xe4\x01\x5e\x84\xd9\x23\xa5\xf3\xe3\x74\x91\x50\xd1\xd7\x3e\x29\x6a\x2d\x9e\x6b\x9d\x0d\x5d\x8a\xd4\x8d\xfd\x67\xb5\x3d\xfc\xdb\x38\x3a\x38\xd8\x7b\x6a\x99\xb2\x91\x3c\xcf\x32\x35\x60\x8a\xe0\x6d\x8d\x9a\xae\xfb\xaa\xcd\xdb\xd7\xa1\x85\x4a\xcb\x22\x17\x57\x84\x2c\x4a\x44\x83\xa8\xc1\x59\x2a\xdf\xe6\x88\x91\x9a\x31\x64\x8c\x70\x76\x5b\x9d\xe5\x51\xb4\x83\x10\xd6\x5b\x97\x87\x7a\x7c\x41\xb6\xe0\x9f\xf5\xbf\x93\x85\xc1\xe5\x0e\xe3\x7b\xe1\x5f\xaa\x24\x82\x49\xad\xad\x2d\xe6\xfc\x00\xeb\x4c\xb9\x94\x32\x10\xc3\x32\x21\x91\x54\xc6\xe1\xa3\x16\x5c\x42\x83\x06\x2c\x13\x96\x9a\xe6\xd8\x61\x54\xa1\xdd\x01\x6c\x13\xc5\x16\xf0\x40\x39\xb4\x7d\xf4\x91\xae\xc9\x75\xc9\x3e\x1e\x8a\x17\xb6\x3d\x12\xaf\x87\x13\x47\xb0\x3a\xda\xcd\x71\x53\xb8\xcd\x8e\xfd\xd1\x47\x96\x6b\xa3\xf4\x1b\x53\x98\x04\x81\x8f\x3e\xfe\xac\xd3\xb6\x5f\x39\xf8\xef\x77\x7f\x6f\x97\xac\x3c\xcf\x12\x32\xd0\x90\x40\xe0\x52\x72\x1a\x0d\x7c\xb8\x3b\x22\x5f\x77\x80\x22\xaf\x6f\xf7\x4f\x10\x08\xdb\xcd\xd7\xc0\x79\xe2\x99\xd5\x1a\x0e\x5f\x74\x6d\xae\xbc\x4b\xbb\xe0\xf9\x37\x52\x91\xb9\x9a\xd7\xeb\x79\xe5\x31\x61\x8c\x54\x17\x84\x5a\x91\x0e\xd5\xc5\x8a\x42\x53\xf2\xee\x56\xf8\x39\x36\x26\xce\x0a\x7f\x5b\x48\x3f\x20\xa0\x44\x60\xc2\x94\x0c\x7c\x03\x5c\x0f\xd4\xe1\x52\xad\x3c\xfc\xe2\xb5\xd7\x9c\xa0\x0a\x19\xc0\x75\x75\x65\x6b\x2c\xe1\x8b\xea\x2b\xfb\x84\x5e\x55\xe9\x81\x81\xa6\xd0\xfa\xb9\xd5\x6c\x8d\xbb\x2f\xa9\x68\x69\xa3\x60\xa5\x2b\xe4\x10\x84\x79\x12\xac\xf1\x7c\x0f\xc4\x51\xba\x7b\xda\x86\x7e\x70\x10\xe2\x10\x73\x53\x00\xc1\x24\x9e\x85\xe9\x52\xc8\x2a\xe0\x4f\xc4\x2e\x9f\xca\x39\x40\x87\x8e\xff\xa0\x79\x4a\x90\xc3\xf1\x6c\x00\x9d\x9e\xc7\xad\x12\xa7\xbf\x85\x9b\xa4\x46\x82\xec\xde\x66\x32\x16\x20\xd3\x62\x83\x28\xf0\x01\xc0\x6a\x92\xc7\x1a\x55\x6e\xd2\x14\x93\x77\x58\xfe\x12\x51\x66\x71\x89\x30\x8a\x14\x3a\xe7\xc4\x07\x56\xaf\x43\x79\x03\xb2\xb7\xd9\x02\x11\xaa\x66\x51\xfd\xde\x45\x7d\xed\x76\x4f\x07\xd8\xe9\x97\x5d\xfb\x55\x89\x42\x9f\xa4\xa1\x22\x69\x66\xf6\xa4\x08\x78\x54\x14\x75\x5e\x7b\x24\x4d\x79\x38\x25\xa1\x00\xb5\x6e\x18\x6d\xaa\x4f\x60\xa0\x45\x7e\xc9\x25\x27\xf6\x1f\xa5\x35\xdb\x7a\x5d\x17\xed\xf5\xc6\xd3\xc3\x82\xe6\x43\xbb\xba\x5e\xe4\x87\xc6\x0e\x7f\x48\x09\xa6\xa0\x9a\xfa\xab\x0c\x70\x5d\x70\x85\xad\xcd\xeb\x83\x5d\x32\xb4\x5b\xcd\xd1\x18\x8e\x05\x1a\x94\xc5\x61\x39\x28\x0b\x16\x49\x72\x45\x21\xed\x0c\xbf\x28\xe4\xd5\xd5\x56\xa3\xc4\xba\xa7\xfb\xc1\x11\x3b\x0a\x09\x7d\x66\xe1\x52\x52\x5a\xc4\x06\xc0\xa7\x81\x5e\x94\xd5\xb6\xc9\xa8\x1c\x6f\xdc\xed\xdb\xc0\x18\xa6\x7b\xd0\xe4\xcd\x0f\x63\xf6\x7c\x59\x4a\xf0\xc4\x9d\xfb\xa2\x3b\xf2\xc6\x3d\xd7\xc3\x3c\xea\xd3\x6d\x44\xdc\x14\xa2\x8b\x50\x31\x9e\xa4\xfa\x3f\x5d\x6a\x31\xb1\xaa\xf4\x01\xcc\xb8\x00\xbd\xdb\x01\xa1\xe2\x13\xd9\x12\x15\x9b\x16\xbe\x5d\x22\x7b\x92\xcf\x66\x9c\x6a\x39\x8f\x50\x45\x89\x72\x27\x96\x51\x05\xe9\x45\xae\x4c\x5b\x28\xe4\xd4\x6a\x1a\x73\x41\x12\x3f\x42\xf6\x8f\x21\xc4\x0d\x95\x9a\xfc\x12\x28\xd0\x1e\xb4\xbd\x93\x49\xa7\x43\x50\xca\x1e\x68\x05\x11\xdf\xe4\xd8\x08\xaa\x48\xe0\xb7\x1a\xe0\xb3\xf7\xe8\xbe\xa0\x3b\x39\xf9\xa9\xdd\xd2\xf8\xbc\xe8\x11\x32\x3e\x67\x9b\xd4\xb8\x9e\xc0\xd8\x92\x8d\x4d\x2d\xb3\x55\x6d\x4e\xd7\x64\x68\x47\x87\xcf\x9f\xe1\xdd\xe7\x9f\x9b\x17\x6f\xdf\xf2\x53\x5d\xb5\x27\x99\xac\x10\xc3\x0c\x07\x08\x1a\xa1\xea\x55\x1a\x5f\xee\x3c\x79\x7a\x88\x18\xee\xf6\xc7\x23\x57\xb7\x59\x90\xa2\xa9\x63\x53\x83\x2f\x51\x42\xe7\xca\x07\x7b\x40\x9d\x4c\x9e\x8b\x85\x48\x7e\xa0\xeb\x64\xb9\xa4\xf2\x39\xe0\x16\x9c\xd3\x69\x89\xa7\x4f\xf6\x3e\xad\x89\xae\x5e\xc8\xd4\x21\x06\x36\xa8\x0d\x21\xa8\x88\x17\xf2\xa3\x1b\xc4\xdb\xf5\x7a\x45\xc6\x2b\x01\xd8\x33\xbb\x37\x24\xe8\xa5\x8d\x55\xa7\x15\x42\x91\x1c\x1e\xa9\xa8\x0f\x42\xda\x2f\xc4\xcf\xda\x3a\x30\xf0\x1c\xa6\xd2\xd2\xdd\x80\xf5\x04\x32\xfe\x6d\x8a\x5b\x80\x9f\xc1\xa6\x2e\x23\xc0\x0b\xc6\x79\xc4\x90\x09\xe3\x1c\xaf\x38\x5a\xe9\x4c\xc9\x12\x96\xd1\x68\x52\x16\xba\x26\x86\x54\x01\x53\x62\x44\xcc\x51\xbc\xb2\x92\xd1\xac\x4a\x41\x09\xfa\x2a\x4d\x54\xda\xc8\xd7\x06\xae\x63\x18\xca\xbe\x10\x52\x95\x07\x52\xba\xf7\x08\x4d\x76\x3b\x14\x20\x36\xc0\xfd\x1e\x84\xa9\x0d\xfc\x21\x88\x69\x46\x6c\x30\x26\x9b\x98\x46\xe2\x41\x00\xe0\x00\xbc\x46\x3b\x7a\x78\xb0\xbf\x5f\x13\x63\x12\xc2\xc0\xb7\xaf\x28\xb8\xe2\x52\xb2\xe1\xae\x07\x43\x42\x92\xff\x62\x87\x2c\x7c\x47\xfc\x98\x5f\x7f\x56\x42\xfb\x3f\xb9\x10\xda\x41\x85\xd5\x71\x86\x7d\x86\x2a\x7d\xe6\x62\x93\xe5\x38\xf6\xaf\x7c\xa5\x6e\x92\x34\x30\xf8\x66\x03\x6d\xac\x37\x53\x38\xf5\x36\xcc\x92\x4b\xf8\xbe\x46\x33\xf0\xaa\x1d\xe6\x83\x9e\xf2\xc8\x3b\xad\x6f\x33\xd8\x6a\xb6\x11\xed\x38\x61\xea\x27\x05\xb8\x31\xef\x0d\x62\x3a\x6d\xc1\x3b\x91\x8f\x10\x3d\x4b\x51\x6c\x8b\xe2\xd3\x3d\xc0\x14\x50\x7a\xd9\xa4\x8c\xf0\x74\xaf\x20\xa4\x79\xd1\x18\xa9\xc4\x0b\x08\xc4\x28\x49\x39\xcd\x53\x8f\xc5\xe8\x0e\xb3\x78\xc2\x11\x52\x6b\x46\x5d\x9b\xe3\x6c\xba\xaa\xd0\xcb\xe3\xa3\xa7\x07\xcf\x3e\xad\x14\x0a\x39\x5e\xfa\x53\x3f\x85\xd5\x06\x97\xc7\x7b\x95\x55\x92\x44\x8c\x5e\x8f\x11\x59\x2a\x61\x10\x49\xcf\x04\xdd\x63\x9d\xad\x8b\x95\x8f\xc4\xc5\x06\x44\x36\x1a\xfb\x8d\xc6\x85\x71\x35\x46\x08\x8a\x5a\x6c\xf7\xeb\x94\x8a\x8a\x8d\x6e\xb5\x6a\x0d\xae\xbd\x4f\xaf\x48\x4c\x2f\xbb\xed\x6d\xc5\x8e\xd2\xe4\x3a\x24\x44\xc3\x70\x61\x0e\xd7\x23\xf9\x95\x66\x0f\x43\x8e\xd8\xa7\xb8\x8d\x80\x04\x5d\x8c\xba\x95\x74\xac\x41\xcb\x23\x9a\x69\x0e\x37\x15\x0e\xc0\x6c\x6d\x5e\x13\x17\x8c\x21\xcd\x5b\x75\xf1\xff\xa6\x45\x12\xf8\x08\x30\xae\x8a\xdf\x6a\x90\x52\x76\xab\xf3\x43\x11\xa8\xb8\x60\x18\xf9\x14\xb1\xb2\xe0\x8c\x10\xf9\x51\xb1\xde\x67\x05\x8f\x5e\x46\x31\xed\x62\xad\x26\xcf\x9c\x1e\x19\x34\x5c\x48\x82\x35\x5d\x23\xf2\x14\x99\x37\x94\x1a\xff\x19\x78\x69\xc2\x51\xe8\x51\xab\xdc\xd3\xe0\x82\xba\x0a\x3a\x19\x51\xc0\x29\xf4\x05\x9b\x65\x38\x62\xcc\xb9\x1c\xe8\x74\xd8\xd0\x04\x01\x92\x27\x8e\xfd\x21\x78\x50\x28\xa5\xf5\xfa\x5b\x73\x19\x1e\x18\xd0\x40\x98\x51\x53\x29\x70\xc3\x86\x75\x78\x0f\xe9\x71\xed\x42\x5b\x44\x9e\x23\x4f\xec\x59\xa7\x2d\xaf\xf0\x1e\xc6\x04\x20\xa2\x5f\x6c\xa8\x44\xe1\x4c\x32\x9d\x7b\xa6\xbb\xb6\xeb\xea\x53\x9d\x8e\xbd\x3d\xdf\x7a\xb3\x0a\xa7\xd4\x05\x24\xab\x1e\x53\xca\x8b\xfc\x29\x77\x68\xcc\x73\x56\xf8\xa6\x26\xd2\x31\x5b\xdb\xf7\x5b\x94\x86\xf9\x1d\xfb\x36\xef\x2d\xea\xfc\x75\x5b\xb4\x8e\x49\xc5\xcd\x97\xa8\x36\x1c\x6f\x32\xea\x0d\x9b\x6d\xaf\x5c\xda\xf8\xd7\xf8\x9b\x2a\x3e\xc9\x43\x05\xab\xa4\x69\xfe\x53\x0c\x45\xbd\x97\xe0\xc1\x4e\x90\x27\x6a\x91\x27\x3b\x18\x84\x95\xfd\xa2\x79\xad\xa7\x0a\x85\xd2\x70\x0a\xb9\x69\x9f\x8f\x8a\x26\xe8\x34\xae\xcd\x53\x3d\x80\xc1\xa5\xbe\xac\x5b\xa7\x8e\x61\xc5\x45\x21\xc4\x1c\x16\xc3\xd6\x69\xb1\x18\xb2\xde\x69\x54\x5d\x59\x86\xf8\x80\x14\x9e\x9d\x97\x1a\xa1\x9b\xa7\x8a\x53\xac\x64\x7b\x00\x1c\x30\x67\x7f\x8a\x14\x79\x41\xdb\x7d\x61\x0c\x61\xb3\xfb\xdc\x52\xa3\x64\x57\x22\x72\x67\xa2\x56\xcf\xe6\xf5\xc5\x56\x49\x58\x7a\x41\xbd\x21\xd4\xfe\x20\xb6\x4c\x4a\xed\x7b\x2a\xe3\x95\x71\xb4\x70\x09\x7c\x57\xff\x6a\x25\xe7\x7f\xa0\x2f\x57\xf1\xdc\x42\xd1\x38\x7c\x65\xb7\xb9\x98\xa6\xd2\xe5\xde\x41\x94\x7a\xde\xe9\x2e\x1b\x12\x37\x63\x45\x8a\x2f\xdb\xbc\x1e\xec\xf7\x4f\xf8\x04\x91\x9a\x6c\xa0\xf4\xc4\x4c\x8b\xd7\xd8\x53\xf7\x2b\xf9\x00\x72\x15\x25\xfe\x1d\x25\x01\x6b\xd2\x6c\x4a\xbc\x2e\xa3\x5d\xeb\x0d\xd9\x32\x29\xdb\x5d\xc9\x29\xf2\xba\xd4\x1d\x1a\x93\x17\x49\x71\x54\x80\xdf\x52\x6b\x71\x45\xfd\x19\xc1\x47\x55\xdb\x54\x91\x95\x11\xc4\x0f\x0a\x22\xc8\x4e\x06\x61\x61\x38\x77\xe2\xf5\xb6\xd1\xa1\x6c\xab\x22\x26\x71\xf8\xae\xed\x13\xfc\x73\xf2\xcb\x5b\x73\xd5\x69\x3d\xdf\xdf\x2f\x7e\xbf\xd4\x17\x87\x7b\x95\x82\xf4\xfa\x42\xbf\x3a\x38\x38\xf8\x74\x7d\x31\xf0\xe3\xa4\x22\x5e\x84\x28\x2c\xa8\x5f\xea\x66\xc8\xef\xe6\xa7\x0f\x4c\x17\xae\xaf\xa7\x69\xc2\x09\x90\x6f\x69\x96\x49\x8e\xcb\xe2\xac\xae\xc0\xea\xfe\x25\xd5\x09\x25\x35\x28\x29\x0b\x7b\x9f\x27\x91\x8f\x8a\x2d\x49\xe7\xf5\xd5\xd5\xbc\x4e\xda\xab\x7f\x8c\xab\x2a\xc2\xae\xca\x7c\xb2\x92\xce\xd0\xe9\x37\x75\x2e\x43\x31\xaf\x4f\xaf\x37\xad\xac\x22\xa7\xd1\xf8\x44\x27\xb3\x22\xa9\x51\x36\xa6\x5f\x42\xcb\xe6\xb4\xd1\xf4\x71\xee\xb8\x7f\x31\xb7\x40\x66\x40\xbd\x3e\xf7\x8d\xe5\xca\xe7\x9e\xe8\x12\x23\x43\x3a\x2b\xa2\xe6\x6a\x61\x9b\xc5\xb4\x0a\x1b\xc9\x8e\x65\xfa\x29\xe6\xe9\xff\x65\xa9\x71\xb7\xca\xe0\x08\x5a\x08\x3e\x4e\x11\xfa\x48\xcc\xb6\xbc\xcc\xe7\x74\xd1\x85\xee\xe9\xf7\x95\x9f\xb2\xfc\x76\x9a\x26\x29\x5d\xb4\xd2\x90\xda\x10\x77\xb3\xbb\xa6\x60\xf5\x50\x7d\x12\xca\xe1\x5b\xab\x40\x3a\x85\x6e\x58\x74\x5d\xa0\xd3\x36\xd4\xcc\xf3\xf3\x62\xda\x7a\x02\x2b\xe3\xee\x68\x7a\xb8\x19\xfa\x23\x0d\x37\x75\xdc\x51\xd4\x20\x49\x60\x16\xb0\x6e\x0c\x15\x69\x92\xe1\x7a\x57\xdd\x90\x05\xb2\x0b\x26\x14\x18\xa8\x50\x31\xd0\xe2\xf1\x87\xf9\xaa\x37\x3c\xf5\x9c\xe1\x58\x83\x66\x13\xaa\xc8\x91\xf9\xb0\x71\xe3\xcd\x54\xee\x60\x17\x89\x9b\x2d\x1a\xac\xd3\x3d\xed\xcc\xd4\x37\x77\x0b\x3d\xb3\xa6\xd7\x81\x44\x2d\xc2\x59\xf6\x10\x9d\xfd\xe7\xe6\xf3\x84\x86\xf8\xf1\x8f\x71\x57\xa1\xee\x62\x29\xc4\x78\xee\x59\xb7\xc3\xc7\x3b\xcf\x39\x07\xce\x29\x0e\xb2\xd4\x01\x70\xf2\xed\x87\x72\xb5\x9b\xdd\xde\xeb\x0f\x24\xb3\xdf\xad\xc2\x94\x63\x07\x8a\x2b\xb0\x43\x04\x88\x97\xdd\x40\x46\x92\xda\x29\x33\xea\xb2\x2c\xc1\x36\x8d\xd8\x56\xd7\x33\x66\x66\xdd\xf2\x2a\x6d\x73\x7c\xdf\x1e\xc7\xe5\x5d\x73\xa4\x01\xb8\x1a\xdd\xf2\x21\x2a\x7f\x01\x62\xf4\xb1\x44\x52\x47\xfc\xbd\x07\x8a\x38\x36\xa0\xd0\x00\x95\xaf\x87\x7c\xde\x77\xcb\x07\x0f\x63\x7d\x52\x94\xae\x69\x73\x0d\x58\x42\xd2\x20\x12\x61\xb9\x87\xa8\x96\xc1\x8d\x71\x0b\x60\x43\x32\xf9\x1c\xd1\x51\xfb\x7e\x1e\xac\xee\xd8\x3d\x0d\x29\x9f\xe9\xe2\x9e\x9b\x21\x25\xe0\x6e\x4e\x65\xd7\xcd\x51\x8e\x24\x77\xb4\x44\x0f\xcb\x5a\x7a\xa8\x01\xb0\xcd\x40\x3b\xf4\xe7\x31\x96\x0b\xa7\x85\xea\x4c\x89\x5a\xc0\x91\x75\xb7\xe0\xe1\x91\x77\xfa\x07\x06\xfa\xff\xb6\xc5\x17\xef\xaf\x24\xf4\xbb\xe9\xe4\x27\x9b\xfc\x6c\xa2\xde\x9b\x9d\x46\xb9\xe6\xdb\xa9\xec\xec\x6f\xdd\x9f\xd3\xae\xd8\xd4\x06\x72\x4b\x8a\x5b\x07\xde\xbb\xca\xdb\x74\xd6\x37\x0a\xdc\xee\xb0\x8b\xad\x66\xb7\xd5\x76\xba\x7c\x38\x4b\xf1\xd5\xa7\x13\x54\x58\xc8\x3b\xa4\x15\xcd\xde\x11\xf7\xca\x8f\xe8\xcf\x67\xeb\xf3\x64\x6e\xcd\xfd\xbe\xf9\x96\xe9\x38\xcf\x66\xcf\x2d\xb2\x1b\x5d\x6f\xa6\x49\xf9\x0b\x85\x34\x8f\x63\x8a\x34\xf4\x98\x3b\x62\x9c\xfb\xc3\x84\x4e\xf4\x90\xb6\x6b\xa5\x86\x92\xf1\x45\x27\x8f\xcb\xa3\xd9\x78\xf9\x10\x86\x1b\xe3\x08\xde\xf4\x25\x56\x73\xec\x71\x6f\x64\x03\xcd\xe8\xc8\x27\xe0\xd4\x12\x52\x74\x56\x9a\x93\x9a\x3e\xbd\xf7\xcc\xc3\x73\x8b\xbe\x42\x68\x4f\x18\x80\x7d\xa6\x5d\xad\xb1\xb0\x78\xa7\xd6\x1f\x47\x2d\xa4\x1f\xd1\x29\x22\x9d\x30\x1a\x2a\xf4\x0d\x89\xa7\x9f\x7b\xfc\xfc\x3e\x42\xfb\x4f\x16\xd6\xa6\x51\xf7\x74\x8f\xe0\x58\x33\x9d\xe7\x1a\x17\x92\x6f\x73\x1e\x84\xc5\x3c\x42\x09\x22\x66\x6a\x7a\xf5\xa8\xc8\x7c\xd5\x6a\x1e\xa7\x84\xa9\x58\x69\xd5\x6a\xe6\xcf\x15\x65\x4f\x4a\xec\x9c\xfe\x93\x78\x9d\xe0\xc3\xac\xaa\xa6\x4b\x06\xb3\x41\x32\x55\xfc\x80\x88\xd5\x1b\xb5\x67\xb5\x43\xab\xe9\x9c\x52\x24\xb2\x18\x48\xd3\x21\x69\xe9\xbb\x2f\x3e\xf9\x22\xa3\x2f\xd4\xc3\xc2\x78\x2c\x1e\xbd\x83\x82\xee\x68\x97\x37\xe5\x7e\x59\xad\x37\x58\xf9\x9c\xa3\xdf\x69\x77\xec\xb5\xbb\x9d\xce\x76\xac\x7f\x58\xfe\xf9\xb4\x24\xbd\x3f\x27\x63\x54\xf0\x15\x08\x4f\xe9\xeb\xb7\x11\x7e\x3e\x35\xa2\xa3\x3c\x5a\x4b\xff\x26\x6c\x3c\xa7\x58\xdb\x1c\xf0\x03\x19\x57\x27\x6e\xe5\xeb\x45\xb5\x35\xa0\xbf\x67\x2f\x2a\x81\xac\xb6\xed\xca\x2c\xad\x76\x9c\x4a\x1c\x55\x07\xbd\x4a\x74\x5d\xed\xbd\xac\xa4\x79\xd5\x99\x54\xbe\xf2\xab\x3f\x1d\x55\xa4\xaa\xda\x6e\x65\x95\x55\x4f\x9c\xca\x2a\xaa\x8e\x7a\x95\xcb\x79\xf5\xe4\xb4\x82\x45\xbb\x63\x3e\x58\x22\xda\x36\x62\x75\xa8\x16\x95\xdf\xfc\xd3\xcf\x7e\xfd\xef\x7f\xfa\xeb\x5f\xfe\xe3\xf7\x7f\xfe\xc7\x95\xdf\xfc\xea\x9b\xff\xfa\xfb\x3f\x33\x37\x6d\x99\x67\x6a\xba\xa8\x74\x52\x3f\xfe\xf6\xef\xfc\x50\x55\x06\x12\x15\x3e\x90\x5a\xa0\x2a\x3d\x3f\xbb\x0e\xe5\x7f\xfc\x4d\x5e\x79\xff\xd7\xdf\xfd\xd1\x77\xdf\x7c\xf7\xcd\xfb\x7f\x7d\xff\xcb\xf7\xbf\xaa\x7c\xff\x17\x7f\xfb\xfd\x5f\xfe\xc3\x7f\xfe\xfc\xaf\x2a\xb6\x5a\xf9\xdf\xfe\x22\x89\x2a\xf4\x01\x43\x3e\xcf\xbf\xfd\xb9\xa2\x8f\x4c\x4e\x52\x5f\x85\xf4\x30\x52\x57\x61\xe5\xfd\x2f\xbe\xfb\x93\xf7\xff\xf6\xfe\x5f\xde\xff\xf3\x77\x3f\xd3\x34\x2a\xdd\xcc\x8f\x42\x02\x92\x1a\x88\x05\xbc\x0b\xe4\x10\x04\x0b\x51\xd9\x5d\x21\xb8\xb1\xa2\x28\x6c\x48\x02\x8e\xe7\x16\x6b\x8a\x35\x66\xb1\xba\x70\xf9\xf5\xc2\x62\x9d\xf1\x65\x75\xfc\xca\x62\xdd\xf1\x97\x90\x16\x2b\x90\xdc\x30\xb5\x58\x8b\xb8\x8c\x23\x8b\x55\x49\xdf\xf1\x5c\x5b\xac\x4f\x3a\x73\xcb\x2d\x56\x2a\x2e\xbf\xf2\x2d\xd6\x2c\xad\xa2\x2c\x56\x2f\x2e\xf9\xd7\x62\x35\xd3\x5d\x64\xb1\xae\xe9\x43\xca\xb9\xc5\x0a\xa7\xca\x24\xb3\x38\x5d\x9b\xcf\x9c\x90\x08\x56\x2b\x3e\xe4\x4f\xc4\x22\x9c\x2f\x22\xfc\x8f\x1a\x3c\xf2\xb9\x45\xc4\xc6\x55\x03\x14\x8a\x8e\x51\xa2\x5a\x6f\xd6\x23\x6a\x66\x1a\x1d\x9f\x25\x14\x1a\xe1\xce\x67\xc3\x57\x5e\x07\x40\x18\xb0\xf0\xc4\xd1\x47\xab\xa5\x24\xe8\x2e\x80\x20\x29\x90\xeb\x36\xc1\x5d\x28\xce\xa7\xfa\x64\xd9\xf3\x84\xcf\x4f\x18\x99\x27\xc0\x0c\x5b\x74\x29\x84\xeb\x53\x07\xf6\xaa\xff\x0e\x00\x00\xff\xff\xf6\xf3\xd9\x37\x56\x2b\x00\x00") +var _confAppIni = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xb4\x5a\x5b\x6f\xe3\x48\x76\x7e\xe7\xaf\xa8\xf1\x64\xd2\xdd\x81\x2e\x96\xdd\x76\xf7\x78\xd7\x9b\x91\x25\xca\xd6\xb6\x6e\x43\x4a\xdd\xd3\xd3\x30\x68\x5a\x2c\x49\x1c\x53\xa4\x9a\x45\xda\xed\x41\x10\xec\x20\x0f\x01\xf2\x9a\x20\x79\x09\x82\xe4\x21\x08\xb0\xb9\x20\x8b\xbc\xec\x26\xc8\xd3\x20\xef\x3d\xff\x61\x31\x9b\xfc\x8b\x7c\xe7\x54\x51\xa2\xdc\x1e\x27\x0b\x24\x73\xb1\x78\xa9\x3a\x55\x75\xea\x9c\xf3\x7d\xe7\x14\x3f\x16\x03\xfb\xa5\xed\x08\xfe\xd3\x1f\xb6\xbb\x9d\xd7\x62\x7c\xd6\x75\x45\xa7\xdb\xb3\xad\x8f\xc5\xa8\x67\x37\x5d\x5b\xf4\x9b\x2f\x6c\xd1\x3a\x6b\x0e\x4e\x6d\x57\x0c\x07\xa2\x35\x74\x1c\xdb\x1d\x0d\x07\xed\xee\xe0\x54\xb4\x26\xee\x78\xd8\xc7\xc3\x41\xa7\x7b\xaa\x7b\x5a\x3f\x12\xcd\xd5\x4a\xc4\xfe\x52\x8a\x6c\xe1\x67\x42\x2d\x92\x1b\x25\x92\x58\xc8\x6b\x99\xde\x8a\x95\x3f\xc7\x8b\x30\x8b\xa4\xd5\x1c\x8d\xbc\x41\xb3\x6f\x8b\x63\x71\x9a\xcc\xd5\x11\xfe\x8a\xd3\x30\x13\xae\x4c\xaf\xc3\xa9\x84\xa4\xd6\xc2\x8f\xd1\x1c\xcf\xc2\x99\xb8\x4d\x72\x91\xe6\xb1\x88\x92\xa9\x1f\x45\xb7\x96\x33\x19\x78\x13\x17\xb3\x3f\x16\xf3\x30\x43\x6b\x3b\xcc\x16\x32\x15\x3b\x81\xbc\xde\xa9\x88\x9d\x55\x9a\x04\x3b\x22\xc1\x83\x4c\xaa\x0c\x4f\x02\x39\xf3\xf3\x08\xb2\x94\x6e\xc3\x12\xb0\x74\x9a\x00\xee\x2d\xeb\x4d\x2a\x57\x89\x0a\xb3\x24\xbd\x3d\xb7\x9c\xe1\x70\x2c\x8e\x2d\xb7\xe5\x74\x47\x63\x6f\xfc\x7a\x44\xcd\x2e\x7d\xb5\xc0\x48\x6d\x23\xa9\x39\x70\xbb\x62\xba\xf0\x53\x25\x33\x8b\x6e\x3c\xa8\xca\x71\x6d\x74\x14\x68\xd6\x49\xd2\xa9\x34\xeb\x8e\xe5\x8d\xd8\x88\x17\x59\x22\x2e\xa5\x58\xa5\xe1\xb5\x9f\x49\xab\x33\x74\x5a\xb6\x37\x72\xba\x2f\x9b\x63\x1a\x66\xe6\x47\x8a\xd6\x7f\x1a\x25\x97\x7e\x24\x96\xfe\xbb\x70\x99\x2f\xc5\x34\x95\x7e\x16\x42\x95\x51\xb8\x84\x4e\x92\x59\x59\xe2\x0a\x4b\xcf\x95\x4c\x2b\xa2\xda\x10\x4b\xe9\xc7\x4a\xc4\x89\x6e\x69\xf5\x9b\x5f\x78\x2d\xc7\x6e\x8e\xbb\xc3\x81\xd7\xeb\xf6\xbb\x34\xc1\x6a\x03\x23\x8c\xfc\x6c\xba\x10\xa4\x20\xf1\x36\x97\xb9\x14\x91\x8c\xe7\xd9\xa2\x82\x31\xaf\x58\xf1\xbe\x12\x91\x9f\x62\x13\x70\x81\xb1\x54\x78\x89\x9d\x1b\x4d\x7a\x3d\xcf\xb1\x3f\x9f\xd8\xee\xd8\xc3\xdf\x89\xed\xf5\xec\xc1\xe9\xf8\x0c\x62\x1b\xbb\xf8\x07\xba\xcc\xc3\x73\xc8\x1f\xe4\xcb\x4b\x4c\xac\x3c\xd5\x50\x2a\x6d\x19\x7e\x2a\xd9\x3a\x64\x20\xc2\x18\x16\x02\x55\xbd\x5b\x45\x09\x9e\x92\x91\x58\xf6\x17\xa3\xde\xd0\x81\x5a\x9a\xa7\xb0\x35\x6f\x30\xe9\x43\xfa\xde\xee\x96\xd0\x50\xa9\xfc\x87\xc5\xb1\x98\xae\xeb\x4e\xee\x08\x69\x6c\x0b\x59\xab\x37\x59\x42\x59\xea\x8e\x10\x7f\x9a\x85\xd7\x61\x76\x2b\x66\x52\x06\x56\xc7\xb6\xdb\x1e\xab\x73\xd8\x87\x1a\x8d\xc0\x03\xc8\x7b\xe9\x47\x50\x1f\xc4\x5d\xc0\x0a\x97\xb2\x3a\x4d\xb0\x94\x0b\xec\x44\xe6\x8b\xcc\x9f\x57\x68\x73\x02\x71\x79\x2b\x9a\x71\x90\x26\x61\x20\x7e\x82\x7e\x35\x9a\x49\x33\xc6\x58\xd7\x7e\x84\x67\xdc\x09\x9b\x06\xdd\xef\xc4\x18\x5d\xdb\x6f\x10\x2a\x1f\x6a\xdf\x11\x37\x61\x14\x89\x85\x7f\x4d\xae\x25\xd7\xf6\xac\xb2\xdb\x88\xac\xa5\x4f\xaa\x0b\xe3\x59\x72\x24\x16\x59\xb6\x52\x47\xf5\x3a\xcc\x5a\x46\x09\x4c\x43\xd5\xe6\x49\x32\x8f\x64\x0d\x8b\xac\xdf\xc8\xcb\x7a\xbe\x0a\x60\x79\xaa\xbe\xb7\xdb\x78\x5a\x6f\x34\xea\x6e\xbe\x5a\x25\x69\x56\x9d\x25\x69\xb5\xb4\x80\x6a\x18\x57\x5b\x8b\x34\xc1\xfd\xfe\xa7\xfc\xd2\x4c\xdf\x1a\x9f\xd9\x7d\x1b\x6a\xc0\x1e\x79\x7d\x7b\xdc\xf4\xc6\xcd\x53\xa8\xe2\xe2\xe3\xd9\xec\x60\xff\xe9\xfe\x05\x9b\x40\xcd\x0f\x96\x61\xbc\x6d\x08\x64\xa4\x0f\x6f\x19\x79\xf5\xf6\x8e\x1d\xec\x7e\x68\x4b\x0f\x8a\x70\xec\xd1\xf0\x41\x11\x71\x92\x21\xc6\x3c\x2c\x64\x30\x1c\x77\x5b\x77\x0d\xf0\x60\x4b\x4c\x92\xce\xfd\x38\xfc\x5a\xbb\xe5\x43\xb2\x86\xce\xe9\x07\xf3\xb1\xde\x2c\xfd\xf4\x2a\x48\x6e\x58\x43\x76\x4c\x9b\x8c\xed\x4d\x03\x58\x00\xfa\x5d\xc2\xdd\xaf\xe0\x13\x99\x8c\x15\xc4\x5b\xf6\xa0\x79\xd2\xb3\x3d\x44\x98\x36\x9c\x78\x60\x7b\x27\x70\xe9\x17\xa5\x70\xd1\x0b\x15\x47\x85\x69\xae\xb2\x64\x29\x26\x4e\xaf\xea\x4e\x69\x2f\x4b\xcb\x44\xe8\xe4\xb9\x91\x5f\x87\xf1\x95\x12\x37\x0b\x19\x43\xa1\x71\x20\xd3\x30\x9e\x8b\xbe\x99\x11\xc4\x61\xb7\x31\xba\xbf\x5c\x61\x56\x88\xb0\x95\xa5\x3f\x8f\x11\xe7\x74\xd0\xf7\x20\xdd\x73\x5b\x64\x04\x2e\xc2\xa4\xf5\x06\xbb\x8a\x40\x77\x6e\x8d\x9c\xe1\x78\x08\xb3\xc0\xbc\xc8\x0a\xad\xf6\xb0\xdf\xec\x0e\x70\xc7\x71\x7b\x91\xa8\x8c\x43\x2b\xf5\xc7\xc3\x4f\x1e\x17\xed\x9f\x90\xbd\x7e\xf2\x58\x37\xc7\xcd\x27\x8f\xcf\xc6\xe3\x91\x37\x1a\x3a\xe3\x27\xaa\x6e\xf1\x4d\xb3\xdd\x46\xb8\xb7\xd6\x2f\x20\x60\x9f\xa2\x0d\x96\x4e\xc2\xc5\xe3\x76\xff\xcb\x27\xb4\x6e\x9e\x3b\x81\x8a\xb8\x49\xd2\x2b\xb2\xb7\xc7\x2a\x47\xa0\xc3\xaa\x5d\xf7\x4c\x68\xe3\x7f\x02\xdf\x86\x09\x28\x5a\x36\x5c\x42\x28\x8d\x3b\x35\x88\xeb\xc6\x62\x89\x99\x8a\xa9\xaf\xa0\x3c\x42\x9e\x20\x21\x93\x41\x18\x87\xee\x10\xbc\xa7\x1a\x99\xca\x6e\x78\x4d\x01\x80\x3a\x37\xa3\x0c\xc6\x41\x01\x3a\x8e\x6e\x0d\x72\xa5\x3c\xae\xd6\x11\x04\x05\x92\x50\x88\x04\x92\x04\x45\x60\x89\xa9\xd1\xba\xf8\x65\xcd\xea\x0d\x5b\x4d\x84\xd8\x8d\xa2\x48\x97\x50\xd0\x5a\x89\x77\xf5\x03\x50\xd2\x51\x82\x07\x9a\x01\x28\x72\xec\x36\x6f\x2e\x0d\xe3\x5f\xfb\x61\x44\xaf\xad\x76\xd7\x65\x33\xa2\x66\x1b\xd3\x79\xb5\x90\x0c\x9e\x70\x4e\x71\x99\x87\x51\x06\xdb\x2d\xcd\x38\xa1\x49\x67\x35\xcb\x1d\x37\x9d\x31\x75\xf5\xe0\xa2\x2f\x19\x7b\x0b\x09\xed\x64\xe9\xa3\x93\x06\x7e\x46\x37\x44\xf3\x44\x69\x37\x98\x46\xe4\x08\x58\x89\x45\x7d\xd7\x26\xb1\xd9\x6e\x82\x22\x84\x1f\x11\x6b\xcf\xfa\x1f\x04\x98\xbd\xdf\xdb\xbb\xd3\xed\x9e\x99\x47\xf0\x09\xf8\x0f\xf6\x82\x7b\xf6\xba\xee\xd8\x1e\x14\x02\x3e\x79\x5c\x48\xe3\x19\x38\x09\x34\xb5\xf2\xb3\x05\x39\x11\xc9\x08\xc2\x54\x4e\x09\x5d\xb7\xc8\xc3\xa3\x3f\xac\xd7\x94\x5a\x3c\xaa\x60\xbc\x8c\x8d\x43\x87\xe4\x84\xb5\xf7\xa8\xbe\x40\xb4\xac\xc3\x61\x74\xab\x1a\x8f\xcb\x3b\x39\x6a\x32\x42\xf2\x5e\x19\xc1\x6c\x4b\x04\xeb\xe8\x2f\x97\x88\xc0\x3e\x9e\xcd\xc2\x48\x1a\xc7\x64\x64\x5e\xe5\x97\x51\x38\xbd\x12\x57\xf2\x16\x43\x90\xb9\x42\x70\x15\x77\x73\x19\x57\x20\xad\x34\x37\x75\x8b\xe5\x2e\x4b\xb2\xd6\x4b\xd0\xf3\x78\x61\xbf\xf6\xc6\x84\xda\x7a\x2e\x9a\x01\x2c\x68\x16\x25\x91\x5b\x8b\xdd\x3c\x7f\x24\xfc\x18\xa1\x49\x12\xa7\x93\x00\xa2\x59\x88\xdb\x04\x2a\xb8\x59\x84\xf0\x2d\xda\x20\x5a\x0d\x22\xcc\x7a\xac\x53\xd2\xb5\x5e\xf5\x46\x0e\xfb\x57\x10\x4e\x69\xd1\x37\xc6\xee\xd8\xa5\x24\xd6\x08\xb8\x60\x30\xa6\xb5\xaa\xf0\x6b\xb4\x00\xab\x03\x2e\xa6\xa9\x54\xab\x04\xdd\xb0\xfa\xec\x76\x25\xad\x7e\x77\xd0\xed\x4f\xfa\xbc\x22\xb7\xfb\x25\xa0\xe8\xcc\x6e\x95\xa3\x61\xe1\x0f\xad\xf6\x80\x38\x18\x81\x6c\x41\x0a\x97\xf0\x31\x6b\xd8\xe9\x70\x14\x35\x0c\x50\x77\x2b\xbc\xc3\x19\x4e\xc6\x00\xa1\xde\xf0\xb4\x4c\xc7\x64\x2c\x53\x9a\x35\x74\x0c\x78\xc5\x93\xdf\x11\xb5\xfa\x9c\xc2\xcc\x54\xc2\x0a\xab\x53\xff\x38\x4b\xc1\x02\xaa\x41\x9e\x32\x24\x1c\x3f\x7f\x76\xb8\xbb\xd8\x5d\xee\x2a\x51\x25\xaf\x3d\x5e\xde\xd2\x4f\xcd\x84\x55\x42\x63\xeb\x47\x90\x33\x4c\xc5\x0c\x20\x2b\x7c\x51\x5b\xcd\xde\xb1\x01\xb0\xf5\xa7\x19\xcc\x9f\xdf\x50\x9c\x78\x05\x85\x13\x99\xa6\xc1\xc2\x99\x56\x20\x22\x3d\xfc\xfc\x71\x90\x40\x0a\x39\x3a\x02\xdf\x1c\x3b\x04\x7d\xea\xfe\xdc\xd1\xf0\x4c\x52\xea\x13\x3d\x6d\x70\x82\x58\xa9\x48\xac\xae\xa6\xaa\xb1\x27\xaa\xe4\x62\x90\xca\xa3\x57\x69\x4f\xf5\x1d\x4c\xa9\x1a\x27\xe8\xa6\xfe\x77\xbd\xd0\xb2\xe8\x44\x2f\x14\x5d\x04\x52\x59\x2d\x1b\x61\x83\xf2\x03\x68\x53\xa3\x53\x9d\x29\x4a\xbd\x18\xc6\xa2\x6d\xbc\xaf\x81\x91\x88\xe1\x27\x2b\xa2\xb8\x11\x31\x1a\xf2\x4f\x32\xf1\x88\x16\x45\x46\xa9\x32\xa8\x7b\xaa\xf5\x46\x0e\xbc\xed\x14\xac\x02\x32\x73\x58\x1b\x94\xc5\xb8\x80\xc7\xf2\x9d\x9c\xe6\x50\x30\x45\x35\x00\x7d\xd9\x47\x75\x16\x13\x91\x8a\x99\x6f\xf3\xa0\xa7\x5f\x76\x47\x42\x69\x9e\x54\x80\x31\x3f\x2b\x21\xb0\xaf\x2d\x94\xb3\x9c\x19\x47\xcd\xb8\x1a\x25\xf3\x39\xb6\x91\x79\x4f\x05\xfe\x11\x53\x6c\xdb\xa1\x28\xa1\xe9\x9d\x61\xbd\x3b\x56\xaf\xc9\x69\x15\xf1\x04\xd2\x03\xb5\xb0\x74\xb6\x41\x74\x60\x8d\xdc\xd1\x1c\x24\x3a\x5b\x2c\x15\x2f\x1d\x8b\x0b\xd3\x2d\xb7\xd1\x14\x5e\x3c\xa6\x68\x84\x5c\x00\xa6\x60\x08\x24\xcc\x8b\x5c\xe7\x09\xc0\x5a\x2d\x6a\xa6\x8b\x87\x2e\x1e\x79\x9a\x3a\xb7\xec\xf6\xde\xc1\x41\xe3\x53\xa6\x39\x87\x96\xdd\x6a\xbb\x4d\x21\xcc\x9d\xc3\xd7\x7c\xb7\xfb\xf4\xb9\xd5\x5e\xdf\x36\x76\xf7\x9e\x02\xff\x81\xa8\x3e\xd2\x23\x79\x5e\xca\xc4\x96\xb7\xea\x6d\xc4\xb9\x18\x8c\x7e\x0e\x0f\xd6\x0b\xc6\xc3\x30\x93\xfb\x78\x11\x66\x8f\x94\x86\xc7\xe9\x22\xa1\x9c\xaf\x7d\x52\xa4\x5a\xdc\xd7\x3a\x1b\xba\x14\xa8\x1b\x7b\xcf\x6a\xbb\xf8\xb7\x71\xb4\xbf\xbf\x7b\x68\x99\xac\x91\x3c\xcf\x32\x29\x60\x8a\xd8\x6d\x8d\x9a\xae\xfb\xaa\xcd\xdb\xd7\xa1\x81\x4a\xc3\x02\x8a\x2b\x42\x16\x19\xa2\x21\xd4\x98\x59\x2a\xdf\xe6\x08\x91\x7a\x62\x00\x8c\x70\x76\x5b\x9d\xe5\x51\xb4\x83\x10\xd6\x5b\x67\x87\xba\x7d\x21\xb6\x98\x3f\xeb\x7f\x27\x0b\x83\xcb\x1d\xa6\xf7\xc2\xbf\x54\x49\x04\x93\x5a\x5b\x5b\xcc\xf0\x00\xeb\x4c\x39\x93\x32\x0c\xc3\x32\x21\x91\x54\xc6\xe1\xa3\x16\x5c\x42\x83\x86\x2b\x13\x95\x9a\xe6\xd8\x61\x24\xa1\xdd\x01\x6c\x13\xb9\x16\xe8\x40\x39\xb4\x7d\xf4\x91\x4e\xc9\x75\xc6\x3e\x1e\x8a\x17\xb6\x3d\x12\xaf\x87\x13\x47\xb0\x3a\xda\xcd\x71\x53\xb8\xcd\x8e\xfd\xd1\x47\x96\x6b\x23\xf3\x1b\x53\x98\x84\x80\x8f\x3e\xfe\xac\xd3\xb6\x5f\x39\xf8\xef\x77\x7f\xef\x31\x59\x79\x9e\x25\x64\xa0\x21\x71\xc0\xa5\x64\x14\x0d\x7c\xb8\x3b\x22\x5f\x77\x80\x1c\xaf\x6f\xf7\x4f\x10\x08\xdb\xcd\xd7\xa0\x79\xe2\x99\xd5\x1a\x0e\x5f\x74\x6d\x4e\xbc\x4b\xbb\xe0\xf9\x37\x52\x91\xb9\x9a\xd7\xeb\x7e\xe5\x36\x61\x0c\xa4\x0b\x42\xad\x48\x87\xd2\x62\x45\xa1\x29\x79\x77\x2b\xfc\x1c\x1b\x13\x67\x85\xbf\x2d\xa4\x1f\x10\x4f\x22\x2e\x61\x32\x06\xbe\x01\xad\x07\xe9\x70\x29\x55\x1e\x7e\xf1\xda\x6b\x4e\x90\x84\x0c\xe0\xba\x3a\xb1\x35\x96\xf0\x45\xf5\x95\x7d\x42\xaf\xaa\xf4\xc0\x30\x53\x68\xfd\xdc\x6a\xb6\xc6\xdd\x97\x94\xb3\xb4\x91\xaf\xd2\x15\x30\x04\x61\x9e\x16\xd6\x78\xbe\x0b\xe1\xc8\xdc\x3d\x6d\x43\x3f\xd8\x08\x71\x88\x67\x53\xf0\xc0\x24\x9e\x85\xe9\x52\xc8\x2a\xd8\x4f\xc4\x2e\x9f\xca\x39\x38\x87\x8e\xff\x90\x79\x4a\x8c\xc3\xf1\x6c\xf0\x9c\x9e\xc7\x95\x12\xa7\xbf\x45\x9b\xa4\x26\x82\xec\xde\xa6\x33\x06\x20\xd3\x62\x83\x28\xe8\x01\xb8\x6a\x92\xc7\x9a\x54\x6e\x60\x8a\xc5\x3b\xbc\xfe\x92\x50\x9e\xe2\x12\x61\x14\x10\x3a\x67\xe0\xc3\x54\xaf\x43\x79\x03\xb1\xb7\xd9\x02\x11\xaa\x66\x51\xfa\xde\x45\x7a\xed\x76\x4f\x07\xd8\xe9\x97\x5d\xfb\x55\x49\x42\x9f\x56\x43\x39\xd2\xcc\xec\x49\x11\xf0\x28\x27\xea\xbc\xf6\x68\x35\xe5\xe6\x04\x42\x01\x52\xdd\x30\xda\x24\x9f\xa0\x40\x8b\xfc\x92\x33\x4e\xec\x3f\x32\x6b\xb6\xf5\xba\xce\xd9\xeb\x8d\xc3\x83\x42\xe6\x43\xbb\xba\x1e\xe4\x87\xda\x0e\x7f\x48\x09\x26\x9f\x9a\xfa\xab\x0c\x6c\x5d\x70\x82\xad\xcd\xeb\x83\x5d\x32\xb2\x5b\xcd\xd1\x18\x8e\x05\x19\x84\xe2\xb0\x1c\x64\x05\x8b\x24\xb9\xa2\x90\x76\x86\x5f\xe4\xf1\xea\x6a\xab\x4e\x62\xdd\x53\xfc\xe0\x88\x1d\x85\x44\x3e\xb3\x70\x29\x09\x16\xb1\x01\xf0\x69\xb0\x17\x65\xb5\x6d\x32\x2a\xc7\x1b\x77\xfb\x36\x38\x86\x29\x1e\x34\x79\xf3\xc3\x98\x3d\x5f\x96\x00\x9e\x66\xe7\xbe\xe8\x8e\xbc\x71\xcf\xf5\xd0\x8f\xca\x74\x9b\x25\x6e\xf2\xd0\x45\xa8\x98\x4e\x52\xfa\x9f\x2e\xf5\x32\x31\xaa\xf4\x41\xcc\x38\xff\xbc\x5b\x00\xa1\xdc\x13\x68\x89\x84\x4d\x2f\xbe\x5d\x12\x7b\x92\xcf\x66\x0c\xb5\x8c\x23\x94\x50\x22\xdb\x89\x65\x54\x01\xbc\xc8\x95\xa9\x0a\x85\x0c\xad\xa6\x2e\x17\x24\xf1\x23\xa0\x7f\x8c\x45\xdc\x50\xa6\xc9\x2f\xc1\x02\xed\x41\xdb\x3b\x99\x74\x3a\x44\xa5\xec\x81\x56\x10\xcd\x9b\x1c\x1b\x41\x15\x00\x7e\xab\xf9\x3d\x7b\x8f\x2e\x0b\xba\x93\x93\x9f\xda\x2d\x4d\xcf\x8b\x12\x21\xd3\x73\xb6\x49\x4d\xeb\x89\x8c\x2d\xd9\xd8\xd4\x32\x5b\xd5\xe6\x74\x4d\x86\x76\x74\xf0\xfc\x19\xde\x7d\xfe\xb9\x79\xf1\xf6\x2d\x3f\xd5\x49\x7b\x92\xc9\x0a\x4d\x98\xe9\x00\x51\x23\x24\xbd\x4a\xf3\xcb\x9d\xa7\x87\x07\x88\xe1\x6e\x7f\x3c\x72\x75\x95\x05\x10\x4d\x05\x9b\x1a\x7c\x89\x00\x9d\x13\x1f\xec\x01\x15\x32\xb9\x2f\x06\xa2\xf5\x83\x5c\x27\xcb\x25\x65\xcf\x01\x57\xe0\x9c\x4e\x4b\x1c\x3e\xdd\xfd\xb4\x26\xba\x7a\x20\x93\x86\x18\xda\xa0\x36\x82\xa0\x22\x1e\xc8\x8f\x6e\x10\x6f\xd7\xe3\x15\x88\x57\x22\xb0\x67\x76\x6f\x48\xd4\x4b\x1b\xab\x86\x15\x62\x91\x1c\x1e\x29\xa7\x0f\x42\xda\x2f\xc4\xcf\xda\x3a\x30\x70\x1f\x96\xd2\xd2\xc5\x80\x75\x07\x32\xfe\x6d\x89\x5b\x7c\x9f\xc9\xa6\xce\x22\x30\x17\xb4\xf3\x68\x42\x26\x8c\x73\xbc\xe2\x68\xa5\x91\x92\x57\x58\x66\xa3\x49\x79\xd1\x35\x31\xa4\x04\x98\x80\x11\x31\x47\xf1\xc8\x4a\x46\xb3\x2a\x05\x25\xe8\xab\xd4\x51\x69\x23\x5f\x1b\xb8\x8e\x61\xc8\xfa\x42\xac\xaa\xdc\x90\xe0\xde\x23\x36\xd9\xed\x50\x80\xd8\x10\xf7\x7b\x18\xa6\x36\xf0\x87\x28\xa6\x69\xb1\xe1\x98\x6c\x62\x9a\x89\x07\x01\x88\x03\xf8\x1a\xed\xe8\xc1\xfe\xde\x5e\x4d\x8c\x69\x11\x86\xbe\x7d\x45\xc1\x15\x97\x92\x0d\x77\xdd\x18\x2b\xa4\xf5\x5f\xec\x90\x85\xef\x88\x1f\xf3\xeb\xcf\x4a\x6c\xff\x27\x17\x42\x3b\xa8\xb0\x3a\xce\xb0\xcf\x54\xa5\xcf\xb3\xd8\xa0\x1c\xc7\xfe\x95\xaf\xd4\x4d\x92\x06\x86\xdf\x6c\xa8\x8d\xf5\x66\x0a\xa7\xde\xa6\x59\x72\x09\xdf\xd7\x6c\x06\x5e\xb5\xc3\xf3\xa0\xa7\xdc\xf2\x4e\xe5\xdb\x34\xb6\x9a\x6d\x44\x3b\x06\x4c\xfd\xa4\x20\x37\xe6\xbd\x61\x4c\xa7\x2d\x78\x27\xf0\x08\xd1\xb3\x14\xc5\xb6\x24\x1e\xee\x82\xa6\x40\xd2\xcb\x26\x21\xc2\xe1\x6e\x21\x48\xcf\x45\x73\xa4\xd2\x5c\x20\x20\x46\x46\xca\x30\x4f\x25\x16\xa3\x3b\xf4\xe2\x0e\x47\x80\xd6\x8c\x8a\x36\xc7\xd9\x74\x55\xa1\x97\xc7\x47\x87\xfb\xcf\x3e\xad\x14\x0a\x39\x5e\xfa\x53\x3f\x85\xd5\x06\x97\xc7\xbb\x95\x55\x92\x44\xcc\x5e\x8f\x11\x59\x2a\x61\x10\x49\xcf\x04\xdd\x63\x8d\xd6\xc5\xc8\x47\xe2\x62\x43\x22\x1b\x8d\xbd\x46\xe3\xc2\xb8\x1a\x33\x04\x45\x15\xb6\xfb\x75\x4a\x49\xc5\x46\xb7\x5a\xb5\x86\xd7\xde\xa7\x57\x00\xd3\xcb\x6e\x7b\x5b\xb1\xa3\x34\xb9\x0e\x89\xd1\x30\x5d\x98\xc3\xf5\x68\xfd\x4a\x4f\x0f\x4d\x8e\xd8\xa7\xb8\x8a\x00\x80\x2e\x5a\xdd\x4a\x3a\xd5\xa0\xe1\x11\xcd\xf4\x0c\x37\x19\x0e\xc8\x6c\x6d\x5e\x13\x17\xcc\x21\xcd\x5b\x75\xf1\xff\xa6\x45\x5a\xf0\x11\x68\x5c\x15\xbf\xd5\x20\x25\x74\xab\xf3\x43\x11\xa8\xb8\x98\x30\xf0\x14\xb1\xb2\x98\x19\x31\xf2\xa3\x62\xbc\xcf\x8a\x39\x7a\x19\xc5\xb4\x8b\xb5\x9a\x3c\x73\x78\x64\xd8\x70\xb1\x12\x8c\xe9\x9a\x25\x4f\x81\xbc\xa1\xd4\xfc\xcf\xd0\x4b\x13\x8e\x42\x8f\x2a\xe5\x9e\x26\x17\x54\x55\xd0\x60\x44\x01\xa7\xd0\x17\x6c\x96\xe9\x88\x31\xe7\x72\xa0\xd3\x61\x43\x0b\x04\x49\x9e\x38\xf6\x87\xe4\x41\x21\x95\xd6\xe3\x6f\xf5\x65\x7a\x60\x48\x03\x71\x46\x2d\xa5\xe0\x0d\x9b\xa9\xc3\x7b\x48\x8f\x6b\x17\xda\x12\xf2\x1c\x38\xb1\x6b\x9d\xb6\xbc\xc2\x7b\x98\x13\x40\x88\x7e\xb1\x91\x12\x85\x33\xc9\x72\xee\xe9\xee\xda\xae\xab\x0f\x75\x3a\xf6\x76\x7f\xeb\xcd\x2a\x9c\x52\x11\x90\xac\x7a\x4c\x90\x17\xf9\x53\xae\xd0\x98\xe7\xac\xf0\x4d\x4e\xa4\x63\xb6\xb6\xef\xb7\x48\x0d\xf3\x3b\xf6\x6d\xde\x5b\x54\xf8\xeb\xb6\x68\x1c\x03\xc5\xcd\x97\xc8\x36\x1c\x6f\x32\xea\x0d\x9b\x6d\xaf\x9c\xda\xf8\xd7\xf8\x9b\x2a\x3e\xc8\x43\x06\xab\xa4\xa9\xfd\x53\x0c\x45\xbe\x97\xe0\xc1\x4e\x90\x27\x6a\x91\x27\x3b\x68\x84\x91\xfd\xa2\x76\xad\xbb\x0a\x85\xd4\x70\x8a\x75\xd3\x3e\x1f\x15\x35\xd0\x69\x5c\x9b\xa7\xba\x01\x93\x4b\x7d\x59\xb7\x4e\x1d\x33\x15\x17\x89\x10\xcf\xb0\x68\xb6\x86\xc5\xa2\xc9\x7a\xa7\x91\x75\x65\x19\xe2\x03\x20\x3c\x3b\x2f\xd5\x41\x37\x4f\x15\x43\xac\x64\x7b\x00\x1d\x30\x47\x7f\x8a\x14\x79\x41\xdb\x7d\x61\x0c\x61\xb3\xfb\x5c\x51\x23\xb0\x2b\x09\xb9\xd3\x51\xab\x67\xf3\xfa\x62\x2b\x25\x2c\xbd\xa0\xda\x10\x72\x7f\x08\x5b\x26\xa5\xea\x3d\xa5\xf1\xca\x38\x5a\xb8\x04\xbf\xab\x7f\xb5\x92\xf3\x3f\xd0\x97\xab\x78\x6e\x21\x69\x1c\xbe\xb2\xdb\x9c\x4c\x53\xea\x72\x6f\x23\x82\x9e\x77\xba\xca\x06\xe0\x66\xae\x48\xf1\x65\x7b\xae\xfb\x7b\xfd\x13\x3e\x40\xa4\x22\x1b\x24\x3d\x35\xdd\xe2\x35\xf7\xd4\xe5\x4a\x3e\x7f\x5c\x45\x89\x7f\x47\x49\xe0\x9a\xd4\x9b\x80\xd7\x65\xb6\x6b\xbd\x21\x5b\x26\x65\xbb\x2b\x39\x05\xae\x4b\x5d\xa1\x31\xb8\x48\x8a\xa3\x04\xfc\x96\x4a\x8b\x2b\xaa\xcf\x08\x3e\xa9\xda\x96\x0a\x54\x46\x10\xdf\x2f\x84\x00\x9d\x0c\xc3\x42\x73\x2e\xc4\xeb\x6d\xa3\x33\xd9\x56\x45\x4c\xe2\xf0\x5d\xdb\x27\xfa\xe7\xe4\x97\xb7\xe6\xaa\xd3\x7a\xbe\xb7\x57\xfc\x7e\xa9\x2f\x0e\x76\x2b\x85\xe8\xf5\x85\x7e\xb5\xbf\xbf\xff\xe9\xfa\x62\xe0\xc7\x49\x45\xbc\x08\x91\x58\x50\xb9\xd4\xcd\x80\xef\xe6\xa7\x0f\x4e\x17\xae\xaf\xa7\x69\xc2\x00\xc8\xb7\xd4\xcb\x80\xe3\xb2\x38\xaa\x2b\xb8\xba\x7f\x49\x79\x42\x49\x0d\x4a\xca\xc2\xde\xe7\x49\xe4\x23\x63\x4b\xd2\x79\x7d\x75\x35\xaf\x93\xf6\xea\x1f\xe3\xaa\x8a\xb0\xab\x32\x9f\xac\xa4\x33\x74\xfa\x4d\x8d\x65\x48\xe6\xf5\xe1\xf5\xa6\x94\x55\x60\x1a\xb5\x4f\x34\x98\x15\xa0\x46\x68\x4c\xbf\xc4\x96\xcd\x61\xa3\xa9\xe3\xdc\x71\xff\xa2\x6f\xc1\xcc\xc0\x7a\x7d\x2e\x1b\xcb\x95\xcf\x35\xd1\x25\x5a\x86\x74\x54\x44\xc5\xd5\xc2\x36\x8b\x6e\x15\x36\x92\x1d\xcb\xd4\x53\xcc\xd3\xff\xcb\x54\xe3\x6e\x96\xc1\x11\xb4\x58\xf8\x38\x45\xe8\xa3\x65\xb6\xe5\x65\x3e\xa7\x8b\x2e\x74\x4f\xbf\xaf\xfc\x94\xd7\x6f\xa7\x69\x92\xd2\x45\x2b\x0d\xa9\x0c\x71\x17\xdd\xb5\x04\xab\x87\xec\x93\x58\x0e\xdf\x5a\x05\xd3\x29\x74\xc3\x4b\xd7\x09\x3a\x6d\x43\xcd\x3c\x3f\x2f\xba\xad\x3b\xb0\x32\xee\xb6\xa6\x87\x9b\xa6\x3f\xd2\x74\x53\xc7\x1d\x45\x05\x92\x04\x66\x01\xeb\x46\x53\x91\x26\x19\xae\x1f\xab\x1b\xb2\x40\x76\xc1\x84\x02\x03\x25\x2a\x86\x5a\x3c\xf9\x10\xaf\x7a\xc3\x53\xcf\x19\x8e\x35\x69\x36\xa1\x8a\x1c\x99\xcf\x1a\x37\xde\x4c\xe9\x0e\x76\x91\x66\xb3\x25\x83\x75\xba\xab\x9d\x99\xea\xe6\x6e\xa1\x67\xd6\xf4\x3a\x90\xa8\x45\x38\xcb\x1e\x92\xb3\xf7\xdc\x7c\x9d\xd0\x10\x3f\xfe\x31\xee\x2a\x54\x5d\x2c\x85\x18\xcf\x3d\xeb\x76\xf8\x74\xe7\x39\x63\xe0\x9c\xe2\x20\xaf\x3a\x00\x4f\xbe\xfd\x70\x5d\xed\x66\xb7\xf7\xfa\x83\x95\xd9\xef\x56\x61\xca\xb1\x03\xc9\x15\xa6\x43\x02\x68\x2e\x8f\x03\x19\x49\x2a\xa7\xcc\xa8\xca\xb2\xc4\xb4\xa9\xc5\xb6\xba\x9e\xf1\x64\xd6\x25\xaf\xd2\x36\xc7\xf7\xed\x71\x5c\xde\x35\x47\x1a\x82\xab\xd9\x2d\x9f\xa1\xf2\x07\x20\x46\x1f\x4b\x80\x3a\xe2\xef\x3d\x54\xc4\xb1\x41\x85\x06\xc8\x7c\x3d\xe0\x79\xdf\x2d\x1f\x3c\x8c\xf5\x41\x51\xba\x96\xcd\x39\x60\x89\x49\x43\x48\x84\xe1\x1e\x92\x5a\x26\x37\xc6\x2d\xc0\x0d\xc9\xe4\x73\x44\x47\xed\xfb\x79\xb0\xba\x63\xf7\xd4\xa4\x7c\xa4\x8b\x7b\x2e\x86\x94\x88\xbb\x39\x94\x5d\x17\x47\x39\x92\xdc\xd1\x12\x3d\x2c\x6b\xe9\xa1\x02\xc0\xf6\x04\xda\xa1\x3f\x8f\x31\x5c\x38\x2d\x54\x67\x52\xd4\x82\x8e\xac\xab\x05\x0f\xb7\xbc\x53\x3f\x30\xd4\xff\xb7\x4d\xbe\x78\x7f\x25\xb1\xdf\x4d\x25\x3f\xd9\xe0\xb3\x89\x7a\x6f\x76\x1a\xe5\x9c\x6f\xa7\xb2\xb3\xb7\x75\x7f\x4e\xbb\x62\x53\x19\xc8\x2d\x29\x6e\x1d\x78\xef\x2a\x6f\x53\x59\xdf\x28\x70\xbb\xc2\x2e\xb6\x8a\xdd\x56\xdb\xe9\xf2\xd9\x2c\xc5\x57\x9f\x0e\x50\x61\x21\xef\x00\x2b\x7a\x7a\x47\x5c\x2b\x3f\xa2\x3f\x9f\xad\x8f\x93\xb9\x34\xf7\xfb\xe6\x53\xa6\xe3\x3c\x9b\x3d\xb7\xc8\x6e\x74\xbe\x99\x26\xe5\x0f\x14\xd2\x3c\x8e\x29\xd2\xd0\x63\xae\x88\x31\xf6\x87\x09\x9d\xe8\x01\xb6\x6b\xa5\x82\x92\xf1\x45\x27\x8f\xcb\xad\xd9\x78\xf9\x10\x86\x0b\xe3\x08\xde\xf4\x21\x56\x73\xec\x71\x6d\x64\x43\xcd\xe8\xc8\x27\x60\x68\x09\x29\x3a\x2b\x3d\x93\x9a\x3e\xbc\xf7\xcc\xc3\x73\x8b\x3e\x42\x68\x4f\x98\x80\x7d\xa6\x5d\xad\xb1\xb0\x78\xa7\xd6\xdf\x46\x2d\xa4\x1f\xd1\x29\x22\x9d\x30\x1a\x29\xf4\x09\x89\xa7\x9f\x7b\xfc\xfc\x3e\x41\x7b\x4f\x17\xd6\xa6\x50\x77\xb8\x4b\x74\xac\x99\xce\x73\xcd\x0b\xc9\xb7\x19\x07\x61\x31\x8f\x90\x82\x88\x99\x9a\x5e\x3d\x2a\x90\xaf\x5a\xcd\xe3\x94\x38\x15\x2b\xad\x5a\xcd\xfc\xb9\x22\xf4\x24\x60\x67\xf8\x4f\xe2\x35\xc0\x87\x59\x55\x4d\x97\x4c\x66\x83\x64\xaa\xf8\x01\x09\xab\x37\x6a\xcf\x6a\x07\x56\xd3\x39\xa5\x48\x64\x31\x91\xa6\x43\xd2\xd2\x67\x5f\x7c\xf2\x45\x46\x5f\xa8\x87\x17\xe3\xf1\xf2\xe8\x1d\x14\x74\x47\xbb\xbc\x29\xf7\xaf\xd5\x7a\x83\x91\xcf\x39\xfa\x9d\x76\xc7\x5e\xbb\xdb\xe9\x6c\xc7\xfa\x87\xd7\x3f\x9f\x96\x56\xef\xcf\xc9\x18\x15\x7c\x05\x8b\x27\xf8\xfa\x6d\x16\x3f\x9f\x9a\xa5\x23\x3d\x2a\xad\x7e\xb8\x2e\x82\xdd\x53\x59\xa5\xb9\xd7\xcc\x73\xac\xa1\x0b\xae\xcf\x80\x70\x48\xa0\xd5\x75\x9c\xa1\xa3\x3f\x17\xb1\x5a\xbd\xe1\xc0\x36\xd7\xf4\x25\x9b\xb9\xb4\xde\x84\x8d\xe7\x14\xcb\x9b\x03\x1e\x50\xc6\xd5\x89\x5b\xf9\x7a\x51\x6d\x0d\xe8\xef\xd9\x8b\x4a\x20\xab\x6d\xbb\x32\x4b\xab\x1d\xa7\x12\x47\xd5\x41\xaf\x12\x5d\x57\x7b\x2f\x2b\x69\x5e\x75\x26\x95\xaf\xfc\xea\x4f\x47\x15\xa9\xaa\xb6\x5b\x59\x65\xd5\x13\xa7\xb2\x8a\xaa\xa3\x5e\xe5\x72\x5e\x3d\x39\xad\x60\x51\xdd\x31\x1f\x5c\x91\x6c\x1b\x58\x10\xaa\x45\xe5\x37\xff\xf4\xb3\x5f\xff\xfb\x9f\xfe\xfa\x97\xff\xf8\xfd\x9f\xff\x71\xe5\x37\xbf\xfa\xe6\xbf\xfe\xfe\xcf\xcc\x4d\x5b\xe6\x99\x9a\x2e\x2a\x9d\xd4\x8f\xbf\xfd\x3b\x3f\x54\x95\x81\x0c\x64\x0a\x26\x18\xa8\x4a\xcf\xcf\xae\x43\xf9\x1f\x7f\x93\x57\xde\xff\xf5\x77\x7f\xf4\xdd\x37\xdf\x7d\xf3\xfe\x5f\xdf\xff\xf2\xfd\xaf\x2a\xdf\xff\xc5\xdf\x7e\xff\x97\xff\xf0\x9f\x3f\xff\xab\x8a\xad\x56\xfe\xb7\xbf\x48\xa2\x0a\x7d\x1f\x91\xcf\xf3\x6f\x7f\xae\xe8\x1b\x96\x93\xd4\x57\x21\x3d\x8c\xd4\x55\x58\x79\xff\x8b\xef\xfe\xe4\xfd\xbf\xbd\xff\x97\xf7\xff\xfc\xdd\xcf\xb4\x8c\x4a\x37\xf3\xa3\x90\x88\xaa\x26\x7a\x01\xef\x32\x39\x1c\x69\x16\x99\xe3\x15\x82\x27\x2b\x8a\xc2\x92\x24\x62\x7a\x6e\xb1\xa6\x58\x63\x16\xab\x0b\x97\x5f\x2f\x2c\xd6\x19\x5f\x56\xc7\xaf\x2c\xd6\x1d\x7f\x68\x69\xb1\x02\xc9\xcd\x53\x8b\xb5\x88\xcb\x38\xb2\x58\x95\xf4\x99\xd0\xb5\xc5\xfa\xa4\x33\xbd\xdc\x62\xa5\xe2\xf2\x2b\xdf\x62\xcd\xd2\x28\xca\x62\xf5\xe2\x92\x7f\x2d\x56\x33\xdd\x45\x16\xeb\x1a\x97\x97\x73\x8b\x15\x4e\x99\x4f\x66\x31\x1d\x30\x5f\x51\x01\x68\x56\x2b\xfe\x88\x20\x11\x8b\x70\xbe\x88\xf0\x3f\x72\xfc\xc8\xe7\x12\x14\x1b\x6f\x0d\x54\x2b\x3a\x46\x0a\x6c\xbd\x59\xb7\xa8\x99\x6e\x74\x3c\x97\x50\xe8\x45\xb8\x38\x1b\xbe\xf2\x3a\x20\xda\xa0\x9d\x27\x8e\x3e\xba\x2d\x81\xac\xbb\x00\x43\x25\xa0\xd0\x65\x88\xbb\x54\x9f\xbf\x1a\x20\xcf\x99\x27\x7c\x3e\xc3\xcc\x3f\x01\x27\xd9\x92\x4b\x10\xa1\x4f\x35\xd8\x6b\xff\x3b\x00\x00\xff\xff\x44\xe3\x9d\xb6\xb5\x2b\x00\x00") func confAppIniBytes() ([]byte, error) { return bindataRead( @@ -297,7 +297,7 @@ func confAppIni() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "conf/app.ini", size: 11094, mode: os.FileMode(420), modTime: time.Unix(1456619628, 0)} + info := bindataFileInfo{name: "conf/app.ini", size: 11189, mode: os.FileMode(420), modTime: time.Unix(1456792038, 0)} a := &asset{bytes: bytes, info: info} return a, nil } diff --git a/modules/setting/setting.go b/modules/setting/setting.go index 80d807f8..ad14822f 100644 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -163,6 +163,12 @@ var ( Git struct { MaxGitDiffLines int GcArgs []string `delim:" "` + Timeout struct { + Migrate int + Mirror int + Clone int + Pull int + } `ini:"git.timeout"` } // Cron tasks diff --git a/templates/.VERSION b/templates/.VERSION index 5fbddaf6..7052ac3f 100644 --- a/templates/.VERSION +++ b/templates/.VERSION @@ -1 +1 @@ -0.8.47.0227
\ No newline at end of file +0.8.50.0301
\ No newline at end of file diff --git a/templates/repo/pulls/tab_menu.tmpl b/templates/repo/pulls/tab_menu.tmpl index d6a9920b..c81eab0d 100644 --- a/templates/repo/pulls/tab_menu.tmpl +++ b/templates/repo/pulls/tab_menu.tmpl @@ -2,16 +2,16 @@ <a class="item {{if .PageIsPullConversation}}active{{end}}" href="{{.RepoLink}}/pulls/{{.Issue.Index}}"> <span class="octicon octicon-comment-discussion"></span> {{$.i18n.Tr "repo.pulls.tab_conversation"}} - <span class="ui label">{{.Issue.NumComments}}</span> + <span class="ui {{if not .Issue.NumComments}}gray{{else}}blue{{end}} small label">{{.Issue.NumComments}}</span> </a> <a class="item {{if .PageIsPullCommits}}active{{end}}" {{if .NumCommits}}href="{{.RepoLink}}/pulls/{{.Issue.Index}}/commits"{{end}}> <span class="octicon octicon-git-commit"></span> {{$.i18n.Tr "repo.pulls.tab_commits"}} - <span class="ui label">{{if .NumCommits}}{{.NumCommits}}{{else}}N/A{{end}}</span> + <span class="ui {{if not .NumCommits}}gray{{else}}blue{{end}} small label">{{if .NumCommits}}{{.NumCommits}}{{else}}N/A{{end}}</span> </a> <a class="item {{if .PageIsPullFiles}}active{{end}}" {{if .NumFiles}}href="{{.RepoLink}}/pulls/{{.Issue.Index}}/files"{{end}}> <span class="octicon octicon-diff"></span> {{$.i18n.Tr "repo.pulls.tab_files"}} - <span class="ui label">{{if .NumFiles}}{{.NumFiles}}{{else}}N/A{{end}}</span> + <span class="ui {{if not .NumFiles}}gray{{else}}blue{{end}} small label">{{if .NumFiles}}{{.NumFiles}}{{else}}N/A{{end}}</span> </a> </div> diff --git a/templates/repo/wiki/view.tmpl b/templates/repo/wiki/view.tmpl index c1b6c6f7..c8189285 100644 --- a/templates/repo/wiki/view.tmpl +++ b/templates/repo/wiki/view.tmpl @@ -41,13 +41,6 @@ <button class="ui basic icon button poping up clipboard" id="clipboard-btn" data-original="{{.i18n.Tr "repo.copy_link"}}" data-success="{{.i18n.Tr "repo.copy_link_success"}}" data-error="{{.i18n.Tr "repo.copy_link_error"}}" data-content="{{.i18n.Tr "repo.copy_link"}}" data-variation="inverted tiny" data-clipboard-target="#repo-clone-url"> <i class="octicon octicon-clippy"></i> </button> - <div class="ui basic jump dropdown icon button"> - <i class="download icon"></i> - <div class="menu"> - <a class="item" href="{{$.RepoLink}}/archive/{{EscapePound $.BranchName}}.zip"><i class="icon octicon octicon-file-zip"></i> ZIP</a> - <a class="item" href="{{$.RepoLink}}/archive/{{EscapePound $.BranchName}}.tar.gz"><i class="icon octicon octicon-file-zip"></i> TAR.GZ</a> - </div> - </div> </div> </div> </div> |