From 74659324c8a157afa14be3b4144da31d76322d9f Mon Sep 17 00:00:00 2001 From: ginuerzh Date: Wed, 13 Apr 2022 17:09:01 +0800 Subject: [PATCH] update snapcraft build --- .gitignore | 1 - go.mod | 6 +++--- go.sum | 40 ++++++++++++++++++++++++++++++++-------- gost.png | Bin 0 -> 42259 bytes kcp.go | 4 ++-- signal_unix.go | 3 ++- snap/snapcraft.yaml | 31 +++++++++++++++++++++++++++++++ snapcraft.yaml | 43 ------------------------------------------- 8 files changed, 70 insertions(+), 58 deletions(-) create mode 100644 gost.png create mode 100644 snap/snapcraft.yaml delete mode 100644 snapcraft.yaml diff --git a/.gitignore b/.gitignore index 15c9a81..1fe8522 100644 --- a/.gitignore +++ b/.gitignore @@ -32,4 +32,3 @@ _testmain.go .vscode/ cmd/gost/gost -snap diff --git a/go.mod b/go.mod index 7e4606a..966ed39 100644 --- a/go.mod +++ b/go.mod @@ -22,7 +22,7 @@ require ( github.com/shadowsocks/go-shadowsocks2 v0.1.5 github.com/shadowsocks/shadowsocks-go v0.0.0-20200409064450-3e585ff90601 github.com/songgao/water v0.0.0-20200317203138-2b4b6d7c09d8 - github.com/xtaci/kcp-go v5.4.20+incompatible + github.com/xtaci/kcp-go/v5 v5.6.1 github.com/xtaci/smux v1.5.16 github.com/xtaci/tcpraw v1.2.25 gitlab.com/yawning/obfs4.git v0.0.0-20210511220700-e330d1b7024b @@ -47,8 +47,8 @@ require ( github.com/onsi/ginkgo v1.16.5 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/riobard/go-bloom v0.0.0-20200614022211-cdc8013cb5b3 // indirect - github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161 // indirect - github.com/templexxx/xor v0.0.0-20191217153810-f85b25db303b // indirect + github.com/templexxx/cpu v0.0.7 // indirect + github.com/templexxx/xorsimd v0.4.1 // indirect github.com/tjfoc/gmsm v1.4.1 // indirect github.com/xtaci/lossyconn v0.0.0-20200209145036-adba10fffc37 // indirect golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3 // indirect diff --git a/go.sum b/go.sum index c1a85de..315506e 100644 --- a/go.sum +++ b/go.sum @@ -114,11 +114,14 @@ github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+o github.com/klauspost/compress v1.4.1/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A= github.com/klauspost/compress v1.13.6 h1:P76CopJELS0TiO2mebmnzgWaajssP/EszplttgQxcgc= github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= -github.com/klauspost/cpuid v1.2.0 h1:NMpwD2G9JSFOE1/TJjGSo5zG7Yb2bTe7eq1jH+irmeE= github.com/klauspost/cpuid v1.2.0/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek= +github.com/klauspost/cpuid v1.2.4/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek= +github.com/klauspost/cpuid v1.3.1 h1:5JNjFYYQrZeKRJ0734q51WCEEn2huer72Dc7K+R/b6s= +github.com/klauspost/cpuid v1.3.1/go.mod h1:bYW4mA6ZgKPob1/Dlai2LviZJO7KGI3uoWLd42rAQw4= github.com/klauspost/cpuid/v2 v2.0.6/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= github.com/klauspost/cpuid/v2 v2.0.9 h1:lgaqFMSdTdQYdZ04uHyN2d/eKdOMyi2YLSvlQIBFYa4= github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= +github.com/klauspost/reedsolomon v1.9.9/go.mod h1:O7yFFHiQwDR6b2t63KPUpccPtNdp5ADgh1gg4fd12wo= github.com/klauspost/reedsolomon v1.9.15 h1:g2erWKD2M6rgnPf89fCji6jNlhMKMdXcuNHMW1SYCIo= github.com/klauspost/reedsolomon v1.9.15/go.mod h1:eqPAcE7xar5CIzcdfwydOEdcmchAKAP/qs14y4GCBOk= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= @@ -142,6 +145,7 @@ github.com/miekg/dns v1.1.43 h1:JKfpVSCB84vrAmHzyrsxB5NAr5kLoMXZArPSw7Qlgyg= github.com/miekg/dns v1.1.43/go.mod h1:+evo5L0630/F6ca/Z9+GAqzhjGyn8/c+TBaOyfEl0V4= github.com/milosgajdos/tenus v0.0.3 h1:jmaJzwaY1DUyYVD0lM4U+uvP2kkEg1VahDqRFxIkVBE= github.com/milosgajdos/tenus v0.0.3/go.mod h1:eIjx29vNeDOYWJuCnaHY2r4fq5egetV26ry3on7p8qY= +github.com/mmcloughlin/avo v0.0.0-20200803215136-443f81d77104/go.mod h1:wqKykBG2QzQDJEzvRkcS8x6MiSJkF52hXZsXcjaB3ls= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/neelance/astrewrite v0.0.0-20160511093645-99348263ae86/go.mod h1:kHJEU3ofeGjhHklVoIGuVj85JJwZ6kWPaJwCIxgnFmo= @@ -209,26 +213,32 @@ github.com/sourcegraph/annotate v0.0.0-20160123013949-f4cad6c6324d/go.mod h1:Udh github.com/sourcegraph/syntaxhighlight v0.0.0-20170531221838-bd320f5d308e/go.mod h1:HuIsMU8RRBOtsCgI77wP899iHVBQpCmg4ErYMZB+2IA= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -github.com/stretchr/testify v1.5.1 h1:nOGnQDM7FYENwehXlg/kFVnos3rEvtKTjRvOWSzb6H4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1 h1:hDPOHmpOpP40lSULcqw7IrRb/u7w6RpDC9399XyoNd0= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/tarm/serial v0.0.0-20180830185346-98f6abe2eb07/go.mod h1:kDXzergiv9cbyO7IOYJZWg1U88JhDg3PB6klq9Hg2pA= -github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161 h1:89CEmDvlq/F7SJEOqkIdNDGJXrQIhuIx9D2DBXjavSU= -github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161/go.mod h1:wM7WEvslTq+iOEAMDLSzhVuOt5BRZ05WirO+b09GHQU= -github.com/templexxx/xor v0.0.0-20191217153810-f85b25db303b h1:fj5tQ8acgNUr6O8LEplsxDhUIe2573iLkJc+PqnzZTI= -github.com/templexxx/xor v0.0.0-20191217153810-f85b25db303b/go.mod h1:5XA7W9S6mni3h5uvOC75dA3m9CCCaS83lltmc0ukdi4= +github.com/templexxx/cpu v0.0.1/go.mod h1:w7Tb+7qgcAlIyX4NhLuDKt78AHA5SzPmq0Wj6HiEnnk= +github.com/templexxx/cpu v0.0.7 h1:pUEZn8JBy/w5yzdYWgx+0m0xL9uk6j4K91C5kOViAzo= +github.com/templexxx/cpu v0.0.7/go.mod h1:w7Tb+7qgcAlIyX4NhLuDKt78AHA5SzPmq0Wj6HiEnnk= +github.com/templexxx/xorsimd v0.4.1 h1:iUZcywbOYDRAZUasAs2eSCUW8eobuZDy0I9FJiORkVg= +github.com/templexxx/xorsimd v0.4.1/go.mod h1:W+ffZz8jJMH2SXwuKu9WhygqBMbFnp14G2fqEr8qaNo= +github.com/tjfoc/gmsm v1.3.2/go.mod h1:HaUcFuY0auTiaHB9MHFGCPx5IaLhTUd2atbCFBQXn9w= github.com/tjfoc/gmsm v1.4.1 h1:aMe1GlZb+0bLjn+cKTPEvvn9oUEBlJitaZiiBwsbgho= github.com/tjfoc/gmsm v1.4.1/go.mod h1:j4INPkHWMrhJb38G+J6W4Tw0AbuN8Thu3PbdVYhVcTE= github.com/ulikunitz/xz v0.5.6/go.mod h1:2bypXElzHzzJZwzH67Y6wb67pO62Rzfn7BSiF4ABRW8= github.com/viant/assertly v0.4.8/go.mod h1:aGifi++jvCrUaklKEKT0BU95igDNaqkvz+49uaYMPRU= github.com/viant/toolbox v0.24.0/go.mod h1:OxMCG57V0PXuIP2HNQrtJf2CjqdmbrOx5EkMILuUhzM= -github.com/xtaci/kcp-go v5.4.20+incompatible h1:TN1uey3Raw0sTz0Fg8GkfM0uH3YwzhnZWQ1bABv5xAg= -github.com/xtaci/kcp-go v5.4.20+incompatible/go.mod h1:bN6vIwHQbfHaHtFpEssmWsN45a+AZwO7eyRCmEIbtvE= +github.com/xtaci/kcp-go/v5 v5.6.1 h1:Pwn0aoeNSPF9dTS7IgiPXn0HEtaIlVb6y5UKWPsx8bI= +github.com/xtaci/kcp-go/v5 v5.6.1/go.mod h1:W3kVPyNYwZ06p79dNwFWQOVFrdcBpDBsdyvK8moQrYo= +github.com/xtaci/lossyconn v0.0.0-20190602105132-8df528c0c9ae/go.mod h1:gXtu8J62kEgmN++bm9BVICuT/e8yiLI2KFobd/TRFsE= github.com/xtaci/lossyconn v0.0.0-20200209145036-adba10fffc37 h1:EWU6Pktpas0n8lLQwDsRyZfmkPeRbdgPtW609es+/9E= github.com/xtaci/lossyconn v0.0.0-20200209145036-adba10fffc37/go.mod h1:HpMP7DB2CyokmAh4lp0EQnnWhmycP/TvwBGzvuie+H0= github.com/xtaci/smux v1.5.16 h1:FBPYOkW8ZTjLKUM4LI4xnnuuDC8CQ/dB04HD519WoEk= github.com/xtaci/smux v1.5.16/go.mod h1:OMlQbT5vcgl2gb49mFkYo6SMf+zP3rcjcwQz7ZU7IGY= github.com/xtaci/tcpraw v1.2.25 h1:VDlqo0op17JeXBM6e2G9ocCNLOJcw9mZbobMbJjo0vk= github.com/xtaci/tcpraw v1.2.25/go.mod h1:dKyZ2V75s0cZ7cbgJYdxPvms7af0joIeOyx1GgJQbLk= +github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= @@ -238,14 +248,17 @@ gitlab.com/yawning/obfs4.git v0.0.0-20210511220700-e330d1b7024b/go.mod h1:OM1ngE gitlab.com/yawning/utls.git v0.0.12-1/go.mod h1:3ONKiSFR9Im/c3t5RKmMJTVdmZN496FNyk3mjrY1dyo= go.opencensus.io v0.18.0/go.mod h1:vKdFvxhtzZ9onBp9VKHK8z/sRpBMnKAsufL7wlDrCOA= go4.org v0.0.0-20180809161055-417644f6feb5/go.mod h1:MkTOUMDaeVYJUOUsaDXIhWPZYa1yOyC1qaOBpL57BhE= +golang.org/x/arch v0.0.0-20190909030613-46d78d1859ac/go.mod h1:flIaEI6LNU6xOCD5PaJvn9wGP0agmIOqjrtsKGRguv4= golang.org/x/build v0.0.0-20190111050920-041ab4dc3f9d/go.mod h1:OWs+y06UdEOHN4y+MfF/py+xQ/tYqIWW03b70/CG9Rw= golang.org/x/crypto v0.0.0-20181030102418-4d3f4d9ffa16/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190313024323-a1f597ede03a/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191219195013-becbf705a915/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200221231518-2aa609cf4a9d/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201012173705-84dcc777aaee/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= @@ -258,6 +271,7 @@ golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvx golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3 h1:kQgndtyPBW/JIYERgdxfwMYh3AVStj88WQTlNDi2a+o= @@ -274,7 +288,9 @@ golang.org/x/net v0.0.0-20190313220215-9f648a60d977/go.mod h1:t9HGtf8HONx5eT2rtn golang.org/x/net v0.0.0-20190328230028-74de082e2cca/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= @@ -295,6 +311,8 @@ golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -312,6 +330,7 @@ golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200808120158-1030fc2bf1d9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -348,6 +367,8 @@ golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBn golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200425043458-8463f397d07c/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200808161706-5bf02b21f123/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.10 h1:QjFRCZxdOhBJ/UNgnBZLbNV13DlbnK0quyivTnXJM20= @@ -398,10 +419,13 @@ gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= grpc.go4.org v0.0.0-20170609214715-11d0a25b4919/go.mod h1:77eQGdRu53HpSqPFJFmuJdjuHRquDANNeA4x7B8WQ9o= honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= sourcegraph.com/sourcegraph/go-diff v0.5.0/go.mod h1:kuch7UrkMzY0X+p9CRK03kfuPQ2zzQcaEFbx8wA8rck= sourcegraph.com/sqs/pbtypes v0.0.0-20180604144634-d3ebe8f20ae4/go.mod h1:ketZ/q3QxT9HOBeFhu6RdvsftgpsbFHBF5Cas6cDKZ0= diff --git a/gost.png b/gost.png new file mode 100644 index 0000000000000000000000000000000000000000..6bdc643544eeb77987f423b3994010cb14e99476 GIT binary patch literal 42259 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