From 70353d5d793c753e3f3665bceb6f6de4b43b8526 Mon Sep 17 00:00:00 2001 From: Jarkko Toivanen Date: Fri, 27 Sep 2024 00:10:37 +0300 Subject: [PATCH] Initial testing --- .gitignore | 2 + Icon.png | Bin 0 -> 30106 bytes Makefile | 6 + README.md | 1 + go.mod | 37 +++ go.sum | 656 +++++++++++++++++++++++++++++++++++++++++++++++++++++ main.go | 32 +++ 7 files changed, 734 insertions(+) create mode 100644 .gitignore create mode 100644 Icon.png create mode 100644 Makefile create mode 100644 README.md create mode 100644 go.mod create mode 100644 go.sum create mode 100644 main.go diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6984d0a --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/snuffler +/snuffler.apk diff --git a/Icon.png b/Icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7e259a8d28507eb26789efec447fed65bdcf0f04 GIT binary patch literal 30106 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 P15lJzdr={67WjVvQFm8` literal 0 HcmV?d00001 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..16be59c --- /dev/null +++ b/Makefile @@ -0,0 +1,6 @@ +apk: + ANDROID_NDK_HOME=/opt/android-sdk/ndk/21.4.7075529/ ~/go/bin/fyne package --os android -appID us.jakest.snuffler +build: + go build . +run: + go run . diff --git a/README.md b/README.md new file mode 100644 index 0000000..6f70e9c --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +TheiIcon is from https://www.flaticon.com/authors/smashicons diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..4e06ffe --- /dev/null +++ b/go.mod @@ -0,0 +1,37 @@ +module snuffler + +go 1.23.0 + +require fyne.io/fyne/v2 v2.5.1 + +require ( + fyne.io/systray v1.11.0 // indirect + github.com/BurntSushi/toml v1.4.0 // indirect + github.com/davecgh/go-spew v1.1.1 // indirect + github.com/fredbi/uri v1.1.0 // indirect + github.com/fsnotify/fsnotify v1.7.0 // indirect + github.com/fyne-io/gl-js v0.0.0-20220119005834-d2da28d9ccfe // indirect + github.com/fyne-io/glfw-js v0.0.0-20240101223322-6e1efdc71b7a // indirect + github.com/fyne-io/image v0.0.0-20220602074514-4956b0afb3d2 // indirect + github.com/go-gl/gl v0.0.0-20211210172815-726fda9656d6 // indirect + github.com/go-gl/glfw/v3.3/glfw v0.0.0-20240506104042-037f3cc74f2a // indirect + github.com/go-text/render v0.1.1-0.20240418202334-dd62631dae9b // indirect + github.com/go-text/typesetting v0.1.0 // indirect + github.com/godbus/dbus/v5 v5.1.0 // indirect + github.com/gopherjs/gopherjs v1.17.2 // indirect + github.com/jeandeaual/go-locale v0.0.0-20240223122105-ce5225dcaa49 // indirect + github.com/jsummers/gobmp v0.0.0-20151104160322-e2ba15ffa76e // indirect + github.com/nicksnyder/go-i18n/v2 v2.4.0 // indirect + github.com/pmezard/go-difflib v1.0.0 // indirect + github.com/rymdport/portal v0.2.6 // indirect + github.com/srwiley/oksvg v0.0.0-20221011165216-be6e8873101c // indirect + github.com/srwiley/rasterx v0.0.0-20220730225603-2ab79fcdd4ef // indirect + github.com/stretchr/testify v1.8.4 // indirect + github.com/yuin/goldmark v1.7.1 // indirect + golang.org/x/image v0.18.0 // indirect + golang.org/x/mobile v0.0.0-20231127183840-76ac6878050a // indirect + golang.org/x/net v0.25.0 // indirect + golang.org/x/sys v0.20.0 // indirect + golang.org/x/text v0.16.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..45dd04b --- /dev/null +++ b/go.sum @@ -0,0 +1,656 @@ +cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= +cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= +cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= +cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= +cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= +cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= +cloud.google.com/go v0.52.0/go.mod h1:pXajvRH/6o3+F9jDHZWQ5PbGhn+o8w9qiu/CffaVdO4= +cloud.google.com/go v0.53.0/go.mod h1:fp/UouUEsRkN6ryDKNW/Upv/JBKnv6WDthjR6+vze6M= +cloud.google.com/go v0.54.0/go.mod h1:1rq2OEkV3YMf6n/9ZvGWI3GWw0VoqH/1x2nd8Is/bPc= +cloud.google.com/go v0.56.0/go.mod h1:jr7tqZxxKOVYizybht9+26Z/gUq7tiRzu+ACVAMbKVk= +cloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs= +cloud.google.com/go v0.62.0/go.mod h1:jmCYTdRCQuc1PHIIJ/maLInMho30T/Y0M4hTdTShOYc= +cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHObY= +cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= +cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= +cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= +cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= +cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= +cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= +cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= +cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= +cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg= +cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc= +cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ= +cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= +cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= +cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk= +cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= +cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= +cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= +cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= +cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= +cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= +cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= +cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= +cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= +dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= +fyne.io/fyne/v2 v2.5.1 h1:jd2mhQz0ViosZjhgR5l2bdCbc5HFqkYnTzEXX8UOC7I= +fyne.io/fyne/v2 v2.5.1/go.mod h1:NdxEG8L7EVWo06/cYbXW11uA0X7UG8Q8j5CLebvTZi8= +fyne.io/systray v1.11.0 h1:D9HISlxSkx+jHSniMBR6fCFOUjk1x/OOOJLa9lJYAKg= +fyne.io/systray v1.11.0/go.mod h1:RVwqP9nYMo7h5zViCBHri2FgjXF7H2cub7MAq4NSoLs= +github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= +github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= +github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= +github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= +github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= +github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bketelsen/crypt v0.0.4/go.mod h1:aI6NrJ0pMGgvZKL1iVgXLnfIFJtfV+bKCoqOes/6LfM= +github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= +github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= +github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= +github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= +github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= +github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/felixge/fgprof v0.9.3 h1:VvyZxILNuCiUCSXtPtYmmtGvb65nqXh2QFWc0Wpf2/g= +github.com/felixge/fgprof v0.9.3/go.mod h1:RdbpDgzqYVh/T9fPELJyV7EYJuHB55UTEULNun8eiPw= +github.com/fredbi/uri v1.1.0 h1:OqLpTXtyRg9ABReqvDGdJPqZUxs8cyBDOMXBbskCaB8= +github.com/fredbi/uri v1.1.0/go.mod h1:aYTUoAXBOq7BLfVJ8GnKmfcuURosB1xyHDIfWeC/iW4= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= +github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= +github.com/fyne-io/gl-js v0.0.0-20220119005834-d2da28d9ccfe h1:A/wiwvQ0CAjPkuJytaD+SsXkPU0asQ+guQEIg1BJGX4= +github.com/fyne-io/gl-js v0.0.0-20220119005834-d2da28d9ccfe/go.mod h1:d4clgH0/GrRwWjRzJJQXxT/h1TyuNSfF/X64zb/3Ggg= +github.com/fyne-io/glfw-js v0.0.0-20240101223322-6e1efdc71b7a h1:ybgRdYvAHTn93HW79bLiBiJwVL4jVeyGQRZMgImoeWs= +github.com/fyne-io/glfw-js v0.0.0-20240101223322-6e1efdc71b7a/go.mod h1:gsGA2dotD4v0SR6PmPCYvS9JuOeMwAtmfvDE7mbYXMY= +github.com/fyne-io/image v0.0.0-20220602074514-4956b0afb3d2 h1:hnLq+55b7Zh7/2IRzWCpiTcAvjv/P8ERF+N7+xXbZhk= +github.com/fyne-io/image v0.0.0-20220602074514-4956b0afb3d2/go.mod h1:eO7W361vmlPOrykIg+Rsh1SZ3tQBaOsfzZhsIOb/Lm0= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/go-gl/gl v0.0.0-20211210172815-726fda9656d6 h1:zDw5v7qm4yH7N8C8uWd+8Ii9rROdgWxQuGoJ9WDXxfk= +github.com/go-gl/gl v0.0.0-20211210172815-726fda9656d6/go.mod h1:9YTyiznxEY1fVinfM7RvRcjRHbw2xLBJ3AAGIT0I4Nw= +github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20240506104042-037f3cc74f2a h1:vxnBhFDDT+xzxf1jTJKMKZw3H0swfWk9RpWbBbDK5+0= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20240506104042-037f3cc74f2a/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-text/render v0.1.1-0.20240418202334-dd62631dae9b h1:daoFn+Aw8EIQZO9kYWwHL01FqwwpCl2nTeVEYbsgRHk= +github.com/go-text/render v0.1.1-0.20240418202334-dd62631dae9b/go.mod h1:jqEuNMenrmj6QRnkdpeaP0oKGFLDNhDkVKwGjsWWYU4= +github.com/go-text/typesetting v0.1.0 h1:vioSaLPYcHwPEPLT7gsjCGDCoYSbljxoHJzMnKwVvHw= +github.com/go-text/typesetting v0.1.0/go.mod h1:d22AnmeKq/on0HNv73UFriMKc4Ez6EqZAofLhAzpSzI= +github.com/go-text/typesetting-utils v0.0.0-20240329101916-eee87fb235a3 h1:levTnuLLUmpavLGbJYLJA7fQnKeS7P1eCdAlM+vReXk= +github.com/go-text/typesetting-utils v0.0.0-20240329101916-eee87fb235a3/go.mod h1:DDxDdQEnB70R8owOx3LVpEFvpMK9eeH1o2r0yZhFI9o= +github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk= +github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y= +github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= +github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= +github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= +github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= +github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= +github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= +github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= +github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= +github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= +github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= +github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= +github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= +github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= +github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20211214055906-6f57359322fd h1:1FjCyPC+syAzJ5/2S8fqdZK1R22vvA0J7JZKcuOIQ7Y= +github.com/google/pprof v0.0.0-20211214055906-6f57359322fd/go.mod h1:KgnwoLYCZ8IQu3XUZ8Nc/bM9CCZFOyjUNOSygVozoDg= +github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= +github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= +github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= +github.com/gopherjs/gopherjs v0.0.0-20211219123610-ec9572f70e60/go.mod h1:cz9oNYuRUWGdHmLF2IodMLkAhcPtXeULvcBNagUrxTI= +github.com/gopherjs/gopherjs v1.17.2 h1:fQnZVsXk8uxXIStYb0N4bGk7jeyTalG/wsZjQ25dO0g= +github.com/gopherjs/gopherjs v1.17.2/go.mod h1:pRRIvn/QzFLrKfvEz3qUuEhtE/zLCWfreZ6J5gM2i+k= +github.com/goxjs/gl v0.0.0-20210104184919-e3fafc6f8f2a/go.mod h1:dy/f2gjY09hwVfIyATps4G2ai7/hLwLkc5TrPqONuXY= +github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= +github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q= +github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= +github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= +github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= +github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU= +github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU= +github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4= +github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90= +github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= +github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= +github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= +github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= +github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/jeandeaual/go-locale v0.0.0-20240223122105-ce5225dcaa49 h1:Po+wkNdMmN+Zj1tDsJQy7mJlPlwGNQd9JZoPjObagf8= +github.com/jeandeaual/go-locale v0.0.0-20240223122105-ce5225dcaa49/go.mod h1:YiutDnxPRLk5DLUFj6Rw4pRBBURZY07GFr54NdV9mQg= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= +github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= +github.com/jsummers/gobmp v0.0.0-20151104160322-e2ba15ffa76e h1:LvL4XsI70QxOGHed6yhQtAU34Kx3Qq2wwBzGFKY8zKk= +github.com/jsummers/gobmp v0.0.0-20151104160322-e2ba15ffa76e/go.mod h1:kLgvv7o6UM+0QSf0QjAse3wReFDsb9qbZJdfexWlrQw= +github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/magiconair/properties v1.8.5/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= +github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= +github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= +github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= +github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS42BGNg= +github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= +github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +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= +github.com/neelance/sourcemap v0.0.0-20200213170602-2833bce08e4c/go.mod h1:Qr6/a/Q4r9LP1IltGz7tA7iOK1WonHEYhu1HRBA7ZiM= +github.com/nicksnyder/go-i18n/v2 v2.4.0 h1:3IcvPOAvnCKwNm0TB0dLDTuawWEj+ax/RERNC+diLMM= +github.com/nicksnyder/go-i18n/v2 v2.4.0/go.mod h1:nxYSZE9M0bf3Y70gPQjN9ha7XNHX7gMc814+6wVyEI4= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= +github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/profile v1.7.0 h1:hnbDkaNWPCLMO9wGLdBFTIZvzDrDfBM2072E1S9gJkA= +github.com/pkg/profile v1.7.0/go.mod h1:8Uer0jas47ZQMJ7VD+OHknK4YDY07LPUC6dEvqDjvNo= +github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZI= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= +github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= +github.com/rymdport/portal v0.2.6 h1:HWmU3gORu7vWcpr7VSwUS2Xx1HtJXVcUuTqEZcMEsIg= +github.com/rymdport/portal v0.2.6/go.mod h1:kFF4jslnJ8pD5uCi17brj/ODlfIidOxlgUDTO5ncnC4= +github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= +github.com/shurcooL/go v0.0.0-20200502201357-93f07166e636/go.mod h1:TDJrrUr11Vxrven61rcy3hJMUqaf/CLWYhHNPmT14Lk= +github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749/go.mod h1:ZY1cvUeJuFPAdZ/B6v7RHavJWZn2YPVFQ1OSXhCGOkg= +github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= +github.com/shurcooL/vfsgen v0.0.0-20200824052919-0d455de96546/go.mod h1:TrYk7fJVaAttu97ZZKrO9UbRa8izdowaMIZcxYMbVaw= +github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= +github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= +github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= +github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= +github.com/spf13/cobra v1.2.1/go.mod h1:ExllRjgxM/piMAM+3tAZvg8fsklGAf3tPfi+i8t68Nk= +github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/viper v1.8.1/go.mod h1:o0Pch8wJ9BVSWGQMbra6iw0oQ5oktSIBaujf1rJH9Ns= +github.com/srwiley/oksvg v0.0.0-20221011165216-be6e8873101c h1:km8GpoQut05eY3GiYWEedbTT0qnSxrCjsVbb7yKY1KE= +github.com/srwiley/oksvg v0.0.0-20221011165216-be6e8873101c/go.mod h1:cNQ3dwVJtS5Hmnjxy6AgTPd0Inb3pW05ftPSX7NZO7Q= +github.com/srwiley/rasterx v0.0.0-20220730225603-2ab79fcdd4ef h1:Ch6Q+AZUxDBCVqdkI8FSpFyZDtCVBc2VmejdNrm5rRQ= +github.com/srwiley/rasterx v0.0.0-20220730225603-2ab79fcdd4ef/go.mod h1:nXTWP6+gD5+LUJ8krVhhoeHjvHTutPxMYl5SvkcnJNE= +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.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= +github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +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.0/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yuin/goldmark v1.7.1 h1:3bajkSilaCbjdKVsKdZjZCLBNPL9pYzrCakKaf4U49U= +github.com/yuin/goldmark v1.7.1/go.mod h1:uzxRWxtg69N339t3louHJ7+O03ezfj6PlliRlaOzY1E= +go.etcd.io/etcd/api/v3 v3.5.0/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/client/pkg/v3 v3.5.0/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/v2 v2.305.0/go.mod h1:h9puh54ZTgAKtEbut2oe9P4L/oqKCVB6xsXlzd7alYQ= +go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= +go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= +go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= +go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= +go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= +golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/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-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= +golang.org/x/exp v0.0.0-20190731235908-ec7cb31e5a56/go.mod h1:JhuoJpWY28nO4Vef9tZUw9qufEGTyX1+7lmHxV5q5G4= +golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= +golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= +golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= +golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= +golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= +golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.18.0 h1:jGzIakQa/ZXI1I0Fxvaa9W7yP25TqT6cHIHn+6CqvSQ= +golang.org/x/image v0.18.0/go.mod h1:4yyo5vMFQjVjUcVk4jEQcU9MGy/rulF5WvUILseCM2E= +golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= +golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs= +golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= +golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= +golang.org/x/mobile v0.0.0-20211207041440-4e6c2922fdee/go.mod h1:pe2sM7Uk+2Su1y7u/6Z8KJ24D7lepUjFZbhFOrmDfuQ= +golang.org/x/mobile v0.0.0-20231127183840-76ac6878050a h1:sYbmY3FwUWCBTodZL1S3JUuOvaW6kM2o+clDzzDNBWg= +golang.org/x/mobile v0.0.0-20231127183840-76ac6878050a/go.mod h1:Ede7gF0KGoHlj822RtphAHK1jLdrcuRBZg0sF1Q+SPc= +golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= +golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= +golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/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.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200222125558-5a598a2470a0/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-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/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-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= +golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= +golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210402161424-2e8d93401602/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +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-20200317015054-43a5402ce75a/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-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/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-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210403161142-5e06dd20ab57/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= +golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= +golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= +golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= +golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191112195655-aa38f8e97acc/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= +golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= +golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= +golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= +golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201208233053-a543418bbed2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= +golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.8-0.20211022200916-316ba0b74098/go.mod h1:LGqMHiF4EqQNHR1JncWGqT5BVaXmza+X+BDGol+dOxo= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= +google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= +google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= +google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= +google.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.15.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.17.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.18.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.19.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.20.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.22.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.24.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= +google.golang.org/api v0.28.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= +google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM= +google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= +google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= +google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= +google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= +google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= +google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= +google.golang.org/api v0.44.0/go.mod h1:EBOGZqzyhtvMDoxwS97ctnh0zUmYY6CxqXsc1AvkYD8= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= +google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8= +google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA= +google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod h1:YsZOwe1myG/8QRHRsmBRE1LrgQY60beZKjly0O1fX9U= +google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= +google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= +google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= +google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= +google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= +google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= +google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= +google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= +google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60= +google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= +google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.31.1/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= +google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= +google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= +google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= +google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= +google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= +google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= +google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= +google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= +google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= +google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= +google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/ini.v1 v1.62.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.8/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/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +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-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= +honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= +rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= +rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= diff --git a/main.go b/main.go new file mode 100644 index 0000000..03ff7f2 --- /dev/null +++ b/main.go @@ -0,0 +1,32 @@ +package main + +import ( + "fyne.io/fyne/v2" + "fyne.io/fyne/v2/app" + "fyne.io/fyne/v2/container" + "fyne.io/fyne/v2/widget" +) + +func main() { + a := app.New() + win := a.NewWindow("Snuffler") + + lipsum := widget.NewRichTextWithText(lipsumtxt) + lipsum.Wrapping = fyne.TextWrapWord + lipsumscroll := container.NewVScroll(lipsum) + + win.SetContent(container.NewMax( + lipsumscroll, + )) + win.ShowAndRun() +} + +const lipsumtxt = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla augue eros, aliquet quis arcu non, commodo tempus magna. Morbi sodales rhoncus fermentum. Cras auctor turpis non rhoncus viverra. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Etiam magna dui, egestas sit amet nunc non, convallis posuere elit. Nunc volutpat, sapien id ornare vulputate, mi massa tristique dolor, quis placerat diam justo in eros. Morbi egestas tristique lacinia. Curabitur ut pretium nisl. Nam leo ipsum, vehicula nec ligula vel, dictum tempor purus. Phasellus nec neque eget libero lobortis fermentum. Fusce volutpat, risus et mattis rhoncus, lorem lorem molestie mauris, a laoreet nisi eros id tortor. Morbi id est arcu. Praesent semper eros et enim fermentum, eget dictum massa tristique. Sed et risus vitae quam tincidunt sodales. Aenean id sollicitudin tellus. + +Pellentesque blandit orci orci, sed laoreet magna iaculis ac. Curabitur nisl justo, auctor vel nisl pellentesque, lobortis pellentesque mauris. Vivamus lobortis vel odio convallis bibendum. Mauris mattis magna at vulputate congue. Integer dui ante, laoreet ac iaculis vitae, consequat at dolor. Pellentesque in ante vitae lorem aliquet malesuada. Praesent elementum congue nisl commodo tempor. Nam sodales dui a nisi fermentum euismod. Mauris ante est, gravida nec molestie ut, tincidunt sit amet nisl. Duis sed quam a ipsum aliquet volutpat. Interdum et malesuada fames ac ante ipsum primis in faucibus. Sed pellentesque neque at enim malesuada, a mollis urna volutpat. Suspendisse mattis vitae lectus ut consequat. Pellentesque bibendum urna eu sagittis maximus. Ut mattis, lacus sit amet euismod mollis, nisl augue pharetra dui, quis volutpat lorem lacus at justo. + +Etiam venenatis eros eu hendrerit hendrerit. Nunc eu risus nisi. Phasellus non semper nunc. In sed euismod purus. Suspendisse ultrices pellentesque sapien, vitae semper nulla imperdiet vel. Mauris sit amet sem ligula. Sed finibus congue ante sit amet consectetur. + +Curabitur semper, ipsum vitae ultrices tempor, nibh mauris gravida dolor, vel iaculis purus nisl non risus. Etiam blandit feugiat nisi ut vehicula. Morbi ornare dignissim purus ac facilisis. Vivamus ullamcorper congue consectetur. In ac dolor risus. Vivamus ultrices tortor a feugiat rutrum. Cras ultrices sodales velit, a vulputate ligula efficitur id. Donec scelerisque leo eget lacus accumsan, eget euismod ante placerat. In imperdiet rhoncus quam, non molestie eros aliquam nec. Suspendisse leo nisi, posuere non lectus quis, dignissim rhoncus sapien. Donec ac massa ut nulla feugiat suscipit id et nisi. Maecenas quis tortor efficitur, lacinia nisl et, elementum sapien. Vestibulum et ex consequat, gravida magna id, sollicitudin purus. Maecenas dapibus est ut vestibulum feugiat. + +Phasellus magna augue, convallis a lobortis et, sodales eget odio. Pellentesque vestibulum auctor iaculis. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Suspendisse placerat mattis nisl. Vestibulum posuere, elit non mollis dictum, lacus augue porttitor dui, eget porta quam tellus in dui. Curabitur sit amet rhoncus nunc, in commodo elit. Curabitur ante est, efficitur sit amet tellus ultricies, tempor imperdiet nibh. Nulla a nunc diam. Etiam eget eros quis nunc consectetur fermentum a in orci. Vestibulum mauris ex, aliquam et cursus vel, interdum quis ante. Curabitur tincidunt odio nec dapibus lacinia. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis eget velit sed nisl finibus cursus eget quis velit. Donec vehicula, turpis finibus aliquet pellentesque, odio odio convallis elit, nec semper turpis odio semper odio. `