From 36fcaed055928b80b154a575901d6fee5babc28b Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Sun, 22 Jan 2023 22:53:03 +0700 Subject: [PATCH 01/18] refactor!: clean up from scratch --- .env.example | 21 - .gitignore | 5 +- Dockerfile | 20 - Makefile | 17 +- README.md | 2 - cmd/config/config.go | 66 - cmd/main.go | 104 - docker-compose.yaml | 51 - docs/architecture.png | Bin 954672 -> 0 bytes go.mod | 28 - go.sum | 1843 ----------------- internal/auth/delivery/http/handler.go | 131 -- internal/auth/delivery/http/handler_test.go | 514 ----- .../delivery/http/middleware/middleware.go | 48 - .../http/middleware/middleware_test.go | 141 -- internal/auth/repository/repository.go | 69 - internal/auth/repository/repository_test.go | 374 ---- internal/auth/usecase/usecase.go | 124 -- internal/auth/usecase/usecase_test.go | 631 ------ internal/domain/dto/auth.go | 69 - internal/domain/dto/auth_test.go | 70 - internal/domain/dto/errors.go | 13 - internal/domain/dto/task.go | 90 - internal/domain/dto/task_test.go | 71 - internal/domain/dto/user.go | 30 - internal/domain/dto/user_test.go | 35 - internal/domain/entity/auth.go | 43 - internal/domain/entity/auth_test.go | 48 - internal/domain/entity/primitive.go | 34 - internal/domain/entity/primitive_test.go | 86 - internal/domain/entity/task.go | 17 - internal/domain/entity/user.go | 44 - internal/domain/entity/user_test.go | 34 - internal/domain/mocks/AuthRepository.go | 94 - internal/domain/mocks/AuthUsecase.go | 108 - internal/domain/mocks/HashProvider.go | 62 - internal/domain/mocks/IDProvider.go | 39 - internal/domain/mocks/JWTProvider.go | 107 - internal/domain/mocks/TaskRepository.go | 145 -- internal/domain/mocks/TaskUsecase.go | 131 -- internal/domain/mocks/UserRepository.go | 108 - internal/domain/mocks/UserUsecase.go | 52 - internal/domain/mocks/Validater.go | 39 - internal/domain/mocks/ValidatorProvider.go | 42 - internal/domain/provider.go | 35 - internal/domain/repository.go | 50 - internal/domain/response.go | 35 - internal/domain/usecase.go | 41 - internal/task/delivery/http/handler.go | 149 -- internal/task/delivery/http/handler_test.go | 617 ------ internal/task/repository/repository.go | 106 - internal/task/repository/repository_test.go | 627 ------ internal/task/usecase/usecase.go | 109 - internal/task/usecase/usecase_test.go | 505 ----- internal/user/delivery/http/handler.go | 50 - internal/user/delivery/http/handler_test.go | 165 -- internal/user/repository/repository.go | 70 - internal/user/repository/repository_test.go | 376 ---- internal/user/usecase/usecase.go | 44 - internal/user/usecase/usecase_test.go | 160 -- migrations/000001_create_users_table.down.sql | 1 - migrations/000001_create_users_table.up.sql | 8 - ...0002_create_authentications_table.down.sql | 1 - ...000002_create_authentications_table.up.sql | 8 - migrations/000003_create_tasks_table.down.sql | 1 - migrations/000003_create_tasks_table.up.sql | 12 - pkg/errorx/http_translator.go | 70 - pkg/errorx/http_translator_test.go | 65 - pkg/httpsvr/httpsvr.go | 52 - pkg/idgen/uuid.go | 15 - pkg/postgres/postgres.go | 71 - pkg/security/bcrypt.go | 19 - pkg/security/jwt.go | 98 - pkg/validator/validator.go | 13 - test/helper.go | 38 - 75 files changed, 8 insertions(+), 9403 deletions(-) delete mode 100644 .env.example delete mode 100644 Dockerfile delete mode 100644 cmd/config/config.go delete mode 100644 cmd/main.go delete mode 100644 docker-compose.yaml delete mode 100644 docs/architecture.png delete mode 100644 go.mod delete mode 100644 go.sum delete mode 100644 internal/auth/delivery/http/handler.go delete mode 100644 internal/auth/delivery/http/handler_test.go delete mode 100644 internal/auth/delivery/http/middleware/middleware.go delete mode 100644 internal/auth/delivery/http/middleware/middleware_test.go delete mode 100644 internal/auth/repository/repository.go delete mode 100644 internal/auth/repository/repository_test.go delete mode 100644 internal/auth/usecase/usecase.go delete mode 100644 internal/auth/usecase/usecase_test.go delete mode 100644 internal/domain/dto/auth.go delete mode 100644 internal/domain/dto/auth_test.go delete mode 100644 internal/domain/dto/errors.go delete mode 100644 internal/domain/dto/task.go delete mode 100644 internal/domain/dto/task_test.go delete mode 100644 internal/domain/dto/user.go delete mode 100644 internal/domain/dto/user_test.go delete mode 100644 internal/domain/entity/auth.go delete mode 100644 internal/domain/entity/auth_test.go delete mode 100644 internal/domain/entity/primitive.go delete mode 100644 internal/domain/entity/primitive_test.go delete mode 100644 internal/domain/entity/task.go delete mode 100644 internal/domain/entity/user.go delete mode 100644 internal/domain/entity/user_test.go delete mode 100644 internal/domain/mocks/AuthRepository.go delete mode 100644 internal/domain/mocks/AuthUsecase.go delete mode 100644 internal/domain/mocks/HashProvider.go delete mode 100644 internal/domain/mocks/IDProvider.go delete mode 100644 internal/domain/mocks/JWTProvider.go delete mode 100644 internal/domain/mocks/TaskRepository.go delete mode 100644 internal/domain/mocks/TaskUsecase.go delete mode 100644 internal/domain/mocks/UserRepository.go delete mode 100644 internal/domain/mocks/UserUsecase.go delete mode 100644 internal/domain/mocks/Validater.go delete mode 100644 internal/domain/mocks/ValidatorProvider.go delete mode 100644 internal/domain/provider.go delete mode 100644 internal/domain/repository.go delete mode 100644 internal/domain/response.go delete mode 100644 internal/domain/usecase.go delete mode 100644 internal/task/delivery/http/handler.go delete mode 100644 internal/task/delivery/http/handler_test.go delete mode 100644 internal/task/repository/repository.go delete mode 100644 internal/task/repository/repository_test.go delete mode 100644 internal/task/usecase/usecase.go delete mode 100644 internal/task/usecase/usecase_test.go delete mode 100644 internal/user/delivery/http/handler.go delete mode 100644 internal/user/delivery/http/handler_test.go delete mode 100644 internal/user/repository/repository.go delete mode 100644 internal/user/repository/repository_test.go delete mode 100644 internal/user/usecase/usecase.go delete mode 100644 internal/user/usecase/usecase_test.go delete mode 100644 migrations/000001_create_users_table.down.sql delete mode 100644 migrations/000001_create_users_table.up.sql delete mode 100644 migrations/000002_create_authentications_table.down.sql delete mode 100644 migrations/000002_create_authentications_table.up.sql delete mode 100644 migrations/000003_create_tasks_table.down.sql delete mode 100644 migrations/000003_create_tasks_table.up.sql delete mode 100644 pkg/errorx/http_translator.go delete mode 100644 pkg/errorx/http_translator_test.go delete mode 100644 pkg/httpsvr/httpsvr.go delete mode 100644 pkg/idgen/uuid.go delete mode 100644 pkg/postgres/postgres.go delete mode 100644 pkg/security/bcrypt.go delete mode 100644 pkg/security/jwt.go delete mode 100644 pkg/validator/validator.go delete mode 100644 test/helper.go diff --git a/.env.example b/.env.example deleted file mode 100644 index 263928f..0000000 --- a/.env.example +++ /dev/null @@ -1,21 +0,0 @@ -# Application -PORT= -ALLOWED_ORIGIN= -ACCESS_TOKEN_KEY= -REFRESH_TOKEN_KEY= -ACCESS_TOKEN_EXPIRATION= -REFRESH_TOKEN_EXPIRATION= -AUTO_MIGRATE=true - -# PostgreSQL -POSTGRES_HOST= -POSTGRES_PORT= -POSTGRES_DB= -POSTGRES_USER= -POSTGRES_PASSWORD= -POSTGRES_SSLMODE= - -# PGAdmin -PGADMIN_EMAIL= -PGADMIN_PASSWORD= -PGADMIN_PORT= \ No newline at end of file diff --git a/.gitignore b/.gitignore index d8783ea..55b355b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ -coverage.out -.env \ No newline at end of file +bin/ +.env +coverage.out \ No newline at end of file diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 2ae4828..0000000 --- a/Dockerfile +++ /dev/null @@ -1,20 +0,0 @@ -FROM golang:1.19-alpine3.17 AS builder - -WORKDIR /app - -COPY go.mod . -COPY go.sum . -RUN go mod download - -COPY . . - -RUN CGO_ENABLED=0 GOOS=linux go build cmd/main.go - -FROM scratch - -WORKDIR /app - -COPY --from=builder /app/main . -COPY --from=builder /app/migrations ./migrations - -CMD ["./main"] \ No newline at end of file diff --git a/Makefile b/Makefile index b393882..824f291 100644 --- a/Makefile +++ b/Makefile @@ -2,33 +2,26 @@ include $(PWD)/.env export $(shell sed 's/=.*//' $(PWD)/.env) -POSTGRES_DSN=postgres://$(POSTGRES_USER):$(POSTGRES_PASSWORD)@$(POSTGRES_HOST):$(POSTGRES_PORT)/$(POSTGRES_DB)?sslmode=disable - ## help: show help .PHONY: help help: @echo 'Usage:' @sed -n 's/^##//p' ${MAKEFILE_LIST} | column -t -s ':' | sed -e 's/^/ /' -## dev: run development server -.PHONY: dev +## run: start main app +.PHONY: run dev: - @APP_ENV=dev go run cmd/main.go - -## mocks: generate or update mocks -.PHONY: mocks -mocks: - @cd internal/domain && mockery --all + @go run cmd/main.go ## test: run tests .PHONY: test test: @go test -v -cover -coverprofile coverage.out ./... -## coverage: run test coverage +## cover: run test & show coverage .PHONY: cover cover: test - @go tool cover -html=coverage.out + @go tool cover -func=coverage.out ## migrate/new name=$1: create a new database migration .PHONY: migrate/new diff --git a/README.md b/README.md index 4005678..b0984c2 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,6 @@ See the [Postman documenter](https://documenter.getpostman.com/view/25225683/2s8 Implement [Clean architecture](https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html) by Robert C. Martin (Uncle Bob) -![project architecture](./docs/architecture.png) - ## License MIT licensed. See the [LICENSE](./LICENSE) file for details. diff --git a/cmd/config/config.go b/cmd/config/config.go deleted file mode 100644 index 3d91221..0000000 --- a/cmd/config/config.go +++ /dev/null @@ -1,66 +0,0 @@ -package config - -import ( - "encoding/json" - "flag" - "log" - "os" - "strconv" - - _ "github.com/joho/godotenv/autoload" - - "github.com/edwintantawi/taskit/pkg/postgres" -) - -type Config struct { - Port string - AllowedOrigin string - AccessTokenKey string - RefreshTokenKey string - AccessTokenExpiration int - RefreshTokenExpiration int - AutoMigrate bool - Postgres postgres.Config -} - -func New() Config { - var config Config - - portEnv := os.Getenv("PORT") - allowedOriginEnv := os.Getenv("ALLOWED_ORIGIN") - accessTokenKeyEnv := os.Getenv("ACCESS_TOKEN_KEY") - refreshTokenKeyEnv := os.Getenv("REFRESH_TOKEN_KEY") - accessTokenExpirationEnv, _ := strconv.Atoi(os.Getenv("ACCESS_TOKEN_EXPIRATION")) - refreshTokenExpirationEnv, _ := strconv.Atoi(os.Getenv("REFRESH_TOKEN_EXPIRATION")) - autoMigrateEnv, _ := strconv.ParseBool(os.Getenv("AUTO_MIGRATE")) - - postgresHost := os.Getenv("POSTGRES_HOST") - postgresPort := os.Getenv("POSTGRES_PORT") - postgresDB := os.Getenv("POSTGRES_DB") - postgresUser := os.Getenv("POSTGRES_USER") - postgresPassword := os.Getenv("POSTGRES_PASSWORD") - postgresSSLModeEnv := os.Getenv("POSTGRES_SSLMODE") - - flag.StringVar(&config.Port, "port", portEnv, "provide http server port address") - flag.StringVar(&config.AllowedOrigin, "allowed-origin", allowedOriginEnv, "provide allowed origin") - flag.StringVar(&config.AccessTokenKey, "access-token-key", accessTokenKeyEnv, "provide access token secret key for jwt") - flag.StringVar(&config.RefreshTokenKey, "refresh-token-key", refreshTokenKeyEnv, "provide refresh token secret key for jwt") - flag.IntVar(&config.AccessTokenExpiration, "access-token-expiration", accessTokenExpirationEnv, "provide access token expiration time in seconds") - flag.IntVar(&config.RefreshTokenExpiration, "refresh-token-expiration", refreshTokenExpirationEnv, "provide refresh token expiration time in seconds") - flag.BoolVar(&config.AutoMigrate, "auto-migrate", autoMigrateEnv, "should auto migrate database (true | false)") - - flag.StringVar(&config.Postgres.Host, "postgres-host", postgresHost, "provide postgres host") - flag.StringVar(&config.Postgres.Port, "postgres-port", postgresPort, "provide postgres port") - flag.StringVar(&config.Postgres.DB, "postgres-db", postgresDB, "provide postgres db") - flag.StringVar(&config.Postgres.User, "postgres-user", postgresUser, "provide postgres user") - flag.StringVar(&config.Postgres.Password, "postgres-password", postgresPassword, "provide postgres password") - flag.StringVar(&config.Postgres.SSLMode, "postgres-sslmode", postgresSSLModeEnv, "provide postgres ssl mode (disable | require)") - - flag.Parse() - - if os.Getenv("APP_ENV") == "dev" { - strCfg, _ := json.MarshalIndent(&config, "", " ") - log.Println("Configuration:", string(strCfg)) - } - return config -} diff --git a/cmd/main.go b/cmd/main.go deleted file mode 100644 index a4aed67..0000000 --- a/cmd/main.go +++ /dev/null @@ -1,104 +0,0 @@ -package main - -import ( - "log" - "net/http" - - "github.com/go-chi/chi/v5" - "github.com/go-chi/chi/v5/middleware" - "github.com/go-chi/cors" - - "github.com/edwintantawi/taskit/cmd/config" - authHTTPHandler "github.com/edwintantawi/taskit/internal/auth/delivery/http" - authMiddleware "github.com/edwintantawi/taskit/internal/auth/delivery/http/middleware" - authRepository "github.com/edwintantawi/taskit/internal/auth/repository" - authUsecase "github.com/edwintantawi/taskit/internal/auth/usecase" - taskHTTPHandler "github.com/edwintantawi/taskit/internal/task/delivery/http" - taskRepository "github.com/edwintantawi/taskit/internal/task/repository" - taskUsecase "github.com/edwintantawi/taskit/internal/task/usecase" - userHTTPHandler "github.com/edwintantawi/taskit/internal/user/delivery/http" - userRepository "github.com/edwintantawi/taskit/internal/user/repository" - userUsecase "github.com/edwintantawi/taskit/internal/user/usecase" - "github.com/edwintantawi/taskit/pkg/httpsvr" - "github.com/edwintantawi/taskit/pkg/idgen" - "github.com/edwintantawi/taskit/pkg/postgres" - "github.com/edwintantawi/taskit/pkg/security" - "github.com/edwintantawi/taskit/pkg/validator" -) - -func main() { - cfg := config.New() - - // Create new postgres connection. - db, migrate := postgres.New(cfg.Postgres) - defer db.Close() - - // Migrate database. - if err := migrate(cfg.AutoMigrate); err != nil { - log.Fatalf("Failed to migrate database: %v", err) - } - - // Create new providers. - hashProvider := security.NewBcrypt() - idProvider := idgen.NewUUID() - validator := validator.New() - jwtProvider := security.NewJWT( - security.JWTTokenConfig{Key: cfg.AccessTokenKey, Exp: cfg.AccessTokenExpiration}, - security.JWTTokenConfig{Key: cfg.RefreshTokenKey, Exp: cfg.RefreshTokenExpiration}, - ) - - // User. - userRepository := userRepository.New(db, &idProvider) - userUsecase := userUsecase.New(&validator, &userRepository, &hashProvider) - userHTTPHandler := userHTTPHandler.New(&validator, &userUsecase) - - // Auth. - authRepository := authRepository.New(db, &idProvider) - authUsecase := authUsecase.New(&validator, &authRepository, &userRepository, &hashProvider, &jwtProvider) - authHTTPHandler := authHTTPHandler.New(&validator, &authUsecase) - authMiddleware := authMiddleware.New(&jwtProvider) - - // Task. - taskRepository := taskRepository.New(db, &idProvider) - taskUsecase := taskUsecase.New(&taskRepository) - taskHTTPHandler := taskHTTPHandler.New(&validator, &taskUsecase) - - // Create new router. - r := chi.NewRouter() - r.Use(middleware.Logger) - r.Use(cors.Handler(cors.Options{ - AllowedOrigins: []string{cfg.AllowedOrigin}, - AllowedMethods: []string{http.MethodOptions, http.MethodGet, http.MethodPost, http.MethodPut, http.MethodDelete}, - AllowedHeaders: []string{"Content-Type", "Authorization"}, - AllowCredentials: true, - })) - - // public routes - r.Group(func(r chi.Router) { - r.Post("/api/users", userHTTPHandler.Post) - - r.Post("/api/authentications", authHTTPHandler.Post) - r.Put("/api/authentications", authHTTPHandler.Put) - }) - - // private routes (need authentication) - r.Group(func(r chi.Router) { - r.Use(authMiddleware.Authenticate) - - r.Get("/api/authentications", authHTTPHandler.Get) - r.Delete("/api/authentications", authHTTPHandler.Delete) - - r.Post("/api/tasks", taskHTTPHandler.Post) - r.Get("/api/tasks", taskHTTPHandler.Get) - r.Get("/api/tasks/{task_id}", taskHTTPHandler.GetByID) - r.Delete("/api/tasks/{task_id}", taskHTTPHandler.Delete) - r.Put("/api/tasks/{task_id}", taskHTTPHandler.Put) - }) - - // Start HTTP server. - log.Printf("Server running at %s", cfg.Port) - svr := httpsvr.New(":"+cfg.Port, r) - if err := svr.Run(); err != nil { - log.Fatal(err) - } -} diff --git a/docker-compose.yaml b/docker-compose.yaml deleted file mode 100644 index 0b8be91..0000000 --- a/docker-compose.yaml +++ /dev/null @@ -1,51 +0,0 @@ -version: '2.7' -services: - api: - build: . - restart: always - depends_on: - - postgres - ports: - - ${PORT}:${PORT} - environment: - PORT: ${PORT} - ALLOWED_ORIGIN: ${ALLOWED_ORIGIN} - ACCESS_TOKEN_KEY: ${ACCESS_TOKEN_KEY} - REFRESH_TOKEN_KEY: ${REFRESH_TOKEN_KEY} - ACCESS_TOKEN_EXPIRATION: ${ACCESS_TOKEN_EXPIRATION} - REFRESH_TOKEN_EXPIRATION: ${REFRESH_TOKEN_EXPIRATION} - AUTO_MIGRATE: ${AUTO_MIGRATE} - POSTGRES_HOST: ${POSTGRES_HOST} - POSTGRES_PORT: ${POSTGRES_PORT} - POSTGRES_DB: ${POSTGRES_DB} - POSTGRES_USER: ${POSTGRES_USER} - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} - POSTGRES_SSLMODE: ${POSTGRES_SSLMODE} - postgres: - image: 'postgres:15.1' - restart: always - volumes: - - postgres-data:/var/lib/postgresql/data - environment: - POSTGRES_PORT: ${POSTGRES_PORT} - POSTGRES_DB: ${POSTGRES_DB} - POSTGRES_USER: ${POSTGRES_USER} - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} - pgadmin: - image: 'dpage/pgadmin4:6.18' - depends_on: - - postgres - volumes: - - pgadmin-data:/var/lib/pgadmin - environment: - PGADMIN_DEFAULT_EMAIL: ${PGADMIN_EMAIL} - PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_PASSWORD} - PGADMIN_LISTEN_PORT: ${PGADMIN_PORT} - # throw access log to /dev/null instead of stdout - # to reduce log noise - GUNICORN_ACCESS_LOGFILE: '/dev/null' - ports: - - ${PGADMIN_PORT}:${PGADMIN_PORT} -volumes: - postgres-data: - pgadmin-data: diff --git a/docs/architecture.png b/docs/architecture.png deleted file mode 100644 index cb48f7bfe371acf13b8d4f83c5c340bb879c1a93..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 954672 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

ocwi7&aQT1y^ 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 z�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%0AU5fw5}s3h_#%aB(ls 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

    ^7WFUmrX5yFEIKHu&e&u?%1hGJRzoaylLU9t(#L zVf$NbL{#NV8|Htj>b5QcoAlRs6~_dQCX1x6@c{ zf~Bas_Es)YPQ+sXSz9g9xww|7R`E*{&oO1y^4k_qB%YVSSuNHpu|^|SB}E#;PAy}v z=AL&nF2SuJj47sSrcvxvw^G!rZc#tb;&59`L$N47n>iJO9Y#S2I9jx2lbL zJzL3Ch}dR2@D8LDHbsFfMYXfDf`WaTQno6qRi?ETN$OUP8P_Vu8pYEV5*j62{^M08 zMZXr|fn#K9J+lfIOV9$vT&E40mNOscD3R4lURN=8@qpEOF_p_~EpF9mt4&Gq?5Uz= zqyv_iF30?%JEzLK-#)+dL*?q~_2u>1)sve`mTI5eJOBo-o_%?sGNuI#UJNjayWT(` z06%bZ^X%2%z9-uCjssN+taWc^dTnB4hWRGaoNxeyk~JmREN$8!4|bBsD%uo1Iyo^V z9awY2gaFp=->%jxk{snxu&~pVT`@#8P9rO1RLoLF`oU7|NnHSM6Lk!Mit2+A*4}}< zj;{@a0zgwDGC30IfEf-nOeyUYz}L|^*o$_ z(vh$;w>HeSHZ}R^mt>zQxxAhGGsB2pf(KJlNB~9_04%LqbHsURBN!eh_c}Mcwl~QK z5tPCtaDhqOT+R;z3=bCRi+9YCW_ai4_tq%tdOx`GDXZkB6Us+rO#Rq;c&7Z!*#L}hMlDSZ-M$dbLCkM2uT*hMp( zTuEnv8yxX*iPWy|3(=stzqFe_L4ZegO(ob^^VqK^VGLtJR!d+J=<^^>pq!C=8fC1Yx5mfs|#&;D)@6{@>K+_{iPg)?Q)nF0=s zxglc@s?q30vfO4yHO^FDACC?X3d5)CF$c()n&^xl61D5llq#atq^V2*l0a?0pNyh= z%|k{D7_5Gy)e&HrMyHcbPv)u!7ML{+<>U!t$SoEgde!Gp2)S~35U%=#N$S>ewOXYp zaRgQ8BX1CJ5XFRTVB){LU5Aljty`cHj}D`sOV?o$%j{WizwWaiEC1Q{-IuOj9-W%W zYNjg}nk}E3Xs^w0*V(v1aQFs^Z+NWoXVi5u1Ov2X1p{8ao=Ab-t`GLmoqmD@0U5*+Cs;N4;JEgPTvdkx{lSpMtf$k$DPJ9z+dbGF9`q3( zk>5@~a0)kPF#r($_0K0xNZNh+*nFlyV?uQ_QI;j3BBGTo&et}$=B!IHHdAb42CZG~$dkc;@+W8L7cSt)W3jWzY#lirFe^af+ral&7$;Ch$m=kr^nk zNI=-Fqm1oOpi9>#(2@5?M=&+V_C}{i??VazKQK4EgR@FpfMtEE0Z14ymIdu<3``ZC z?%MD)*s9S54U;vQ-mlppOwkswu&g!EX z1v8f;Q7tgRxE03+Fgwm35C_IdCrk}b53{EPXea5<8bR5P-k%_VyEdYg(n_#^^ey27 z-Ys^q%zoYW)s3SPpn=_mbbj5WEWP9nZ64Ff)cy*+TMOICmq@`N85xGHnhHimsvq? zB>_wP_2X~my8h@ljD0qZaHVmk92#fJDV!-EGSxij)G;v*7nNykA=wMCv%9=+MG7Kd zk)5p8oBVoIqthWipP3xN&#G2UqBlZ=#9jU9RW0~P2Ea;D{s6wLs9g&hS+H47ncfn@ zmBZ=r5ph)=ZVO_{pz}L;8993!QH0eg!2+ilix}(9NJLSB1r7m)nnNmAFE1-v2?EMX z`s*E`9)^Dicp7}np0VVt1tP@F?frS#?(e*GRU9S^X8=-WJF3m^GT5aptE2NLsx~zz$Zc-rnO9=Mz`nKm&!3+ABHWrEx%4VdyxC^OIhA-yXh7eG zzLe@#ziNYR0KrP<8|tz7oVGv@Rk1ddCE@8F=m-5aoyTMv^2v0SrLS+mV(TYQt5QqQ zO9T0p(ki zu5M-P`D_uvhrg&I*fNXN7{WAOkNr%}uD+d>#eZ_Du|*hER2Hnx#;SseV$Pooz-+6S zJ)T``tZIW>5UZZIVigKs8?jgsXLB}|XrD{xf!fHmS{2?kE09={2OXNX;+;w+Q>>`8 z9OU4w#&VqoLDLG6gDs`{w0NPrBGgo0@BYA%sD&ycnwX&F*JtlJS{7>Ek>H4EjEVRa7D}(~x zuwYA<)(c?pS7+CU2hX0oI=FhKJ^(mC+)%5QfAS@h-UwJYMgM&7E9Kp9wBCOtN>w4< zs?9Tz43IVWX;~P*4?I8%qKcb}YSa(|u&~D2b!2R8YG-spo9)-QQFA;8CSY!jSt;QR zJlYYEfFuXVzLI-I{=o;ptbHWxDj-=x*t*Y7BLDy(S_wxBX~|&MH2+Lv^6tqo$qY=* zQPMgyep}o{mX@UL#0+Yh0{~jZwB=&fqzHCqX69#~gl;ZLEs)Q}Acnm)N1N<@X-y!0 zfU_&Cf;p716nII$0vdX1d>NlNP{V?zqCtVs#b@3l#rqrY4PoG` zd;jw0&0$xgDzCY5;+E;^f%@X%72{b@FJ4_THTVo=d!{@)d&O5&Wp?oT`s#1*{L_20 zYDU(zyB^+rdDMi6wXsAW)=F~YM9FWS6qfe)YxBu;GHhC3S_vzuQgUe*l;-d+kLRfW~Hy|hxI z*;Qj}k$~8)g@2j^phc6{!tO?Tcbh5$6BO7ZjM^q=77A=q> z&w>!HkaT{7LKPN;tF*o9JOLeXP~ZYGeC-qws&S@d=AX==aHdeSdcB`|CQmQV>F#n2 zlUB8A5u%YwmzGIk49nj`24ILO7=)(F?9@C`6*pH47MP_3!DbExh`<7uS3`Q01zo`u z8E=>OZQ7WasIA))1Sf{8+lO<9B(u95?9?qm(1iC8l8h%@9)yvT)nPq4$ZwShtji@3 zukP$w;AbTW2EYH#e@@c=&P&%jgaaf=Y>;20i716kPe~hu0b0LmbDI(JLqh}pfZN&4 zg!F%))2m(^jb&)ZUjJY}g;_@0c>^xgr&W=B2%fr2=Q9n2J}|I9U^U2BTC=O&q3=gY z4q0GG=*^&1EeJv#r3O;I=IF=!wn%2dVe1E5W#A@9Dq#EdNJo3fa@*-O7_hiQ+_*r$ z8lYdm9<(u1*F*iRmsm64S;;M%Z0-sH9SC-e?xg63CQ!(BK z9)PDxGF0-OOhS=it!6U0a!xcVT&PU7UT?#H#T{if3vLuL?=9=`o#%11Y_2$)NEBn` zMMAHuMP{>1$Fn(t1;S;`O4mV7xTxjCd9I~yEiQI|WZ}MM8%3FhYA(`p(2jq-rLcds zUP)BXi=EXLKNK68Ok;6%3yZa?v9hG)K$>V*5&JLa(o-GqCJi9@{o*gio^$L6S`s&Ti zwaAJq)@~18T_GW!z|1;4xIVnPdKh{iwCf!M%jPV0LWKjrASYD2mn$^M*#Cy(>r5yY$?;M zx=&!eg4_bzN)-XDR+Q@+*j64n(TwOt-~l63GkY`Ra!%-5(=(%RWSQ*(@CyI+R!xr* zClGAc7<>KFqiGo&11Ugl0JbgI`5Oj_~-17A(**xl)fXgNZv11cCF7?u^gC zSRiU3`~=Rt)1AheUZeX}&{j;9j&+l23_hS2vd%o*8pevZa!dX4MIeU0` zc<|!E*%@>;NUreO$f~^1hP8w`{N)pdwdmJ6d-CwrFW>pQYvujezCyaHn|P}2&0UI4 z=L_@MWF!h`b)~dm~sPyw5@@45bUIRx(>-3=8FJDp3M9kCIhoN=%i=Zs{Tt zSB$;2|+`ib@=7TUmwvpVxLM|Qs^$(Sw{N6XiPAkMg(U+)Ezs8yB zvRGy1zK=(b8Pz!Crn-s@fW>Igkt0POYJ@An9^GQIWL?_JtdB|t0K%0gfFzYUEInj+ zVX=BN&&#Vx1wHcD;14QJr*zc&2UU;G*v~O!)V#aA{|gef3<=@N;PLiatj3;xBkcu< z4%Cbgu7vlb$zL6id@j%7Q0+z#^&DAB5ICLfHrm;pJ>$&ya(XmUki&R9J-Wb^CZb;* z@>qbn+U^eZ>m0c5U=A!UzAqN;M|j?hvi5qAqC`;p%{Cjw1)#hvCbt{nmENlF4OqP< zat61`Qsw?g{)#p$RbEV!5h>tE5HTEfZcB!`8ETLLjsb^j$g8(XX#(FL)#3u*${d!* zZIQ2zsT;|*8zll8Fgpw;?wlM95B~mde4>26eOuD?cUcq{+EZJmoA4Jq9Yo@Jr`5`x zW;#sw7wZ{QyUb1yt1uiD=uoJLjpNwd}Qai?DI9HaQk zt@B1~kv@P=|6-&$}vP!+x*eX6P#*1LFw#u2D)D!TAc4alUm^h7{cdDcW z;+=Yf_(Hb&HlxCaeGaT38|UY?pkNu+B6|ylYqqnRsxIa#^k*qsneyy09&nw^fGQ_d z`1lg;jd$AFc%ocnpiO=Efq^eRIeWEy@B-q{>t&VdtT!s2su*C0(1_IKv*jBQ0}n5k zFAon6!M!3cAZ~v7MBtmRuMO{kcD>^u0|3;2Mr(rAM*R5^&XvYpWhQ@m6wNk1wlhb% zl+}Mc(`lYYa!yY?;;qoEU{Ntq#jZQ#Rv&2@Si~OKDIx`O=uxRLpm=~-D<&r%D~zf+ z$;wK3z%9REjR~pA@n0IjR3(!-t_5ew!^)8)r%DK6ZG8AX&ksKWh#>B7*8`S}162b^ z*0qrxLbl_;0t9RIh$;eD0>o>jAC_nW=K}+an>;qYGdzO++<{>`2^VXR4~4xdhr@Wq zza5td0_Wv}PlH#OAx(hgtWjP$GL|mq{QNy}T|d9~FW0Y^pB-FXF00QTf)4;J%rF+Y z)`wb$+m&E1h`=(kb#tY%4zT>>3gh*O^twIxwL5?FLU}JXr0aeptgJ6Z!=mqGd0l;c zlvS9CN-LVQykNn9Ba%ud=c60@^XrV;BXOIXE1L^74U#2qD~0zdvnp&S=T9~w>644y z62K{`wpzhVO=j7ree{wilqI+Y3;D-|`Q30~KN3-JJ0&Jd`t^wQeUbnwmTo#-%jct! zjd|!-3(fQ{Fsu0}C9f;dZ75wEKi!vXE-LbNuIwZlt?j0gNzh)V4bTCRjgs1y^Pp5W zBeJ}|DWqET>_Wb@LHZyP&X$fg_fvTSzRE=@irK7&AMd6wgoOYEY-u~6ntxns*78g9 z7wPSz0v|-{Qz%IXta9}7MCA2f|5*9S?|#G8l`e}_(RiQ1J|qSTm8o#E9xkfW$HKm! zprBpjOj){|DW^DJW*&7m2v=~X47wmrRuH_WBxFNc)v8q@u)GUZEczqF>=zkRDz<)*pd~w`$ zcB|Lh>rmyotO}y{1BYqI>L(a$(+zS16Y$s_z$5GdgUc~Es56F4-3dcMq?!0Gb8o{p z+wJ6XiNN}F>VQWW3xs8Tx(~k(418OgdgmV(%T1v@l^Jk4Ms3!ch{V}?)5Ng8ivLNx zlqZVyN;4j-lvgXvYcT|sY7=kGG?jM!ZReE8L6y?j#kVoIR0z^y_8gqRd8XcC@5X5? z7MH55#B4Q_J(fs;+Id@Tt~N3iEZoE~!(WiNime!g*H{@MRgADg!W8?um}rVc8#ASH zvz>~Xoqd{M;a=gGiLJ(Iy;bihQuUhIdR|VTN1r}b70&WJlWU;3pXb`yOluX1ONYX2 ztDUMpFQbk-L>RV?!OWsfbGcO|R)*oF(ytKfPIp8t zyb{6yvI4g2!z-{^mseLW{`uaA$~)ff{5?vQceA{kk`Wm%2Af^#HakX;CPy zuwBPT@nWa3LXpA~BcfkN;AKsrX)#szP?p0J<0B+mrId9Ib*kkUCKw(QVZAo;5!ZeHq(kJlB6njJzC&wij)bckz{oDBuOHIPm;z&-B{9^UH8$*NBMaP0&J53DAo4E zk)zE81&N*pKtOfD{No5dE;)${CB=Xm=ClyL!jam_{QT1XKmNt`H4WMe?4$u0f4W>0yE0p~tHX8Vs%hy?L+;UU2q-jj*|l5>NKr)uRJF z9+QGn?K2JpP5lM~h5!8@IQ5K28T~Bp`;CNORXy&k3WUm_0bWg^U+`K24yv$1nujhf zsV86>&>0b%j$a^vN{v9j&uFK}b;!V&n2Z1R_4)-)VKw?qwt&TC2ss=M|Go$Pjl9FIC?u{)^uq}AJ+$dRUtm& z_7Q;y_}u-y7S-X=00wCnDNpS>q*X5alyrTxCKD6}W+N?~D9c#1gt zx`PM%v|2$5mg9ADu+q88E5J?>ssLGeIWDzSS+H8C7^qJ(>Uj=2Yq7CL~%)#5s7_cuRr;Bo4N6v(+Zm0m7~7Je6XvMzNA< z%at&e*cZ#XoR)q6%tI{kd2nZ<90>sLVQ}UJB%A7*`Y8Rps4n)M9;hsNktSeDdt<>`;>l*RL-R(5nY;1_}mlD>gX>qghe)BcuEB6I8Cr1Q5mrs0k@?fB8O#> z{}IDmfUt-TV7l(i4D%nNa6!LvDCw)3M(vL7!EzRfSVMdWfMfL4r; zVYAL?V`ZajK(Z#7v=YE8T_tOAOWKD(cSrEp2n+mK|$K#GO}Eb$*Cc!NSa1j-rqmkGy%^lMWI*`Ks`e9 zCBsbeBUl--0<*e#kj~{y$=y_` zuv=I_D2GqbpQ)2gL3NQ%EkqZRWMCDAXY&i&E2WcUnAB`IjN7_>Bt5f*(t_yEDDpHL zT|!^B#Sevh6`|hs0+Wx_hkG`RF{ngI~LNvvb zOVkKgTGgtK=fzY*M!IasJ})!ltO&b71|S54GewZF%bC)uR%K3`X>ddWvp#fyV%y5R zy2f)IM5%V0V^x~w(H9<{Zm{3g6ZBg!L5IvPpCY7BlPvGwW(K_c2;mBSiJu1BU{L1_ zcw{Qf)g$5CA??hAqKlx)+l>w>K?pF%BbBGUPA(6~(vYA(?`pGWel(Q}7!vB-5mLE4 zgPWaE*mwT(;_d$j(sfWW%x3;{fW&xoI#6v^7oWRV${##^PP_c+WTwt9by-6mW5A%d zl4!N|d!4<0M-NN~OTeZNy6=jMZT`Tj4q3Tb&`t6{&to=>|FmDM# zz|tH2z8-sE$V}lZj=5gdP_R8ZzaMAb8UA)S--D|%I^#7J&8MaO)WIh(lcLp_%2)`SU!RYF;<#2AAzH4^x+psrS{5dW!^ zt;gDl#gV|W| zdZ(T9W_Ccq3P5XY;-fjDrzposVKq;7!6OZuoFuEIQJ3S8IRSqZecbdR&7i%!JHahyFkFloT@z(#@$Nxgi z`o-m|o6BcV1YTWUt2d%iWol6Sragc(4B!=upLGEB)dSiHxMey#yb=2qys-M@pYDBn zsJ#2_t1niXsm;w5oW+f!0>V_Ap-(Nntfj)5Qk_rMHq!f>&{rdPu;FAgnP;7TrJ3K4 zB3OqNDz)KbA=t`YLHnipa2qO3*UpmU?k&H`8milY+ z(ajTZuXvix(q=Mpg0dyJnoX~7a;Ru}eLYp$j5O0r>yTd4=>;|aGTFwXeVG)(0PFW^ zI=Qg2TZ>XDyH98BW_lriaZ+GR41oy|OL(;@u2GTz+fZmX@n=f_Wz!;wd3iez+f`kE zyprXh42R8=ddMoKjp%NEzEIkopHHqdv+L_oUeD45+szELm$=>^{6pkdznOHk-uZR+ zzg1y=ATuyJA9^+5rcOyXQ*Mvn`|pG+Edtvs0@8)t8S+E8A_HJE_RE~M(eIW8W|6bq z<$bZqY|_XX;u6^JZfX- zUw!;@rgHutNLROX<-#h%4^YBkS;Uu52gTB|NL?Qi+QAb%x7c5>aJNY^3Q3t zsvh=~00ts(z~*$>8L7}ACxY&(4d~VJFC~?_mXIa6ignsU)2Zr5{Q~rwS0(O z)94mhv%n@m!RcLIV?Vc7MkgoI`U-yMi|@0p-==ikS_B?tsy0q%Gc2KJfeUPbUj5^k z!YfZ%-p|EBLNU|C(0@F3o}%5qtuOL&Ys1*_h2{jY%6lpJrcNC`gAqt$ooi#}iwc6NH zDs^gN38`|#oJu!9gPyEhr^3iqk>M(msj##vqP|h8e_T8-rqoUuOLa97PsGaEtzvn0 zl`4WbIoWy{4^{;dTWoadTciwft#~JOTFn$&#p>~GnQb=n7JZAeyoiv0T8^ow@zZRs z+-V_&?{}YU1Yl>fzbtv*qOnXE!qP zO|#ZB!UWe6guUX4n+Fe>CS7q^zxeUb^# zVhOGekA8$vOPANoN8PaQG{v?AXu)OiY36WB;n04xCO;yrC#7ZJHX%EK+QyIFp>S&w zwaUehukB0^Q*AJ*U1_)3OWBjw0_=^rqI{xU>dw-?8 zH%<=}RpVP69$fNxc5wFKf#&ez_T#p`IqOCWpt?RGP4MvMZ29{2-@O;w^{dbKQGq{Y zoL(hqY7$?u&~8VWmCbql(u<{|yvD1|hLa~@lDV~c+}xiow8K%_xs(gAuuN>xtkn$Dtd-iQw}6SS z^+MrUWll5dNsiHFvEsx^5Y-{U0)5B|@Uz!T5xyITHzW~QlaV(4E?U;m>o#$DzEBUB zN2Gzv1AAmvHQs@oIn>2w!Add)F?ItX5AqjQfz>R!jYK3%$eKn*y@)#J(H%m!**^YN z<>zhRb?K@q{#%&t-P?5QAll9BvNIFKZye0jkWp{8GIHnE3d+oAyL-5x4|mlop*zSpv#6#d`+y@ zA-n2;4l4~-#v#AW;ZZ#Sss-Ezi|RG#%-Whh#;FlBY=2;gh_l59Zw-%BZ?+8>90rRY zLWO0(sO!PF7ZGYeQ=^%KLm&)1=3t-)RP9i2Z@@6XvwA2Q;J%Q=0JsKwbwmAK5Sq;$ zko2^MxaF%uVp~=hG=MOy1a`vXH~sKO-xCJDMd^Axi>ix1&nU1>%Nh%7G0P-V8K06K z)XsS)14JNKPTkJo!3LWg%=;Gh0+_RVjLvKte+mB}?MK6c<7O1TB>X{n^FyR=r-%Hmk+eSgciS&>h<; zXIJAGrJ%JEu`MMl%3AHj>y_iiRwi>^e42rU&@K~VJy$BoRWMtm4_MwOnOZD1>Z`GO ztX@wYBWE+K41Ya8t@IV( zUy==_*NRpwjM{NAXGyNEi7SaXrGi!H0`UDYPj~P=CrATKJ;JmkGr*Ba%Z?3e`BUDz zHp9yP#K`aj{R7j(0AS@9d&7)RK?XpsB2sr|M%hzB3=h&38f!C52xDmiBcURY!uLu!5pcD4RGM4P&8AA7;?tSqlHKnSX zwe;r6?grHU?WKL;sY>lsbY($|(y)RbyFy=8GlJq&!nC30(2`jJ@F`i_DA${Q z8D7}0m6mGR%{={I^XZlKlg;GHej8NQiA;cnx3%PIlBz7+)%oc9#b!8Cx(G9bW|}W; z(m9YtsV-!JbaBxr>jiSSh5hi!LUMPvR=~GS9}(bfzF5^(Q1c5ULwW=)+EqqWSu=Y@ZdM^{yQC_)q7~SILs?>Ff{5217c{cViTbVuM z@+?O85AG;Gcl(Y@*L&)q)|Kn?>0K5KYMa?E+RZ3@)*fgJ-DF5mM(#{OLtoIV5B7lZ z4O*OLw}S`>@^Q%K>vi`lw>Srj%}3K(!09v(cy$97gH!JeSj;vHGyyl6QNAIVru|mE z&FpX)EYu2E`+Qzf)0nItOUQQXha2vqlmj}>BR_k320YA(4H$?I^ap~BQHh3BBtxL0 ze+@k1qGsrpW8IqkR7jjy7bJLXD7)bLss(K8K~(-V<`@e*LRoQNG{4E$RBZZ{s3D z>BCCpTGfn#v@Dj-a|x!U8r8~qU7%NFKr`%%{kfHu)%n#7y#tJM73;GN5Lv6u90&lF zIs=BUs`X5h5UbPzWZ3^aho4$(t}@_MtmoP?=&!WNwW=y{fDD2#6K8NLRzxDgA}BUa zi?JBwe>IzlS6gj5wc=&^vZ`M<(75#kncLR$mV(MHmye6N>{fYkHPI%6kiph%JL58`isjb-r^0=Bfk0%m2<tmp^ekr99%9B-TRey2iQcq-oNF! zPIi?l$WsZijv*Go@}mefB$Vtl^Jsc*cxq##-KrJN7t}Z1%Ne)O^omzo0*w_h&3v83uJAP&!ToUN|yM}a{y-X zU?o^E{^`em$t|%mUMpmWEw@_a3NDh{pB_P8xsr6dD zx;cCO;`-*`)idSU@+-cG$XTev|8(b9mX&wB{pROkoJ>X0h^*Zi`sh!$feUO$H&dx3 zJq2w-p6SQ%`Efqeo2K2D8^m50RuF_JyvO;hLR(h5mINJ8*w|ml3wjDU`528F*-Q!^ zn&B^%$tUT`$}bgaxUJ!(b!9!gkt}RqAR<|g-(Pv0SCF5mRWhkBnY>zGI0;j_wXskl zM?f4lSs)RxQZq?4mLR!~9%uP6x`4^L0Ca19DW4B-tfQDkSz^Mj5L(@*#tZ(zV}Pyc z2u^T&qn3(1-ZH93Jtw{$tguRjO8R zIa3&OA%n(SVqrgozJvgvu~>g$P@CvR51Vy7I-Oplg$zJ{ugxd}Tms-6kRWQeIo2pL%9O**g+W`|n@q2x2XTCana1h6`d zfK}Zd^AO+#hXcT?-efcy1_h30vze@SWlsfAs=gmsfV|7$_Y4gfY#x_yKnCgTiny~O ze$CQo!CJn2S^8|jA-%PqvR70f_?+D#Kd0_iVrW)vtW- zx_(QW>670pGN})2zXJ^_%UXLbp^9qL^eT_VxAiSN(-=usZ4Q62(}w5YYM2O?W?Ic= ze6dkM3%*?h|6g9rh}T&*ZDkT$iwN9Rc(EDNDM{E|>^M<>T0tJ;i_%t=D>gs_R9mS= zIeVO`R%1{KaC0jdxD^rz(!{z5i+~ZU*+e6II@@YxW=~I%p_Q#nyrEVT>_jUTy|c3d zyQ*#-7nvSYVyD@~#VuI0twgc7SiwT=#L&FC#FpBKmlGm|$*ivCPFIVWT)mko9|PE` z(ywqXX$5USEuk=&HQUB`?bI{yXFHU~Qptc(yUOojHY3I>9&G5HxvoFBBV4P8UtTM! zIIH4qU16nSc~JukyY*oCi2^|L;E+XIBrGaImUb^6^7FHUn}cW9jMGrGbp@yB;Gf^6 z?|Sd|#73Mzo3eh-ia0a$3QP2i?(a>E^2!*h?bhF%ruKD4=vWLvF)~Fnz~t201i^wS z`47pu3dm}Fm|e$rMiHA*?uuv?(AEylDwACbP}bj6Z|*)QRIpPTS$0miyI>jZ8jZ7oFHMu@E0~>)J1VrjMM**b(Xkd(=h98acGD=m@3p3q1 z*y+)UsXdwyIOp)*=N}`5m3O!O`p2K?AG|rhFTKG{)lh2+cIv_9HRuYSe)gJlD}4lK zhi8|st`8qx9Uy8CxMk9eTCy!~UK~pF^%7{?Ki&E4UzB&cAze|b`%*Y{v_QxcoyIs- zo|Nf)jndYQNP8i=As%e_aY;+^)5LtLx$|{ls*bnb- zhQ-!RM1X zagitVJ1Jla96qL}2o~6w1vhBzO`Z>Y+VXxs`)g!Uzk^5v2q%}*YDRQ8T~Keu{pLW>?`GOxS`Y}d zI#iR}Wj0y+JocfUpj|YvMS>%PoU^|t)XR~<8VtaGb?VX8y*`V9U@~T}-)P4_4H^0w zyz7G&0h~((W?&B3OeV7-U<)Bn$*elOdXFb)=M8=0?3#6+0h7_Jw+)h%rM}h-E6d{| zj$OYVkDD zYT!14K8@o)R^JxeYNNyYIt^At0Mx|ntO=)fE3sHloHm{&RD9D#{7Z!wj%7MuCcx_P z#Z>|V3}ChD*~U|8-=dG;oCw0KW@^sH8|`DJr_?sN+GBxq)hU;yhxR;^!Qt(YR!w}J z%Sy>tr>Hi|7_SnUt+W$cbs`P9qFSj?rB!FY<3xEj+bo`|jkocXR>E~&ZzWb^ozB)N zvu7Ei4YTDf8P?*;NIb-|2=zGE$lO?4IWA{9F}1N+&SdLFK@;Q%zb-;mkjwy&owt&! zpukIY-DxWCVxz_NQ)us66~TiCXUh)}tIw`(4zahMyn)^N;^s@~;ygr9(46%e75kbF zf+sI-&=U_dSUeCd(Gt%DzWFLhYW7`i_uSLqsqXI}1jj@ZV!6r;y{JagtyrC7tii*w z!Xibnu8|l8bqcqt3(UGtfPmcT9^+1EPs~zu>=+3IN~cE9tz&ygUVs5zBI-2uD1}?o zSfl7w0anTE*Um@CV~7Hr8Eq*OT1eEn8U8J;T+mlX8S)wd)g{I&ZzP8>LyhbjcCd1v zCIrq1?3G}_xFlPly>d3><|BDdq^cCfqMb<*VC;f-MS)I>6FWsc0`@C#0g|oWJ$rQshWPB}#o4n5y#3kLmp6*>oom6N2-bsfk;Dw{uw zs*>eR=To~sjqqb~sg`aw8QH2)YLMMci+GKyP5s?6te}J_GVZ<4n0EL8)S0is$8#nj^Q)q+*Y;_Ugvm3c7j-!rm6u z`@75gu;4}Ix}70|V$)HAU?BqQaEJ5)Wzr(Ba?n9-dEX~(`g*_KXe9$+!O#mLOe6zf z*P69@2rA0;3K4-)dJ_=^A`OTun^}tL^-O@>CLX%F4O0G)$X|aDG^j}%T~a+Bv-h+A zf}Q=Hm##s-S3qItRbey)$b`~;hLSXy` zAVMG#eb5624Wu}FY=J<)Y1Iwc{WcRn1Or13PY`#OVpqQ3zCG!>C0zrRD%nm`rk;r($I9)~ zc%#*6H^upEC*HKYMVv~Rpj+kD(Wlh%+Av0G7F`$!RjRbXjS|UZ~S? z;cwB91qK#B6l#}Nbu}?c5&;G+b7PYPVSfo-tOZ@i1*hTdzhzf0nYcIph+;1|y4`eD@Sii`( zDH~YY&PI<)&G7b7vaRhJQMAFWS~8yuH^a?~{Qk-cQ(mzB+ZTl;Ned_?{7{JkB(u9q zM++cW$r>cv`@7pqOQkmP(Up1AdU`X8AY7r~0P8eg%BR;$8)0nEaB7_@*7b0b!rA%4 z62ns4h0V}b`UHunoZr@0rj%t zhiZhYUZ2Yj28$qSKw<+;|cr~Db2otTT(+Ee4%flib(#rX{yr5Y~Pea;TxKD<) zOnnk8@P&*55haRAy%($mnf#65hHR_zJ7 ze28EOzIHWaHp8uQd7U9=zr!#jX%I0zeG=8^wIO1Mu<~)horBzp&|YPCxB`3+%vQTu zXCLH-!%Kk{PCFPZzg;e`m;I5@Hr#(;Ubc|MU=Q>L4FjsKZ-CVRmwW)4KxMya?z*jt zJz&O_wYnTOy~*kyfDhXr=&^@FcDWO>iYYIieXy6WNw*m;XwVIqy?kkG++KM?2w#q; z(*VN!`1_xK;#I!izAfo`%A6L$tqh*^c@7piP>Td0zroADhOAJPUpPRcuF@F(bz<#k%+}R zjaVg9kDbRWiCl~^t9Ik*A|qAt=k?Uq*YOI{70y7a-O{H0tBVy*t(5iB2ZaA*j2gC?p+?-wGtuCwAm#<&n2v_q=ee(L@m8$Ub8?*$4S`V(5Z&0il zwb-w3c;oV$H}6cl-U}%j#}yR_+I1X#${76|SSebj=pz``O11=!3V3x~W49`pqBB#d zQ;bpc;LOO}3`1EIUQHwIfW*R}+Cz8JF2Jl6v;D|cX0OKfIK`+C0+_~{5s6B003A$q z6@qdO>MPP0To%9rrv4?yI)|vm=A~;u*6cxAO>r(P+_~ZV9CvDL9Cw!KDS%nyJM?iO zr&->g7~Yf80A&iS7GYJQ3tI4ChnRy_Er7B5h$G?VqKzl^<~ZY{iOF%022inREl?&U zM$6|U(#ozlu|RFdrY8Bsc)w#}K#vlw_~PStNErCFFTU_zQ$@hnr(2qJfKq++>VVpT zs|N>9u5YexuAUtnUSC~-d3|vB;LQWRp*#?<)^3^JyphE9!IKwfudl9U$_wB1UH*?b z(v=5w<1zXY995y+j3V38^WptucpZ`0lv*m3YAL002-F3Z>o@lat0GIAE4v$Eb$_!K zd7PB#rTvp|Y9X?@n@`mqZ-8KJr&o9{%>sG6R{&QfWaegVU7?99oMzAp>r&#T%>8ey ztfvVg%op+}VR8uRXyinVYywlo*)8nmleI`hy*Sz=qq+^|AV0s)vGS2Z_9D8HRGSfM z53o};_QB)u?tHgjfw{5y{8Ct*-=Icody@laO&d_HFkuC8aPcxczYFPWVRK=qv%B{LRx@>t{iQnsfjPBVZ7SX_R0cqfk+s9!e9J#_8UuAbkrvnV-JBv zzgOyp9Qd0eD!V~c9ds&GpxZ~J(L!~WTjY+ovmslwg5DBV4JHtJPRs0yhfkbbySEc83qP z0hI_IhY+regCaMA-4X<8>$hU31$%KAZImDc-H0nW^PvBOTOaw>7gV`C8C}vDe*Mnx zDF4OwU6-z`>~|Z;?oWZL!_njP4Fvr#S@~1kj@YxX?&j7&SOFgd)PSQuKwH1tdU*(D%eqsIoc6;gr3M_jD=5A?chydd7G&f+uc zhD_kdusOq}`zOS%Z|cnTE*V+F=8`dVtIZJ$jWAE~5prSMRW@PNN~% z@7DuKaB5R&zOGW0+bg@4o(2*IL1D=B!w*0EKI{5zZFhcu_Ic%J)%-1{u>^C)6GTHh z*=hsdw4O7qW;#ekVNWS|q_e18wB2Hp3;>ERRgKSXH5xIsv&h1Hs`ET|ibb2N$eKPQ zP-;xN4%)Nj)mSChNHi8(Tj)&WX**FBOhH1>T57!vonR|Qa zcBi9O1k#0FTJ9XHl`8z%l%Tk_DzQc4xAA7IzIr^%n~!7F3|ZCHRhIOtZ3U%DkfF0$ zE}nK0Th!LJGW38w&$P+aJ{N94{b@^8GJo7rnZ{a7K^T~Afv$}wa=Buh5N;-Z&egxI zYQK`UNLK)}YPk$5tdaY}cOqSXc<;v#pWte-0!x$?Lrc9`#$mlV!-+k(lJRb=FQIFK z7`XcK_4Ts@R%x%52efM~U)~%(cye$6`c;;D5fErzn4DKWp<|Z* z-;WW&?`ZqgFMh=t;dFD|c0x6;>!x&LaJ@7>L7RpHxpb1l?XMNuz#>Qa4hc!q`*0>QOMcm?llL%KH8N~y%eKGIGJN29w+ic(l1R=r%1Zh&av zBE5e^h*VAHOG{|ZLUaRln2!?uq`_))V?CQ(3a__!lhM-2cDRV@`4f0nYBqf`|FWd+7Es68WPUrk3o&bVe}(1xi_N9=^hqQFazM#0VW93u z*2x*vfVbuW2Ba@)N9l|3e)wnscNWd7q@^w)8+|#iEG+ESHVe`1?OK}XLl`|8O||n; zq$t2vE;zOF(*vOC4d`?}@K(7VD zl{+XU2s*6nv2*wKw9GWhz9 zRx$t)C)webfI z*-5X^l+f?e>-}_n$&Hm7yc_E2_Ydfy2m2|$bz=6T)y+`VbQH^C7wfuM3@Hpo9=m)l zEAbJl(dsqRpAj@$xz*|W!B4&?419ai)wsy|eY;BS6*eU$tEqV9c(JisJ~n0EcG#gz zX5dz%o|i$i9#bz+>};)O8kuS(k%`xvolbl8Eh0Czb-qY)6{UI%bpY_xR(-XCYGrA@ zcwWzJHHyz;5I zaG*9Si{&livvp_!nOGc1R?JjdzAwz3L9 z0+e!A+G-iMdYa&|%&=IjO8vrlypbuNXL4IaYs(FCuV0H$=NKGm5fR>4taef~!8Xgq zdXbKTRy^f?7t-~|_kO@gHz*>Rc3EDA>iXstPrvz66+H^_{lVGgfe6@T6zl63X9x5Z zEFVI6CF2S)i_X|LH_z~3rJLaF2F(jA>+tIJ$6qM#Vq;8ert7TYN+RZVSg}W^j^d@# zM}VO^DuCBfstBY2V28c}q$}6}g0bLJ36YB6#WEe48XlX1J%!rT;Qbh+G!76_WzAn< zt_$&~fDMoYEICr-XACU(|_sX~|%PS!BZ1vBF~tI|BH&96;&(F*`zIlxCua?Oq7y7J;X*?#i* zr~iC)4Oaj$dPaQuHFUNYnEQ%U5-)3yS1N#4Jbk)f!3i+7_2laH+4b20Ar|?HKGBLZ zWY0G*9vrH#t}ZXBB>v)0m3OrvT}_3f0y<>lr}M&m5*4_<6m2ROa9mHC0If=oLAZuD zpq(Q6UP2xyMbjcnf0~rqtCx@GfwuzJT4+a)(k1X&YWQ&h<1{L9SS93fD?2 zh1y00mD);D;tl7u!o0_^}Hs_@L|S^MqNK+R8kk)CGw^T*ye)?lu!;d7=pyOVLeS z)pjkq4)jZ^3dGXg2%}`VZgqbpiCY{=MxeTu)b;hq(LPCug~I-RIJ(5gggh%%1xJw! zWfyZAXzXwPL+QUGT?eGR&*>(J>h&`x!y-GX(G%dgE@#TxC0xOo!r!t=V=EEZ{$8uo z3E@iT2l`6Ys!VhlZ%OtFPFBdH60<}#dOS)nH00{(Qi;5pMs`cCmb!W#Ju-VfBqa!B z0I=kALz>zZrK$m5ao$98nbA;Eg23ewY2cv!Mx9$ugt+QDj860|?r_M5y+`pUfF~?s z8<%G@_K8=>nFTG||H=PgG3#5AuAl#JUjWk89S~l>Ha#cc2b0EV(2G~zLoC>eDQ?m^ z=w7wl4GpQ#p=@4i{k7@5K?bzYhiFB)4{`Qe?LMJ6 zUaAgUF8LN2LcMyYk01D}ncNh^s#f~CyfkjP-I8mOG;R-7ZhU_nUMZ#Z1l*XXL{{8- z*ak*3ro0X3UWf^xYIVIqs}ytvs1#H1kxAnY01i`Sbzz|U)uCSOhu=%rZ&AAbV+KLi zYJp145$w!rgwrN{uc$Vb*TGyR$`w<+il}3(|9tUz48JrMXUgBydRpHyWuCIUzS?

    z-mOL81yp>YqstYwS%1p$(Z4O!ZC!8zxni@LIj=U9O71Cgw$AX?EwSLZ#g&qY z$dMlF6m^`f^19tY1s9;W~XvhL9g-1HVnmhwd zk|U4>^%=Se6l_gNkfJ0OMz8o%5UF!}0<4X#Sd- znZOF(o0!D09TlVY(H9>N%qj0;Q~&n!&->Awm&@Gz;HmQUqUx3Qwwr72rw$MBUSC5F z1~1INmv7X|SHxDHTpnPrs^aq_U4`Pd41ieW{_6or*-Ku3c;Ni_<9DZBfAT3aS({nq zVyS>NO2KNhv|gLfN4Ga?idGS;?v{jG1rkf4F@RYm`d}l(OH0uFm24qgdMP>8$VNCl zpMDvYT){?ZcO#0iSxRNa+~f&3SfyHC2~)zgutJ1%pTVgWb`2kGG}YaRtm+>D0+?Ul z4kx3Lb*xjI+HGa`ryK2d{$hJ24RLEBe3B|G)tc%3UW(A1 zkOU}@A~djBL#ZyMO#r*LYrE0fLN=1*V#6xT7HJhkB5??FiHpncOOa1pX zTB{-m1Ft9u)@aRo2v_I{d^J2WHH5?xjjT$VF*JxO^$;x3*`V8Vd0wN>H9({R@_hHq zK|#y*Xs|7Z6N{M3qXePXA~M`2B?x}4ufVHCVEef|GZwMe?ECneEoFVTU01Evtp9GW zSmQ2!jRp@xTm4R}*CosQcI{;aSb)S=19BJP;zx&75*du#q4rRXP8AnDL}*pD-ZjeM z{F3SrD|ArWb}=mn?S_EPgOD`qE!<1UNSt2paeDie0Q;)mUT3hsS5g}Rj_UvtA%8He zb^`=0{+2^5s?UdaCeanT$G}jVq~4vt6bBRRw^h0aLRYFt*A;pLR~qtF2-Mw=|Wg z=c>HI@K;+(SsUVS=9)?~lPNdKWfQFdt$M7O;UAI!nc3qQ)GXvA!G(rmYP_wQn4T(D zFm~S-84jyJVO7w?&jGK-MBXl*)~kzKqGkbZwSdGXTAlMm{CqW&NUUl-3)ScKENt1g z9hC2EymhYBq0*wPB{S}YbQ7(q=G?f42 z?I-ts@s$8sU%gs>ad}83)`PxJL?|Oj=`la#-B$~Xb|~9LXFA1 z(j@y(bTuJWsG@15?|+Rodx;B-XmkL)Oz~J{3X8|_k0w#A7@wnZ&~f@!=Y}UoWRZVF zx(FuVyz<-x3U`#W>oC($)68S-O@YorsS-Ar*kPAF!B*{{bG7r&2=YqUTFTBZJ>tEb zlWqboor@3ycVq@S0b(0;!To9M)p1S@U)F^j*wp4Sx9P7gpugy?<~9083fE zI=FcPu=P^-7OVigf@d*F&#)G0z1F^CJo|8Y86it)u}ZVn+3N>HWX~Q7ngIGRSr)#n zPyY1XX;-A{_R2|q142L50m)<=sm2<=k{5xe%9{Q9{6Yx|YaU)zIK96wxmHU4Bax(f z5sgG5?e!xB9-?z&W4p9@v`(?su961rPX;xaEUC>+)T{7cBc^S9*YI|@B-I3k_4EcM z2&o#e*M)3hb7?!3pO0+T_AgeJ!U`PKNMt>Q;kjGePldNpuJieYFo4&E^%Tj1^>j2T z)K)sWgd1>ikqA4wqMap^)yV;RGGErAul3C^qAOW3%jrTI41wb3?OU7!mphx_sGr{TK( zH#YCbpACxtBr4M_gex2Dcan~Fr;DH<=32e;N_L> zFn0iaXtz05YOkbC3DxK`*o}HUQ|5jjifS+<5m=KJMC}*nOZB@rv%?KB!0H+tGF#17 zneQhopraLSgOg^>&x{Exkqoyarr;*#35%!4&iw-4>5t z+;_dr*6%Sov|%l$GGO!Fwe&b0W{1hHvk)Hv;%^HY`aQOOnzh6l#Z4sK3*L-^@=oFW-{|Op#%nbNxHy~3*)!nuphFcK#j+Nk!xykf zp2W!wP0-{ZP3tiC^tc^C3p?2cRWbPoSE8jmS0uvOg%tTxe)UTjs=Ml8|Ewa+`PN~e`+#I|zP>TzYZT0A~Z zO5%CB(rKuexd?2|7EiQk*6OS(rrcYUvYL4tZ#K(`(@ZN@S7PEVpOzbq zG7Yv;V35UL<`?s|Xz;~Yu9I!GD&^G*D6LF6-az>N-xCJ@mAy0jX)I6A@abb4FJQCS zY-Xu$_NlVL7}=ILY|F-gk&Vk(7I8tB+p+-xCBR64)D&DGR3JqR%0){pRkteBrF42m zoynd*U@nu(NRe_CCAr8&5-Cv<G`c+qOqaV{bkEPNuwGtbh>6JPerPT!N;IeiVK)I& zl>>9-qN}c!p;(nR_lu#pi%e+DmCHpUqz|+~tOyMO#cZffRKSxp#ysx%c%5tR?(7S^ zD$eOdI@ToPN)8WCuL7ye}A`x?TT)Wh34u4&r;@!xTq(Kflb#*zy%F}mVuSs zQn@}C7Y(Wa8t|w=xCKt@-rl1wrt<`H*TYo{f}TQAeOKpY@!yt^uK&%so?n9lAcQO2 z%MJq=tWMFKS_zUkvHE}JO!eF0q8c2={x&kE2u;j7M8sXyss^uW=h4xv&B;IvAY-bn z(V`kV9Ln7~?>`R^QG!4Q0BU}7lNn5r!-*vA(uwAj2y7=B`F>d3BK1#36D0_&J5z!{ zy_f3HaS6oL9nfGv!n#^FK|hfOrvrtHq#K4e#sZ->XG$HFmw%`$115W)lgNs-n}P}s z>6dr`owD~I9c{!*`OPoh1qQx3>G}s5*sY3xA%#3;&R<0@ie5dC8mUOC%Az^SGnz-x zVwd{;5q8Zqj)aR^H7b~(kt3Ye3dpL3h2T-O8cfeL3VVAgTu@Y_H}9{hK7g@%GcSdt zwct%xz5YbnTS)sD?oTEBd({+q*hu&yTrjTARKsE70hC}Jr7og8?W^XiGs_sUdxe8= zBAv)o1=YHY+nQhC<(DtT*bRRj_O5b63wdLWz<`8d!6En~VX4DHm8LLO_k8qmt>&xg zG)#lleDtW0sT8nWBXVcU@}32rbwP8iabd<^Q3*3d69+TPcRD^&eVIZ%U%c5FySlF;xLVqJeJ(@WOvM}v<_fsx`Ew-cCI0G-00&sfRZrh;T?z-D zd2ebr(YM#kYRPEVF?>x?uk6H=XbDW)+s{8y9(Y5#qDNWlS6Dj7(wqk4Kcb~iQF*)~ z{^}_3Dkk%(lmbJ5Ze*egYU{|v6zx+Z<49XP%Bg3g<7=D%0D#~Gh^dZ?Miiba!}^$} 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

      #aAqk2Vg0*^iiEQQ-1=T*(4;`nV~e~?&PzqR zdZj;~7McA5#W^n`Iks%kTu@hs@H90m?jbtO(Oyo~NU51{uXYggA4e6yU+9|D-(R=* z&az}b8`PzuFok~ zGR=r7$66hMq6=R~##d`B(8y}!w!Ec^dt`ISr=cYdo!Vt7erfX4&`0=BZ7~O04Q;h_ zGdOilY)iAjzK@yZ7`aFo*G+Dj+MJ3glP2 zssJwqA95{)JyeW}=t^W5*cMV93D{unJ0*vAIZymJEb4m)6=Hm$Xa zAxQ|2F18-~Qz_ML6P#1}EQb(DJv&S@D3FX3p0JE%c?ei&*QP{8<4Q0r&=bRx5x76Q zy?)P@gMHRu5`ns4*iJ^wW9J-M2`SO2wa|*XEc@W*hZBxBE--jwV>n9f)jXOEQ&h)m zl8?=n`7+7OmpYbbFNxc0ovW=YE|{bM$y;zJ}66K-V=dwCAuGn>gE08}_o_e>-QPc%P&Gzn$s(ixy5^KfxcnJ{WaZdv!!T zRcyrdB|VPk8hh3CoQ04yCx(fE{Gq|;w4(?>P7>^4zF8tk8M#&ibNw0JL;c~@Cs{vK z>;^AusCyJGt)+MZFMDAQ2%;%wzcZ7|>N(?@ROQ1lGOiYX0Zu06iv4~nay0&^CnwhXUq+%G-5Rnhx~ z$wv!4jVPA!R0@F3G8NglL!dn~lfw-)ZzJ{~PqsDwArnAaYnoMKUQIXDx5n#0pWFAA z9yb6JIcbcJGIfb?J)0QAS>M2}wo-FT24KS1KBRyCmx`8D(=K`J3Z$R5ZcqURLmv>e z4P*q<@uOvyyt!xcQMc{BABNr)<Ox=IB!X!bA@h=jViCeNPYA3I!kCRHD0h_^w$jMI zHT0@LEJ~-WUBMsDMi)jiEj4`fjT@XlfHt^T!0-G0{f5H;X?RAcCy#{3|NEa`4Trz) zM;#6ffWUZ(YxD_jT_9_>!~g61S;=O@2K6A`p8p~aoU>aDel&k=J;9S2t; z*hosEH3pSIU3MvmA$TkwB=t}Yzq`nHTj$h;13BfqT75*fs8aNuS>!8t z;bXYmV*~+F4MvSK-Z{W`GF@ni#MmiKl;; zu8-Xpi}!rK<{agjO@Ce;_)7;|HTCYVMxM>xsS|TcXS*fVY~F6#S~K)SN)gPdJK7Vz z7H|GR#O&BEBli|JVtmh3c%#if&9;rIJ(;s`$dc9EE9~mSN{ zn_H$E$|~NAQ(R^iN}P|Ogs!;h@1#)^$Rgwb+JUNT!3yqI; z@7F;@O|R;I7)Z6tZH#Te8>6z^Hh5v7Fn=^w(_le?arZq8COMj(j0B8)BB@x);7vdS zB)?+|5f{Zk8D7Ry_Kl~9WiL-ZWaGMZ;pak{|DroMLdDlz9PnZ-KW}Vd2F_&&7Xj;I z28;pU_t(pFS!&QXa@7owF2 z3~tm7uc_*SN$tC_Pm}|Hid^M_$+?5}o$)U^Q2w?ASR*OepR(TwlA1?bEM?Y$0UMZj zOVc=T8VSg6I4g{KnyDgdUE_-{2^1YQQQ~H$hCnY(>`NdwxPCuvWL`3ke)*TJ$%*x| zk`|#8HJLhHtfmGO_3pAWc444#P->0hDe-!dfp6pJ@R`4)u(`I)F7xlJ(u0iJlB~aI z@?l=p(&HR^YxCM_p5;tGj>=P{*NP;YjS6LT=`317rxkpX`tC2_0UV2XLoT{co|_dL zk63(29S6$U;65CLv)Cb_By=}6COF974<~_ttQVYCAg>xLV81^-h|N8g{}swlbUkkU*L;XEr0(oSCKO%P(oTP5qA8Thwv|oU_Nc zIl_Z+U(MYdL-S5r#&e{5#~?i4oSu0Jq7~>?q8|<4Lcg78@t@6ylX<4%p0RDHSJ5R$ z4*YTla{ebJ(@GT$EwbT1lvOUJ%Y&rW!O7DyU%S@>!fn-JlHp~^2k!^t=ya#{vMYvD zZk4kL7{Sf>V1*p3X9b+yQ_`p>Iy9OQx))`=M4z9t&Vq8mgyerNW7zMP8-Q7 zhKaRAf4{o~&tIn&@TzmrV<6Xwwoo@BFAPE!e}^Rng$gH-0at7l6LGzqb4nz?SWDIX zAEw@cJ=1X6*8O7JcG9tJ+Z`tz+qP}n>Daby+jht1&N^q$xz}HKulK5|r^dKzwA6QI z+w4WDDLvXeC4RlU(-RPEZ)->F@Ov%!)}DDU`-nw^uUo(9{}G0_@~Ek?{p0&_-tp?l zUmkE^%Fo01IkiGyKvUKyhcQ``UJ0GWR2=I(8-ZK3n%58)jXc~3Dh3Gl%w9N#>fN{g z{d+uS%+!|ur?3Gc5MAmSz~i0?{TpU!7w5VtrWJ(48tlNeO-Pdn37@Bc0UcVa2U)}C zU529I=UO>};jNf9S$)vGv;GPZwcd;ngXn#Q%GfSMBJ}lhR`fxJ$A7%|X)q=B^cX6oH1p;#jb-bD z@dTUsW}QMiOB(Tq0G%nDkK0%-nDW{0cS5OAJ;NLju$yuydTlM>f3~e9O{xkS1j++2 zf`Tdt4wy#c`^+t`ePVZW-_HLrmZbup_WsJ-Ulg+or4mWjV4o0sIw5RU6z6KOVr9^+ zbI=xr4T{*hTs-5#Wh+I<;_#!I{AZ4Yc9_u~gmTdM+^NPB1m>k#2bp@iq>z`N0+j$R`Khozx z*76BX!=Y>Jz#rti2@w1iBY*N75Y94Ep@%N^%i}I63PE~$bb;up6`jI-GLpFs3BpiX z;?li~AA8t)3&7)!ePognFDc>`mo(QMadv@>MlyId0P_gNLW3Cj&0417+W4(52Kj7IM6H`vhd0I@$Eskn zhzgdy!jofJw{VJRx<9?GFi?^gJGpSHw20}_QBN6 zLO&0N_(T!}&;-gghHLmKS8QKS)*hRV{*5%3d5DOjwJIpYcpi$4*NmK45gUl4G-Z;YW z;L3#Ql8zB(i8YXHQ1tri(7Z1}q7~iUUsDY}YkMO1>n4Pkz3>0oTh*#|yn&bo^IcWL zZCe9J>VPh3BA|UTENVaga$DpxPlv}3i;xRzl9yLO`%TiRLhgLO!!P9fjetAWcIUBm zsGohH-V}Dw*I-d$n{G2_D!9z?!YmBH^=4CVUrJQcl zQfd?cd)2-5nE~eF^&nIzS8+*~EOgw6%?hmspahP2xV~F6tEsJcbW7ec{eo_64gtT#w0!h zKCvi(-A*NN*!;sn8D`j~`LSdw*nx_sRk%&y&IFaXa%Zs*mnd>C>X)KuB3Zz0m1SN> zFrYLZ*yDGjpdI^E*#ff7Lv)6=dO=iru97k?%`7eG9c3&t;t4f4kn9#x63pl2aNmVo z9i&8|=yZhB=}WqxwU(kKYhhytA{1Txh6^kWnYN_`?6eh)xk$i95cq}F-a_v40M!d{ z`)@clk!ck=HEDr;A{xUH6dJZh@{0J!GJOH)?7;7^O9iBz<-=@=2bXY!NpB!;0cdfl z;m`Juy&JIlxLOW%ibJ1lzC0 zCYXC`-cMWYueVHgxc@C-YV^DpFo79?gYnUU>RdfSdvKLz?l8^P(?{5flQ>?h|n6g_olV^BAj55UQe{T)=7TNS)nr^=cwfyboL#`K_&y;3H zu>jEJ!bj|2^=%y7gSo`|KJVfR>=gm0Fa34sUXZWxG>O`8^CHP%=H!xWJ$D zRdKkeEgT zdvyeE!Nyc4Rt4S*h`N8?FgqnjF5x);aiL5DcSiZ~fE#hJsD|BbVQAHvmp%S*HDzO( zdd>f*&I_Qbcwaq1klJJ_h10r}1rtr*IB0@IPs;qd@N~WV_y?lme08{2?R#>F7<+=R zjEH>~0T;ko{D?CGSta{o6{FlFWtx}TA}ZnTk;SaQ^Giq)6viD1)#+|ASFo=QG9YZm z=pd_0!f#+`S8)J!W$U?$;HBo;$Iq9thjZSG_p@F_fzets{NSdN;CE&fB>eku#JW0J zgcA~ifYTO>I?txLjA6$eSz_KP5PmFpb69O)gen>nGG9DiYc4MilY>?7xBdK}CL%5l zwdY1eyg-J;-7gN-RGc-JpsvV)vy1C0cy47>)B1*>$~dY^?q)WnJ^k-5*P5AV&~M$Y z?}7g-X?~@??YqK&34EUxAdFqa$kr0#^`?HRS3L3K{emtSm2~aW z&p*oaT}ZWAHY!*#FHSHZldDv7)}0esSrY1^)17&}1G$;U4|^vn`gF^i;>Jet>tue& z9ATFPfA`t1gc4okvWz-Z?F3$$LJH&%sB!g7JI)pi+eQ({CZ{22e9S5}>MA@ywbsu5 z3j97gImIq<&Z3BXCn`%NB7n!Jj9Rw?TU^c)Eb+?{$F0V#%c-VjV(hqm1v!8=6F04?*j1TLiED=d zxCy+oBg0NhAOAts%;vY-d-?5-5un;hIBT%QA)q12f7h$-oC6FL?y4mB)=$)11z}5B-1?TRnwpNwu}1%q&i~ z0F;v%L28z;FNZ8%dn+L-!Xd?;(WY)yPGse80amh|YKB}_T zEhcuM9_ppX44{@dfVV09Dhkoe|ER)O^=r}NcH_AQJLfIfqy7K76b-y@`RKS?RYT1M zsj1N6xGm`h?6r0sFkV#*q4Vsp=JooMikw_I(Bq1O9GkTboTAO`3saUXzn2J#Z#_`H zUhbWUTC~99==c1(=?>*%GgX0I`keTW?NTfxQ&+Ia73^Ox`|1;U^5Ga2uMj4Ib5AYS z_@EM3ck6(UbS!ZXb+l2oa%SxB!*M2xWA@E|hXb>(FwB55=h36gjg7PTh~~1;c-^qY zc{g}4!0LTw09xJ5^&q5?;VF2Q%+{iqWDA}W0E^25@DN&A;7yadK43b`aFWxd)i)WM z%C!a45$;2}uwZttbqci-xSZkzX%o=3iG(L1-v}H-{U>QD?WIA18o>Ss_akS7qPPm| zVns|7t!x)>7c-$IBSK6{*-%haCgnHeZ9SAtT3O`gIj*ps&xqgC+v$fK4q1vX*J+_q zM23@5VKPb+kJ{py-SEFDz4LRbv{FCf~pdN zqO}8)OXCnX5XZUHNt=o4h*UW60x}+bgMQv~^Tv~(-Q|Ea8(b6)(3b>X5AWCxen>;f z9Zz6BQ?PUHpGIIic8a}T5|%h27YnP)jT`cYtj={O9Cnzv6HxpfWLk5Pf}q?c*8X z2ocpFcq~l7=sO#vio(fb<7~?2S5E%`0>OVrTsq7Z!a3o17j2YJ);Q-MR4G+Q;YtLC z)lo0~72|kO1FEN7Ko3aubxqtl61*a4*f^Hm7gvN}34uxiKVC0Ze*8n$|9MYbYwY;I zCxkmJL0bWi(a8YrNRXWJjH!a{P6`lok~DkT7;r97zkNZ$2dI`bol@`6K;jGz7~vh- zVtdS5WH2|RP%{pW8IY7#Z1HpbEsq2Dht)VE^HrT>FYE*iylZy|)@ZP>vG>~E_}n9V ze1Zf^ct_U`%O+wjVH)x-mM@|pIZR7TJ8>pk7)!yNVIcEphfbLz0$er+q1q(+zn;Xr z_uGBm=j6a0W4Qr;JVL5GDvgFhG^LuX8eP@~MFjbYkQP)>ADmHGE3Te78Xj8`4!k6%{u*WO=G~orHFc!wfaIR!<<^oc#ed2TT zD!}`tmO5cmp2buH^?LeI?yltaH;=Q5ZVOGh8_rqC;w~86bE^AdonmnxkRyT(udI)F z!w+Yc8y$)r2aW}MbV8PNyq{ZV$)|T@JV*lLX7F`)N+>@Q69J4r#~5`cL;Pzt$w$_r z6HI@Fguw~4xfd_eDrG7?+(%oq9~Brvn^G;k0cUF60I8`zI%h6>IVrs6>dUkQb?`nLSW}r1=j)^tjy#$^FYv-=KnlBBmdE^I!gbhJ@5VOwMNPCY@V&zIV$=0w(%daVW$cI6xvD7&{~+3HZWiI z3{|uc%3nj3bHE!IDCw23g9$8Di!q>qjm8>B^wkcyz}8d@ZHK#;QMNK2)Qxv~14Lyz z71muJHO}`8a9Sdsf%L#jxXZCG-g&=aS3qDIUST85*ZTxBA(_p;HtC`+t9H8tVprUu zF-~VzIGw*$xMxHLFu~6EYK~b)P6NNO6qyxf`9Os*CziTt%E_y{f!>X84*EWw;P1Cu zD6FmP(z6a>D~5z}(74x6Ds{nsB+h4$QRtI^8e$y!oj@ax)CKOK#Zl_)1kWV1(xhS{ zh>T&5ax!U?@OO|$|BE&=O;NYllIOyvCtCx&cEOpI4*v6H z4rIh=zXjEA#woP@B-$=QImydL$5?3Kc)&pbJ^)yv&PG5+n{D{Y{l zw>iL+(AXKkOcL=NSgw`Cf}UKodVfF%G73g>lD4XH$IYUhi+ry#`P^8OL~Qr1ZR3H5sL=0nz@7O=Z%z_eA%|vBGs-JZWnfu(_r6*U^OcvA-!6h z+Y!m+8*`VIvoHf85t@^GIs5>ZG1*2@T8#J60Y)$NN8kho#j)t+i<7LO{qfskAGk1#x7RyN# z(@pw75LC&J%1U=jGofBg%e@TI5RZ@9gN_auCBv3GBsk{a`txyuP)jD%JbLn^4FCH@ z`P@D`O$0^&F5s`0#L7;HScWVIhovmWtE%FShPW*ystGL{@lC^xyIV&b*MyF z&^Gm4b#=R&V(7;JyFS7H-a4S2){+T8YS7nnbwx-iDkmzL!QWAbTq~re2)M29lN%a0 z6(a#cAj#AQ$$!t`p<{9p(Iy2SYZQSunf^rSi2-r4Q(xEXcklj2d6S=4o;e_D^1lbC zo-0eq$1h#f+l5>*0zE!PHR|MoGrBF7_@~9FE_>oQ2P$98`wIr0aGN*ITnq%Mjx2-y zo8xpN1w#?hqtSr&Zs5QYVS&h)nG2EN)~^zC%01B};P30XV55hAcAyca<8t&`f-;A7vFS6fh1B^m7P^<45DI# z2bh$gW2Zq?XDekvKM@N`%3Ot?veb4aQeIf`X6V=53NaXHi5t_7kd5=boPRZK5*ie2Kg8< z+QNlUExpJ8ir^N*nr*CsY$3po@m z5zh1_JMxUg^gg8^gl9YfbIiQ5RMCCVSQR_=Z!6z#RGpqL;A*MWchRB+QEo97S@<3b z@vIq*`0?0L@RQqP7Hz!0r#Jd@or-~`Q$27=N-EOlkbelO837twP%hCXIUxk?OI7u4 zk0}cEaGs(H8`>1jGuV|kM+f*Ohz7Ag#}(60KP|k?V!HXJLx2=eL-CqtSDi3<1$PS= z>i$}Z+-Z2u&Bk9r3AD4-%p5#{a^*X)k&X`3tGjJ zOJVowkn^vb9ZU~*dPSu??TR7Z%Pad0+VT!Gq9QbL8^FpWW=%3Di=ese%Kw3_^V#Se zj*0)f2@a!aL9h=);0T&>SCICQ;kW9-Igi~xa^(}r3n%V#hn%oYo+T<*K~4p+=*^WR zW+h>VcCI2^v{$o$f6Uew%zipH8;V}o894Qb!cwQxrVZ}4)QZ9S@TSp7M#l5FOr`|P zNYgfhdjB^4VH&x({5-t_cguE4OD^7i&;s5^?jPS!-4TFR{csm19bC)Y2^2<0&lm2( zRt*~wNZa~)jUKg8!ug;oac*jsN?GiXl#wO#eN5%}VW5!!tgZ%uNwn=;<6~yq>t!MP z^Fv@IJcX$iIPCKw599l0y#S7)i#VRZf&(bQ?)DyHPEI1n4aPzP7O^rvTxin)yHY-N z*xq};rkYkk4ereT)%iW9gSrs2F_p}2b$OlTFcskY`cvDKglZviA|8iohv>0Bo*P>vs& zQY)I565ysVDeBMMC3~(&^Y_PlPdb(Y-gNJQgP;8~|FPj42k_KEB@+yQEwU-h^;dyvvlIeRLz?L;=jMl;>+_w%AB5 zY>B8O?&y&mx&XTpOSF!E8UG!yj|sij)~B|_T_UaPY$LDTs&ol)}x5txBS!;sn#a6KMgf0cJIE?`~VPv8# zcz@x-<^Lw!Sl>r#YysQtT<$BtisGmk33U$0X-D0rW(CcY;o@Ib>H5Of`S$A@p<%hp zmjd);JqVbGn`PWs?ffJ=+58z(ZUcMIE^IYEcJD1W^W*^wPP*kfNG5^Ce@68RH#SjfhzaT#c{<7Jo zH8P-ARea|dSpmk5N&k?w7;J-qbpUJ0)bY9u-7$Unxpf)>?&FijADOvVDy_Z*&pGlB z-*Wf%9|Duj1pVg;*M%+}GIiqAmW76ie3_NU6WLJ^H7k9OL9jCFHuWnwpixxf{l8+u zUPHg@;jsFC;hN)l?OQ47eNF-03D4@bRp)-E3DEX|q+w4sQ9+ZRD1ddK2m`mJI@0@4 z9Ek~}tDXZ%Z1O;`D`FLkPjw(1NpO&hu4;R}w?vQITh@NxPSJc@n72CIY~p-QwGWy!F~r<^W!#vN$aG%1GPUc zkq|DZsE#Ep^%XA?Gx=qc_lztNDtp)G4VukMtSgZOfjTCsH)CFUk;l*BpUh%%&S*>Y zSO4lPbHHALBm=!3iOL4Fl1Z+vooXagXCJ0Mv&+fO4<~@@poA zB7??IdfbCcd@^%R|Nr9Fv8<*$wRz~E9Vu7C`DBk<@M_SY5Orfu9Lu~Q-Wk$#E`_kG z#t^qn1*~Do6{B7j;h1MuSaHu%JYn;W&!N+k>8UpWq+#~>#$bT%%K6^tbFACWj17`dA zcD_161x#GCARvmYZwe7jdH~{%zjH1(Xr50Ta7zXP=#ccYJPH^rj7O(bdqK@cPNBIW zYXmXsLh}1(G%0mG^uu4pnr|p*)CDz`Psno5X`hI5fe=!$|0Pz@N1LR#ZJ7K4z z^_`Tv;h;x{Or)8Z68j-bCQBzJ)6}SThT!X|F5B9f;l#@*$qoAs_#6=`_+2!&d8?}m zTCJDE@4lwg2(~*_#k(k$2(BKd)M{+`4#>CI6;RN_ImU1osO;5(-VTG=x?IJ}B7Bqu z_6ON1L?9flOAdWz&t7KU=mHgRnoSs<2TMe~@pG@vJGuHCy?T2O3TGnarKRR-K zUymYbEQ%jydOjYqHPE{bY<*s@IvmqatA>pi4KnnVoya;p%cD+BnKw9Hdi0={A2R(7 ztF|nLaRYd>xwry&(nU*Yep`(r+!*&!GGla>c`jT6;(;#grZu1+9HlQ!G-p# z+Q=dx0S{@uE8QI&80-jkm5Ob6T6r|*Sn`;T`4r!#E`hQ3ww7_C0p0+0)IP*~t`2!c|KvLjyB&Uul{ z=nw`m%1=#x(Ov0ua)+rd1#N+;AiJ+_EH>FbFT`J_-QB&cB|g3A^@QA4W0IcN0>Z*P zoVjsyt@G|~tOSc9_PuRNBnUE*6ow#wLh|_5{#>?!LIa$=(FcJs0*`Pi(9$KpFxX^!3%;3e~VcO}w~_9`#n*FEpHJd9_W zHSDd8zyj}1gv<8wa2=N#4HE)=@kWgrV4H-VuaP=ClA8LJ#&b=;4N}l zl`fABS-Tj#OIfyC03@x+L^~5zUsOPB_Ogm2Nx#afN``7WlpN&1c^GP+qAt&>oN3TV zkMn}lpV1C_(U20K$p2UBR(g6>U3sB51VWD2alN)FW`2Vy*ns)N*Ohz67gMd%K-s?; zTApUbj-fLY_a*OizuJCUEtdjTJHqvLeE7q!K6x)spG4GXnK-b|>h+?S8bdue-0aV?f-+)skYQrS4D*(*|Rp1Re= z>-K)dIaqQ9DBNlPLy6A#fDX~%s{Dpem=a!b+(Rpn{>$AO#7h~2$s_5%Z@e%S-W+Ih zUplj9S?*D(#3{L2TMSe5#i9Eu?%fQ8MkB1DvhoqByOk(R4?S(14hP~21^DSPHNNZG zLg^+Lj9_w1D1iG~*A6|ZXEE=s--?5z$A^5Q#V@4pyPxQ-tln+dS!tjsiyVENG2c%| zxf~zTHNIf8f>`$8P+UL9)u5P#B+9^npj~0Ipx03y_N?q%Ruu!Eqtk}Gqh|Z9phu{)1kZTeJY@Y0zrXHH{auCL1_ozceKsAks+Uf`?j%^V+uUB`PJ56%SHV zfs1PF1^;-~E}BsHOGc_Nx;j|D^b0P^3=+~t8#zE{)h_{u=(B=&s!nR`Sx{5uMyR}7 z3}p56Rp!AOhk%dUk;=I|>(s!-?grTvSKXYOMceuRuzM?SH{x9Rl0Bel_y@3@@YhT= zr0<)zdkg;ZaR(_Uq_8Oj6JRu+M0O&ov_|LW%?QuOD<0qMtAo}cSAY0=y6tbza?*b$ z?IuL11JOS=R|MpLm7q3=e|_%(HT%9uxLx}QaMFS5b#&i8vNEb(;X4&TxWwleoPc#m z7_IAR1;4E(AYMDo(>R9W4`Hk&#hXJyr6=F6$j?2#+sC>yXEdY*&!WB|ue% zMRJ3w)ZEE9qac&QNZ#)ko-(ONgfn|-r2z-6mzWwcO{p>iW)As~96GV5o7T<6}2}=UrU9&-8qoghX%cGxa*G0JMW-5Jy5PE9M&) z*?e&)5@&{T%EICKp8Uv`BX-Q?ykS(KxG1ZcyZ~=|TNI~HZ*W%BKzX*jfExB#znTi3 zwAs5uDYy8sHTg0jA!I`#_Q;yS!TLiix+koBC7C97s0hq{S^4Pmr@Mn5AUuq6r0B-n z=4soHCes`C^o}yylZ_x+Xa(ygf&!XMSVtt9B8q5JGQB$LA!Gsx5|&|WA-h6kgKL8s zB1&OK3G8zohyuvQE*e0o?8xSRQ{SEtDHV=V!60ai;>g9!P5AbAU92Ecq%3B7L)kH+ zNa7$dMa7;hiN}ClGMFQWG&6^aEe)+)PVz6=i&IFaw0K~~8Z`}hrk&ZCVUejqN9bJ} zbBA~9%uWKq$g@TZDUCTCGJJL+heRJD3UoYwCu#qIp>@Ii4X9sR$PmAw`APIo(v=l@ zM;bSuU1zY1cgp`?Yy9G_L-mu87TGiuoasZ*4FFp0U*dLm1xQpzlc1;pQ~k2PibfWT zJRp4&69`EjWzRKOG4<8cNn1%b|$O@=Xf1c~V0Z>T!o4^@_8>Jv%Q9iwb-d)1Anh39o9wUUrks#0jU z1Iq1K=Tgs-14LIifbJ0xD;+o^$rY4FE$UzS#&AaUsU_L!uJmRl#(Y~MmeJI_oR`yJ z!VyU<;J~JY`XKy72{bCx*i88V(vE+#BxT5~GNUHM*_o4zhXfFMw~e{>1vw(u?T6cs zdT_@S(oPVbXoRILnAOhukcSA@-7kZVAIw3SK&bW#qwZJ8&+&SfvSQ0%P~OoYf1^^T z9j{kOr~^`WD~QP5lPGT&Tup?^?68{nYNv91KJPII{^<66EabK<8bz9muhD-F90*Yi zwB=huP~BX1s-O{+0Y$KbIB3kY$x{Dj3avxz?XJX9z>VBA%%fOQ`In@M5QmX(<;o7T z$taE};8hW)3x2froFlj5EYnCGa8U*rmj?FxSnhfssM-G3{T(9)=b~AD2rLA$;P(WP zPohaE`Znk(QuRjMS1U?6lOW=qR-UgWh!7X9FAI)k0W(-CHv(kgGA8MvVykk7$5`z$ zy~Wg{FcsI#Dhj~|G<=R^Mi8(d@pF^tg^g@rqzz~-fujySIw7RHMKLj30t z8_#3rf3<^_?a#%wif({Yd;<7w{kJ7r-*7p5Wn=VJP2oTxvR%iX7E7fYT z^3KR;=KO&2(k*HJ794p^Up*WL%Aj5SlQP+gvRux|auM~1dJ0_i%malA#wrLNs`WjX zuvIal7MFfCu>$Z2ULjV6Seb@B@;USx-d5cJoRxv8)!U$AV0#V3wJ9dHo1P-cCW9#Q zL_kyN_1DW;oKgV~`gLE3F}9~u)k+d~f|04p0Na&!L1WzuD0Xtq$=t7DZ6!wf{$U&R z-iXH}`$ycT7-a_>&RYJ=^{a4vZs$mU%aUO5eoP<(V}or}d8u{Sw0D4Cy#mK4+~_o6rU7t1C)mZ)Hk~LC(+eoJm~wwl zbhg#N{_F1dpA}I-P1q=Ws4gZ1YU-dnb+HNvozW4yUpF{k)d%>x;Yy)l|J_w+VaSV3 zDOL7!uzBrewO+|%v7c+`8CwmH;{8eL(1}dhz(`w!H{YltoVyOHl^6pQB(o$0Z}v*z zIBFMB(C-K#eVhfVF!Z+2|l z85F1VIHUbKaL5br8%WgJaJFG}8G@Y4lX^GdNrA%RFmeP5KocD_3%tRdjO;H2I8p_1 z3+{v+JNqxcj{we6QN-$7B~}ir+R1Ul^=zO&s|vY!;exQtnig#A=&j2;V0&Lzmhq{?@25naYxV@{(?(+E@cnUvJ-#vK9=*e31B17=7 z^3pn+3p3ZUF2AaGvsk<$&$a(BKy1v+=Z@2&>2O)B?yEQ?Wo2Tf;mE7aIpwj1_t)fJ zo0UW^D&$_7Cx?3Qm$L{T!|J%PrArt|*7Ovx?YlTt=a!DreHV-DWE}n&by~e5b!Uk&Va$%(7x69TWH( zU1zBtkv*(^68*E)6pZQ!BT?EEE4+ttluAmON+ht8dJ-C`6IZ14;oYspT-xmqK$cjx z7l#fafhX`=8q(y~EonpPR_C_Mw$lpY*`p{E8s*~PEpu($h&1Q9G${)N!fyesErPzYQ?vZ%rR0YEGaZU!MzFQIxb7# z_Q-AO8B6v`tXh@=bP7ktTN+p| zW0c+W^|g@eHg#KDb!i*x;wkt;v+|vShT{?@lS=`?O&~& ztWuP;>0AhV4{)v6H<6MDEKHn~p@BL_%X! zQ@~fYKhh~@3D^@I>>We3B{=jQjbt8D!E0Rp#E?0}thfmf*r?af?Ju?E;H;JNpm$QP zZbbl9>r=0uB+9{Tb-$VuzLX*`KU)MDD!~QwCRkBijOH2kr&+WOd*dH~cU=6wl&DO< zig5NwAeymiukDCk!dtIGI%^dh^3*L2m{OZ#YjCHqCzm3dZ`8|C@3l?WnWR{}{W;3=`o`=*{Q1V1ZcsQ&82&*(mRn)iOrd7wb zwH~~`+-~3V)ZfSEg+)>A3H=#pxdDPei(HVvj^Cy@!XTdO5y`lgdxXI%tDJ#{lUyMB zmfNDe3&JiwAb(bf5#pEZR?Si!R5(X2RO*rmJ#l0Q(%;XLp$A-BjP;Yw!;{n>_EH&j zH>`Q#xjK2=yVYRI7cCm>gE&^;3Etz77tlFz8#{^>uyxa~(B%Wd8%b=v+*J zr&BH(N+TZz%lZ5`Beh@yqT9?`^!}!1Uy;(Th%`1n&oi^I)$S4hv``*#XSjsSc`T-JYM$1AZnx z_~T$_wx7Y{7)|u}QOdM6P=4a7O-xA2d?ia9mka#D6pupbq=q!jcsiIu&K(qftzvL1 z5*z_+Ya)hT8R*et_Lpq)fv7@>dANE^caOsEcXNR*IndtIFW?q*sqHp)QKyi07y)38 z+|gUo2dJ*{36}eS1}6g~tVm+5KfJ$GD9SsU)K4FyHjcdzo^U1VR&*bHLmqs9R?|Q^ z#Bq945>^E%Lf9p_?s5L9#=gA-4yJQ6+;`$su0mdyiD$*!`45jW6D2)MYJCglEvxSNJrbIt8rRMn%*64i!s*_yWIP@i~JT^xpnDY zSU5-Ez(^5PRP#QmZ$Vaav4Pp3SvJ7^t;xNr%JnE#ScxO6dUSort0bmyZ zbBNP1|jNN2(&-R}MO5peb0bjW#=+LPTs z1U;V=&kj*xVUE7%w?<%zPvU=86rRhs;Abr$fHrfxHm137XEsU;M;{mmrMxU*mTfsY z28dFR4Ly1{#Z#8Q7Q`+nXng*V2~6yJE`S%USrk3qA5JnZD2>jD%zaF@8RUGBwZ69I zi!%g1o6G~#O7r`8uYH(qEoG)rV%FK((ZHOKa?BDm6LZ-EvFXjLUZm_&RC}DX5C^=CLnRNHQ1y5c7J9y2nY(soLPXbQXdGdMA11~@%ZXndIO*;&pqrLxL<5TF|&O`V!Z#HuVT&|f*w zrw99F%8#HHYvAey{$13)w`fP(gI8iy)T_=iZS#cxOhNUNEKFVp?9-Z?L)zn?Qjy}a zXvd!h_bM7x$|(heM`_Wm8OA^x=6;{4oxZ{0aSh2t%T9w?ixz?|PDwIRcYWmFMhOrY zGmt1BBYD>NGgXFRSRWV--0Qr}?Cjl`^;*i#qpv`k?*rVmI1Y&tx&v@eVuIE5xM3h= zZcMm4loqX)3XI19Dcb?Z#zUvNC~gyL{}^jm^$@ zW#JZ?li>8My zW`u19*A?YgZMReaU5>xxm|&zSz&ROnm&~yn+`u#GRRY!g0}TFQOG|EqCY)~YD|1!i zK1b#UC9=xK^%iAd&+Rt>i*aF3hcEaWA7kLfR(uL%1kN&d#B=X3Ku}X?a{ayd-2ndL z$r3U;)T(i$ zA(+SbH=N42f)d}sde}$`c&av%)Fnwhxz?C?Trre0eAI6+GC2ISB8czesV`*6F)|gh z{v8uRL;mDBUM@j0LojYh=*l3ucA@T^q!w%KXX)pJS9{|mKY_`fW&%l*1 zV4c8xlrfC;WW!2Mn`np3Qp{8xjIx7G#E0BdmUZrBec!{f1i}XhHnzk;r@P*+*wdQO z!4}jfcP1;js0DD6R2 zfYxHorwm$axmpa>f-fLd$$gE)U6$D5>-Aib4C^d(bSPa~v8Q*H1`@UOkFAV3$zA|_Q)_4sGE&pD``fr6`5R1|@ zzD`}341sHoErJH3l(P$mI$jc-kt3OjI1m!i7qd1?s}z81U-Ir)o)yhjIqEW>q5%I z6lF2dW^41XI2FR#FSZ#ble1N`!t9CpnWA4ArL=O-3Y1F?zqN7G z&pq!@sIr!r#i~X;o@sp&LwfZQpQNy}5p$OtdT>4Yi$=DE{dh)vaoQx@L)^__i-_0g(%^@Pn!Ab``C;bv@WQRoCF){fuY-DUZBz~4pL zi3ho=)F}!YV|nNoZFb9K=e8|e zffv^v=@Z?NrnFyiONUxx#e^THg(uvmyTDY2!%@Wy#Un*?%M8w2dDXa+fy}d16A<@H z!3ei&=>J9GstMesIR=?WtvIp3>+lQBkV2GXgAZ>lhimi~m;Zn)LHbTA7V=9=_uDRc z{SMk>1$nc!8HZp4b9(~{UUtQA_Q`Obej}5i5YE}o2;7@}v{7saS&H@3Uk|lzvb6`! z)9s4KWQa%$_OtaYg>MX78U`xHV2y^9ATLE0z3dM7$$m)9>`-5-0%{hgXij;|^;9*o zFnGPP3yd{omSpfc>Pi4liAYkl>O&%ebUb30^dfBV%)cV6Z2#<70lDAhkdKe_ zdYsXk?X9JO+D}Y>B)MB#u>gpcsb-a^aq=A_Rn`Kw4=lN5hg{fr~i{iazED+{=%`y*0}8O*&c#!rKu>-69RuB;NS=gC^r*QROp;H=GY z=9&=1I}--Lpd7O|laFI+d`_Q`hnR{W5@8$j*$uOdQVWQii^Z`y?*?>H^?*+i&Cu@U&2v|QVvTRi7r&Ia*`gvr!!cS2z|;n0MMPSi z(j0Hqm@!oEk5u8j(x=NKCat$uTJKj?2+8l5v+EKaX}I%Lhm33<1N<3G3%R&&x94r#gQ!Qx)nG!1&-g9Q_VXQxl?*QV00B7}`u&)hdBc{U>i7OsLxW#-vUJ*Le++5VGR@?6Q^ zBSk`vczb3|>6Q6qq6a6a6%f?Grfp$UT536w+A+d~v|U^z5+0LvYt#&%PWEf6 znt~$(ZrwYduA&_VuJo0~Un9g-OKDV>^%U^huHSt3X%M)HtZsdn(izNY=bn7kODgUO z?7d96v0Kc3gVk0z&DOJhihRM*8hrS0ll2 zQpbs=MBmXv-Eg~S4YGvoYIhO1F}H!1QsI!oF<{)WKm`XdNzAi;X@~z+O9f1x=xV*B zcDo~(Plhq#%gn4SAm+76JJZ8z5hgRuPaY7Y|0)U3O-dzwKHYJrZ^`wdcR-;{HweAyO0YRt^W zNYpm6s@vd!yW6>9cV>QZ zlK?aw*?xOYTAsruDhJG2T$jiaeZhG_apGwP;v?&KR_n30?vf%4Z>dp^%{Bs!YZyJE zjqEag&z_Ou16ektvA^6AWSw1d0q6Wvy#BlK8hP7*08hjwdW^bvp%y#OaF43O&$LVY z?iWJfxMGJHrJ3wMMj>m@L^Vp+mmpr;+fOHDa)s?(iwuZl?JGukKVbPio1LvEL=1hZ zZISl}lP8E`iK9HIKn_|sLun|@ev}*?PD#ddZnGbLv+DoU_EkZd#m=4|?l6P9ySuwH z@Zs+6?lw4sySuwHI1KJGxVwJ1%izoZ;qKk4y|r(fmy_!1^GkP5SJEfxq=Tlxi;!Pe zY%R%Y)7ag#8%Wq!)`3A?=c9L+ob^$*!PweeQOP#^8_+PwxpFQScXfVh4f)!zP`23V zL<85CR`u{EzWH6yep+e1gx?-tzD4d0gdEc|bVfoDW!EMX1AL$IM^M|(7vfC%;RQ1% zNUt;tqN(inWjKXXL;G94GUowK(%UxBIRU@aB4b-1A$_ZJgR?{BEH|c7#0fH0`7(#0 z-ITf{PPG?g&7YUW-5^98vEF zl{+?GRd`gZa(D9#+gjoH#{!qct7EKv<1>2R#-RwW&DenfTBwKREF@qn?|D}=DEvqp z4~{jnzg-kV;lZ8P4#;64j$I2ZV}0QD67khWM!u`uTUJ3#15V$;s`8E>9IRL4G#w$f zu#7|^{w~lb0|J~K@LQDdRy9l3lm}eGfdlRqe7c=$irs1eLk3vQ)5}38h70Pylh|^X$L#$>{&R>((LIm(`+<#H*`Dhw#YV3@9NKdmxp9)5)LysbYSvu${Z|eggCJ@ zF;qGngs8i`IJoN^80p0#cgNf&Z|At0)Js>_$LFVvcfpw~)1UjfX)XWfH;=BiVKFFI zpRJb_sxTJA{5v_4dXrHBH_3Z%f=cY3hzJ^b=4o-}SQ`>65M6FLiIhOdDl1!x3bYPn z&)6a_!2~;u;fYg-7&**fIIeMTRvb@^pK_&2q)#e_IKR8|Y=5x1tex(i&e7ZoH-mx5 zKe>^GAOcPthS>L=pRjN4#S%Egg169|F_CXlqyx3hj~mZSg3nG7JfQ+&tlSGcl{a}0 zHQ(nMNn0H)7#|B~8w57@<+j(Dl|DInQgd8JDh0}#G0zJfqxcBQF24bHhJ1^**MVJ; z)=;Zz+^MJze#^PJ3$AHT)qqi>wRRr7_<#APXjLj%wTHS!$spr3;uBpMYNCJ)v3gEP zqNtOTA35p=W9>>5D4lm1NEYj0FV8E6iLyuI25&o$pC3^%9nv*ejB~$#=B3B(~(0nc_$| zTC)SLJE>%H(&OwYNB~4In9>B{vz1k6v0@heVW?Cc5+e|qLxgHcMz9e=rujFkqwx$I zIK6rvXAXxZ13^Ng5J?OD(+|OdrpVTzZ(Q2ql}}-YRR*0`-xkX{=mHiW6K|klcfEp)ZAfd z7*}FVN$A7q-6&^?iD?H{C3(&T$`(GGA$j&VbD;s+ErHfDMN{%2BbN$k>9buqHE!Ty z#ERWRS%_*bh8sEnMeZ~Yzgp(DR#pa~$+*_GTmJNP`BdbQ>S7nsPqwX}(qynjb-#Qw z%aGt6BUmu__8MhZiX<~6LWx1!%fRJ`@VHn?G;iPMcPuA82eeS$hQ4osamuq{3Y8 zQnFeEDE$uAh=X##@Nq45->2P1B`?;Nmv`ikO65|62}GY(yVM3EQqnN)TH1T_aKzZG z`@QGt3mwENNWPKN_g9;76jcAkm!yVc3>o>l-c)FDu&y~P+Zn`oRc)Q&B49V2dOs)y zZkwGo!~x{$qtzY)F7J3J@?3T>taNzw%<}jc=7ok~MkEN9?9VmOn>V=Lv{OQdNX6Ix zfSlX523%&0!J1bG8nmB|)0gxE9&bKcJx{1kLu>ytO34aYoEZ4|QZ>NqW65k{TH9x{ zY%d`rR*S(rtmL8rfJ891cH2{UvAS6YZ%(gDD-U3aap_D_Sk0ruhRzms zA~IRW)IWv;IUK^~b##_fgN>f^akJ73L$QJk3`sW)eKnv{hnqYLnhl%B)5W0Pe%Hkj zm{j$XVRJjh9zBlNQ!bC{-CP&Z+Y2*D=B$-U`aW*TR2w63Fs}b$`MXo*_XYoCQ(>(? zx3IK%dDI2$Xu)LTlA<5}&Y(w9@G4^m7kB5-f~*y`DS(e9d~kJ%%C zgYAo*34Tmb@D4w~>i7#8q)qkTHw{BqEKL2ptT1F?-%F-{OPAToIUonU)t&ban#ozWPr(CMYS%00*PR^LlK%>GD?+Lu z#F8nK_b`V3qRYP|=mG09^#W*8q*db*nnb>{tg!P|Wy|iSW5g>pgL_$5c6Lz$a&;46ez7%)Lyu1j2~c%%JkYtv3iM;b$=!% zQ%KCdJ5C&DDA68q3CjA>1N!vRmdDZ`IP=^*oS14dbQ{^O*;`VRV$Whu{<7xG*+Vd0& znfp+yV1P4zyLz-3Xx&A6vzo4q17F5uky{=u;h2G^in|qtzfhU;RteAXft1i0C&jO- z;LxM7v^rDm-$YYpsAognxD(16H6h(_ZSQ%Jh%S-GuXxc@m(IVg@{xs$<>3Wq6_UzW zflimvEs~4Y!PR5eJl#b9WB7SL1mg26ci8&08cx5r=KbbEdQxDb7`>4}Bc?fOhiI1) zaEX16;IJ|0c!>q#H8%)mDx1kkMB{BH4~Uj5lB0>0XlvR^mX_DjmpLCMjL12tyT2Uf z1nTy;qVpGU(J1Bl6%hnAN$>VA5+WY(b?1~4w6u)npEsJTAQ`zvLPEr0eMAS(6%GQe z;wOPaJBm65d?~kbBXd4K-bP(w?^(2|VBxM&Ku~!Tm$lkrGnac*92tFbR!?CW)F(uH z#|a9IObHtdKVjLOhbIYT6V&DS!1iFE=>_(fQHz-wDXs`*%07nt?JJzS1DwAl_gdE1M~(#&G+YS#Dmz4`by7zg{-i`v*k(CC#6Jlx zxA$BtHyEfK0-~fFbQ|1|{rOxf!*t5w>aSmfn8MS-EMPna*^2ySq2|u>nx`R1n|e~a zt5nA~<_vgNl;nmaU}%T7LTgUbPS?D$N=EoA4W)F|WVhDQ$leGQF$*mn&sa)8lvh;7~DV2x?g- z<~*q^ug(fW<&61Nd_~%~BU>-6;K1XsYaLy$*-26LqusF!A;6DIr*~3RY(Adfi6w8X zd?JtI)<&feb+p}oR4_E;+*B5Rc?^FFHTNV|tsFo;Xl=>*a*#E+I8Jy}R917hLn2DS@BPC-eTU0H$@%0Zh8u!*T3 zXUvGBS&UX(N7B(vv|{=Tl5K4cQ?wc{7q08T`OxW}UKH^yf2~|Fa+lgBpa+djw^6Lj z_v8_8A5>m(q`39U3VUJ;Ola-U{n5p{lDV7}tHI>X+4D13?c)dvN!?tJLOK%;UOxs> zo*Kg--sxd8#IGBpI$$YiBnFR@)(<}n?)kBAE;N(3 z)#d`eh9fUXr=3hyGkYzrL-;VeK-T(ph5-MxfN8-`48Q8So&a&xoRAA?@cIv0w1Sp* zV;OGjA^7>ecrlJrF+m=%3IPaW5TP2km&;F|mL!Q2?B(7ukrX^U9Hc$M%AWfqFxUJk zZQNUV>jeFJO^UpAXdljw@9ys1o8I0gQ3BGFnQ$Uihw8Ps$In(I4i77a>n<>N2_hJo)m_UzpCgdOqzY7%9pC0p+raY18-h^a zH(tj$*217hU0I8dL}SXO7!%`L1B0(-x5r2HIP z%E$eb=4yyc+uPh-=sP_XlchW7N%_0r0)m-E;#4|rzDR)kU5cO!gq}!FjU|o*mTm|dPO!^-o27}%Bk@jD@cveJiQ3F881@a;>33q0_NnL< zCBlZNp!=4)$Hix;x6=kGx;Y4 z{XucdCE`BWlGXJULl3kTg0LIOoTK+|wcK062&p+(FO|lPE0M}{-#SYKPkVQUOu(xA zgt&4Y8gMD#G{!`tyl`IO;YJCguah+ECHyRgAJyih9onZC0q%&TcM3P^@p13AF#exR zUSNg@^R(YHj{eKo|6V=N+4j48Xk8I<1YeC@k12{}GKbf-@gDW0{KbH9 z>co!$0sB*u7{0lWk`Q_9Sb%|}pDKl^f3Yb#P{={-#t1|cbX^_kT2^zIkJ?pIRCLJW zxCq_>gmE-2Yms=^DjD;{UEdrl$JWg;&ClEBX^0U%k|GXIp-4lt7kP#jIu7P1#CpS) z8k#=XId0BdmgFfJ2fV%wwF;cR>|^{Jc;%1dDOBMjw~^9Xm7zzm7?iYPt-s&=kc45zsPsaBFTrcRmN*t3ahnUvv#s@Jfb zynb$qx+Kzy+%uH#9ZerfbJr)^%$D8pK^K~`6oHa!_`L* z%+`8woY>R!uU&2X5tCqRGgUkt;E`J@iy8&5Vo!s<q?WNy8Z0A+hK#it=oFplS2BSl&Bw1{ zY=%F+3Ru0s&_1Qj6?ILAqS=?O@PLF83J7Z{4xLX+LqHUQWW(sNzoKa^~v0U$f%pl zP4V!K7t^Bl&ofJ-kp4uvMu{Y*Eqv8E$iL@TM(olHaS*0N10>fT0^()xGk*PMnyB}axy za0%Jb6^rGvDw&L$5Bz}1_n+G%iafk3a8hZeO}Cf#a(d1o1`q5^y&oixQP>MWwZT+5 z>VwI_W;WEiBZ7Acm);LWJli6J&!hM4o4Nm<)Ev(IJ`a}>ZL;A5_LVr!voS}%yKV+s zok^zc>$==0*ZKC9kNzV3OY6f4m%4`h^Hf)6_rsOs8;<`+RdhRXck9k>0lqBP%zdMJi^V<$fR!D-tL8~!t26b0Wv`7<}zT|`P zNN4<{28`>H-`a;fy6P>SmYa&!?+%V}xvrKfUCh&rR8foo85-d)O+hZt@6j8a7U1`& zMNyO`ZZ-4`5AVzWuo9TI{LOn+;Y>=@4RHvK)qoyEyg!5(c*chv+2s$FpXMLvjEZmq zyw0$9)YK+$oBn!KU(=#PFJ$Qdp$H&S7i-Y2SEa`lAw$3n*<3z_~D^$lVlNzaEn2vF+?)6VfN)}X(&?9#g?bFO!lr1XmIUEC&_3o_j4g9HUp1y=eDmLFy*O@Mqw zD%nm_?By8lH$evPdv%^C{&oNL&$j%q{M7S;NF7JJJ3mz<=ztbeBzrU>lRq@bJiG`2 zn*Uz?6)(zg5#S&@6;)3@(*o}FH-KPx@!?pg$`X?fY208O+leaJZ5+6V+ja!=f$aZ7 zA!D5I9*tMB4YML7YXNAOdm7W%@!8TPf`=wgF9qEQkDU7V=Cz*wjB#U$y150XjK9Jx z2R?=QE-mlleZB7b>g8O+-}|$s+&bwrd?8Oxy`#+L9_~Vu;%n<*$S);G1YRSkT7HzI2_e;Ncur2qqJKcEo$63bo5yAdCBTHOR=zQa8@Um6U{Mi3 z=ux@tZIfYi#k;~59;#@e&`o`&hAz8J2-zEDv=FP;8=l9ijy90{$GQ0jnQBY@-n)O> z>pNE72Vp)zq((}`pUjD&%jov;Y2cCy_NbEKuZ;^tnaQ=hvKCqNzH;s)amN zM7apm(kFq3w8l$@q6-N7IUT3uWoT}hf`T?&jR@E_O56Y9YTt^burar;p2}&8vGmZW=;ce(q&z)55@DQBpLopZX z|8@YYGR;(>4%fn>@%Ql*M-Zu$w696*fTJ>kq;-DH&Lkr$o@8YFBfhxj-$K4`10X*A z7oiyhz0ba__6zDLNT;q}CJ@f?Z18_Q+q-8y_VNBf3WmU8QR-WQQx?Wc?;U4NLfENY zaQlq5mSt^T1$_?U{<R1}nBuL& z&#}g>Lz#(|W4mWo7lW4|mh;x(@0Y7Ph-f~sBbY}y5JeGK=b|JbG0&Zwpk{MkI2vTT zH)SvKyoWWaMX0oaB22`S`^n-XsvsRdC@-K0wNxE0trBl*HCt$ICXf({@VG=?>M1BT+yiRv*e z9O6uhljGOl;6~h!%4GX<@-CmRGb7y;B2CelGPRPRiO(nI!^~o`xm6#k?+&4D_enN| z7{99XMwYeMQ;>oj+ATb45bC|289QPyU)9MIgj_;MfX#zYn*<8V-Z6f^)MnY7uO-=G zW=mIq_B)3e{6i$9Amq8mJU_uLronWR?6HQBO`@>GL`}AWkYDHsrrhpfXcfvI8pX;3 zac{6ETVog0vkgWG8Wd@~jfPhZ9~0+PB982#k(;MF8Fl0Andl<3{nR{r(g<+33_0<1 zt4@-|mD0J@qd092EX(u*&xfv7fR7NpxDmFGNAL&`0?uREHG!fD6$@G51rG*IyDm@Z zmCenwrvX;xNEAA_%vggcU4b=P+Q;{%ASvEXKVYtcMEtXgL7zz7g!Pa26RNjcJ@zP?RFtp; zA=!dOflUPZ0x>d;yA=RZBngCfIqR8iOvxXQPE5H@DZ%p%J(r&3EkS>zH$j`GNsJL| z<=8qG2od5s-CTd1eZ8MO$}UA1b~b1X;q?Ry?v*cAcB!Kxgh zBUPli-1omtIH6QC;*)VRUdTa9GL{hyR3O^H`zhnmm2d|mdL;l|RBEsM*pS?ruq~1g zCu%7s581#C75nQqxaOiym0_f+`2rULwovClq$*eoRAZs4Zm}2>ehZ-^t|nxT>Rbg= zjPsdfHGb;yq5v$aHvVVD-pm7&D3IPr>Dtn@g*ScHW;ec4ky$3rYIyAEPHlAaWJvJh zUIV}s16T=X?XUAl-0RCcAeR)tsFq-dJIHE=JMSuq%m&clcq7Hdso0G!Q?I0GG&9?G z_@P9-ji{H_&(c#c`suP7UDQ718z;@b$cif#Jz;5hIxjwqw6G+>)Js7Ax(c24tX|5Rs9W{~l!lw>DVVF^nc~gLxPg%_gLD|e zIz(k_)rC)$?`S-oNCs4)VNDpI!ne~^p&YB}5bmfT&1z|?Re$5V%4dv<*H$H2q{yV? z(W7;y`w{*~b*PjN)D#%gi*!1*dSg|3L0skiE*Owl*8dBxAsT=CEbXz((&g=+i+6i9 zGSk#Rc*vzGFI0|#sx})hSpfAnZ3;bDDh{dEuqRI@gXvZ&warSGEQj;uj^gsc;IQ&Rx{8`IePdB;|M>NVCqF9=FrqT#fR&sldA=5`Xse|%Guh6=) zBhKT9G^tRBA0l!Y+;dgvj`{E(9gPu3`=yQ?CYX5QahvwbHBVR9pz-mGmp1Lc3T7I) z6Tr=6GaZM@M*gYJ%F36i6W2ZYOD4PR))85@ysH_F&UGTj*LNc~;TrYzi%9RN&a8*? zEeJnHP#R|55gnR?;p~NV=XTxG>%N)a>eRX)+f~C+_prypl_NrVz3`J(lM{) zOuooxT%=!vrhyPER3Al7?iJDLyLTrUidw6V!P4S`_L7^LI>+YVS?T4A_p&YL`(aSq zFAuGQ=6CN_9io=bcfZa<9UkrOJcm_c{|gP-j^?`Dqch5GO~TYXZ6#Dt*{zOw%c4=w zh@Q=0-+*817Qs>{nYu?i@i2+#qz5pL>$yd&E1#{VV}1W!-KycW;7`d-(Kb`2j-&PG z5l)qIGu_}217X%R*qP+dS*WO%?hjo*aF~b&v#7F&iXMPPj?S~J)q^hJ!Zikzb=1% zzZb>i>nw}RW9U4bVQzIdD@yW!pd-E5EKH|%pVceTc7zeuGjbgmCwtM?aB zajsfKmic!yihm4D5Zx?^z9YUAu;-uUe>ptw4!lHZOvPjw+s-rdjQTS(bwc4PnsS8- z_ZyerjZtj&$~F@mk*_93U4bsoU1Lu_{jE+r>__iMJ%O9H9kn)VwUR`X7uipiptkna z=>)hn6EVR$9t9CMGA9HhYU1&3N_R z6Kia_{ewx|IP;BSXn7HP`t2Fp;Qg1r+(qNS%JjFMA5gVL=M-A z$#ME{H54#j#Dlj$;dlM+BzqLq=lqJ%i)cuF(#jiS&8xmwz4w3ER293XfsA0V5vK}YeniE8`4MWIvIu~z7I5~|qkOmYJW;qBUH)gd z^gQQ?#t-i#jT;q564`=8#(Yu);D=hdba}kJA}`jDv4hp5h3xd$6P+fRP+bhg26-vY ziZ?8@AhA%>(D@2^=&>Ny3^e)W0>@b;&p4HTt%Y-RH9KXSOVOCQ z!_jW{WT%?ploDeNai<;nF3JEm7pl+H($qJ*`tia8TH-v7oy0_I6!f5qEE4G>ezkrmFr}rr6r|>{4T5Gk{LFv>hcCkv?8&H zJ{{Nftd&(uI+2w;NYS;J3{K`pLTe!!G<5i;2L|{+!0XW6cs`Eg6v}&^{Oa}mbpThtI zz@EVW&uq3QymtV=4({^*i|PNw`ggtr2KOajK>lal`uAgaFhkL=Hq#ZqnxkC!0)cab z0{nj=8Mh)!|EGf>-~BgZg*9NA3%=BpEC13E?Gzr+8}g<8{}<9XACKrvVQg`*e|FzP z?%|4?HpMQGx+XD$LIc|jQA0H??Gqsm0k3rru-nUjp$H+^PzXbgzXS@_Y%M(V008nc zmzEw}-~j;D-$JHGjR;?rJHN?EFCqY-+?>tad;<~ys66p!bGd*302W>SGrUf~0f3?E z4tCdRFhGE|{ZHIqbpU`c!-yTOd)a>~^SnqPyD#9>T`Huy%O(JT+I;a3!=FiTK){b- z65u@g7qY4U57d$`VK0I(wJ*yG*iEs+pJ)HFXb2xh3nyK@*e_Xr z-Lu#1q1$bJ$%kl>q3)C^QEC4lazowpit<&Zs@zuxygaRxK5>r#b1J`-5Ad@)WABV( z)5GG?sQVAXy;)cKVOK|F-U^12Sec=Daw>biQQAHuYtz mj8tiE4d-8&|6}m2LPR1{n!?@mf*Cp#KGich9E) diff --git a/go.mod b/go.mod deleted file mode 100644 index 7760129..0000000 --- a/go.mod +++ /dev/null @@ -1,28 +0,0 @@ -module github.com/edwintantawi/taskit - -go 1.19 - -require ( - github.com/DATA-DOG/go-sqlmock v1.5.0 - github.com/go-chi/chi/v5 v5.0.8 - github.com/go-chi/cors v1.2.1 - github.com/golang-jwt/jwt/v4 v4.4.3 - github.com/golang-migrate/migrate/v4 v4.15.2 - github.com/google/uuid v1.3.0 - github.com/joho/godotenv v1.4.0 - github.com/lib/pq v1.10.7 - github.com/stretchr/testify v1.8.1 - golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e -) - -require ( - github.com/davecgh/go-spew v1.1.1 // indirect - github.com/hashicorp/errwrap v1.1.0 // indirect - github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/kr/pretty v0.3.0 // indirect - github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/rogpeppe/go-internal v1.8.0 // indirect - github.com/stretchr/objx v0.5.0 // indirect - go.uber.org/atomic v1.7.0 // indirect - gopkg.in/yaml.v3 v3.0.1 // indirect -) diff --git a/go.sum b/go.sum deleted file mode 100644 index 32084f5..0000000 --- a/go.sum +++ /dev/null @@ -1,1843 +0,0 @@ -bazil.org/fuse v0.0.0-20160811212531-371fbbdaa898/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8= -bazil.org/fuse v0.0.0-20200407214033-5883e5a4b512/go.mod h1:FbcW6z/2VytnFDhZfumh8Ss8zxHE6qpMP5sHTRe0EaM= -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 v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY= -cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM= -cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY= -cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ= -cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= -cloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4= -cloud.google.com/go v0.97.0/go.mod h1:GF7l59pYBVlXQIBLx3a761cZ41F9bBH3JUlihCt2Udc= -cloud.google.com/go v0.98.0/go.mod h1:ua6Ush4NALrHk5QXDWnjvZHN93OuF0HfuEPq9I1X0cM= -cloud.google.com/go v0.99.0/go.mod h1:w0Xx2nLzqWJPuozYQX+hFfCSI8WioryfRDzkoI/Y2ZA= -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/spanner v1.28.0/go.mod h1:7m6mtQZn/hMbMfx62ct5EWrGND4DNqkXyrmBPRS+OJo= -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= -gioui.org v0.0.0-20210308172011-57750fc8a0a6/go.mod h1:RSH6KIUZ0p2xy5zHDxgAM4zumjgTw83q2ge/PI+yyw8= -github.com/AdaLogics/go-fuzz-headers v0.0.0-20210715213245-6c3934b029d8/go.mod h1:CzsSbkDixRphAF5hS6wbMKq0eI6ccJRb7/A0M6JBnwg= -github.com/Azure/azure-pipeline-go v0.2.3/go.mod h1:x841ezTBIMG6O3lAcl8ATHnsOPVl2bqk7S3ta6S6u4k= -github.com/Azure/azure-sdk-for-go v16.2.1+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= -github.com/Azure/azure-storage-blob-go v0.14.0/go.mod h1:SMqIBi+SuiQH32bvyjngEewEeXoPfKMgWlBDaYf6fck= -github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= -github.com/Azure/go-ansiterm v0.0.0-20210608223527-2377c96fe795/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= -github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= -github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= -github.com/Azure/go-autorest v10.8.1+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= -github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= -github.com/Azure/go-autorest/autorest v0.11.1/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= -github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= -github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg= -github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= -github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= -github.com/Azure/go-autorest/autorest/adal v0.9.16/go.mod h1:tGMin8I49Yij6AQ+rvV+Xa/zwxYQB5hmsd6DkfAx2+A= -github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= -github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= -github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= -github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= -github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= -github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= -github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= -github.com/ClickHouse/clickhouse-go v1.4.3/go.mod h1:EaI/sW7Azgz9UATzd5ZdZHRUhHgv5+JMS9NSr2smCJI= -github.com/DATA-DOG/go-sqlmock v1.5.0 h1:Shsta01QNfFxHCfpW6YH2STWB0MudeXXEWMr20OEh60= -github.com/DATA-DOG/go-sqlmock v1.5.0/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM= -github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA= -github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA= -github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw= -github.com/Microsoft/go-winio v0.4.16-0.20201130162521-d1ffc52c7331/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= -github.com/Microsoft/go-winio v0.4.16/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= -github.com/Microsoft/go-winio v0.4.17-0.20210211115548-6eac466e5fa3/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= -github.com/Microsoft/go-winio v0.4.17-0.20210324224401-5516f17a5958/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= -github.com/Microsoft/go-winio v0.4.17/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= -github.com/Microsoft/go-winio v0.5.1/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= -github.com/Microsoft/go-winio v0.5.2 h1:a9IhgEQBCUEk6QCdml9CiJGhAws+YwffDHEMp1VMrpA= -github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= -github.com/Microsoft/hcsshim v0.8.6/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= -github.com/Microsoft/hcsshim v0.8.7-0.20190325164909-8abdbb8205e4/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= -github.com/Microsoft/hcsshim v0.8.7/go.mod h1:OHd7sQqRFrYd3RmSgbgji+ctCwkbq2wbEYNSzOYtcBQ= -github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8= -github.com/Microsoft/hcsshim v0.8.14/go.mod h1:NtVKoYxQuTLx6gEq0L96c9Ju4JbRJ4nY2ow3VK6a9Lg= -github.com/Microsoft/hcsshim v0.8.15/go.mod h1:x38A4YbHbdxJtc0sF6oIz+RG0npwSCAvn69iY6URG00= -github.com/Microsoft/hcsshim v0.8.16/go.mod h1:o5/SZqmR7x9JNKsW3pu+nqHm0MF8vbA+VxGOoXdC600= -github.com/Microsoft/hcsshim v0.8.20/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= -github.com/Microsoft/hcsshim v0.8.21/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= -github.com/Microsoft/hcsshim v0.8.23/go.mod h1:4zegtUJth7lAvFyc6cH2gGQ5B3OFQim01nnU2M8jKDg= -github.com/Microsoft/hcsshim v0.9.2/go.mod h1:7pLA8lDk46WKDWlVsENo92gC0XFa8rbKfyFRBqxEbCc= -github.com/Microsoft/hcsshim/test v0.0.0-20201218223536-d3e5debf77da/go.mod h1:5hlzMzRKMLyo42nCZ9oml8AdTlq/0cvIaBv6tK1RehU= -github.com/Microsoft/hcsshim/test v0.0.0-20210227013316-43a75bb4edd3/go.mod h1:mw7qgWloBUl75W/gVH3cQszUg1+gUITj7D6NY7ywVnY= -github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= -github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= -github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= -github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= -github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= -github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= -github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= -github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= -github.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw= -github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= -github.com/alexflint/go-filemutex v0.0.0-20171022225611-72bdc8eae2ae/go.mod h1:CgnQgUtFrFz9mxFNtED3jI5tLDjKlOM+oUF/sTk6ps0= -github.com/alexflint/go-filemutex v1.1.0/go.mod h1:7P4iRhttt/nUvUOrYIhcpMzv2G6CY9UnI16Z+UJqRyk= -github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= -github.com/apache/arrow/go/arrow v0.0.0-20210818145353-234c94e4ce64/go.mod h1:2qMFB56yOP3KzkB3PbYZ4AlUFg3a88F67TIx5lB/WwY= -github.com/apache/arrow/go/arrow v0.0.0-20211013220434-5962184e7a30/go.mod h1:Q7yQnSMnLvcXlZ8RV+jwz/6y1rQTqbX6C82SndT52Zs= -github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= -github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= -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/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= -github.com/aws/aws-sdk-go v1.15.11/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= -github.com/aws/aws-sdk-go v1.17.7/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go-v2 v1.8.0/go.mod h1:xEFuWz+3TYdlPRuo+CqATbeDWIWyaT5uAPwPaWtgse0= -github.com/aws/aws-sdk-go-v2 v1.9.2/go.mod h1:cK/D0BBs0b/oWPIcX/Z/obahJK1TT7IPVjy53i/mX/4= -github.com/aws/aws-sdk-go-v2/config v1.6.0/go.mod h1:TNtBVmka80lRPk5+S9ZqVfFszOQAGJJ9KbT3EM3CHNU= -github.com/aws/aws-sdk-go-v2/config v1.8.3/go.mod h1:4AEiLtAb8kLs7vgw2ZV3p2VZ1+hBavOc84hqxVNpCyw= -github.com/aws/aws-sdk-go-v2/credentials v1.3.2/go.mod h1:PACKuTJdt6AlXvEq8rFI4eDmoqDFC5DpVKQbWysaDgM= -github.com/aws/aws-sdk-go-v2/credentials v1.4.3/go.mod h1:FNNC6nQZQUuyhq5aE5c7ata8o9e4ECGmS4lAXC7o1mQ= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.4.0/go.mod h1:Mj/U8OpDbcVcoctrYwA2bak8k/HFPdcLzI/vaiXMwuM= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.6.0/go.mod h1:gqlclDEZp4aqJOancXK6TN24aKhT0W0Ae9MHk3wzTMM= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.4.0/go.mod h1:eHwXu2+uE/T6gpnYWwBwqoeqRf9IXyCcolyOWDRAErQ= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.5.4/go.mod h1:Ex7XQmbFmgFHrjUX6TN3mApKW5Hglyga+F7wZHTtYhA= -github.com/aws/aws-sdk-go-v2/internal/ini v1.2.0/go.mod h1:Q5jATQc+f1MfZp3PDMhn6ry18hGvE0i8yvbXoKbnZaE= -github.com/aws/aws-sdk-go-v2/internal/ini v1.2.4/go.mod h1:ZcBrrI3zBKlhGFNYWvju0I3TR93I7YIgAfy82Fh4lcQ= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.2.2/go.mod h1:EASdTcM1lGhUe1/p4gkojHwlGJkeoRjjr1sRCzup3Is= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.3.0/go.mod h1:v8ygadNyATSm6elwJ/4gzJwcFhri9RqS8skgHKiwXPU= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.2.2/go.mod h1:NXmNI41bdEsJMrD0v9rUvbGCB5GwdBEpKvUvIY3vTFg= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.3.2/go.mod h1:72HRZDLMtmVQiLG2tLfQcaWLCssELvGl+Zf2WVxMmR8= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.5.2/go.mod h1:QuL2Ym8BkrLmN4lUofXYq6000/i5jPjosCNK//t6gak= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.7.2/go.mod h1:np7TMuJNT83O0oDOSF8i4dF3dvGqA6hPYYo6YYkzgRA= -github.com/aws/aws-sdk-go-v2/service/s3 v1.12.0/go.mod h1:6J++A5xpo7QDsIeSqPK4UHqMSyPOCopa+zKtqAMhqVQ= -github.com/aws/aws-sdk-go-v2/service/s3 v1.16.1/go.mod h1:CQe/KvWV1AqRc65KqeJjrLzr5X2ijnFTTVzJW0VBRCI= -github.com/aws/aws-sdk-go-v2/service/sso v1.3.2/go.mod h1:J21I6kF+d/6XHVk7kp/cx9YVD2TMD2TbLwtRGVcinXo= -github.com/aws/aws-sdk-go-v2/service/sso v1.4.2/go.mod h1:NBvT9R1MEF+Ud6ApJKM0G+IkPchKS7p7c2YPKwHmBOk= -github.com/aws/aws-sdk-go-v2/service/sts v1.6.1/go.mod h1:hLZ/AnkIKHLuPGjEiyghNEdvJ2PP0MgOxcmv9EBJ4xs= -github.com/aws/aws-sdk-go-v2/service/sts v1.7.2/go.mod h1:8EzeIqfWt2wWT4rJVu3f21TfrhJ8AEMzVybRNSb/b4g= -github.com/aws/smithy-go v1.7.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E= -github.com/aws/smithy-go v1.8.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E= -github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= -github.com/beorn7/perks v0.0.0-20160804104726-4c0e84591b9a/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= -github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= -github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= -github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= -github.com/bitly/go-hostpool v0.0.0-20171023180738-a3a6125de932/go.mod h1:NOuUCSz6Q9T7+igc/hlvDOUdtWKryOrtFyIVABv/p7k= -github.com/bitly/go-simplejson v0.5.0/go.mod h1:cXHtHw4XUPsvGaxgjIAn8PhEWG9NfngEKAMDJEczWVA= -github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA= -github.com/bkaradzic/go-lz4 v1.0.0/go.mod h1:0YdlkowM3VswSROI7qDxhRvJ3sLhlFrRRwjwegp5jy4= -github.com/bketelsen/crypt v0.0.3-0.20200106085610-5cbc8cc4026c/go.mod h1:MKsuJmJgSg28kpZDP6UIiPt0e0Oz0kqKNGyRaWEPv84= -github.com/blang/semver v3.1.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= -github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= -github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= -github.com/boombuler/barcode v1.0.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= -github.com/bshuster-repo/logrus-logstash-hook v0.4.1/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= -github.com/buger/jsonparser v0.0.0-20180808090653-f4dd9f5a6b44/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= -github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0= -github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= -github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= -github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= -github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= -github.com/cenkalti/backoff/v4 v4.1.2/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= -github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/census-instrumentation/opencensus-proto v0.3.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= -github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= -github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= -github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/checkpoint-restore/go-criu/v4 v4.1.0/go.mod h1:xUQBLp4RLc5zJtWY++yjOoMoB5lihDt7fai+75m+rGw= -github.com/checkpoint-restore/go-criu/v5 v5.0.0/go.mod h1:cfwC0EG7HMUenopBsUf9d89JlCLQIfgVcNsNN0t6T2M= -github.com/checkpoint-restore/go-criu/v5 v5.3.0/go.mod h1:E/eQpaFtUKGOOSEBZgmKAcn+zUUwWxqcaKZlF54wK8E= -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/cilium/ebpf v0.0.0-20200110133405-4032b1d8aae3/go.mod h1:MA5e5Lr8slmEg9bt0VpxxWqJlO4iwu3FBdHUzV7wQVg= -github.com/cilium/ebpf v0.0.0-20200702112145-1c8d4c9ef775/go.mod h1:7cR51M8ViRLIdUjrmSXlK9pkrsDlLHbO8jiB8X8JnOc= -github.com/cilium/ebpf v0.2.0/go.mod h1:To2CFviqOWL/M0gIMsvSMlqe7em/l1ALkX1PyjrX2Qs= -github.com/cilium/ebpf v0.4.0/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= -github.com/cilium/ebpf v0.6.2/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= -github.com/cilium/ebpf v0.7.0/go.mod h1:/oI2+1shJiTGAMgl6/RgJr36Eo1jzrRcAWbcXO2usCA= -github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/cloudflare/golz4 v0.0.0-20150217214814-ef862a3cdc58/go.mod h1:EOBUe0h4xcZ5GoxqC5SDxFQ8gwyZPKQoEzownBlhI80= -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/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= -github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cncf/xds/go v0.0.0-20211130200136-a8f946100490/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= -github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ= -github.com/cockroachdb/cockroach-go/v2 v2.1.1/go.mod h1:7NtUnP6eK+l6k483WSYNrq3Kb23bWV10IRV1TyeSpwM= -github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= -github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo= -github.com/cockroachdb/errors v1.2.4/go.mod h1:rQD95gz6FARkaKkQXUksEje/d9a6wBJoCr5oaCLELYA= -github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u985jwjWRlyHXQbwatDASoW0RMlZ/3i9yJHE2xLkI= -github.com/containerd/aufs v0.0.0-20200908144142-dab0cbea06f4/go.mod h1:nukgQABAEopAHvB6j7cnP5zJ+/3aVcE7hCYqvIwAHyE= -github.com/containerd/aufs v0.0.0-20201003224125-76a6863f2989/go.mod h1:AkGGQs9NM2vtYHaUen+NljV0/baGCAPELGm2q9ZXpWU= -github.com/containerd/aufs v0.0.0-20210316121734-20793ff83c97/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= -github.com/containerd/aufs v1.0.0/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= -github.com/containerd/btrfs v0.0.0-20201111183144-404b9149801e/go.mod h1:jg2QkJcsabfHugurUvvPhS3E08Oxiuh5W/g1ybB4e0E= -github.com/containerd/btrfs v0.0.0-20210316141732-918d888fb676/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= -github.com/containerd/btrfs v1.0.0/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= -github.com/containerd/cgroups v0.0.0-20190717030353-c4b9ac5c7601/go.mod h1:X9rLEHIqSf/wfK8NsPqxJmeZgW4pcfzdXITDrUSJ6uI= -github.com/containerd/cgroups v0.0.0-20190919134610-bf292b21730f/go.mod h1:OApqhQ4XNSNC13gXIwDjhOQxjWa/NxkwZXJ1EvqT0ko= -github.com/containerd/cgroups v0.0.0-20200531161412-0dbf7f05ba59/go.mod h1:pA0z1pT8KYB3TCXK/ocprsh7MAkoW8bZVzPdih9snmM= -github.com/containerd/cgroups v0.0.0-20200710171044-318312a37340/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= -github.com/containerd/cgroups v0.0.0-20200824123100-0b889c03f102/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= -github.com/containerd/cgroups v0.0.0-20210114181951-8a68de567b68/go.mod h1:ZJeTFisyysqgcCdecO57Dj79RfL0LNeGiFUqLYQRYLE= -github.com/containerd/cgroups v1.0.1/go.mod h1:0SJrPIenamHDcZhEcJMNBB85rHcUsw4f25ZfBiPYRkU= -github.com/containerd/cgroups v1.0.3/go.mod h1:/ofk34relqNjSGyqPrmEULrO4Sc8LJhvJmWbUCUKqj8= -github.com/containerd/console v0.0.0-20180822173158-c12b1e7919c1/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= -github.com/containerd/console v0.0.0-20181022165439-0650fd9eeb50/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= -github.com/containerd/console v0.0.0-20191206165004-02ecf6a7291e/go.mod h1:8Pf4gM6VEbTNRIT26AyyU7hxdQU3MvAvxVI0sc00XBE= -github.com/containerd/console v1.0.1/go.mod h1:XUsP6YE/mKtz6bxc+I8UiKKTP04qjQL4qcS3XoQ5xkw= -github.com/containerd/console v1.0.2/go.mod h1:ytZPjGgY2oeTkAONYafi2kSj0aYggsf8acV1PGKCbzQ= -github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U= -github.com/containerd/containerd v1.2.10/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.3.0-beta.2.0.20190828155532-0293cbd26c69/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.3.0/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.3.2/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.4.0-beta.2.0.20200729163537-40b22ef07410/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.4.1/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.4.3/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.4.9/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= -github.com/containerd/containerd v1.5.0-beta.1/go.mod h1:5HfvG1V2FsKesEGQ17k5/T7V960Tmcumvqn8Mc+pCYQ= -github.com/containerd/containerd v1.5.0-beta.3/go.mod h1:/wr9AVtEM7x9c+n0+stptlo/uBBoBORwEx6ardVcmKU= -github.com/containerd/containerd v1.5.0-beta.4/go.mod h1:GmdgZd2zA2GYIBZ0w09ZvgqEq8EfBp/m3lcVZIvPHhI= -github.com/containerd/containerd v1.5.0-rc.0/go.mod h1:V/IXoMqNGgBlabz3tHD2TWDoTJseu1FGOKuoA4nNb2s= -github.com/containerd/containerd v1.5.1/go.mod h1:0DOxVqwDy2iZvrZp2JUx/E+hS0UNTVn7dJnIOwtYR4g= -github.com/containerd/containerd v1.5.7/go.mod h1:gyvv6+ugqY25TiXxcZC3L5yOeYgEw0QMhscqVp1AR9c= -github.com/containerd/containerd v1.5.8/go.mod h1:YdFSv5bTFLpG2HIYmfqDpSYYTDX+mc5qtSuYx1YUb/s= -github.com/containerd/containerd v1.6.1 h1:oa2uY0/0G+JX4X7hpGCYvkp9FjUancz56kSNnb1sG3o= -github.com/containerd/containerd v1.6.1/go.mod h1:1nJz5xCZPusx6jJU8Frfct988y0NpumIq9ODB0kLtoE= -github.com/containerd/continuity v0.0.0-20190426062206-aaeac12a7ffc/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= -github.com/containerd/continuity v0.0.0-20190815185530-f2a389ac0a02/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= -github.com/containerd/continuity v0.0.0-20191127005431-f65d91d395eb/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= -github.com/containerd/continuity v0.0.0-20200710164510-efbc4488d8fe/go.mod h1:cECdGN1O8G9bgKTlLhuPJimka6Xb/Gg7vYzCTNVxhvo= -github.com/containerd/continuity v0.0.0-20201208142359-180525291bb7/go.mod h1:kR3BEg7bDFaEddKm54WSmrol1fKWDU1nKYkgrcgZT7Y= -github.com/containerd/continuity v0.0.0-20210208174643-50096c924a4e/go.mod h1:EXlVlkqNba9rJe3j7w3Xa924itAMLgZH4UD/Q4PExuQ= -github.com/containerd/continuity v0.1.0/go.mod h1:ICJu0PwR54nI0yPEnJ6jcS+J7CZAUXrLh8lPo2knzsM= -github.com/containerd/continuity v0.2.2/go.mod h1:pWygW9u7LtS1o4N/Tn0FoCFDIXZ7rxcMX7HX1Dmibvk= -github.com/containerd/fifo v0.0.0-20180307165137-3d5202aec260/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= -github.com/containerd/fifo v0.0.0-20190226154929-a9fb20d87448/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= -github.com/containerd/fifo v0.0.0-20200410184934-f15a3290365b/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= -github.com/containerd/fifo v0.0.0-20201026212402-0724c46b320c/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= -github.com/containerd/fifo v0.0.0-20210316144830-115abcc95a1d/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= -github.com/containerd/fifo v1.0.0/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= -github.com/containerd/go-cni v1.0.1/go.mod h1:+vUpYxKvAF72G9i1WoDOiPGRtQpqsNW/ZHtSlv++smU= -github.com/containerd/go-cni v1.0.2/go.mod h1:nrNABBHzu0ZwCug9Ije8hL2xBCYh/pjfMb1aZGrrohk= -github.com/containerd/go-cni v1.1.0/go.mod h1:Rflh2EJ/++BA2/vY5ao3K6WJRR/bZKsX123aPk+kUtA= -github.com/containerd/go-cni v1.1.3/go.mod h1:Rflh2EJ/++BA2/vY5ao3K6WJRR/bZKsX123aPk+kUtA= -github.com/containerd/go-runc v0.0.0-20180907222934-5a6d9f37cfa3/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= -github.com/containerd/go-runc v0.0.0-20190911050354-e029b79d8cda/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= -github.com/containerd/go-runc v0.0.0-20200220073739-7016d3ce2328/go.mod h1:PpyHrqVs8FTi9vpyHwPwiNEGaACDxT/N/pLcvMSRA9g= -github.com/containerd/go-runc v0.0.0-20201020171139-16b287bc67d0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= -github.com/containerd/go-runc v1.0.0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= -github.com/containerd/imgcrypt v1.0.1/go.mod h1:mdd8cEPW7TPgNG4FpuP3sGBiQ7Yi/zak9TYCG3juvb0= -github.com/containerd/imgcrypt v1.0.4-0.20210301171431-0ae5c75f59ba/go.mod h1:6TNsg0ctmizkrOgXRNQjAPFWpMYRWuiB6dSF4Pfa5SA= -github.com/containerd/imgcrypt v1.1.1-0.20210312161619-7ed62a527887/go.mod h1:5AZJNI6sLHJljKuI9IHnw1pWqo/F0nGDOuR9zgTs7ow= -github.com/containerd/imgcrypt v1.1.1/go.mod h1:xpLnwiQmEUJPvQoAapeb2SNCxz7Xr6PJrXQb0Dpc4ms= -github.com/containerd/imgcrypt v1.1.3/go.mod h1:/TPA1GIDXMzbj01yd8pIbQiLdQxed5ue1wb8bP7PQu4= -github.com/containerd/nri v0.0.0-20201007170849-eb1350a75164/go.mod h1:+2wGSDGFYfE5+So4M5syatU0N0f0LbWpuqyMi4/BE8c= -github.com/containerd/nri v0.0.0-20210316161719-dbaa18c31c14/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= -github.com/containerd/nri v0.1.0/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= -github.com/containerd/stargz-snapshotter/estargz v0.4.1/go.mod h1:x7Q9dg9QYb4+ELgxmo4gBUeJB0tl5dqH1Sdz0nJU1QM= -github.com/containerd/ttrpc v0.0.0-20190828154514-0e0f228740de/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= -github.com/containerd/ttrpc v0.0.0-20190828172938-92c8520ef9f8/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= -github.com/containerd/ttrpc v0.0.0-20191028202541-4f1b8fe65a5c/go.mod h1:LPm1u0xBw8r8NOKoOdNMeVHSawSsltak+Ihv+etqsE8= -github.com/containerd/ttrpc v1.0.1/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= -github.com/containerd/ttrpc v1.0.2/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= -github.com/containerd/ttrpc v1.1.0/go.mod h1:XX4ZTnoOId4HklF4edwc4DcqskFZuvXB1Evzy5KFQpQ= -github.com/containerd/typeurl v0.0.0-20180627222232-a93fcdb778cd/go.mod h1:Cm3kwCdlkCfMSHURc+r6fwoGH6/F1hH3S4sg0rLFWPc= -github.com/containerd/typeurl v0.0.0-20190911142611-5eb25027c9fd/go.mod h1:GeKYzf2pQcqv7tJ0AoCuuhtnqhva5LNU3U+OyKxxJpk= -github.com/containerd/typeurl v1.0.1/go.mod h1:TB1hUtrpaiO88KEK56ijojHS1+NeF0izUACaJW2mdXg= -github.com/containerd/typeurl v1.0.2/go.mod h1:9trJWW2sRlGub4wZJRTW83VtbOLS6hwcDZXTn6oPz9s= -github.com/containerd/zfs v0.0.0-20200918131355-0a33824f23a2/go.mod h1:8IgZOBdv8fAgXddBT4dBXJPtxyRsejFIpXoklgxgEjw= -github.com/containerd/zfs v0.0.0-20210301145711-11e8f1707f62/go.mod h1:A9zfAbMlQwE+/is6hi0Xw8ktpL+6glmqZYtevJgaB8Y= -github.com/containerd/zfs v0.0.0-20210315114300-dde8f0fda960/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= -github.com/containerd/zfs v0.0.0-20210324211415-d5c4544f0433/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= -github.com/containerd/zfs v1.0.0/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= -github.com/containernetworking/cni v0.7.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= -github.com/containernetworking/cni v0.8.0/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= -github.com/containernetworking/cni v0.8.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= -github.com/containernetworking/cni v1.0.1/go.mod h1:AKuhXbN5EzmD4yTNtfSsX3tPcmtrBI6QcRV0NiNt15Y= -github.com/containernetworking/plugins v0.8.6/go.mod h1:qnw5mN19D8fIwkqW7oHHYDHVlzhJpcY6TQxn/fUyDDM= -github.com/containernetworking/plugins v0.9.1/go.mod h1:xP/idU2ldlzN6m4p5LmGiwRDjeJr6FLK6vuiUwoH7P8= -github.com/containernetworking/plugins v1.0.1/go.mod h1:QHCfGpaTwYTbbH+nZXKVTxNBDZcxSOplJT5ico8/FLE= -github.com/containers/ocicrypt v1.0.1/go.mod h1:MeJDzk1RJHv89LjsH0Sp5KTY3ZYkjXO/C+bKAeWFIrc= -github.com/containers/ocicrypt v1.1.0/go.mod h1:b8AOe0YR67uU8OqfVNcznfFpAzu3rdgUV4GP9qXPfu4= -github.com/containers/ocicrypt v1.1.1/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= -github.com/containers/ocicrypt v1.1.2/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= -github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= -github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= -github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= -github.com/coreos/go-iptables v0.4.5/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= -github.com/coreos/go-iptables v0.5.0/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= -github.com/coreos/go-iptables v0.6.0/go.mod h1:Qe8Bv2Xik5FyTXwgIbLAnv2sWSBmvWdFETJConOQ//Q= -github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= -github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= -github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= -github.com/coreos/go-systemd v0.0.0-20161114122254-48702e0da86b/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= -github.com/coreos/go-systemd/v22 v22.0.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= -github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= -github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= -github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= -github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= -github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= -github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/cyphar/filepath-securejoin v0.2.2/go.mod h1:FpkQEhXnPnOthhzymB7CGsFk2G9VLXONKD9G7QGMM+4= -github.com/cyphar/filepath-securejoin v0.2.3/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= -github.com/cznic/mathutil v0.0.0-20180504122225-ca4c9f2c1369/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM= -github.com/d2g/dhcp4 v0.0.0-20170904100407-a1d1b6c41b1c/go.mod h1:Ct2BUK8SB0YC1SMSibvLzxjeJLnrYEVLULFNiHY9YfQ= -github.com/d2g/dhcp4client v1.0.0/go.mod h1:j0hNfjhrt2SxUOw55nL0ATM/z4Yt3t2Kd1mW34z5W5s= -github.com/d2g/dhcp4server v0.0.0-20181031114812-7d4a0a7f59a5/go.mod h1:Eo87+Kg/IX2hfWJfwxMzLyuSZyxSoAug2nGa1G2QAi8= -github.com/d2g/hardwareaddr v0.0.0-20190221164911-e7d9fbe030e4/go.mod h1:bMl4RjIciD2oAxI7DmWRx6gbeqrkoLqv3MV0vzNad+I= -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/denisenkom/go-mssqldb v0.10.0/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU= -github.com/denverdino/aliyungo v0.0.0-20190125010748-a747050bb1ba/go.mod h1:dV8lFg6daOBZbT6/BDGIz6Y3WFGn8juu6G+CQ6LHtl0= -github.com/dgrijalva/jwt-go v0.0.0-20170104182250-a601269ab70c/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= -github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= -github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= -github.com/dhui/dktest v0.3.10 h1:0frpeeoM9pHouHjhLeZDuDTJ0PqjDTrycaHaMmkJAo8= -github.com/dhui/dktest v0.3.10/go.mod h1:h5Enh0nG3Qbo9WjNFRrwmKUaePEBhXMOygbz3Ww7Sz0= -github.com/dnaeon/go-vcr v1.0.1/go.mod h1:aBB1+wY4s93YsC3HHjMBMrwTj2R9FHDzUr9KyGc8n1E= -github.com/docker/cli v0.0.0-20191017083524-a8ff7f821017/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= -github.com/docker/distribution v0.0.0-20190905152932-14b96e55d84c/go.mod h1:0+TTO4EOBfRPhZXAeF1Vu+W3hHZ8eLp8PgKVZlcvtFY= -github.com/docker/distribution v2.7.1-0.20190205005809-0d3efadf0154+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/distribution v2.8.1+incompatible h1:Q50tZOPR6T/hjNsyc9g8/syEs6bk8XXApsHjKukMl68= -github.com/docker/distribution v2.8.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -github.com/docker/docker v20.10.13+incompatible h1:5s7uxnKZG+b8hYWlPYUi6x1Sjpq2MSt96d15eLZeHyw= -github.com/docker/docker v20.10.13+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -github.com/docker/docker-credential-helpers v0.6.3/go.mod h1:WRaJzqw3CTB9bk10avuGsjVBZsD05qeibJ1/TYlvc0Y= -github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= -github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= -github.com/docker/go-events v0.0.0-20170721190031-9461782956ad/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= -github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= -github.com/docker/go-metrics v0.0.0-20180209012529-399ea8c73916/go.mod h1:/u0gXw0Gay3ceNrsHubL3BtdOL2fHf93USgMTe0W5dI= -github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= -github.com/docker/go-units v0.4.0 h1:3uh0PgVws3nIA0Q+MwDC8yjEPf9zjRfZZWXZYDct3Tw= -github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= -github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= -github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= -github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= -github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= -github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= -github.com/edsrzf/mmap-go v0.0.0-20170320065105-0bce6a688712/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M= -github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= -github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= -github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= -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/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= -github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= -github.com/envoyproxy/go-control-plane v0.10.1/go.mod h1:AY7fTTXNdv/aJ2O5jwpxAPOWUZ7hQAEvzN5Pf27BkQQ= -github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/envoyproxy/protoc-gen-validate v0.6.2/go.mod h1:2t7qjJNvHPx8IjnBOzl9E9/baC+qXE/TeeyBRzgJDws= -github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch v4.11.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= -github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= -github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= -github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= -github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= -github.com/form3tech-oss/jwt-go v3.2.5+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= -github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k= -github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= -github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= -github.com/fsouza/fake-gcs-server v1.17.0/go.mod h1:D1rTE4YCyHFNa99oyJJ5HyclvN/0uQR+pM/VdlL83bw= -github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa/go.mod h1:KnogPXtdwXqoenmZCw6S+25EAm2MkxbG0deNDu4cbSA= -github.com/gabriel-vasile/mimetype v1.3.1/go.mod h1:fA8fi6KUiG7MgQQ+mEWotXoEOvmxRtOJlERCzSmRvr8= -github.com/gabriel-vasile/mimetype v1.4.0/go.mod h1:fA8fi6KUiG7MgQQ+mEWotXoEOvmxRtOJlERCzSmRvr8= -github.com/garyburd/redigo v0.0.0-20150301180006-535138d7bcd7/go.mod h1:NR3MbYisc3/PwhQ00EMzDiPmrwpPxAn5GI05/YaO1SY= -github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ= -github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= -github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= -github.com/go-chi/chi/v5 v5.0.8 h1:lD+NLqFcAi1ovnVZpsnObHGW4xb4J8lNmoYVfECH1Y0= -github.com/go-chi/chi/v5 v5.0.8/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8= -github.com/go-chi/cors v1.2.1 h1:xEC8UT3Rlp2QuWNEr4Fs/c2EAGVKBwy/1vHx3bppil4= -github.com/go-chi/cors v1.2.1/go.mod h1:sSbTewc+6wYHBBCW7ytsFSn836hqM7JxpglAy2Vzc58= -github.com/go-fonts/dejavu v0.1.0/go.mod h1:4Wt4I4OU2Nq9asgDCteaAaWZOV24E+0/Pwo0gppep4g= -github.com/go-fonts/latin-modern v0.2.0/go.mod h1:rQVLdDMK+mK1xscDwsqM5J8U2jrRa3T0ecnM9pNujks= -github.com/go-fonts/liberation v0.1.1/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY= -github.com/go-fonts/stix v0.1.0/go.mod h1:w/c1f0ldAUlJmLBvlbkvVXLAD+tAMqobIIQpmnUIzUY= -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-ini/ini v1.25.4/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8= -github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= -github.com/go-latex/latex v0.0.0-20210118124228-b3d85cf34e07/go.mod h1:CO1AlKB2CSIqUrmQPqA0gdRIlnLEY0gK5JGjh37zN5U= -github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= -github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= -github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= -github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= -github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= -github.com/go-logr/logr v0.4.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= -github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.1/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/stdr v1.2.0/go.mod h1:YkVgnZu1ZjjL7xTxrfm/LLZBfkhTqSR1ydtm6jTKKwI= -github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= -github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= -github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= -github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= -github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg= -github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= -github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= -github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= -github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc= -github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= -github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I= -github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= -github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= -github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= -github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= -github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= -github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= -github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0= -github.com/gobuffalo/depgen v0.0.0-20190329151759-d478694a28d3/go.mod h1:3STtPUQYuzV0gBVOY3vy6CfMm/ljR4pABfrTeHNLHUY= -github.com/gobuffalo/depgen v0.1.0/go.mod h1:+ifsuy7fhi15RWncXQQKjWS9JPkdah5sZvtHc2RXGlg= -github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= -github.com/gobuffalo/envy v1.7.0/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= -github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs= -github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= -github.com/gobuffalo/flect v0.1.3/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= -github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk= -github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e/go.mod h1:80lIj3kVJWwOrXWWMRzzdhW3DsrdjILVil/SFKBzF28= -github.com/gobuffalo/genny v0.1.0/go.mod h1:XidbUqzak3lHdS//TPu2OgiFB+51Ur5f7CSnXZ/JDvo= -github.com/gobuffalo/genny v0.1.1/go.mod h1:5TExbEyY48pfunL4QSXxlDOmdsD44RRq4mVZ0Ex28Xk= -github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw= -github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360= -github.com/gobuffalo/gogen v0.1.0/go.mod h1:8NTelM5qd8RZ15VjQTFkAW6qOMx5wBbW4dSCS3BY8gg= -github.com/gobuffalo/gogen v0.1.1/go.mod h1:y8iBtmHmGc4qa3urIyo1shvOD8JftTtfcKi+71xfDNE= -github.com/gobuffalo/here v0.6.0/go.mod h1:wAG085dHOYqUpf+Ap+WOdrPTp5IYcDAs/x7PLa8Y5fM= -github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8= -github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= -github.com/gobuffalo/mapi v1.0.2/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= -github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= -github.com/gobuffalo/packd v0.1.0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= -github.com/gobuffalo/packr/v2 v2.0.9/go.mod h1:emmyGweYTm6Kdper+iywB6YK5YzuKchGtJQZ0Odn4pQ= -github.com/gobuffalo/packr/v2 v2.2.0/go.mod h1:CaAwI0GPIAv+5wKLtv8Afwl+Cm78K/I/VCm/3ptBN+0= -github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754/go.mod h1:HhnNqWY95UYwwW3uSASeV7vtgYkT2t16hJgV3AEPUpw= -github.com/gocql/gocql v0.0.0-20210515062232-b7ef815b4556/go.mod h1:DL0ekTmBSTdlNF25Orwt/JMzqIq3EJ4MVa/J/uK64OY= -github.com/godbus/dbus v0.0.0-20151105175453-c7fdd8b5cd55/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= -github.com/godbus/dbus v0.0.0-20180201030542-885f9cc04c9c/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= -github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4= -github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= -github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= -github.com/godbus/dbus/v5 v5.0.6/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= -github.com/gofrs/uuid v3.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= -github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= -github.com/gogo/googleapis v1.2.0/go.mod h1:Njal3psf3qN6dwBtQfUmBZh2ybovJ0tlu3o/AC7HYjU= -github.com/gogo/googleapis v1.4.0/go.mod h1:5YRNX2z1oM5gXdAkurHa942MDgEJyk02w4OecKY87+c= -github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= -github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= -github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= -github.com/gogo/protobuf v1.3.0/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= -github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= -github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= -github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= -github.com/golang-jwt/jwt/v4 v4.1.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= -github.com/golang-jwt/jwt/v4 v4.4.3 h1:Hxl6lhQFj4AnOX6MLrsCb/+7tCj7DxP7VA+2rDIq5AU= -github.com/golang-jwt/jwt/v4 v4.4.3/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= -github.com/golang-migrate/migrate/v4 v4.15.2 h1:vU+M05vs6jWHKDdmE1Ecwj0BznygFc4QsdRe2E/L7kc= -github.com/golang-migrate/migrate/v4 v4.15.2/go.mod h1:f2toGLkYqD3JH+Todi4aZ2ZdbeUNx4sIwiOK96rE9Lw= -github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0= -github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k= -github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= -github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -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/groupcache v0.0.0-20210331224755-41bb18bfe9da/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/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= -github.com/golang/protobuf v1.0.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -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 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= -github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/golang/snappy v0.0.0-20170215233205-553a64147049/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -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/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA= -github.com/google/flatbuffers v2.0.0+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= -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/go-containerregistry v0.5.1/go.mod h1:Ct15B4yir3PLOP5jsy0GNeYVaIZs/MK/Jz5any1wFW0= -github.com/google/go-github/v39 v39.2.0/go.mod h1:C1s8C5aCC9L+JXIYpJM5GYytdX52vC1bLvHEF1IhBrE= -github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck= -github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= -github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/gofuzz v1.2.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/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= -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-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= -github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= -github.com/google/uuid v1.3.0/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/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0= -github.com/googleapis/gax-go/v2 v2.1.1/go.mod h1:hddJymUZASv3XPyGkUpKj8pPO47Rmb0eJc8R6ouapiM= -github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= -github.com/googleapis/gnostic v0.5.1/go.mod h1:6U4PtQXGIEt/Z3h5MAT7FNofLnw9vXk2cUuW7uA/OeU= -github.com/googleapis/gnostic v0.5.5/go.mod h1:7+EbHbldMins07ALC74bsA81Ovc97DwqyJO1AENw9kA= -github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gorilla/handlers v0.0.0-20150720190736-60c7bfde3e33/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ= -github.com/gorilla/handlers v1.4.2/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ= -github.com/gorilla/mux v1.7.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= -github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= -github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= -github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= -github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= -github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= -github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= -github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= -github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= -github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y= -github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= -github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= -github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= -github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= -github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed/go.mod h1:tMWxXQ9wFIaZeTI9F+hmhFiGpFmhOHzyShyFUhRm0H4= -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 v0.0.0-20141028054710-7554cd9344ce/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= -github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= -github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= -github.com/hashicorp/errwrap v1.1.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 v0.0.0-20161216184304-ed905158d874/go.mod h1:JMRHfdO9jKNzS/+BTlxCjKNQHg/jZAft8U7LloJvN7I= -github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= -github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= -github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= -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/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/iancoleman/strcase v0.2.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho= -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/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= -github.com/imdario/mergo v0.3.8/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= -github.com/imdario/mergo v0.3.10/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= -github.com/intel/goresctrl v0.2.0/go.mod h1:+CZdzouYFn5EsxgqAQTEzMfwKwuc0fVdMrT9FCCAVRQ= -github.com/j-keck/arping v0.0.0-20160618110441-2cf9dc699c56/go.mod h1:ymszkNOg6tORTn+6F6j+Jc8TOr5osrynvN6ivFWZ2GA= -github.com/j-keck/arping v1.0.2/go.mod h1:aJbELhR92bSk7tp79AWM/ftfc90EfEi2bQJrbBFOsPw= -github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= -github.com/jackc/chunkreader/v2 v2.0.0/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= -github.com/jackc/chunkreader/v2 v2.0.1/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= -github.com/jackc/pgconn v0.0.0-20190420214824-7e0022ef6ba3/go.mod h1:jkELnwuX+w9qN5YIfX0fl88Ehu4XC3keFuOJJk9pcnA= -github.com/jackc/pgconn v0.0.0-20190824142844-760dd75542eb/go.mod h1:lLjNuW/+OfW9/pnVKPazfWOgNfH2aPem8YQ7ilXGvJE= -github.com/jackc/pgconn v0.0.0-20190831204454-2fabfa3c18b7/go.mod h1:ZJKsE/KZfsUgOEh9hBm+xYTstcNHg7UPMVJqRfQxq4s= -github.com/jackc/pgconn v1.4.0/go.mod h1:Y2O3ZDF0q4mMacyWV3AstPJpeHXWGEetiFttmq5lahk= -github.com/jackc/pgconn v1.5.0/go.mod h1:QeD3lBfpTFe8WUnPZWN5KY/mB8FGMIYRdd8P8Jr0fAI= -github.com/jackc/pgconn v1.5.1-0.20200601181101-fa742c524853/go.mod h1:QeD3lBfpTFe8WUnPZWN5KY/mB8FGMIYRdd8P8Jr0fAI= -github.com/jackc/pgconn v1.8.0/go.mod h1:1C2Pb36bGIP9QHGBYCjnyhqu7Rv3sGshaQUvmfGIB/o= -github.com/jackc/pgerrcode v0.0.0-20201024163028-a0d42d470451/go.mod h1:a/s9Lp5W7n/DD0VrVoyJ00FbP2ytTPDVOivvn2bMlds= -github.com/jackc/pgio v1.0.0/go.mod h1:oP+2QK2wFfUWgr+gxjoBH9KGBb31Eio69xUb0w5bYf8= -github.com/jackc/pgmock v0.0.0-20190831213851-13a1b77aafa2/go.mod h1:fGZlG77KXmcq05nJLRkk0+p82V8B8Dw8KN2/V9c/OAE= -github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= -github.com/jackc/pgproto3 v1.1.0/go.mod h1:eR5FA3leWg7p9aeAqi37XOTgTIbkABlvcPB3E5rlc78= -github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190420180111-c116219b62db/go.mod h1:bhq50y+xrl9n5mRYyCBFKkpRVTLYJVWeCc+mEAI3yXA= -github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190609003834-432c2951c711/go.mod h1:uH0AWtUmuShn0bcesswc4aBTWGvw0cAxIJp+6OB//Wg= -github.com/jackc/pgproto3/v2 v2.0.0-rc3/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= -github.com/jackc/pgproto3/v2 v2.0.0-rc3.0.20190831210041-4c03ce451f29/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= -github.com/jackc/pgproto3/v2 v2.0.1/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= -github.com/jackc/pgproto3/v2 v2.0.6/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= -github.com/jackc/pgproto3/v2 v2.0.7/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= -github.com/jackc/pgservicefile v0.0.0-20200307190119-3430c5407db8/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E= -github.com/jackc/pgservicefile v0.0.0-20200714003250-2b9c44734f2b/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E= -github.com/jackc/pgtype v0.0.0-20190421001408-4ed0de4755e0/go.mod h1:hdSHsc1V01CGwFsrv11mJRHWJ6aifDLfdV3aVjFF0zg= -github.com/jackc/pgtype v0.0.0-20190824184912-ab885b375b90/go.mod h1:KcahbBH1nCMSo2DXpzsoWOAfFkdEtEJpPbVLq8eE+mc= -github.com/jackc/pgtype v0.0.0-20190828014616-a8802b16cc59/go.mod h1:MWlu30kVJrUS8lot6TQqcg7mtthZ9T0EoIBFiJcmcyw= -github.com/jackc/pgtype v1.2.0/go.mod h1:5m2OfMh1wTK7x+Fk952IDmI4nw3nPrvtQdM0ZT4WpC0= -github.com/jackc/pgtype v1.3.1-0.20200510190516-8cd94a14c75a/go.mod h1:vaogEUkALtxZMCH411K+tKzNpwzCKU+AnPzBKZ+I+Po= -github.com/jackc/pgtype v1.3.1-0.20200606141011-f6355165a91c/go.mod h1:cvk9Bgu/VzJ9/lxTO5R5sf80p0DiucVtN7ZxvaC4GmQ= -github.com/jackc/pgtype v1.6.2/go.mod h1:JCULISAZBFGrHaOXIIFiyfzW5VY0GRitRr8NeJsrdig= -github.com/jackc/pgx/v4 v4.0.0-20190420224344-cc3461e65d96/go.mod h1:mdxmSJJuR08CZQyj1PVQBHy9XOp5p8/SHH6a0psbY9Y= -github.com/jackc/pgx/v4 v4.0.0-20190421002000-1b8f0016e912/go.mod h1:no/Y67Jkk/9WuGR0JG/JseM9irFbnEPbuWV2EELPNuM= -github.com/jackc/pgx/v4 v4.0.0-pre1.0.20190824185557-6972a5742186/go.mod h1:X+GQnOEnf1dqHGpw7JmHqHc1NxDoalibchSk9/RWuDc= -github.com/jackc/pgx/v4 v4.5.0/go.mod h1:EpAKPLdnTorwmPUUsqrPxy5fphV18j9q3wrfRXgo+kA= -github.com/jackc/pgx/v4 v4.6.1-0.20200510190926-94ba730bb1e9/go.mod h1:t3/cdRQl6fOLDxqtlyhe9UWgfIi9R8+8v8GKV5TRA/o= -github.com/jackc/pgx/v4 v4.6.1-0.20200606145419-4e5062306904/go.mod h1:ZDaNWkt9sW1JMiNn0kdYBaLelIhw7Pg4qd+Vk6tw7Hg= -github.com/jackc/pgx/v4 v4.10.1/go.mod h1:QlrWebbs3kqEZPHCTGyxecvzG6tvIsYu+A5b1raylkA= -github.com/jackc/puddle v0.0.0-20190413234325-e4ced69a3a2b/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= -github.com/jackc/puddle v0.0.0-20190608224051-11cab39313c9/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= -github.com/jackc/puddle v1.1.0/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= -github.com/jackc/puddle v1.1.1/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= -github.com/jackc/puddle v1.1.3/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= -github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= -github.com/jinzhu/now v1.1.1/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= -github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= -github.com/jmespath/go-jmespath v0.0.0-20160803190731-bd40a432e4c7/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= -github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= -github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= -github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= -github.com/jmoiron/sqlx v1.2.0/go.mod h1:1FEQNm3xlJgrMD+FBdI9+xvCksHtbpVBBw5dYhBSsks= -github.com/jmoiron/sqlx v1.3.1/go.mod h1:2BljVx/86SuTyjE+aPYlHCTNvZrnJXghYGpNiXLBMCQ= -github.com/joefitzgerald/rainbow-reporter v0.1.0/go.mod h1:481CNgqmVHQZzdIbN52CupLJyoVwB10FQ/IQlF1pdL8= -github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg= -github.com/joho/godotenv v1.4.0 h1:3l4+N6zfMWnkbPEXKng2o2/MR5mSwTrBih4ZEkkz1lg= -github.com/joho/godotenv v1.4.0/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4= -github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= -github.com/jonboulle/clockwork v0.2.2/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= -github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= -github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= -github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= -github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= -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/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= -github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= -github.com/jung-kurt/gofpdf v1.0.0/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= -github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= -github.com/k0kubun/colorstring v0.0.0-20150214042306-9440f1994b88/go.mod h1:3w7q1U84EfirKl04SVQ/s7nPm1ZPhiXd34z40TNz36k= -github.com/k0kubun/pp v2.3.0+incompatible/go.mod h1:GWse8YhT0p8pT4ir3ZgBbfZild3tgzSScAn6HmfYukg= -github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0/go.mod h1:1NbS8ALrpOvjt0rHPNLyCIeMtbizbir8U//inJ+zuB8= -github.com/karrick/godirwalk v1.8.0/go.mod h1:H5KPZjojv4lE+QYImBI8xVtrBRgYrIVsaRPx4tDPEn4= -github.com/karrick/godirwalk v1.10.3/go.mod h1:RoGL9dQei4vP9ilrpETWE8CLOZ1kiN0LhBygSwrAsHA= -github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8= -github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= -github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= -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/klauspost/compress v1.9.5/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A= -github.com/klauspost/compress v1.11.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= -github.com/klauspost/compress v1.11.13/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= -github.com/klauspost/compress v1.13.1/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= -github.com/klauspost/compress v1.13.4/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= -github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= -github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= -github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= -github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= -github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= -github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= -github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw= -github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= -github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= -github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/ktrysmt/go-bitbucket v0.6.4/go.mod h1:9u0v3hsd2rqCHRIpbir1oP7F58uo5dq19sBYvuMoyQ4= -github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= -github.com/lib/pq v1.1.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= -github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= -github.com/lib/pq v1.3.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= -github.com/lib/pq v1.8.0/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= -github.com/lib/pq v1.10.0/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= -github.com/lib/pq v1.10.7 h1:p7ZhMD+KsSRozJr34udlUrhboJwWAgCg34+/ZZNvZZw= -github.com/lib/pq v1.10.7/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= -github.com/linuxkit/virtsock v0.0.0-20201010232012-f8cee7dfc7a3/go.mod h1:3r6x7q95whyfWQpmGZTu3gk3v2YkMi05HEzl7Tf7YEo= -github.com/lyft/protoc-gen-star v0.5.3/go.mod h1:V0xaHgaf5oCCqmcxYcWiDfTiKsZsRc87/1qhoTACD8w= -github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= -github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= -github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= -github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= -github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= -github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE= -github.com/markbates/pkger v0.15.1/go.mod h1:0JoVlrol20BSywW79rN3kdFFsE5xYM+rSCQDXbLhiuI= -github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0= -github.com/marstr/guid v1.1.0/go.mod h1:74gB1z2wpxxInTG6yaqA7KrtM0NZ+RbrcqDvYHefzho= -github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= -github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= -github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= -github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= -github.com/mattn/go-ieproxy v0.0.1/go.mod h1:pYabZ6IHcRpFh7vIaLfK7rdcWgFEb3SFJ6/gNWuh88E= -github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= -github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= -github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ= -github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= -github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= -github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= -github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= -github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= -github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= -github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= -github.com/mattn/go-sqlite3 v1.14.10/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= -github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= -github.com/maxbrunsfeld/counterfeiter/v6 v6.2.2/go.mod h1:eD9eIE7cdwcMi9rYluz88Jz2VyhSmden33/aXg4oVIY= -github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= -github.com/miekg/pkcs11 v1.0.3/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= -github.com/mistifyio/go-zfs v2.1.2-0.20190413222219-f784269be439+incompatible/go.mod h1:8AuVvqP/mXw1px98n46wfvcGfQ4ci2FwoAjKYxuo3Z4= -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-homedir v1.1.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 v0.0.0-20180220230111-00c29f56e238/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= -github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= -github.com/mitchellh/osext v0.0.0-20151018003038-5e2d6d41470f/go.mod h1:OkQIRizQZAeMln+1tSwduZz7+Af5oFlKirV/MSYes2A= -github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= -github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= -github.com/moby/sys/mountinfo v0.4.0/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= -github.com/moby/sys/mountinfo v0.4.1/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= -github.com/moby/sys/mountinfo v0.5.0/go.mod h1:3bMD3Rg+zkqx8MRYPi7Pyb0Ie97QEBmdxbhnCLlSvSU= -github.com/moby/sys/signal v0.6.0/go.mod h1:GQ6ObYZfqacOwTtlXvcmh9A26dVRul/hbOZn88Kg8Tg= -github.com/moby/sys/symlink v0.1.0/go.mod h1:GGDODQmbFOjFsXvfLVn3+ZRxkch54RkSiGqsZeMYowQ= -github.com/moby/sys/symlink v0.2.0/go.mod h1:7uZVF2dqJjG/NsClqul95CqKOBRQyYSNnJ6BMgR/gFs= -github.com/moby/term v0.0.0-20200312100748-672ec06f55cd/go.mod h1:DdlQx2hp0Ss5/fLikoLlEeIYiATotOjgB//nb973jeo= -github.com/moby/term v0.0.0-20210610120745-9d4ed1856297/go.mod h1:vgPCkQMyxTZ7IDy8SXRufE172gr8+K/JE/7hHFxHW3A= -github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6 h1:dcztxKSvZ4Id8iPpHERQBbIJfabdt4wUm5qy3wOL2Zc= -github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6/go.mod h1:E2VnQOmVuvZB6UYnnDB0qG5Nq/1tD9acaOpo6xmt0Kw= -github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/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/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= -github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= -github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= -github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= -github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ= -github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= -github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= -github.com/mutecomm/go-sqlcipher/v4 v4.4.0/go.mod h1:PyN04SaWalavxRGH9E8ZftG6Ju7rsPrGmQRjrEaVpiY= -github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= -github.com/nakagami/firebirdsql v0.0.0-20190310045651-3c02a58cfed8/go.mod h1:86wM1zFnC6/uDBfZGNwB65O+pR2OFi5q/YQaEUid1qA= -github.com/ncw/swift v1.0.47/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= -github.com/neo4j/neo4j-go-driver v1.8.1-0.20200803113522-b626aa943eba/go.mod h1:ncO5VaFWh0Nrt+4KT4mOZboaczBZcLuHrG+/sUeP8gI= -github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= -github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= -github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= -github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= -github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= -github.com/onsi/ginkgo v0.0.0-20151202141238-7f8ab55aaf3b/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.10.3/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg= -github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= -github.com/onsi/ginkgo v1.13.0/go.mod h1:+REjRxOmWfHCjfv9TTWB1jD1Frx4XydAD3zm1lskyM0= -github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= -github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0= -github.com/onsi/gomega v0.0.0-20151007035656-2152b45fa28a/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= -github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= -github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= -github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= -github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= -github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= -github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= -github.com/onsi/gomega v1.10.3/go.mod h1:V9xEwhxec5O8UDM77eCW8vLymOMltsqPVYWrpDsH8xc= -github.com/onsi/gomega v1.15.0/go.mod h1:cIuvLEne0aoVhAgh/O6ac0Op8WWw9H6eYCriF+tEHG0= -github.com/opencontainers/go-digest v0.0.0-20170106003457-a6d0ee40d420/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= -github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= -github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= -github.com/opencontainers/go-digest v1.0.0-rc1.0.20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= -github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= -github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= -github.com/opencontainers/image-spec v1.0.0/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= -github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= -github.com/opencontainers/image-spec v1.0.2-0.20211117181255-693428a734f5/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= -github.com/opencontainers/image-spec v1.0.2 h1:9yCKha/T5XdGtO0q9Q9a6T5NUCsTn/DrBg0D7ufOcFM= -github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= -github.com/opencontainers/runc v0.0.0-20190115041553-12f6a991201f/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= -github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= -github.com/opencontainers/runc v1.0.0-rc8.0.20190926000215-3e425f80a8c9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= -github.com/opencontainers/runc v1.0.0-rc9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= -github.com/opencontainers/runc v1.0.0-rc93/go.mod h1:3NOsor4w32B2tC0Zbl8Knk4Wg84SM2ImC1fxBuqJ/H0= -github.com/opencontainers/runc v1.0.2/go.mod h1:aTaHFFwQXuA71CiyxOdFFIorAoemI04suvGRQFzWTD0= -github.com/opencontainers/runc v1.1.0/go.mod h1:Tj1hFw6eFWp/o33uxGf5yF2BX5yz2Z6iptFpuvbbKqc= -github.com/opencontainers/runtime-spec v0.1.2-0.20190507144316-5b71a03e2700/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/runtime-spec v1.0.1/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/runtime-spec v1.0.2-0.20190207185410-29686dbc5559/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/runtime-spec v1.0.2/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/runtime-spec v1.0.3-0.20200929063507-e6143ca7d51d/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/runtime-tools v0.0.0-20181011054405-1d69bd0f9c39/go.mod h1:r3f7wjNzSs2extwzU3Y+6pKfobzPh+kKFJ3ofN+3nfs= -github.com/opencontainers/selinux v1.6.0/go.mod h1:VVGKuOLlE7v4PJyT6h7mNWvq1rzqiriPsEqVhc+svHE= -github.com/opencontainers/selinux v1.8.0/go.mod h1:RScLhm78qiWa2gbVCcGkC7tCGdgk3ogry1nUQF8Evvo= -github.com/opencontainers/selinux v1.8.2/go.mod h1:MUIHuUEvKB1wtJjQdOyYRgOnLD2xAPP8dBsCoU0KuF8= -github.com/opencontainers/selinux v1.10.0/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI= -github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= -github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= -github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= -github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE= -github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrapLU/GW4pbc= -github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= -github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= -github.com/phpdave11/gofpdf v1.4.2/go.mod h1:zpO6xFn9yxo3YLyMvW8HcKWVdbNqgIfOOp2dXMnm1mY= -github.com/phpdave11/gofpdi v1.0.12/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI= -github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= -github.com/pierrec/lz4/v4 v4.1.8/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= -github.com/pkg/browser v0.0.0-20210706143420-7d21f8c997e2/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI= -github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI= -github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= -github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/errors v0.8.1-0.20171018195549-f15c970de5b7/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -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/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= -github.com/prometheus/client_golang v0.0.0-20180209125602-c332b6f63c06/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso= -github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= -github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= -github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= -github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= -github.com/prometheus/client_model v0.0.0-20171117100541-99fa1f4be8e5/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/common v0.0.0-20180110214958-89604d197083/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= -github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= -github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= -github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= -github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= -github.com/prometheus/common v0.30.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= -github.com/prometheus/procfs v0.0.0-20180125133057-cb4147076ac7/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.0.0-20190522114515-bc1a522cf7b1/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= -github.com/prometheus/procfs v0.0.5/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= -github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= -github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= -github.com/prometheus/procfs v0.2.0/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= -github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= -github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= -github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= -github.com/remyoudompheng/bigfft v0.0.0-20190728182440-6a916e37a237/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= -github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= -github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= -github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= -github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= -github.com/rogpeppe/go-internal v1.8.0 h1:FCbCCtXNOY3UtUuHUYaghJg4y7Fd14rXifAYUAtL9R8= -github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6poM+XZ2dLUbcbE= -github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ= -github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= -github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc= -github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/ruudk/golang-pdf417 v0.0.0-20181029194003-1af4ab5afa58/go.mod h1:6lfFZQK844Gfx8o5WFuvpxWRwnSoipWe/p622j1v06w= -github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= -github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= -github.com/safchain/ethtool v0.0.0-20210803160452-9aa261dae9b1/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= -github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= -github.com/sclevine/agouti v3.0.0+incompatible/go.mod h1:b4WX9W9L1sfQKXeJf1mUTLZKJ48R1S7H23Ji7oFO5Bw= -github.com/sclevine/spec v1.2.0/go.mod h1:W4J29eT/Kzv7/b9IWLB055Z+qvVC9vt0Arko24q7p+U= -github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= -github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo= -github.com/seccomp/libseccomp-golang v0.9.2-0.20210429002308-3879420cc921/go.mod h1:JA8cRccbGaA1s33RQf7Y1+q9gHmZX1yB/z9WDN1C6fg= -github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4= -github.com/shopspring/decimal v0.0.0-20200227202807-02e2044944cc/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= -github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= -github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= -github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= -github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= -github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= -github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= -github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= -github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= -github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= -github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= -github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= -github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= -github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= -github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= -github.com/snowflakedb/gosnowflake v1.6.3/go.mod h1:6hLajn6yxuJ4xUHZegMekpq9rnQbGJ7TMwXjgTmA6lg= -github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= -github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= -github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= -github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= -github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= -github.com/spf13/afero v1.3.3/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4= -github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= -github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= -github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= -github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= -github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= -github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= -github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= -github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= -github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= -github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= -github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= -github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE= -github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= -github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980/go.mod h1:AO3tvPzVZ/ayst6UlUKUv6rcPQInYe3IknH3jYhAKu8= -github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= -github.com/stretchr/objx v0.0.0-20180129172003-8a3f7159479f/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= -github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= -github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= -github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -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.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= -github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= -github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= -github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= -github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= -github.com/tchap/go-patricia v2.2.6+incompatible/go.mod h1:bmLyhP68RS6kStMGxByiQ23RP/odRBOTVjwp2cDyi6I= -github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= -github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= -github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= -github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= -github.com/tv42/httpunix v0.0.0-20191220191345-2ba4b9c3382c/go.mod h1:hzIxponao9Kjc7aWznkXaL4U4TWaDSs8zcsY4Ka08nM= -github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGrc= -github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= -github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= -github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= -github.com/urfave/cli v1.22.2/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= -github.com/vishvananda/netlink v0.0.0-20181108222139-023a6dafdcdf/go.mod h1:+SR5DhBJrl6ZM7CoCKvpw5BKroDKQ+PJqOg65H/2ktk= -github.com/vishvananda/netlink v1.1.0/go.mod h1:cTgwzPIzzgDAYoQrMm0EdrjRUBkTqKYppBueQtXaqoE= -github.com/vishvananda/netlink v1.1.1-0.20201029203352-d40f9887b852/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= -github.com/vishvananda/netlink v1.1.1-0.20210330154013-f5de75959ad5/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= -github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc/go.mod h1:ZjcWmFBXmLKZu9Nxj3WKYEafiSqer2rnvPr0en9UNpI= -github.com/vishvananda/netns v0.0.0-20191106174202-0a2b9b5464df/go.mod h1:JP3t17pCcGlemwknint6hfoeCVQrEMVwxRLRjXpq+BU= -github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= -github.com/vishvananda/netns v0.0.0-20210104183010-2eb08e3e575f/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= -github.com/willf/bitset v1.1.11-0.20200630133818-d5bec3311243/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4= -github.com/willf/bitset v1.1.11/go.mod h1:83CECat5yLh5zVOf4P1ErAgKA5UDvKtgyUABdr3+MjI= -github.com/xanzy/go-gitlab v0.15.0/go.mod h1:8zdQa/ri1dfn8eS3Ir1SyfvOKlw7WBJ8DVThkpGiXrs= -github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= -github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs= -github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM= -github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= -github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= -github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f/go.mod h1:5yf86TLmAcydyeJq5YvxkGPE2fm/u4myDekKRoLuqhs= -github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= -github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= -github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= -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/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= -github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= -github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= -github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= -gitlab.com/nyarla/go-crypt v0.0.0-20160106005555-d9a5dc2b789b/go.mod h1:T3BPAOm2cqquPa0MKWeNkmOM5RQsRhkrwMWonFMN7fE= -go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= -go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= -go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ= -go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= -go.etcd.io/etcd v0.5.0-alpha.5.0.20200910180754-dd1b699fc489/go.mod h1:yVHk9ub3CSBatqGNg7GRmsnfLWtoW60w4eDYfh7vHDg= -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.etcd.io/etcd/client/v3 v3.5.0/go.mod h1:AIKXXVX/DQXtfTEqBryiLTUXwON+GuvO6Z7lLS/oTh0= -go.etcd.io/etcd/pkg/v3 v3.5.0/go.mod h1:UzJGatBQ1lXChBkQF0AuAtkRQMYnHubxAEYIrC3MSsE= -go.etcd.io/etcd/raft/v3 v3.5.0/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= -go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4= -go.mongodb.org/mongo-driver v1.7.0/go.mod h1:Q4oFMbo1+MSNqICAdYMlC/zSTrwCogR4R8NzkI+yfU8= -go.mozilla.org/pkcs7 v0.0.0-20200128120323-432b2356ecb1/go.mod h1:SNgMg+EgDFwmvSmLRTNKC5fegJjB7v23qTQ0XLGUNHk= -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.opentelemetry.io/contrib v0.20.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.20.0/go.mod h1:oVGt1LRbBOBq1A5BQLlUg9UaU/54aiHw8cgjV3aWZ/E= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.28.0/go.mod h1:vEhqr0m4eTc+DWxfsXoXue2GBgV2uUwVznkGIHW/e5w= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.20.0/go.mod h1:2AboqHi0CiIZU0qwhtUfCYD1GeUzvvIXWNkhDt7ZMG4= -go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo= -go.opentelemetry.io/otel v1.3.0/go.mod h1:PWIKzi6JCp7sM0k9yZ43VX+T345uNbAkDKwHVjb2PTs= -go.opentelemetry.io/otel/exporters/otlp v0.20.0/go.mod h1:YIieizyaN77rtLJra0buKiNBOm9XQfkPEKBeuhoMwAM= -go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.3.0/go.mod h1:VpP4/RMn8bv8gNo9uK7/IMY4mtWLELsS+JIP0inH0h4= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.3.0/go.mod h1:hO1KLR7jcKaDDKDkvI9dP/FIhpmna5lkqPUQdEjFAM8= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.3.0/go.mod h1:keUU7UfnwWTWpJ+FWnyqmogPa82nuU5VUANFq49hlMY= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.3.0/go.mod h1:QNX1aly8ehqqX1LEa6YniTU7VY9I6R3X/oPxhGdTceE= -go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU= -go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa9FqQ2IQ8LoxiGnw= -go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc= -go.opentelemetry.io/otel/sdk v1.3.0/go.mod h1:rIo4suHNhQwBIPg9axF8V9CA72Wz2mKF1teNrup8yzs= -go.opentelemetry.io/otel/sdk/export/metric v0.20.0/go.mod h1:h7RBNMsDJ5pmI1zExLi+bJK+Dr8NQCh0qGhm1KDnNlE= -go.opentelemetry.io/otel/sdk/metric v0.20.0/go.mod h1:knxiS8Xd4E/N+ZqKmUPf3gTTZ4/0TjTXukfxjzSTpHE= -go.opentelemetry.io/otel/trace v0.20.0/go.mod h1:6GjCW8zgDjwGHGa6GkyeB8+/5vjT16gUEi0Nf1iBdgw= -go.opentelemetry.io/otel/trace v1.3.0/go.mod h1:c/VDhno8888bvQYmbYLqe41/Ldmr/KKunbvWM4/fEjk= -go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= -go.opentelemetry.io/proto/otlp v0.11.0/go.mod h1:QpEjXPrNQzrFDZgoTo49dgHR9RYRSrg3NAKnUGl9YpQ= -go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= -go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= -go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= -go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= -go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= -go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= -go.uber.org/goleak v1.1.12/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= -go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= -go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= -go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= -go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= -go.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= -go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= -go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= -golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -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-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= -golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= -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-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190911031432-227b76d455e7/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/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-20201002170205-7f63de1d35b0/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-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= -golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e h1:T8NU3HyQ8ClP4SEE+KbFlg6n0NhuTsN4MyznaarGsZM= -golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20190125153040-c74c464bbbf2/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-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= -golang.org/x/exp v0.0.0-20191002040644-a1355ae1e2c3/go.mod h1:NOZ3BPKG0ec/BKJQgnvsSFpcKLM5xXVWnvZS97DWHgE= -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-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs= -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.0.0-20190910094157-69e4b8554b2a/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.0.0-20200119044424-58c23975cae1/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.0.0-20200430140353-33d19683fad8/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.0.0-20200618115811-c13761719519/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.0.0-20201208152932-35266b937fa6/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.0.0-20210216034530-4410531fe030/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -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/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/mod v0.5.0/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= -golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -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-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181011144130-49bb7cea24b1/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-20181108082009-03003ca0c849/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/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-20181220203305-927f97764cc3/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-20190225153610-fe579d43d832/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-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= -golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= -golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190619014844-b5b0513f8c1b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -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-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20191112182307-2180aed22343/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-20200520004742-59133d7f0dd7/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-20201006153459-a7d1128ccaa0/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -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-20201202161906-c7110b5ffcbb/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-20201224014010-6772e930b67b/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-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= -golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210505024714-0287a6fb4125/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210520170846-37e1c6afe023/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210813160813-60bc85c4be6d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20211216030914-fe4d6282115f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20220111093109-d55c255bac03/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20220225172249-27dd8689420f h1:oA4XRj0qtSt8Yo1Zms0CUlsT3KG69V2UGQWPBxujDmc= -golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/oauth2 v0.0.0-20180227000427-d7d64896b5ff/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/oauth2 v0.0.0-20181106182150-f42d05182288/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-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/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-20190412183630-56d357773e84/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-20180224232135-f6cff0780e54/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -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-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/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-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/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-20190222072716-a9d3bda3a223/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-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190422165155-953cdadca894/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-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190522044717-8097e1b27ff5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190812073006-9eafafc0a87e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/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-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191112214154-59a1497f0cea/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191115151921-52ab43148777/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191210023423-ac6580df4449/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200120151820-655fe14d7479/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200124204421-9fbb57f87de9/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-20200217220822-9197077df867/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-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200622214017-ed371f2e16b4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200817155316-9781c653f443/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200828194041-157a740278f4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200831180312-196b9ba8737a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200916030750-2334cc1a136f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200922070232-aee5d888a860/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201117170446-d9b008d0a637/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201126233918-771906719818/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201202213521-69691e467435/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210304124612-50617c2ba197/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-20210324051608-47abb6519492/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-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210426230700-d19ff857e887/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-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210603125802-9665404d3644/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-20210616045830-e2b7044e8c71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/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-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210816183151-1e6c022a8912/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210818153620-00dd8d7831e7/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210903071746-97244b99971b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210906170528-6f6e22806c34/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211116061358-0a5406a5449c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211205182925-97ca703d548d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220111092808-5a964db01320/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220317061510-51cd9980dadf h1:Fm4IcnUL803i92qDlmB0obyHmosDrxZWxJL3gIeNqOw= -golang.org/x/sys v0.0.0-20220317061510-51cd9980dadf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -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.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -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/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20220224211638-0e9765cccd65/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/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-20190206041539-40960b6deb8e/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-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190416151739-9c9e1878f421/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190420181800-aa740d480789/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= -golang.org/x/tools v0.0.0-20190425163242-31fd60d6bfdc/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-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= -golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/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-20190624222133-a101b041ded4/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-20190706070813-72ffa07ba3db/go.mod h1:jcCCGcm9btYwXyDqrUWc6MKQKKGJCWEQ3AfLSRIbEuI= -golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20190823170909-c4a336ef6a2f/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-20190927191325-030b2cf1153e/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-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/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-20200505023115-26f46d2f7ef8/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-20200616133436-c1934b75d054/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-20200916195026-c9a70fc28ce3/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= -golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201124115921-2c860bdd6e78/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-20201224043029-2b0845dc783e/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.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -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= -gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= -gonum.org/v1/gonum v0.8.2/go.mod h1:oe/vMfY3deqTw+1EZJhuvEW2iwGF1bW9wwu7XCu0+v0= -gonum.org/v1/gonum v0.9.3/go.mod h1:TZumC3NeyVQskjXqmyWt4S3bINhy7B4eYwW69EbyX+0= -gonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw= -gonum.org/v1/plot v0.0.0-20190515093506-e2840ee46a6b/go.mod h1:Wt8AAjI+ypCyYX3nZBvf6cAIx93T+c/OS2HFAYskSZc= -gonum.org/v1/plot v0.9.0/go.mod h1:3Pcqqmp6RHvJI72kgb8fThyUnav364FOsdDo2aGW5lY= -google.golang.org/api v0.0.0-20160322025152-9bf6e6e569ff/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0= -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.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59tHXo= -google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4= -google.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw= -google.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU= -google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k= -google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= -google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= -google.golang.org/api v0.57.0/go.mod h1:dVPlbZyBo2/OjBpmvNdpn2GRm6rPy75jyU7bmhdrMgI= -google.golang.org/api v0.61.0/go.mod h1:xQRti5UdCmoCEqFxcz93fTl338AVqDgyaDRuOZ3hg9I= -google.golang.org/api v0.62.0/go.mod h1:dKmwPCydfsad4qCH08MSdgWjfHOyfpd4VtDGgRFdavw= -google.golang.org/appengine v1.0.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= -google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= -google.golang.org/appengine v1.3.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -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/cloud v0.0.0-20151119220103-975617b05ea8/go.mod h1:0H1ncTHf11KCFhTc/+EFRbzSCOZx+VUbRMk55Yv5MYk= -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-20190522204451-c2c4e71fbf69/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= -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-20200117163144-32f20d992d24/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-20200423170343-7949de9c1215/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-20200527145253-8367513e4ece/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= -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-20201019141844-1ed22bb0c154/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-20201110150050-8816d57aaa9a/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-20210513213006-bf773b8c8384/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= -google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210604141403-392c879c8b08/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210608205507-b6d2f5bf0d7d/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84/go.mod h1:SzzZ/N+nwJDaO1kznhnlzqS8ocJICar6hYhVyhi++24= -google.golang.org/genproto v0.0.0-20210630183607-d20f26d13c79/go.mod h1:yiaVoXHpRzHGyxV3o4DktVWY4mSUErTKaeEOq6C3t3U= -google.golang.org/genproto v0.0.0-20210713002101-d411969a0d9a/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= -google.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= -google.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= -google.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= -google.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w= -google.golang.org/genproto v0.0.0-20210821163610-241b8fcbd6c8/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210828152312-66f60bf46e71/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210903162649-d08c68adba83/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210909211513-a8c4777a87af/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto v0.0.0-20210924002016-3dee208752a0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211118181313-81c1377c94b1/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211129164237-f09f9a12af12/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211203200212-54befc351ae9/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211206160659-862468c7d6e0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20211208223120-3a66f561d7aa/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20220111164026-67b88f271998/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= -google.golang.org/genproto v0.0.0-20220314164441-57ef72a4c106 h1:ErU+UA6wxadoU8nWrsy5MZUVBs75K17zUCsUCIfrXCE= -google.golang.org/genproto v0.0.0-20220314164441-57ef72a4c106/go.mod h1:hAL49I2IFola2sVEjAn7MEwsja0xp51I0tlGAf9hz4E= -google.golang.org/grpc v0.0.0-20160317175043-d3ddb4469d5a/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= -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.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= -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.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= -google.golang.org/grpc v1.24.0/go.mod h1:XDChyiUovWa60DnaeDeZmSW86xtLtjtZbwvSiRnRtcA= -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.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.37.1/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.39.0/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= -google.golang.org/grpc v1.39.1/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= -google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= -google.golang.org/grpc v1.40.1/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= -google.golang.org/grpc v1.42.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= -google.golang.org/grpc v1.43.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= -google.golang.org/grpc v1.45.0 h1:NEpgUqV3Z+ZjkqMsxMg11IaDrXY4RY6CQukSGK0uI1M= -google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= -google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= -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= -google.golang.org/protobuf v1.27.1 h1:SnqbnDw1V7RiZcXPx5MEeqPv2s79L9i7BJUlG/+RurQ= -google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U= -gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20141024133853-64131543e789/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-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= -gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= -gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= -gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= -gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= -gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo= -gopkg.in/inconshreveable/log15.v2 v2.0.0-20180818164646-67afb5ed74ec/go.mod h1:aPpfJ7XW+gOuirDoZ8gHhLh3kZ1B08FtV2bbmy7Jv3s= -gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= -gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= -gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= -gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= -gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= -gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= -gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= -gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= -gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= -gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -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.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8/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/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-20200615113413-eeeca48fe776/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= -gorm.io/driver/postgres v1.0.8/go.mod h1:4eOzrI1MUfm6ObJU/UcmbXyiHSs8jSwH95G5P5dxcAg= -gorm.io/gorm v1.20.12/go.mod h1:0HFTzE/SqkGTzK6TlDPPQbAYCluiVvhzoA1+aVyzenw= -gorm.io/gorm v1.21.4/go.mod h1:0HFTzE/SqkGTzK6TlDPPQbAYCluiVvhzoA1+aVyzenw= -gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= -gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= -gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= -gotest.tools/v3 v3.1.0/go.mod h1:fHy7eyTmJFO5bQbUsEGQ1v4m2J3Jz9eWL54TP2/ZuYQ= -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= -k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo= -k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ= -k8s.io/api v0.20.6/go.mod h1:X9e8Qag6JV/bL5G6bU8sdVRltWKmdHsFUGS3eVndqE8= -k8s.io/api v0.22.5/go.mod h1:mEhXyLaSD1qTOf40rRiKXkc+2iCem09rWLlFwhCEiAs= -k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= -k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= -k8s.io/apimachinery v0.20.6/go.mod h1:ejZXtW1Ra6V1O5H8xPBGz+T3+4gfkTCeExAHKU57MAc= -k8s.io/apimachinery v0.22.1/go.mod h1:O3oNtNadZdeOMxHFVxOreoznohCpy0z6mocxbZr7oJ0= -k8s.io/apimachinery v0.22.5/go.mod h1:xziclGKwuuJ2RM5/rSFQSYAj0zdbci3DH8kj+WvyN0U= -k8s.io/apiserver v0.20.1/go.mod h1:ro5QHeQkgMS7ZGpvf4tSMx6bBOgPfE+f52KwvXfScaU= -k8s.io/apiserver v0.20.4/go.mod h1:Mc80thBKOyy7tbvFtB4kJv1kbdD0eIH8k8vianJcbFM= -k8s.io/apiserver v0.20.6/go.mod h1:QIJXNt6i6JB+0YQRNcS0hdRHJlMhflFmsBDeSgT1r8Q= -k8s.io/apiserver v0.22.5/go.mod h1:s2WbtgZAkTKt679sYtSudEQrTGWUSQAPe6MupLnlmaQ= -k8s.io/client-go v0.20.1/go.mod h1:/zcHdt1TeWSd5HoUe6elJmHSQ6uLLgp4bIJHVEuy+/Y= -k8s.io/client-go v0.20.4/go.mod h1:LiMv25ND1gLUdBeYxBIwKpkSC5IsozMMmOOeSJboP+k= -k8s.io/client-go v0.20.6/go.mod h1:nNQMnOvEUEsOzRRFIIkdmYOjAZrC8bgq0ExboWSU1I0= -k8s.io/client-go v0.22.5/go.mod h1:cs6yf/61q2T1SdQL5Rdcjg9J1ElXSwbjSrW2vFImM4Y= -k8s.io/code-generator v0.19.7/go.mod h1:lwEq3YnLYb/7uVXLorOJfxg+cUu2oihFhHZ0n9NIla0= -k8s.io/component-base v0.20.1/go.mod h1:guxkoJnNoh8LNrbtiQOlyp2Y2XFCZQmrcg2n/DeYNLk= -k8s.io/component-base v0.20.4/go.mod h1:t4p9EdiagbVCJKrQ1RsA5/V4rFQNDfRlevJajlGwgjI= -k8s.io/component-base v0.20.6/go.mod h1:6f1MPBAeI+mvuts3sIdtpjljHWBQ2cIy38oBIWMYnrM= -k8s.io/component-base v0.22.5/go.mod h1:VK3I+TjuF9eaa+Ln67dKxhGar5ynVbwnGrUiNF4MqCI= -k8s.io/cri-api v0.17.3/go.mod h1:X1sbHmuXhwaHs9xxYffLqJogVsnI+f6cPRcgPel7ywM= -k8s.io/cri-api v0.20.1/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= -k8s.io/cri-api v0.20.4/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= -k8s.io/cri-api v0.20.6/go.mod h1:ew44AjNXwyn1s0U4xCKGodU7J1HzBeZ1MpGrpa5r8Yc= -k8s.io/cri-api v0.23.1/go.mod h1:REJE3PSU0h/LOV1APBrupxrEJqnoxZC8KWzkBUHwrK4= -k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= -k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= -k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= -k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= -k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= -k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= -k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= -k8s.io/klog/v2 v2.30.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= -k8s.io/kube-openapi v0.0.0-20200805222855-6aeccd4b50c6/go.mod h1:UuqjUnNftUyPE5H64/qeyjQoUZhGpeFDVdxjTeEVN2o= -k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= -k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= -k8s.io/kube-openapi v0.0.0-20211109043538-20434351676c/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= -k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk= -k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= -k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= -k8s.io/utils v0.0.0-20210930125809-cb0fa318a74b/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= -modernc.org/b v1.0.0/go.mod h1:uZWcZfRj1BpYzfN9JTerzlNUnnPsV9O2ZA8JsRcubNg= -modernc.org/cc/v3 v3.32.4/go.mod h1:0R6jl1aZlIl2avnYfbfHBS1QB6/f+16mihBObaBC878= -modernc.org/ccgo/v3 v3.9.2/go.mod h1:gnJpy6NIVqkETT+L5zPsQFj7L2kkhfPMzOghRNv/CFo= -modernc.org/db v1.0.0/go.mod h1:kYD/cO29L/29RM0hXYl4i3+Q5VojL31kTUVpVJDw0s8= -modernc.org/file v1.0.0/go.mod h1:uqEokAEn1u6e+J45e54dsEA/pw4o7zLrA2GwyntZzjw= -modernc.org/fileutil v1.0.0/go.mod h1:JHsWpkrk/CnVV1H/eGlFf85BEpfkrp56ro8nojIq9Q8= -modernc.org/golex v1.0.0/go.mod h1:b/QX9oBD/LhixY6NDh+IdGv17hgB+51fET1i2kPSmvk= -modernc.org/httpfs v1.0.6/go.mod h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM= -modernc.org/internal v1.0.0/go.mod h1:VUD/+JAkhCpvkUitlEOnhpVxCgsBI90oTzSCRcqQVSM= -modernc.org/libc v1.7.13-0.20210308123627-12f642a52bb8/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w= -modernc.org/libc v1.9.5/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w= -modernc.org/lldb v1.0.0/go.mod h1:jcRvJGWfCGodDZz8BPwiKMJxGJngQ/5DrRapkQnLob8= -modernc.org/mathutil v1.0.0/go.mod h1:wU0vUrJsVWBZ4P6e7xtFJEhFSNsfRLJ8H458uRjg03k= -modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= -modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= -modernc.org/memory v1.0.4/go.mod h1:nV2OApxradM3/OVbs2/0OsP6nPfakXpi50C7dcoHXlc= -modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= -modernc.org/ql v1.0.0/go.mod h1:xGVyrLIatPcO2C1JvI/Co8c0sr6y91HKFNy4pt9JXEY= -modernc.org/sortutil v1.1.0/go.mod h1:ZyL98OQHJgH9IEfN71VsamvJgrtRX9Dj2gX+vH86L1k= -modernc.org/sqlite v1.10.6/go.mod h1:Z9FEjUtZP4qFEg6/SiADg9XCER7aYy9a/j7Pg9P7CPs= -modernc.org/strutil v1.1.0/go.mod h1:lstksw84oURvj9y3tn8lGvRxyRC1S2+g5uuIzNfIOBs= -modernc.org/tcl v1.5.2/go.mod h1:pmJYOLgpiys3oI4AeAafkcUfE+TKKilminxNyU/+Zlo= -modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= -modernc.org/z v1.0.1-0.20210308123920-1f282aa71362/go.mod h1:8/SRk5C/HgiQWCgXdfpb+1RvhORdkz5sw72d3jjtyqA= -modernc.org/z v1.0.1/go.mod h1:8/SRk5C/HgiQWCgXdfpb+1RvhORdkz5sw72d3jjtyqA= -modernc.org/zappy v1.0.0/go.mod h1:hHe+oGahLVII/aTTyWK/b53VDHMAGCBYYeZ9sn83HC4= -rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= -rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= -rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= -rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.14/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= -sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.15/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= -sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.22/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= -sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= -sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= -sigs.k8s.io/structured-merge-diff/v4 v4.0.3/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= -sigs.k8s.io/structured-merge-diff/v4 v4.1.2/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= -sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= -sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= diff --git a/internal/auth/delivery/http/handler.go b/internal/auth/delivery/http/handler.go deleted file mode 100644 index 24cc436..0000000 --- a/internal/auth/delivery/http/handler.go +++ /dev/null @@ -1,131 +0,0 @@ -package http - -import ( - "encoding/json" - "net/http" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/pkg/errorx" -) - -type HTTPHandler struct { - validator domain.ValidatorProvider - authUsecase domain.AuthUsecase -} - -// New creates a new auth handler -func New(validator domain.ValidatorProvider, authUsecase domain.AuthUsecase) HTTPHandler { - return HTTPHandler{validator: validator, authUsecase: authUsecase} -} - -// POST /authentications to login user -func (h *HTTPHandler) Post(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.AuthLoginIn - if err := json.NewDecoder(r.Body).Decode(&payload); err != nil { - w.WriteHeader(http.StatusBadRequest) - encoder.Encode(domain.NewErrorResponse(http.StatusBadRequest, "Invalid request body")) - return - } - if err := h.validator.Validate(&payload); err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - output, err := h.authUsecase.Login(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusOK) - encoder.Encode(domain.NewSuccessResponse(http.StatusOK, "Successfully logged in user", output)) -} - -// DELETE /authentications to logout from current authentication -func (h *HTTPHandler) Delete(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.AuthLogoutIn - if err := json.NewDecoder(r.Body).Decode(&payload); err != nil { - w.WriteHeader(http.StatusBadRequest) - encoder.Encode(domain.NewErrorResponse(http.StatusBadRequest, "Invalid request body")) - return - } - if err := h.validator.Validate(&payload); err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - err := h.authUsecase.Logout(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusOK) - encoder.Encode(domain.NewSuccessResponse(http.StatusOK, "Successfully logout user", nil)) -} - -// GET /authentications to get user authenticated profile -func (h *HTTPHandler) Get(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.AuthProfileIn - payload.UserID = entity.GetAuthContext(r.Context()) - - output, err := h.authUsecase.GetProfile(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusOK) - encoder.Encode(domain.NewSuccessResponse(http.StatusOK, http.StatusText(http.StatusOK), output)) -} - -// PUT /authentications to refresh authentication token -func (h *HTTPHandler) Put(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.AuthRefreshIn - if err := json.NewDecoder(r.Body).Decode(&payload); err != nil { - w.WriteHeader(http.StatusBadRequest) - encoder.Encode(domain.NewErrorResponse(http.StatusBadRequest, "Invalid request body")) - return - } - if err := h.validator.Validate(&payload); err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - output, err := h.authUsecase.Refresh(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusOK) - encoder.Encode(domain.NewSuccessResponse(http.StatusOK, "Successfully refreshed authentication token", output)) -} diff --git a/internal/auth/delivery/http/handler_test.go b/internal/auth/delivery/http/handler_test.go deleted file mode 100644 index b30e334..0000000 --- a/internal/auth/delivery/http/handler_test.go +++ /dev/null @@ -1,514 +0,0 @@ -package http - -import ( - "bytes" - "encoding/json" - "net/http" - "net/http/httptest" - "testing" - - "github.com/stretchr/testify/mock" - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/pkg/errorx" - "github.com/edwintantawi/taskit/test" -) - -type AuthHTTPHandlerTestSuite struct { - suite.Suite -} - -func TestAuthHTTPHandlerSuite(t *testing.T) { - suite.Run(t, new(AuthHTTPHandlerTestSuite)) -} - -type dependency struct { - req *http.Request - validator *mocks.ValidatorProvider - authUsecase *mocks.AuthUsecase -} - -func (s *AuthHTTPHandlerTestSuite) TestPost() { - type args struct { - requestBody []byte - } - type expected struct { - contentType string - statusCode int - message string - error string - payload map[string]any - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when request body is invalid or not provided", - isError: true, - args: args{ - requestBody: []byte(`{`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusBadRequest, - message: http.StatusText(http.StatusBadRequest), - error: "Invalid request body", - }, - setup: func(d *dependency) {}, - }, - { - name: "it should response with error when payload is not valid", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthLoginIn{}). - Return(test.ErrValidator) - }, - }, - - { - name: "it should response with error when auth usecase Login return unexpected error", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthLoginIn{}). - Return(nil) - - d.authUsecase.On("Login", mock.Anything, &dto.AuthLoginIn{}). - Return(dto.AuthLoginOut{}, test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusOK, - message: "Successfully logged in user", - payload: map[string]any{ - "access_token": "xxxxx.xxxxx.xxxxx", - "refresh_token": "yyyyy.yyyyy.yyyyy", - }, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthLoginIn{}). - Return(nil) - - d.authUsecase.On("Login", mock.Anything, &dto.AuthLoginIn{}). - Return(dto.AuthLoginOut{AccessToken: "xxxxx.xxxxx.xxxxx", RefreshToken: "yyyyy.yyyyy.yyyyy"}, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - reqBody := bytes.NewReader(t.args.requestBody) - rr := httptest.NewRecorder() - req := httptest.NewRequest("POST", "/", reqBody) - - d := &dependency{ - validator: &mocks.ValidatorProvider{}, - authUsecase: &mocks.AuthUsecase{}, - } - t.setup(d) - - handler := New(d.validator, d.authUsecase) - handler.Post(rr, req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - payloadMap := resBody.Payload.(map[string]any) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.payload, payloadMap) - } - }) - } -} - -func (s *AuthHTTPHandlerTestSuite) TestDelete() { - type args struct { - requestBody []byte - } - type expected struct { - contentType string - statusCode int - message string - error string - payload map[string]any - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when request body is invalid or not provided", - isError: true, - args: args{ - requestBody: []byte(`{`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusBadRequest, - message: http.StatusText(http.StatusBadRequest), - error: "Invalid request body", - }, - setup: func(d *dependency) {}, - }, - { - name: "it should response with error when payload is not valid", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthLogoutIn{}). - Return(test.ErrValidator) - }, - }, - { - name: "it should response with error when auth usecase Logout return unexpected error", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthLogoutIn{}). - Return(nil) - - d.authUsecase.On("Logout", mock.Anything, &dto.AuthLogoutIn{}). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusOK, - message: "Successfully logout user", - payload: nil, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthLogoutIn{}). - Return(nil) - - d.authUsecase.On("Logout", mock.Anything, &dto.AuthLogoutIn{}). - Return(nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - reqBody := bytes.NewReader(t.args.requestBody) - rr := httptest.NewRecorder() - req := httptest.NewRequest("DELETE", "/", reqBody) - - d := &dependency{ - validator: &mocks.ValidatorProvider{}, - authUsecase: &mocks.AuthUsecase{}, - } - t.setup(d) - - handler := New(d.validator, d.authUsecase) - handler.Delete(rr, req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Nil(resBody.Payload) - } - }) - } -} - -func (s *AuthHTTPHandlerTestSuite) TestGet() { - type expected struct { - contentType string - statusCode int - message string - error string - payload map[string]any - } - tests := []struct { - name string - isError bool - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when auth usecase GetProfile return unexpected error", - isError: true, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.authUsecase.On("GetProfile", mock.Anything, &dto.AuthProfileIn{UserID: entity.UserID("user-xxxxx")}). - Return(dto.AuthProfileOut{}, test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusOK, - message: http.StatusText(http.StatusOK), - payload: map[string]any{ - "id": "user-xxxxx", - "name": "Gopher", - "email": "gopher@go.dev", - }, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.authUsecase.On("GetProfile", mock.Anything, &dto.AuthProfileIn{UserID: entity.UserID("user-xxxxx")}). - Return(dto.AuthProfileOut{ID: "user-xxxxx", Name: "Gopher", Email: "gopher@go.dev"}, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - rr := httptest.NewRecorder() - req := httptest.NewRequest("GET", "/", nil) - - d := &dependency{ - req: req, - validator: &mocks.ValidatorProvider{}, - authUsecase: &mocks.AuthUsecase{}, - } - t.setup(d) - - handler := New(d.validator, d.authUsecase) - handler.Get(rr, d.req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - payloadMap := resBody.Payload.(map[string]any) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.payload, payloadMap) - } - }) - } -} - -func (s *AuthHTTPHandlerTestSuite) TestPut() { - type args struct { - requestBody []byte - } - type expected struct { - contentType string - statusCode int - message string - error string - payload map[string]any - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when request body is invalid or not provided", - isError: true, - args: args{ - requestBody: []byte(`{`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusBadRequest, - message: http.StatusText(http.StatusBadRequest), - error: "Invalid request body", - }, - setup: func(d *dependency) {}, - }, - { - name: "it should response with error when payload is not valid", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthRefreshIn{}). - Return(test.ErrValidator) - }, - }, - { - name: "it should response with error when auth usecase Refresh return unexpected error", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthRefreshIn{}). - Return(nil) - - d.authUsecase.On("Refresh", mock.Anything, &dto.AuthRefreshIn{}). - Return(dto.AuthRefreshOut{}, test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusOK, - message: "Successfully refreshed authentication token", - payload: map[string]any{ - "access_token": "xxxxx.xxxxx.xxxxx", - "refresh_token": "yyyyy.yyyyy.yyyyy", - }, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.AuthRefreshIn{}). - Return(nil) - - d.authUsecase.On("Refresh", mock.Anything, &dto.AuthRefreshIn{}). - Return(dto.AuthRefreshOut{AccessToken: "xxxxx.xxxxx.xxxxx", RefreshToken: "yyyyy.yyyyy.yyyyy"}, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - reqBody := bytes.NewReader(t.args.requestBody) - rr := httptest.NewRecorder() - req := httptest.NewRequest("PUT", "/", reqBody) - - d := &dependency{ - validator: &mocks.ValidatorProvider{}, - authUsecase: &mocks.AuthUsecase{}, - } - t.setup(d) - - handler := New(d.validator, d.authUsecase) - handler.Put(rr, req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.payload, resBody.Payload) - } - }) - } -} diff --git a/internal/auth/delivery/http/middleware/middleware.go b/internal/auth/delivery/http/middleware/middleware.go deleted file mode 100644 index b4eaedb..0000000 --- a/internal/auth/delivery/http/middleware/middleware.go +++ /dev/null @@ -1,48 +0,0 @@ -package middleware - -import ( - "context" - "encoding/json" - "net/http" - "strings" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/pkg/errorx" -) - -type Middleware struct { - jwtProvider domain.JWTProvider -} - -// New creates a new HTTP auth middleware. -func New(jwtProvider domain.JWTProvider) Middleware { - return Middleware{jwtProvider: jwtProvider} -} - -// Authenticate authenticates the request. -func (m *Middleware) Authenticate(next http.Handler) http.Handler { - return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - bearerToken := r.Header.Get("Authorization") - if !strings.Contains(bearerToken, "Bearer") { - w.WriteHeader(http.StatusUnauthorized) - encoder.Encode(domain.NewErrorResponse(http.StatusUnauthorized, "Authentication bearer token are not provided")) - return - } - - rawToken := strings.TrimPrefix(bearerToken, "Bearer ") - userId, err := m.jwtProvider.VerifyAccessToken(rawToken) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - ctx := context.WithValue(r.Context(), entity.AuthUserIDKey, userId) - next.ServeHTTP(w, r.WithContext(ctx)) - }) -} diff --git a/internal/auth/delivery/http/middleware/middleware_test.go b/internal/auth/delivery/http/middleware/middleware_test.go deleted file mode 100644 index 8e550c8..0000000 --- a/internal/auth/delivery/http/middleware/middleware_test.go +++ /dev/null @@ -1,141 +0,0 @@ -package middleware - -import ( - "encoding/json" - "net/http" - "net/http/httptest" - "testing" - - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/pkg/errorx" - "github.com/edwintantawi/taskit/test" -) - -type HTTPAuthMiddlewareTestSuite struct { - suite.Suite -} - -func TestHTTPAuthMiddlewareSuite(t *testing.T) { - suite.Run(t, new(HTTPAuthMiddlewareTestSuite)) -} - -type dependency struct { - req *http.Request - jwtProvider *mocks.JWTProvider -} - -func (s *HTTPAuthMiddlewareTestSuite) TestAuthentication() { - type args struct { - handler http.Handler - } - type expected struct { - contentType string - statusCode int - message string - error string - body string - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when authorization header is not provided", - isError: true, - args: args{ - handler: http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - w.WriteHeader(http.StatusOK) - }), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusUnauthorized, - message: http.StatusText(http.StatusUnauthorized), - error: "Authentication bearer token are not provided", - }, - setup: func(d *dependency) { - d.req.Header.Del("Authorization") - }, - }, - { - name: "it should return error when authorization header token is not valid", - isError: true, - args: args{ - handler: http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - w.WriteHeader(http.StatusOK) - }), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req.Header.Set("Authorization", "Bearer xxxxx.xxxxx.xxxxx") - - d.jwtProvider.On("VerifyAccessToken", "xxxxx.xxxxx.xxxxx"). - Return(entity.UserID(""), test.ErrUnexpected) - }, - }, - { - name: "it should forward to next handler when authorization header is valid", - isError: false, - args: args{ - handler: http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - w.WriteHeader(http.StatusOK) - userID := entity.GetAuthContext(r.Context()) - w.Write([]byte(userID)) - }), - }, - expected: expected{ - statusCode: http.StatusOK, - body: "user-xxxxx", - }, - setup: func(d *dependency) { - d.req.Header.Set("Authorization", "Bearer xxxxx.xxxxx.xxxxx") - - d.jwtProvider.On("VerifyAccessToken", "xxxxx.xxxxx.xxxxx"). - Return(entity.UserID("user-xxxxx"), nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - req := httptest.NewRequest("GET", "/", nil) - dep := &dependency{ - jwtProvider: &mocks.JWTProvider{}, - req: req, - } - t.setup(dep) - - rr := httptest.NewRecorder() - middleware := New(dep.jwtProvider) - handler := middleware.Authenticate(t.args.handler) - - handler.ServeHTTP(rr, dep.req) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - s.Equal(t.expected.statusCode, rr.Code) - s.Equal(t.expected.body, rr.Body.String()) - } - }) - } -} diff --git a/internal/auth/repository/repository.go b/internal/auth/repository/repository.go deleted file mode 100644 index 10d707f..0000000 --- a/internal/auth/repository/repository.go +++ /dev/null @@ -1,69 +0,0 @@ -package repository - -import ( - "context" - "database/sql" - "errors" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -type Repository struct { - db *sql.DB - idProvider domain.IDProvider -} - -// New create a new auth repository. -func New(db *sql.DB, idProvider domain.IDProvider) Repository { - return Repository{db: db, idProvider: idProvider} -} - -// Store save a new auth to database. -func (r *Repository) Store(ctx context.Context, a *entity.Auth) error { - id := r.idProvider.Generate() - q := `INSERT INTO authentications (id, user_id, token, expires_at) VALUES ($1, $2, $3, $4)` - _, err := r.db.ExecContext(ctx, q, id, a.UserID, a.Token, a.ExpiresAt) - if err != nil { - return err - } - return nil -} - -// VerifyAvailableByToken check if a authentication is available by token. -func (r *Repository) VerifyAvailableByToken(ctx context.Context, token string) error { - var id entity.AuthID - q := `SELECT id FROM authentications WHERE token = $1` - row := r.db.QueryRowContext(ctx, q, token) - err := row.Scan(&id) - if errors.Is(err, sql.ErrNoRows) { - return domain.ErrAuthNotFound - } else if err != nil { - return err - } - return nil -} - -// Delete remove an auth from database. -func (r *Repository) DeleteByToken(ctx context.Context, token string) error { - q := `DELETE FROM authentications WHERE token = $1` - _, err := r.db.ExecContext(ctx, q, token) - if err != nil { - return err - } - return nil -} - -// FindByToken find an auth by token. -func (r *Repository) FindByToken(ctx context.Context, token string) (entity.Auth, error) { - var a entity.Auth - q := `SELECT id, user_id, token, expires_at FROM authentications WHERE token = $1` - row := r.db.QueryRowContext(ctx, q, token) - err := row.Scan(&a.ID, &a.UserID, &a.Token, &a.ExpiresAt) - if errors.Is(err, sql.ErrNoRows) { - return a, domain.ErrAuthNotFound - } else if err != nil { - return a, err - } - return a, nil -} diff --git a/internal/auth/repository/repository_test.go b/internal/auth/repository/repository_test.go deleted file mode 100644 index 905577e..0000000 --- a/internal/auth/repository/repository_test.go +++ /dev/null @@ -1,374 +0,0 @@ -package repository - -import ( - "context" - "database/sql" - "regexp" - "testing" - - "github.com/DATA-DOG/go-sqlmock" - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/test" -) - -type AuthRepositoryTestSuite struct { - suite.Suite -} - -func TestAuthRepositorySuite(t *testing.T) { - suite.Run(t, new(AuthRepositoryTestSuite)) -} - -type dependency struct { - mockDB sqlmock.Sqlmock - idProvider *mocks.IDProvider -} - -func (s *AuthRepositoryTestSuite) TestStore() { - type args struct { - ctx context.Context - auth *entity.Auth - } - type expected struct { - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to store", - args: args{ - ctx: context.Background(), - auth: &entity.Auth{ - UserID: "user-xxxxx", - Token: "yyyyy.yyyyy.yyyyy", - ExpiresAt: test.TimeAfterNow, - }}, - expected: expected{ - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.idProvider.On("Generate").Return(string("auth-xxxxx")) - d.mockDB.ExpectExec(regexp.QuoteMeta(`INSERT INTO authentications (id, user_id, token, expires_at) VALUES ($1, $2, $3, $4)`)). - WithArgs("auth-xxxxx", "user-xxxxx", "yyyyy.yyyyy.yyyyy", test.TimeAfterNow). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error nil when successfully store", - args: args{ - ctx: context.Background(), - auth: &entity.Auth{UserID: "user-xxxxx", Token: "yyyyy.yyyyy.yyyyy", ExpiresAt: test.TimeAfterNow}, - }, - expected: expected{ - err: nil, - }, - setup: func(d *dependency) { - d.idProvider.On("Generate").Return(string("auth-xxxxx")) - d.mockDB.ExpectExec(regexp.QuoteMeta(`INSERT INTO authentications (id, user_id, token, expires_at) VALUES ($1, $2, $3, $4)`)). - WithArgs("auth-xxxxx", "user-xxxxx", "yyyyy.yyyyy.yyyyy", test.TimeAfterNow). - WillReturnResult(sqlmock.NewResult(1, 1)) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - idProvider: &mocks.IDProvider{}, - } - t.setup(d) - - repository := New(db, d.idProvider) - err = repository.Store(t.args.ctx, t.args.auth) - - s.Equal(t.expected.err, err) - }) - } -} - -func (s *AuthRepositoryTestSuite) TestVerifyAvailableByID() { - type args struct { - ctx context.Context - token string - } - type expected struct { - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to query", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error when authentication not found", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - err: domain.ErrAuthNotFound, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnError(sql.ErrNoRows) - }, - }, - { - name: "it should return error when database fail to scan", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - err: test.ErrRowScan, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnError(test.ErrRowScan) - }, - }, - { - name: "it should return error nil when authentication found", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - err: nil, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id"}).AddRow("auth-xxxxx") - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnRows(mockRow) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - err = repository.VerifyAvailableByToken(t.args.ctx, t.args.token) - - s.Equal(t.expected.err, err) - }) - } -} - -func (s *AuthRepositoryTestSuite) TestDelete() { - type args struct { - ctx context.Context - token string - } - type expected struct { - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to delete", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectExec(regexp.QuoteMeta(`DELETE FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error nil when successfully delete", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - err: nil, - }, - setup: func(d *dependency) { - d.mockDB.ExpectExec(regexp.QuoteMeta(`DELETE FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnResult(sqlmock.NewResult(1, 1)) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - err = repository.DeleteByToken(t.args.ctx, t.args.token) - - s.Equal(t.expected.err, err) - }) - } -} - -func (s *AuthRepositoryTestSuite) TestFindByToken() { - type args struct { - ctx context.Context - token string - } - type expected struct { - auth entity.Auth - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to find", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - auth: entity.Auth{}, - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, user_id, token, expires_at FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error ErrAuthNotFound when row not found", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - auth: entity.Auth{}, - err: domain.ErrAuthNotFound, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, user_id, token, expires_at FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnError(sql.ErrNoRows) - }, - }, - { - name: "it should return error when fail to scan row", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - auth: entity.Auth{}, - err: test.ErrRowScan, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, user_id, token, expires_at FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnError(test.ErrRowScan) - }, - }, - { - name: "it should return error nil and authentication when found", - args: args{ - ctx: context.Background(), - token: "yyyyy.yyyyy.yyyyy", - }, - expected: expected{ - auth: entity.Auth{ - ID: "auth-xxxxx", - UserID: "user-xxxxx", - Token: "yyyyy.yyyyy.yyyyy", - ExpiresAt: test.TimeAfterNow, - }, - err: nil, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id", "user_id", "token", "expires_at"}). - AddRow("auth-xxxxx", "user-xxxxx", "yyyyy.yyyyy.yyyyy", test.TimeAfterNow) - - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, user_id, token, expires_at FROM authentications WHERE token = $1`)). - WithArgs("yyyyy.yyyyy.yyyyy"). - WillReturnRows(mockRow) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - auth, err := repository.FindByToken(t.args.ctx, t.args.token) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.auth, auth) - }) - } -} diff --git a/internal/auth/usecase/usecase.go b/internal/auth/usecase/usecase.go deleted file mode 100644 index 2e16dbd..0000000 --- a/internal/auth/usecase/usecase.go +++ /dev/null @@ -1,124 +0,0 @@ -package usecase - -import ( - "context" - "errors" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -type Usecase struct { - validator domain.ValidatorProvider - authRepository domain.AuthRepository - userRepository domain.UserRepository - hashProvider domain.HashProvider - jwtProvider domain.JWTProvider -} - -// New create a new auth usecase. -func New( - validator domain.ValidatorProvider, - authRepository domain.AuthRepository, - userRepository domain.UserRepository, - hashProvider domain.HashProvider, - jwtProvider domain.JWTProvider, -) Usecase { - return Usecase{ - validator: validator, - authRepository: authRepository, - userRepository: userRepository, - hashProvider: hashProvider, - jwtProvider: jwtProvider, - } -} - -// Login authenticates a user. -func (u *Usecase) Login(ctx context.Context, payload *dto.AuthLoginIn) (dto.AuthLoginOut, error) { - user := entity.User{Email: payload.Email, Password: payload.Password} - if err := u.validator.Validate(&user); err != nil { - return dto.AuthLoginOut{}, err - } - - targetUser, err := u.userRepository.FindByEmail(ctx, user.Email) - if errors.Is(err, domain.ErrUserNotFound) { - return dto.AuthLoginOut{}, domain.ErrEmailNotExist - } else if err != nil { - return dto.AuthLoginOut{}, err - } - - if err := u.hashProvider.Compare(user.Password, targetUser.Password); err != nil { - return dto.AuthLoginOut{}, domain.ErrPasswordIncorrect - } - - accessToken, _, err := u.jwtProvider.GenerateAccessToken(targetUser.ID) - if err != nil { - return dto.AuthLoginOut{}, err - } - refreshToken, expires, err := u.jwtProvider.GenerateRefreshToken(targetUser.ID) - if err != nil { - return dto.AuthLoginOut{}, err - } - - auth := &entity.Auth{UserID: targetUser.ID, Token: refreshToken, ExpiresAt: expires} - if err := u.authRepository.Store(ctx, auth); err != nil { - return dto.AuthLoginOut{}, err - } - - return dto.AuthLoginOut{AccessToken: accessToken, RefreshToken: refreshToken}, nil -} - -// Logout remove user authentication. -func (u *Usecase) Logout(ctx context.Context, payload *dto.AuthLogoutIn) error { - auth := &entity.Auth{Token: payload.RefreshToken} - - if err := u.authRepository.VerifyAvailableByToken(ctx, auth.Token); err != nil { - return err - } - if err := u.authRepository.DeleteByToken(ctx, auth.Token); err != nil { - return err - } - - return nil -} - -// GetProfile get user authenticated profile. -func (u *Usecase) GetProfile(ctx context.Context, payload *dto.AuthProfileIn) (dto.AuthProfileOut, error) { - user, err := u.userRepository.FindByID(ctx, payload.UserID) - if err != nil { - return dto.AuthProfileOut{}, err - } - return dto.AuthProfileOut{ID: user.ID, Name: user.Name, Email: user.Email}, nil -} - -// Refresh refresh user authentication token. -func (u *Usecase) Refresh(ctx context.Context, payload *dto.AuthRefreshIn) (dto.AuthRefreshOut, error) { - auth, err := u.authRepository.FindByToken(ctx, payload.RefreshToken) - if err != nil { - return dto.AuthRefreshOut{}, err - } - if err := auth.VerifyTokenExpires(); err != nil { - return dto.AuthRefreshOut{}, err - } - - accessToken, _, err := u.jwtProvider.GenerateAccessToken(auth.UserID) - if err != nil { - return dto.AuthRefreshOut{}, err - } - refreshToken, expires, err := u.jwtProvider.GenerateRefreshToken(auth.UserID) - if err != nil { - return dto.AuthRefreshOut{}, err - } - - if err := u.authRepository.DeleteByToken(ctx, auth.Token); err != nil { - return dto.AuthRefreshOut{}, err - } - - newAuth := &entity.Auth{UserID: auth.UserID, Token: refreshToken, ExpiresAt: expires} - if err := u.authRepository.Store(ctx, newAuth); err != nil { - return dto.AuthRefreshOut{}, err - } - - return dto.AuthRefreshOut{AccessToken: accessToken, RefreshToken: refreshToken}, nil -} diff --git a/internal/auth/usecase/usecase_test.go b/internal/auth/usecase/usecase_test.go deleted file mode 100644 index 6defa3c..0000000 --- a/internal/auth/usecase/usecase_test.go +++ /dev/null @@ -1,631 +0,0 @@ -package usecase - -import ( - "context" - "testing" - "time" - - "github.com/stretchr/testify/mock" - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/test" -) - -type AuthUsecaseTestSuite struct { - suite.Suite -} - -func TestAuthUsecaseSuite(t *testing.T) { - suite.Run(t, new(AuthUsecaseTestSuite)) -} - -type dependency struct { - validator *mocks.ValidatorProvider - authRepository *mocks.AuthRepository - userRepository *mocks.UserRepository - hashProvider *mocks.HashProvider - jwtProvider *mocks.JWTProvider -} - -func (s *AuthUsecaseTestSuite) TestLogin() { - type args struct { - ctx context.Context - payload *dto.AuthLoginIn - } - type expected struct { - output dto.AuthLoginOut - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when user validation failed", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLoginIn{}, - }, - expected: expected{ - output: dto.AuthLoginOut{}, - err: test.ErrValidator, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything). - Return(test.ErrValidator) - - d.userRepository.On("FindByEmail", context.Background(), "gopher@go.dev"). - Return(entity.User{}, domain.ErrUserNotFound) - }, - }, - { - name: "it should return error ErrEmailNotExist when email not found", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLoginIn{ - Email: "gopher@go.dev", - }, - }, - expected: expected{ - output: dto.AuthLoginOut{}, - err: domain.ErrEmailNotExist, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.userRepository.On("FindByEmail", context.Background(), "gopher@go.dev"). - Return(entity.User{}, domain.ErrUserNotFound) - }, - }, - { - name: "it should return error when user repository FindByEmail return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLoginIn{ - Email: "gopher@go.dev", - }, - }, - expected: expected{ - output: dto.AuthLoginOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.userRepository.On("FindByEmail", context.Background(), "gopher@go.dev"). - Return(entity.User{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error ErrPasswordIncorrect when password is incorrect", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLoginIn{ - Email: "gopher@go.dev", - Password: "secret_password", - }, - }, - expected: expected{ - output: dto.AuthLoginOut{}, - err: domain.ErrPasswordIncorrect, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.userRepository.On("FindByEmail", context.Background(), "gopher@go.dev"). - Return(entity.User{Password: "secret_hashed_password"}, nil) - - d.hashProvider.On("Compare", "secret_password", "secret_hashed_password"). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should return error when generate access token failed", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLoginIn{ - Email: "gopher@go.dev", - Password: "secret_password", - }, - }, - expected: expected{ - output: dto.AuthLoginOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.userRepository.On("FindByEmail", context.Background(), "gopher@go.dev"). - Return(entity.User{ID: "user-xxxxx", Password: "secret_hashed_password"}, nil) - - d.hashProvider.On("Compare", "secret_password", "secret_hashed_password"). - Return(nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("", time.Time{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error when generate refresh token failed", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLoginIn{ - Email: "gopher@go.dev", - Password: "secret_password", - }, - }, - expected: expected{ - output: dto.AuthLoginOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.userRepository.On("FindByEmail", context.Background(), "gopher@go.dev"). - Return(entity.User{ID: "user-xxxxx", Password: "secret_hashed_password"}, nil) - - d.hashProvider.On("Compare", "secret_password", "secret_hashed_password"). - Return(nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("xxxxx.xxxxx.xxxxx", test.TimeAfterNow, nil) - - d.jwtProvider.On("GenerateRefreshToken", entity.UserID("user-xxxxx")). - Return("", time.Time{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error when auth respository Store return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLoginIn{ - Email: "gopher@go.dev", - Password: "secret_password", - }, - }, - expected: expected{ - output: dto.AuthLoginOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.userRepository.On("FindByEmail", context.Background(), "gopher@go.dev"). - Return(entity.User{ID: "user-xxxxx", Password: "secret_hashed_password"}, nil) - - d.hashProvider.On("Compare", "secret_password", "secret_hashed_password"). - Return(nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("xxxxx.xxxxx.xxxxx", test.TimeAfterNow, nil) - - d.jwtProvider.On("GenerateRefreshToken", entity.UserID("user-xxxxx")). - Return("yyyyy.yyyyy.yyyyy", test.TimeAfterNow, nil) - - d.authRepository.On("Store", context.Background(), &entity.Auth{UserID: "user-xxxxx", Token: "yyyyy.yyyyy.yyyyy", ExpiresAt: test.TimeAfterNow}). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should return error nil and output when success", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLoginIn{ - Email: "gopher@go.dev", - Password: "secret_password", - }, - }, - expected: expected{ - output: dto.AuthLoginOut{ - AccessToken: "xxxxx.xxxxx.xxxxx", - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - err: nil, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.userRepository.On("FindByEmail", context.Background(), "gopher@go.dev"). - Return(entity.User{ID: "user-xxxxx", Password: "secret_hashed_password"}, nil) - - d.hashProvider.On("Compare", "secret_password", "secret_hashed_password"). - Return(nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("xxxxx.xxxxx.xxxxx", test.TimeAfterNow, nil) - - d.jwtProvider.On("GenerateRefreshToken", entity.UserID("user-xxxxx")). - Return("yyyyy.yyyyy.yyyyy", test.TimeAfterNow, nil) - - d.authRepository.On("Store", context.Background(), &entity.Auth{UserID: "user-xxxxx", Token: "yyyyy.yyyyy.yyyyy", ExpiresAt: test.TimeAfterNow}). - Return(nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - d := &dependency{ - validator: &mocks.ValidatorProvider{}, - userRepository: &mocks.UserRepository{}, - authRepository: &mocks.AuthRepository{}, - hashProvider: &mocks.HashProvider{}, - jwtProvider: &mocks.JWTProvider{}, - } - t.setup(d) - - usecase := New(d.validator, d.authRepository, d.userRepository, d.hashProvider, d.jwtProvider) - output, err := usecase.Login(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.output, output) - }) - } -} - -func (s *AuthUsecaseTestSuite) TestLogout() { - type args struct { - ctx context.Context - payload *dto.AuthLogoutIn - } - type expected struct { - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when auth VerifyAvailableByToken return error", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLogoutIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.authRepository.On("VerifyAvailableByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should return error when auth Delete repository return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLogoutIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.authRepository.On("VerifyAvailableByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(nil) - - d.authRepository.On("DeleteByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should return error nil when successfully delete authentication", - args: args{ - ctx: context.Background(), - payload: &dto.AuthLogoutIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - err: nil, - }, - setup: func(d *dependency) { - d.authRepository.On("VerifyAvailableByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(nil) - - d.authRepository.On("DeleteByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - d := &dependency{ - authRepository: &mocks.AuthRepository{}, - } - t.setup(d) - - usecase := New(nil, d.authRepository, d.userRepository, d.hashProvider, d.jwtProvider) - err := usecase.Logout(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - }) - } -} - -func (s *AuthUsecaseTestSuite) TestGetProfile() { - type args struct { - ctx context.Context - payload *dto.AuthProfileIn - } - type expected struct { - output dto.AuthProfileOut - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when user repository FindByID return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.AuthProfileIn{ - UserID: "user-xxxxx", - }, - }, - expected: expected{ - output: dto.AuthProfileOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.userRepository.On("FindByID", context.Background(), entity.UserID("user-xxxxx")). - Return(entity.User{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error nil and output when success", - args: args{ - ctx: context.Background(), - payload: &dto.AuthProfileIn{ - UserID: "user-xxxxx", - }, - }, - expected: expected{ - output: dto.AuthProfileOut{ - ID: "user-xxxxx", - Name: "Gopher", - Email: "gopher@go.dev", - }, - err: nil, - }, - setup: func(d *dependency) { - d.userRepository.On("FindByID", context.Background(), entity.UserID("user-xxxxx")). - Return(entity.User{ID: entity.UserID("user-xxxxx"), Name: "Gopher", Email: "gopher@go.dev"}, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - d := &dependency{ - userRepository: &mocks.UserRepository{}, - } - t.setup(d) - - usecase := New(nil, d.authRepository, d.userRepository, d.hashProvider, d.jwtProvider) - output, err := usecase.GetProfile(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.output, output) - }) - } -} - -func (s *AuthUsecaseTestSuite) TestRefresh() { - type args struct { - ctx context.Context - payload *dto.AuthRefreshIn - } - type expected struct { - output dto.AuthRefreshOut - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when auth repository FindByToken return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.AuthRefreshIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - output: dto.AuthRefreshOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.authRepository.On("FindByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(entity.Auth{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error ErrAuthTokenExpired when token is expired", - args: args{ - ctx: context.Background(), - payload: &dto.AuthRefreshIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - output: dto.AuthRefreshOut{}, - err: entity.ErrAuthTokenExpired, - }, - setup: func(d *dependency) { - d.authRepository.On("FindByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(entity.Auth{ExpiresAt: test.TimeBeforeNow}, nil) - }, - }, - { - name: "it should return error when generate new access token failed", - args: args{ - ctx: context.Background(), - payload: &dto.AuthRefreshIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - output: dto.AuthRefreshOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.authRepository.On("FindByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(entity.Auth{UserID: "user-xxxxx", Token: "yyyyy.yyyyy.yyyyy", ExpiresAt: test.TimeAfterNow}, nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("", time.Time{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error when generate new refresh token failed", - args: args{ - ctx: context.Background(), - payload: &dto.AuthRefreshIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - output: dto.AuthRefreshOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.authRepository.On("FindByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(entity.Auth{UserID: "user-xxxxx", Token: "yyyyy.yyyyy.yyyyy", ExpiresAt: test.TimeAfterNow}, nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("xxxxx.xxxxx.xxxxx", test.TimeAfterNow, nil) - - d.jwtProvider.On("GenerateRefreshToken", entity.UserID("user-xxxxx")). - Return("", time.Time{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error when auth respository Delete return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.AuthRefreshIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - output: dto.AuthRefreshOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.authRepository.On("FindByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(entity.Auth{UserID: "user-xxxxx", Token: "yyyyy.yyyyy.yyyyy", ExpiresAt: test.TimeAfterNow}, nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("xxxxx.xxxxx.xxxxx", test.TimeAfterNow, nil) - - d.jwtProvider.On("GenerateRefreshToken", entity.UserID("user-xxxxx")). - Return("zzzzz.zzzzz.zzzzz", test.TimeAfterNow, nil) - - d.authRepository.On("DeleteByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should return error when auth respository Store return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.AuthRefreshIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - output: dto.AuthRefreshOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.authRepository.On("FindByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(entity.Auth{UserID: "user-xxxxx", Token: "yyyyy.yyyyy.yyyyy", ExpiresAt: test.TimeAfterNow}, nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("xxxxx.xxxxx.xxxxx", test.TimeAfterNow, nil) - - d.jwtProvider.On("GenerateRefreshToken", entity.UserID("user-xxxxx")). - Return("zzzzz.zzzzz.zzzzz", test.TimeAfterNow, nil) - - d.authRepository.On("DeleteByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(nil) - - d.authRepository.On("Store", context.Background(), &entity.Auth{UserID: "user-xxxxx", Token: "zzzzz.zzzzz.zzzzz", ExpiresAt: test.TimeAfterNow}). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should return error nil and output when success", - args: args{ - ctx: context.Background(), - payload: &dto.AuthRefreshIn{ - RefreshToken: "yyyyy.yyyyy.yyyyy", - }, - }, - expected: expected{ - output: dto.AuthRefreshOut{ - AccessToken: "xxxxx.xxxxx.xxxxx", - RefreshToken: "zzzzz.zzzzz.zzzzz", - }, - err: nil, - }, - setup: func(d *dependency) { - d.authRepository.On("FindByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(entity.Auth{UserID: "user-xxxxx", Token: "yyyyy.yyyyy.yyyyy", ExpiresAt: test.TimeAfterNow}, nil) - - d.jwtProvider.On("GenerateAccessToken", entity.UserID("user-xxxxx")). - Return("xxxxx.xxxxx.xxxxx", test.TimeAfterNow, nil) - - d.jwtProvider.On("GenerateRefreshToken", entity.UserID("user-xxxxx")). - Return("zzzzz.zzzzz.zzzzz", test.TimeAfterNow, nil) - - d.authRepository.On("DeleteByToken", context.Background(), "yyyyy.yyyyy.yyyyy"). - Return(nil) - - d.authRepository.On("Store", context.Background(), &entity.Auth{UserID: "user-xxxxx", Token: "zzzzz.zzzzz.zzzzz", ExpiresAt: test.TimeAfterNow}). - Return(nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - d := &dependency{ - authRepository: &mocks.AuthRepository{}, - jwtProvider: &mocks.JWTProvider{}, - } - t.setup(d) - - usecase := New(nil, d.authRepository, d.userRepository, d.hashProvider, d.jwtProvider) - output, err := usecase.Refresh(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.output, output) - }) - } -} diff --git a/internal/domain/dto/auth.go b/internal/domain/dto/auth.go deleted file mode 100644 index 172f14e..0000000 --- a/internal/domain/dto/auth.go +++ /dev/null @@ -1,69 +0,0 @@ -package dto - -import "github.com/edwintantawi/taskit/internal/domain/entity" - -// AuthLoginIn represent login input. -type AuthLoginIn struct { - Email string `json:"email"` - Password string `json:"password"` -} - -func (a *AuthLoginIn) Validate() error { - switch { - case a.Email == "": - return ErrEmailEmpty - case a.Password == "": - return ErrPasswordEmpty - } - return nil -} - -// AuthLoginOut represent login output. -type AuthLoginOut struct { - AccessToken string `json:"access_token"` - RefreshToken string `json:"refresh_token"` -} - -// AuthLogoutIn represent logout input. -type AuthLogoutIn struct { - RefreshToken string `json:"refresh_token"` -} - -func (a *AuthLogoutIn) Validate() error { - switch { - case a.RefreshToken == "": - return ErrRefreshTokenEmpty - } - return nil -} - -// AuthProfileIn represent get profile input. -type AuthProfileIn struct { - UserID entity.UserID `json:"-"` -} - -// AuthProfileOut represent get profile output. -type AuthProfileOut struct { - ID entity.UserID `json:"id"` - Name string `json:"name"` - Email string `json:"email"` -} - -// AuthRefreshIn represent refresh input. -type AuthRefreshIn struct { - RefreshToken string `json:"refresh_token"` -} - -func (a *AuthRefreshIn) Validate() error { - switch { - case a.RefreshToken == "": - return ErrRefreshTokenEmpty - } - return nil -} - -// AuthRefreshOut represent refresh output. -type AuthRefreshOut struct { - AccessToken string `json:"access_token"` - RefreshToken string `json:"refresh_token"` -} diff --git a/internal/domain/dto/auth_test.go b/internal/domain/dto/auth_test.go deleted file mode 100644 index 8e3d220..0000000 --- a/internal/domain/dto/auth_test.go +++ /dev/null @@ -1,70 +0,0 @@ -package dto - -import ( - "testing" - - "github.com/stretchr/testify/suite" -) - -type AuthDTOTestSuite struct { - suite.Suite -} - -func TestAuthDTOSuite(t *testing.T) { - suite.Run(t, new(AuthDTOTestSuite)) -} - -func (s *AuthDTOTestSuite) TestAuthLoginIn() { - tests := []struct { - name string - input AuthLoginIn - expected error - }{ - {name: "it should return error when email is empty", input: AuthLoginIn{}, expected: ErrEmailEmpty}, - {name: "it should return error when password is empty", input: AuthLoginIn{Email: "gopher@go.dev"}, expected: ErrPasswordEmpty}, - {name: "it should return nil when all fields are valid", input: AuthLoginIn{Email: "gopher@go.dev", Password: "secret_password"}, expected: nil}, - } - - for _, test := range tests { - s.Run(test.name, func() { - err := test.input.Validate() - s.Equal(test.expected, err) - }) - } -} - -func (s *AuthDTOTestSuite) TestAuthLogoutIn() { - tests := []struct { - name string - input AuthLogoutIn - expected error - }{ - {name: "it should return error when password is empty", input: AuthLogoutIn{RefreshToken: ""}, expected: ErrRefreshTokenEmpty}, - {name: "it should return nil when all fields are valid", input: AuthLogoutIn{RefreshToken: "yyyyy.yyyyy.yyyyy"}, expected: nil}, - } - - for _, test := range tests { - s.Run(test.name, func() { - err := test.input.Validate() - s.Equal(test.expected, err) - }) - } -} - -func (s *AuthDTOTestSuite) TestAuthRefreshIn() { - tests := []struct { - name string - input AuthRefreshIn - expected error - }{ - {name: "it should return error when password is empty", input: AuthRefreshIn{RefreshToken: ""}, expected: ErrRefreshTokenEmpty}, - {name: "it should return nil when all fields are valid", input: AuthRefreshIn{RefreshToken: "yyyyy.yyyyy.yyyyy"}, expected: nil}, - } - - for _, test := range tests { - s.Run(test.name, func() { - err := test.input.Validate() - s.Equal(test.expected, err) - }) - } -} diff --git a/internal/domain/dto/errors.go b/internal/domain/dto/errors.go deleted file mode 100644 index 05288a8..0000000 --- a/internal/domain/dto/errors.go +++ /dev/null @@ -1,13 +0,0 @@ -package dto - -import "errors" - -var ( - ErrEmailEmpty = errors.New("dto.email_empty") - ErrPasswordEmpty = errors.New("dto.password_empty") - ErrNameEmpty = errors.New("dto.name_empty") - - ErrRefreshTokenEmpty = errors.New("dto.refresh_token_empty") - - ErrContentEmpty = errors.New("dto.content_empty") -) diff --git a/internal/domain/dto/task.go b/internal/domain/dto/task.go deleted file mode 100644 index 637308f..0000000 --- a/internal/domain/dto/task.go +++ /dev/null @@ -1,90 +0,0 @@ -package dto - -import ( - "time" - - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -// TaskCreateIn represents the input of task creation. -type TaskCreateIn struct { - UserID entity.UserID `json:"-"` - Content string `json:"content"` - Description string `json:"description"` - DueDate entity.NullTime `json:"due_date"` -} - -func (t *TaskCreateIn) Validate() error { - switch { - case t.Content == "": - return ErrContentEmpty - } - return nil -} - -// TaskCreateOut represents the output of task creation. -type TaskCreateOut struct { - ID entity.TaskID `json:"id"` -} - -// TaskGetAllIn represents the input of task retrieval. -type TaskGetAllIn struct { - UserID entity.UserID `json:"-"` -} - -// TaskGetAllOut represents the output of task retrieval. -type TaskGetAllOut struct { - ID entity.TaskID `json:"id"` - Content string `json:"content"` - Description string `json:"description"` - IsCompleted bool `json:"is_completed"` - DueDate entity.NullTime `json:"due_date"` - CreatedAt time.Time `json:"created_at"` - UpdatedAt time.Time `json:"updated_at"` -} - -// TaskRemoveIn represents the input of task removal. -type TaskRemoveIn struct { - TaskID entity.TaskID `json:"-"` - UserID entity.UserID `json:"-"` -} - -// TaskGetByIDIn represents the input of task retrieval. -type TaskGetByIDIn struct { - TaskID entity.TaskID `json:"-"` - UserID entity.UserID `json:"-"` -} - -// TaskGetByIDOut represents the output of task retrieval. -type TaskGetByIDOut struct { - ID entity.TaskID `json:"id"` - Content string `json:"content"` - Description string `json:"description"` - IsCompleted bool `json:"is_completed"` - DueDate entity.NullTime `json:"due_date"` - CreatedAt time.Time `json:"created_at"` - UpdatedAt time.Time `json:"updated_at"` -} - -// TaskUpdateIn represents the input of task update -type TaskUpdateIn struct { - TaskID entity.TaskID `json:"-"` - UserID entity.UserID `json:"-"` - Content string `json:"content"` - Description string `json:"description"` - IsCompleted bool `json:"is_completed"` - DueDate entity.NullTime `json:"due_date"` -} - -func (t *TaskUpdateIn) Validate() error { - switch { - case t.Content == "": - return ErrContentEmpty - } - return nil -} - -// TaskUpdateOut represents the output of task update -type TaskUpdateOut struct { - ID entity.TaskID `json:"id"` -} diff --git a/internal/domain/dto/task_test.go b/internal/domain/dto/task_test.go deleted file mode 100644 index f6f462b..0000000 --- a/internal/domain/dto/task_test.go +++ /dev/null @@ -1,71 +0,0 @@ -package dto - -import ( - "testing" - - "github.com/stretchr/testify/suite" -) - -type TaskDTOTestSuite struct { - suite.Suite -} - -func TestTaskDTOSuite(t *testing.T) { - suite.Run(t, new(TaskDTOTestSuite)) -} - -func (s *TaskDTOTestSuite) TestTaskCreateIn() { - tests := []struct { - name string - input TaskCreateIn - expected error - }{ - { - name: "it should return error when content is empty", - input: TaskCreateIn{}, - expected: ErrContentEmpty, - }, - { - name: "it should return nil when all fields are valid", - input: TaskCreateIn{ - Content: "content", - }, - expected: nil, - }, - } - - for _, test := range tests { - s.Run(test.name, func() { - err := test.input.Validate() - s.Equal(test.expected, err) - }) - } -} - -func (s *TaskDTOTestSuite) TestTaskUpdateIn() { - tests := []struct { - name string - input TaskUpdateIn - expected error - }{ - { - name: "it should return error when content is empty", - input: TaskUpdateIn{}, - expected: ErrContentEmpty, - }, - { - name: "it should return nil when all fields are valid", - input: TaskUpdateIn{ - Content: "content", - }, - expected: nil, - }, - } - - for _, test := range tests { - s.Run(test.name, func() { - err := test.input.Validate() - s.Equal(test.expected, err) - }) - } -} diff --git a/internal/domain/dto/user.go b/internal/domain/dto/user.go deleted file mode 100644 index c336659..0000000 --- a/internal/domain/dto/user.go +++ /dev/null @@ -1,30 +0,0 @@ -package dto - -import ( - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -// UserCreateIn represents the input of user creation. -type UserCreateIn struct { - Name string `json:"name"` - Email string `json:"email"` - Password string `json:"password"` -} - -func (u *UserCreateIn) Validate() error { - switch { - case u.Email == "": - return ErrEmailEmpty - case u.Password == "": - return ErrPasswordEmpty - case u.Name == "": - return ErrNameEmpty - } - return nil -} - -// UserCreateOut represents the output of user creation. -type UserCreateOut struct { - ID entity.UserID `json:"id"` - Email string `json:"email"` -} diff --git a/internal/domain/dto/user_test.go b/internal/domain/dto/user_test.go deleted file mode 100644 index cfed0ea..0000000 --- a/internal/domain/dto/user_test.go +++ /dev/null @@ -1,35 +0,0 @@ -package dto - -import ( - "testing" - - "github.com/stretchr/testify/suite" -) - -type UserDTOTestSuite struct { - suite.Suite -} - -func TestUserDTOSuite(t *testing.T) { - suite.Run(t, new(UserDTOTestSuite)) -} - -func (s *UserDTOTestSuite) TestUserCreateIn() { - tests := []struct { - name string - input UserCreateIn - expected error - }{ - {name: "it should return error when email is empty", input: UserCreateIn{}, expected: ErrEmailEmpty}, - {name: "it should return error when password is empty", input: UserCreateIn{Email: "gopher@go.dev"}, expected: ErrPasswordEmpty}, - {name: "it should return error when name is empty", input: UserCreateIn{Email: "gopher@go.dev", Password: "123456"}, expected: ErrNameEmpty}, - {name: "it should return nil when all fields are valid", input: UserCreateIn{Email: "gopher@go.dev", Password: "123456", Name: "Gopher"}, expected: nil}, - } - - for _, test := range tests { - s.Run(test.name, func() { - err := test.input.Validate() - s.Equal(test.expected, err) - }) - } -} diff --git a/internal/domain/entity/auth.go b/internal/domain/entity/auth.go deleted file mode 100644 index e749022..0000000 --- a/internal/domain/entity/auth.go +++ /dev/null @@ -1,43 +0,0 @@ -package entity - -import ( - "context" - "errors" - "time" -) - -// Auth entity errors. -var ( - ErrAuthTokenExpired = errors.New("auth.entity.token.expired") -) - -type AuthID string -type authUserIDKey string - -// AuthUserIDKey is the key for the user_id value in the context. -const AuthUserIDKey = authUserIDKey("user_id") - -// Auth represents an authentication in the system. -type Auth struct { - ID AuthID - UserID UserID - Token string - ExpiresAt time.Time -} - -// VerifyTokenExpires checks if the token has expired. -func (a *Auth) VerifyTokenExpires() error { - if a.ExpiresAt.Before(time.Now()) { - return ErrAuthTokenExpired - } - return nil -} - -// GetAuthContext get the AuthUserIDKey from the context. -func GetAuthContext(ctx context.Context) UserID { - userID := ctx.Value(AuthUserIDKey) - if userID == nil { - panic("Auth Context: Cannot get auth context, required context value user_id from auth middleware") - } - return userID.(UserID) -} diff --git a/internal/domain/entity/auth_test.go b/internal/domain/entity/auth_test.go deleted file mode 100644 index 28c40ab..0000000 --- a/internal/domain/entity/auth_test.go +++ /dev/null @@ -1,48 +0,0 @@ -package entity - -import ( - "context" - "testing" - "time" - - "github.com/stretchr/testify/suite" -) - -type AuthEntityTestSuite struct { - suite.Suite -} - -func TestAuthEntitySuite(t *testing.T) { - suite.Run(t, new(AuthEntityTestSuite)) -} - -func (s *AuthEntityTestSuite) TestVerifyTokenExpires() { - tests := []struct { - name string - input Auth - expected error - }{ - {name: "it should return error when auth is expired", input: Auth{ExpiresAt: time.Now().Add(-1 * time.Hour)}, expected: ErrAuthTokenExpired}, - {name: "it should return nill when auth is not expired", input: Auth{ExpiresAt: time.Now().Add(1 * time.Hour)}, expected: nil}, - } - - for _, test := range tests { - s.Run(test.name, func() { - s.Equal(test.expected, test.input.VerifyTokenExpires()) - }) - } -} - -func (s *AuthEntityTestSuite) TestGetAuthContext() { - s.Run("it should panic when auth context is not set", func() { - s.Panics(func() { - GetAuthContext(context.Background()) - }) - }) - - s.Run("it should return user id when auth context is set", func() { - userID := UserID("xxxxx") - ctx := context.WithValue(context.Background(), AuthUserIDKey, userID) - s.Equal(userID, GetAuthContext(ctx)) - }) -} diff --git a/internal/domain/entity/primitive.go b/internal/domain/entity/primitive.go deleted file mode 100644 index 58ac735..0000000 --- a/internal/domain/entity/primitive.go +++ /dev/null @@ -1,34 +0,0 @@ -package entity - -import ( - "bytes" - "database/sql" - "encoding/json" -) - -// nullBytes represent the bytes for null. -var nullBytes = []byte("null") - -// NullTime that may be null. NullTime embed sql.NullTime and implement json Unmarshaler and Marshaler -type NullTime struct { - sql.NullTime -} - -func (t *NullTime) UnmarshalJSON(data []byte) error { - if bytes.Equal(data, nullBytes) { - t.Valid = false - return nil - } - if err := json.Unmarshal(data, &t.Time); err != nil { - return err - } - t.Valid = true - return nil -} - -func (t NullTime) MarshalJSON() ([]byte, error) { - if !t.Valid { - return nullBytes, nil - } - return json.Marshal(t.Time) -} diff --git a/internal/domain/entity/primitive_test.go b/internal/domain/entity/primitive_test.go deleted file mode 100644 index db00ac3..0000000 --- a/internal/domain/entity/primitive_test.go +++ /dev/null @@ -1,86 +0,0 @@ -package entity - -import ( - "database/sql" - "encoding/json" - "fmt" - "testing" - "time" - - "github.com/stretchr/testify/suite" -) - -type PrimitiveTestSuite struct { - suite.Suite -} - -func TestPrimitiveSuite(t *testing.T) { - suite.Run(t, new(PrimitiveTestSuite)) -} - -func (s *PrimitiveTestSuite) TestNullTimeUnmarshalJSON() { - s.Run("it should return error when fail to unmarshal with invalid json", func() { - rawJson := `[]` - var dateTime NullTime - - err := json.Unmarshal([]byte(rawJson), &dateTime) - - s.Error(err) - s.False(dateTime.Valid) - s.Empty(dateTime.Time) - }) - - s.Run("it should successfully unmarshal and return valid false and time is zero value", func() { - rawJson := `null` - var dateTime NullTime - - err := json.Unmarshal([]byte(rawJson), &dateTime) - - s.NoError(err) - s.False(dateTime.Valid) - s.Empty(dateTime.Time) - }) - - s.Run("it should successfully unmarshal and return valid true and time is actual time form json", func() { - rawJson := `"2022-12-25T00:00:00.000Z"` - var dateTime NullTime - - err := json.Unmarshal([]byte(rawJson), &dateTime) - - s.NoError(err) - s.True(dateTime.Valid) - s.Equal("2022-12-25 00:00:00 +0000 UTC", dateTime.Time.String()) - }) -} - -func (s *PrimitiveTestSuite) TestNullTimeMarshalJSON() { - s.Run("it should successfully marshal and return json null when not valid", func() { - dateTime := NullTime{ - NullTime: sql.NullTime{ - Time: time.Time{}, - Valid: false, - }, - } - - r, err := json.Marshal(dateTime) - - s.NoError(err) - s.Equal("null", string(r)) - }) - - s.Run("it should successfully marshal and return json time correctly", func() { - currentTime := time.Now() - - dateTime := NullTime{ - NullTime: sql.NullTime{ - Time: currentTime, - Valid: true, - }, - } - - r, err := json.Marshal(dateTime) - - s.NoError(err) - s.Equal(fmt.Sprintf("\"%s\"", currentTime.Format(time.RFC3339Nano)), string(r)) - }) -} diff --git a/internal/domain/entity/task.go b/internal/domain/entity/task.go deleted file mode 100644 index ef0e51d..0000000 --- a/internal/domain/entity/task.go +++ /dev/null @@ -1,17 +0,0 @@ -package entity - -import "time" - -type TaskID string - -// Task represents a task in the system. -type Task struct { - ID TaskID - UserID UserID - Content string - Description string - IsCompleted bool - DueDate NullTime - CreatedAt time.Time - UpdatedAt time.Time -} diff --git a/internal/domain/entity/user.go b/internal/domain/entity/user.go deleted file mode 100644 index e044375..0000000 --- a/internal/domain/entity/user.go +++ /dev/null @@ -1,44 +0,0 @@ -package entity - -import ( - "errors" - "regexp" - "time" -) - -const ( - emailRegexStr = "^(?:(?:(?:(?:[a-zA-Z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])+(?:\\.([a-zA-Z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])+)*)|(?:(?:\\x22)(?:(?:(?:(?:\\x20|\\x09)*(?:\\x0d\\x0a))?(?:\\x20|\\x09)+)?(?:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:(?:[\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}]))))*(?:(?:(?:\\x20|\\x09)*(?:\\x0d\\x0a))?(\\x20|\\x09)+)?(?:\\x22))))@(?:(?:(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])(?:[a-zA-Z]|\\d|-|\\.|~|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])*(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])))\\.)+(?:(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])(?:[a-zA-Z]|\\d|-|\\.|~|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])*(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])))\\.?$" - - MinPasswordLength = 6 -) - -var emailRegex = regexp.MustCompile(emailRegexStr) - -// User entity errors. -var ( - ErrEmailInvalid = errors.New("user.entity.email_invalid") - ErrPasswordTooShort = errors.New("user.entity.password_too_short") -) - -type UserID string - -// User represents a user in the system. -type User struct { - ID UserID - Name string - Email string - Password string - CreatedAt time.Time - UpdatedAt time.Time -} - -// Validate user fields. -func (u *User) Validate() error { - switch { - case !emailRegex.MatchString(u.Email): - return ErrEmailInvalid - case len(u.Password) < MinPasswordLength: - return ErrPasswordTooShort - } - return nil -} diff --git a/internal/domain/entity/user_test.go b/internal/domain/entity/user_test.go deleted file mode 100644 index e410889..0000000 --- a/internal/domain/entity/user_test.go +++ /dev/null @@ -1,34 +0,0 @@ -package entity - -import ( - "testing" - - "github.com/stretchr/testify/suite" -) - -type UserEntityTestSuite struct { - suite.Suite -} - -func TestUserEntitySuite(t *testing.T) { - suite.Run(t, new(UserEntityTestSuite)) -} - -func (s *UserEntityTestSuite) TestValidate() { - tests := []struct { - name string - input User - expected error - }{ - {name: "it should return error when email is invalid", input: User{Email: "invalid"}, expected: ErrEmailInvalid}, - {name: "it should return error when password is too short", input: User{Email: "gopher@go.dev", Password: "123"}, expected: ErrPasswordTooShort}, - {name: "it should return nil when all fields are valid", input: User{Email: "gopher@go.dev", Password: "123456", Name: "Gopher"}, expected: nil}, - } - - for _, test := range tests { - s.Run(test.name, func() { - err := test.input.Validate() - s.Equal(test.expected, err) - }) - } -} diff --git a/internal/domain/mocks/AuthRepository.go b/internal/domain/mocks/AuthRepository.go deleted file mode 100644 index b11065b..0000000 --- a/internal/domain/mocks/AuthRepository.go +++ /dev/null @@ -1,94 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import ( - context "context" - - entity "github.com/edwintantawi/taskit/internal/domain/entity" - - mock "github.com/stretchr/testify/mock" -) - -// AuthRepository is an autogenerated mock type for the AuthRepository type -type AuthRepository struct { - mock.Mock -} - -// DeleteByToken provides a mock function with given fields: ctx, token -func (_m *AuthRepository) DeleteByToken(ctx context.Context, token string) error { - ret := _m.Called(ctx, token) - - var r0 error - if rf, ok := ret.Get(0).(func(context.Context, string) error); ok { - r0 = rf(ctx, token) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -// FindByToken provides a mock function with given fields: ctx, token -func (_m *AuthRepository) FindByToken(ctx context.Context, token string) (entity.Auth, error) { - ret := _m.Called(ctx, token) - - var r0 entity.Auth - if rf, ok := ret.Get(0).(func(context.Context, string) entity.Auth); ok { - r0 = rf(ctx, token) - } else { - r0 = ret.Get(0).(entity.Auth) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, string) error); ok { - r1 = rf(ctx, token) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// Store provides a mock function with given fields: ctx, a -func (_m *AuthRepository) Store(ctx context.Context, a *entity.Auth) error { - ret := _m.Called(ctx, a) - - var r0 error - if rf, ok := ret.Get(0).(func(context.Context, *entity.Auth) error); ok { - r0 = rf(ctx, a) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -// VerifyAvailableByToken provides a mock function with given fields: ctx, token -func (_m *AuthRepository) VerifyAvailableByToken(ctx context.Context, token string) error { - ret := _m.Called(ctx, token) - - var r0 error - if rf, ok := ret.Get(0).(func(context.Context, string) error); ok { - r0 = rf(ctx, token) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -type mockConstructorTestingTNewAuthRepository interface { - mock.TestingT - Cleanup(func()) -} - -// NewAuthRepository creates a new instance of AuthRepository. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewAuthRepository(t mockConstructorTestingTNewAuthRepository) *AuthRepository { - mock := &AuthRepository{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/AuthUsecase.go b/internal/domain/mocks/AuthUsecase.go deleted file mode 100644 index 39d6bcd..0000000 --- a/internal/domain/mocks/AuthUsecase.go +++ /dev/null @@ -1,108 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import ( - context "context" - - dto "github.com/edwintantawi/taskit/internal/domain/dto" - - mock "github.com/stretchr/testify/mock" -) - -// AuthUsecase is an autogenerated mock type for the AuthUsecase type -type AuthUsecase struct { - mock.Mock -} - -// GetProfile provides a mock function with given fields: ctx, payload -func (_m *AuthUsecase) GetProfile(ctx context.Context, payload *dto.AuthProfileIn) (dto.AuthProfileOut, error) { - ret := _m.Called(ctx, payload) - - var r0 dto.AuthProfileOut - if rf, ok := ret.Get(0).(func(context.Context, *dto.AuthProfileIn) dto.AuthProfileOut); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Get(0).(dto.AuthProfileOut) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *dto.AuthProfileIn) error); ok { - r1 = rf(ctx, payload) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// Login provides a mock function with given fields: ctx, payload -func (_m *AuthUsecase) Login(ctx context.Context, payload *dto.AuthLoginIn) (dto.AuthLoginOut, error) { - ret := _m.Called(ctx, payload) - - var r0 dto.AuthLoginOut - if rf, ok := ret.Get(0).(func(context.Context, *dto.AuthLoginIn) dto.AuthLoginOut); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Get(0).(dto.AuthLoginOut) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *dto.AuthLoginIn) error); ok { - r1 = rf(ctx, payload) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// Logout provides a mock function with given fields: ctx, payload -func (_m *AuthUsecase) Logout(ctx context.Context, payload *dto.AuthLogoutIn) error { - ret := _m.Called(ctx, payload) - - var r0 error - if rf, ok := ret.Get(0).(func(context.Context, *dto.AuthLogoutIn) error); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -// Refresh provides a mock function with given fields: ctx, payload -func (_m *AuthUsecase) Refresh(ctx context.Context, payload *dto.AuthRefreshIn) (dto.AuthRefreshOut, error) { - ret := _m.Called(ctx, payload) - - var r0 dto.AuthRefreshOut - if rf, ok := ret.Get(0).(func(context.Context, *dto.AuthRefreshIn) dto.AuthRefreshOut); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Get(0).(dto.AuthRefreshOut) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *dto.AuthRefreshIn) error); ok { - r1 = rf(ctx, payload) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -type mockConstructorTestingTNewAuthUsecase interface { - mock.TestingT - Cleanup(func()) -} - -// NewAuthUsecase creates a new instance of AuthUsecase. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewAuthUsecase(t mockConstructorTestingTNewAuthUsecase) *AuthUsecase { - mock := &AuthUsecase{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/HashProvider.go b/internal/domain/mocks/HashProvider.go deleted file mode 100644 index 584d905..0000000 --- a/internal/domain/mocks/HashProvider.go +++ /dev/null @@ -1,62 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import mock "github.com/stretchr/testify/mock" - -// HashProvider is an autogenerated mock type for the HashProvider type -type HashProvider struct { - mock.Mock -} - -// Compare provides a mock function with given fields: raw, hashed -func (_m *HashProvider) Compare(raw string, hashed string) error { - ret := _m.Called(raw, hashed) - - var r0 error - if rf, ok := ret.Get(0).(func(string, string) error); ok { - r0 = rf(raw, hashed) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -// Hash provides a mock function with given fields: raw -func (_m *HashProvider) Hash(raw string) ([]byte, error) { - ret := _m.Called(raw) - - var r0 []byte - if rf, ok := ret.Get(0).(func(string) []byte); ok { - r0 = rf(raw) - } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).([]byte) - } - } - - var r1 error - if rf, ok := ret.Get(1).(func(string) error); ok { - r1 = rf(raw) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -type mockConstructorTestingTNewHashProvider interface { - mock.TestingT - Cleanup(func()) -} - -// NewHashProvider creates a new instance of HashProvider. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewHashProvider(t mockConstructorTestingTNewHashProvider) *HashProvider { - mock := &HashProvider{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/IDProvider.go b/internal/domain/mocks/IDProvider.go deleted file mode 100644 index fdbee61..0000000 --- a/internal/domain/mocks/IDProvider.go +++ /dev/null @@ -1,39 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import mock "github.com/stretchr/testify/mock" - -// IDProvider is an autogenerated mock type for the IDProvider type -type IDProvider struct { - mock.Mock -} - -// Generate provides a mock function with given fields: -func (_m *IDProvider) Generate() string { - ret := _m.Called() - - var r0 string - if rf, ok := ret.Get(0).(func() string); ok { - r0 = rf() - } else { - r0 = ret.Get(0).(string) - } - - return r0 -} - -type mockConstructorTestingTNewIDProvider interface { - mock.TestingT - Cleanup(func()) -} - -// NewIDProvider creates a new instance of IDProvider. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewIDProvider(t mockConstructorTestingTNewIDProvider) *IDProvider { - mock := &IDProvider{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/JWTProvider.go b/internal/domain/mocks/JWTProvider.go deleted file mode 100644 index e51b904..0000000 --- a/internal/domain/mocks/JWTProvider.go +++ /dev/null @@ -1,107 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import ( - entity "github.com/edwintantawi/taskit/internal/domain/entity" - mock "github.com/stretchr/testify/mock" - - time "time" -) - -// JWTProvider is an autogenerated mock type for the JWTProvider type -type JWTProvider struct { - mock.Mock -} - -// GenerateAccessToken provides a mock function with given fields: userID -func (_m *JWTProvider) GenerateAccessToken(userID entity.UserID) (string, time.Time, error) { - ret := _m.Called(userID) - - var r0 string - if rf, ok := ret.Get(0).(func(entity.UserID) string); ok { - r0 = rf(userID) - } else { - r0 = ret.Get(0).(string) - } - - var r1 time.Time - if rf, ok := ret.Get(1).(func(entity.UserID) time.Time); ok { - r1 = rf(userID) - } else { - r1 = ret.Get(1).(time.Time) - } - - var r2 error - if rf, ok := ret.Get(2).(func(entity.UserID) error); ok { - r2 = rf(userID) - } else { - r2 = ret.Error(2) - } - - return r0, r1, r2 -} - -// GenerateRefreshToken provides a mock function with given fields: userID -func (_m *JWTProvider) GenerateRefreshToken(userID entity.UserID) (string, time.Time, error) { - ret := _m.Called(userID) - - var r0 string - if rf, ok := ret.Get(0).(func(entity.UserID) string); ok { - r0 = rf(userID) - } else { - r0 = ret.Get(0).(string) - } - - var r1 time.Time - if rf, ok := ret.Get(1).(func(entity.UserID) time.Time); ok { - r1 = rf(userID) - } else { - r1 = ret.Get(1).(time.Time) - } - - var r2 error - if rf, ok := ret.Get(2).(func(entity.UserID) error); ok { - r2 = rf(userID) - } else { - r2 = ret.Error(2) - } - - return r0, r1, r2 -} - -// VerifyAccessToken provides a mock function with given fields: rawToken -func (_m *JWTProvider) VerifyAccessToken(rawToken string) (entity.UserID, error) { - ret := _m.Called(rawToken) - - var r0 entity.UserID - if rf, ok := ret.Get(0).(func(string) entity.UserID); ok { - r0 = rf(rawToken) - } else { - r0 = ret.Get(0).(entity.UserID) - } - - var r1 error - if rf, ok := ret.Get(1).(func(string) error); ok { - r1 = rf(rawToken) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -type mockConstructorTestingTNewJWTProvider interface { - mock.TestingT - Cleanup(func()) -} - -// NewJWTProvider creates a new instance of JWTProvider. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewJWTProvider(t mockConstructorTestingTNewJWTProvider) *JWTProvider { - mock := &JWTProvider{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/TaskRepository.go b/internal/domain/mocks/TaskRepository.go deleted file mode 100644 index 9a004ef..0000000 --- a/internal/domain/mocks/TaskRepository.go +++ /dev/null @@ -1,145 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import ( - context "context" - - entity "github.com/edwintantawi/taskit/internal/domain/entity" - - mock "github.com/stretchr/testify/mock" -) - -// TaskRepository is an autogenerated mock type for the TaskRepository type -type TaskRepository struct { - mock.Mock -} - -// DeleteByID provides a mock function with given fields: ctx, taskID -func (_m *TaskRepository) DeleteByID(ctx context.Context, taskID entity.TaskID) error { - ret := _m.Called(ctx, taskID) - - var r0 error - if rf, ok := ret.Get(0).(func(context.Context, entity.TaskID) error); ok { - r0 = rf(ctx, taskID) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -// FindAllByUserID provides a mock function with given fields: ctx, userID -func (_m *TaskRepository) FindAllByUserID(ctx context.Context, userID entity.UserID) ([]entity.Task, error) { - ret := _m.Called(ctx, userID) - - var r0 []entity.Task - if rf, ok := ret.Get(0).(func(context.Context, entity.UserID) []entity.Task); ok { - r0 = rf(ctx, userID) - } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).([]entity.Task) - } - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, entity.UserID) error); ok { - r1 = rf(ctx, userID) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// FindByID provides a mock function with given fields: ctx, taskID -func (_m *TaskRepository) FindByID(ctx context.Context, taskID entity.TaskID) (entity.Task, error) { - ret := _m.Called(ctx, taskID) - - var r0 entity.Task - if rf, ok := ret.Get(0).(func(context.Context, entity.TaskID) entity.Task); ok { - r0 = rf(ctx, taskID) - } else { - r0 = ret.Get(0).(entity.Task) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, entity.TaskID) error); ok { - r1 = rf(ctx, taskID) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// Store provides a mock function with given fields: ctx, t -func (_m *TaskRepository) Store(ctx context.Context, t *entity.Task) (entity.TaskID, error) { - ret := _m.Called(ctx, t) - - var r0 entity.TaskID - if rf, ok := ret.Get(0).(func(context.Context, *entity.Task) entity.TaskID); ok { - r0 = rf(ctx, t) - } else { - r0 = ret.Get(0).(entity.TaskID) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *entity.Task) error); ok { - r1 = rf(ctx, t) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// Update provides a mock function with given fields: ctx, t -func (_m *TaskRepository) Update(ctx context.Context, t *entity.Task) (entity.TaskID, error) { - ret := _m.Called(ctx, t) - - var r0 entity.TaskID - if rf, ok := ret.Get(0).(func(context.Context, *entity.Task) entity.TaskID); ok { - r0 = rf(ctx, t) - } else { - r0 = ret.Get(0).(entity.TaskID) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *entity.Task) error); ok { - r1 = rf(ctx, t) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// VerifyAvailableByID provides a mock function with given fields: ctx, taskID -func (_m *TaskRepository) VerifyAvailableByID(ctx context.Context, taskID entity.TaskID) error { - ret := _m.Called(ctx, taskID) - - var r0 error - if rf, ok := ret.Get(0).(func(context.Context, entity.TaskID) error); ok { - r0 = rf(ctx, taskID) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -type mockConstructorTestingTNewTaskRepository interface { - mock.TestingT - Cleanup(func()) -} - -// NewTaskRepository creates a new instance of TaskRepository. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewTaskRepository(t mockConstructorTestingTNewTaskRepository) *TaskRepository { - mock := &TaskRepository{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/TaskUsecase.go b/internal/domain/mocks/TaskUsecase.go deleted file mode 100644 index 5841de7..0000000 --- a/internal/domain/mocks/TaskUsecase.go +++ /dev/null @@ -1,131 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import ( - context "context" - - dto "github.com/edwintantawi/taskit/internal/domain/dto" - - mock "github.com/stretchr/testify/mock" -) - -// TaskUsecase is an autogenerated mock type for the TaskUsecase type -type TaskUsecase struct { - mock.Mock -} - -// Create provides a mock function with given fields: ctx, payload -func (_m *TaskUsecase) Create(ctx context.Context, payload *dto.TaskCreateIn) (dto.TaskCreateOut, error) { - ret := _m.Called(ctx, payload) - - var r0 dto.TaskCreateOut - if rf, ok := ret.Get(0).(func(context.Context, *dto.TaskCreateIn) dto.TaskCreateOut); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Get(0).(dto.TaskCreateOut) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *dto.TaskCreateIn) error); ok { - r1 = rf(ctx, payload) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// GetAll provides a mock function with given fields: ctx, payload -func (_m *TaskUsecase) GetAll(ctx context.Context, payload *dto.TaskGetAllIn) ([]dto.TaskGetAllOut, error) { - ret := _m.Called(ctx, payload) - - var r0 []dto.TaskGetAllOut - if rf, ok := ret.Get(0).(func(context.Context, *dto.TaskGetAllIn) []dto.TaskGetAllOut); ok { - r0 = rf(ctx, payload) - } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).([]dto.TaskGetAllOut) - } - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *dto.TaskGetAllIn) error); ok { - r1 = rf(ctx, payload) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// GetByID provides a mock function with given fields: ctx, payload -func (_m *TaskUsecase) GetByID(ctx context.Context, payload *dto.TaskGetByIDIn) (dto.TaskGetByIDOut, error) { - ret := _m.Called(ctx, payload) - - var r0 dto.TaskGetByIDOut - if rf, ok := ret.Get(0).(func(context.Context, *dto.TaskGetByIDIn) dto.TaskGetByIDOut); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Get(0).(dto.TaskGetByIDOut) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *dto.TaskGetByIDIn) error); ok { - r1 = rf(ctx, payload) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// Remove provides a mock function with given fields: ctx, payload -func (_m *TaskUsecase) Remove(ctx context.Context, payload *dto.TaskRemoveIn) error { - ret := _m.Called(ctx, payload) - - var r0 error - if rf, ok := ret.Get(0).(func(context.Context, *dto.TaskRemoveIn) error); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -// Update provides a mock function with given fields: ctx, payload -func (_m *TaskUsecase) Update(ctx context.Context, payload *dto.TaskUpdateIn) (dto.TaskUpdateOut, error) { - ret := _m.Called(ctx, payload) - - var r0 dto.TaskUpdateOut - if rf, ok := ret.Get(0).(func(context.Context, *dto.TaskUpdateIn) dto.TaskUpdateOut); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Get(0).(dto.TaskUpdateOut) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *dto.TaskUpdateIn) error); ok { - r1 = rf(ctx, payload) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -type mockConstructorTestingTNewTaskUsecase interface { - mock.TestingT - Cleanup(func()) -} - -// NewTaskUsecase creates a new instance of TaskUsecase. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewTaskUsecase(t mockConstructorTestingTNewTaskUsecase) *TaskUsecase { - mock := &TaskUsecase{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/UserRepository.go b/internal/domain/mocks/UserRepository.go deleted file mode 100644 index ead8409..0000000 --- a/internal/domain/mocks/UserRepository.go +++ /dev/null @@ -1,108 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import ( - context "context" - - entity "github.com/edwintantawi/taskit/internal/domain/entity" - - mock "github.com/stretchr/testify/mock" -) - -// UserRepository is an autogenerated mock type for the UserRepository type -type UserRepository struct { - mock.Mock -} - -// FindByEmail provides a mock function with given fields: ctx, email -func (_m *UserRepository) FindByEmail(ctx context.Context, email string) (entity.User, error) { - ret := _m.Called(ctx, email) - - var r0 entity.User - if rf, ok := ret.Get(0).(func(context.Context, string) entity.User); ok { - r0 = rf(ctx, email) - } else { - r0 = ret.Get(0).(entity.User) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, string) error); ok { - r1 = rf(ctx, email) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// FindByID provides a mock function with given fields: ctx, id -func (_m *UserRepository) FindByID(ctx context.Context, id entity.UserID) (entity.User, error) { - ret := _m.Called(ctx, id) - - var r0 entity.User - if rf, ok := ret.Get(0).(func(context.Context, entity.UserID) entity.User); ok { - r0 = rf(ctx, id) - } else { - r0 = ret.Get(0).(entity.User) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, entity.UserID) error); ok { - r1 = rf(ctx, id) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// Store provides a mock function with given fields: ctx, u -func (_m *UserRepository) Store(ctx context.Context, u *entity.User) (entity.UserID, error) { - ret := _m.Called(ctx, u) - - var r0 entity.UserID - if rf, ok := ret.Get(0).(func(context.Context, *entity.User) entity.UserID); ok { - r0 = rf(ctx, u) - } else { - r0 = ret.Get(0).(entity.UserID) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *entity.User) error); ok { - r1 = rf(ctx, u) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -// VerifyAvailableEmail provides a mock function with given fields: ctx, email -func (_m *UserRepository) VerifyAvailableEmail(ctx context.Context, email string) error { - ret := _m.Called(ctx, email) - - var r0 error - if rf, ok := ret.Get(0).(func(context.Context, string) error); ok { - r0 = rf(ctx, email) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -type mockConstructorTestingTNewUserRepository interface { - mock.TestingT - Cleanup(func()) -} - -// NewUserRepository creates a new instance of UserRepository. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewUserRepository(t mockConstructorTestingTNewUserRepository) *UserRepository { - mock := &UserRepository{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/UserUsecase.go b/internal/domain/mocks/UserUsecase.go deleted file mode 100644 index 9e02ba2..0000000 --- a/internal/domain/mocks/UserUsecase.go +++ /dev/null @@ -1,52 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import ( - context "context" - - dto "github.com/edwintantawi/taskit/internal/domain/dto" - - mock "github.com/stretchr/testify/mock" -) - -// UserUsecase is an autogenerated mock type for the UserUsecase type -type UserUsecase struct { - mock.Mock -} - -// Create provides a mock function with given fields: ctx, payload -func (_m *UserUsecase) Create(ctx context.Context, payload *dto.UserCreateIn) (dto.UserCreateOut, error) { - ret := _m.Called(ctx, payload) - - var r0 dto.UserCreateOut - if rf, ok := ret.Get(0).(func(context.Context, *dto.UserCreateIn) dto.UserCreateOut); ok { - r0 = rf(ctx, payload) - } else { - r0 = ret.Get(0).(dto.UserCreateOut) - } - - var r1 error - if rf, ok := ret.Get(1).(func(context.Context, *dto.UserCreateIn) error); ok { - r1 = rf(ctx, payload) - } else { - r1 = ret.Error(1) - } - - return r0, r1 -} - -type mockConstructorTestingTNewUserUsecase interface { - mock.TestingT - Cleanup(func()) -} - -// NewUserUsecase creates a new instance of UserUsecase. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewUserUsecase(t mockConstructorTestingTNewUserUsecase) *UserUsecase { - mock := &UserUsecase{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/Validater.go b/internal/domain/mocks/Validater.go deleted file mode 100644 index fd99c78..0000000 --- a/internal/domain/mocks/Validater.go +++ /dev/null @@ -1,39 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import mock "github.com/stretchr/testify/mock" - -// Validater is an autogenerated mock type for the Validater type -type Validater struct { - mock.Mock -} - -// Validate provides a mock function with given fields: -func (_m *Validater) Validate() error { - ret := _m.Called() - - var r0 error - if rf, ok := ret.Get(0).(func() error); ok { - r0 = rf() - } else { - r0 = ret.Error(0) - } - - return r0 -} - -type mockConstructorTestingTNewValidater interface { - mock.TestingT - Cleanup(func()) -} - -// NewValidater creates a new instance of Validater. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewValidater(t mockConstructorTestingTNewValidater) *Validater { - mock := &Validater{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/mocks/ValidatorProvider.go b/internal/domain/mocks/ValidatorProvider.go deleted file mode 100644 index 6c90131..0000000 --- a/internal/domain/mocks/ValidatorProvider.go +++ /dev/null @@ -1,42 +0,0 @@ -// Code generated by mockery v2.15.0. DO NOT EDIT. - -package mocks - -import ( - domain "github.com/edwintantawi/taskit/internal/domain" - mock "github.com/stretchr/testify/mock" -) - -// ValidatorProvider is an autogenerated mock type for the ValidatorProvider type -type ValidatorProvider struct { - mock.Mock -} - -// Validate provides a mock function with given fields: validater -func (_m *ValidatorProvider) Validate(validater domain.Validater) error { - ret := _m.Called(validater) - - var r0 error - if rf, ok := ret.Get(0).(func(domain.Validater) error); ok { - r0 = rf(validater) - } else { - r0 = ret.Error(0) - } - - return r0 -} - -type mockConstructorTestingTNewValidatorProvider interface { - mock.TestingT - Cleanup(func()) -} - -// NewValidatorProvider creates a new instance of ValidatorProvider. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. -func NewValidatorProvider(t mockConstructorTestingTNewValidatorProvider) *ValidatorProvider { - mock := &ValidatorProvider{} - mock.Mock.Test(t) - - t.Cleanup(func() { mock.AssertExpectations(t) }) - - return mock -} diff --git a/internal/domain/provider.go b/internal/domain/provider.go deleted file mode 100644 index 514822d..0000000 --- a/internal/domain/provider.go +++ /dev/null @@ -1,35 +0,0 @@ -package domain - -import ( - "time" - - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -// IDProvider represent id generator contract -type IDProvider interface { - Generate() string -} - -// HashProvider represent hasher contract -type HashProvider interface { - Hash(raw string) ([]byte, error) - Compare(raw string, hashed string) error -} - -// JWTProvider represent jwt generator contract. -type JWTProvider interface { - GenerateAccessToken(userID entity.UserID) (string, time.Time, error) - GenerateRefreshToken(userID entity.UserID) (string, time.Time, error) - VerifyAccessToken(rawToken string) (entity.UserID, error) -} - -// Validater represent object with validate method. -type Validater interface { - Validate() error -} - -// ValidatorProvider represent validator contract. -type ValidatorProvider interface { - Validate(validater Validater) error -} diff --git a/internal/domain/repository.go b/internal/domain/repository.go deleted file mode 100644 index 65330e5..0000000 --- a/internal/domain/repository.go +++ /dev/null @@ -1,50 +0,0 @@ -package domain - -import ( - "context" - "errors" - - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -// User repository errors. -var ( - ErrEmailNotAvailable = errors.New("user.repository.email_not_available") - ErrUserNotFound = errors.New("user.repository.user_not_found") -) - -// Auth repository errors. -var ( - ErrAuthNotFound = errors.New("auth.repository.auth_not_found") -) - -// Task repository errors. -var ( - ErrTaskNotFound = errors.New("task.repository.task_not_found") -) - -// UserRepository represent user repository contract. -type UserRepository interface { - Store(ctx context.Context, u *entity.User) (entity.UserID, error) - VerifyAvailableEmail(ctx context.Context, email string) error - FindByEmail(ctx context.Context, email string) (entity.User, error) - FindByID(ctx context.Context, id entity.UserID) (entity.User, error) -} - -// AuthRepository represent auth repository contract. -type AuthRepository interface { - Store(ctx context.Context, a *entity.Auth) error - VerifyAvailableByToken(ctx context.Context, token string) error - DeleteByToken(ctx context.Context, token string) error - FindByToken(ctx context.Context, token string) (entity.Auth, error) -} - -// TaskRepository represent task repository contract. -type TaskRepository interface { - Store(ctx context.Context, t *entity.Task) (entity.TaskID, error) - FindByID(ctx context.Context, taskID entity.TaskID) (entity.Task, error) - FindAllByUserID(ctx context.Context, userID entity.UserID) ([]entity.Task, error) - VerifyAvailableByID(ctx context.Context, taskID entity.TaskID) error - DeleteByID(ctx context.Context, taskID entity.TaskID) error - Update(ctx context.Context, t *entity.Task) (entity.TaskID, error) -} diff --git a/internal/domain/response.go b/internal/domain/response.go deleted file mode 100644 index 1ddb339..0000000 --- a/internal/domain/response.go +++ /dev/null @@ -1,35 +0,0 @@ -package domain - -import "net/http" - -// SuccessResponse represents the success response with payload. -type SuccessResponse struct { - StatusCode int `json:"status_code"` - Message string `json:"message"` - Payload any `json:"payload"` -} - -// ErrorResponse represents the error response. -type ErrorResponse struct { - StatusCode int `json:"status_code"` - Message string `json:"message"` - Error string `json:"error"` -} - -// NewSuccessResponse creates a new ResponseSuccess. -func NewSuccessResponse(statusCode int, message string, payload any) SuccessResponse { - return SuccessResponse{ - StatusCode: statusCode, - Message: message, - Payload: payload, - } -} - -// NewErrorResponse creates a new ResponseError and translate an error. -func NewErrorResponse(statusCode int, errorMessage string) ErrorResponse { - return ErrorResponse{ - StatusCode: statusCode, - Message: http.StatusText(statusCode), - Error: errorMessage, - } -} diff --git a/internal/domain/usecase.go b/internal/domain/usecase.go deleted file mode 100644 index b534eb7..0000000 --- a/internal/domain/usecase.go +++ /dev/null @@ -1,41 +0,0 @@ -package domain - -import ( - "context" - "errors" - - "github.com/edwintantawi/taskit/internal/domain/dto" -) - -// Auth usecase errors. -var ( - ErrEmailNotExist = errors.New("auth.usecase.email_not_exist") - ErrPasswordIncorrect = errors.New("auth.usecase.password_incorrect") -) - -// Task usecase errors. -var ( - ErrTaskAuthorization = errors.New("task.usecase.task_forbidden") -) - -// UserUsecase represent user usecase contract. -type UserUsecase interface { - Create(ctx context.Context, payload *dto.UserCreateIn) (dto.UserCreateOut, error) -} - -// AuthUsecase represent auth usecase contract. -type AuthUsecase interface { - Login(ctx context.Context, payload *dto.AuthLoginIn) (dto.AuthLoginOut, error) - Logout(ctx context.Context, payload *dto.AuthLogoutIn) error - GetProfile(ctx context.Context, payload *dto.AuthProfileIn) (dto.AuthProfileOut, error) - Refresh(ctx context.Context, payload *dto.AuthRefreshIn) (dto.AuthRefreshOut, error) -} - -// TaskUsecase represent task usecase contract. -type TaskUsecase interface { - Create(ctx context.Context, payload *dto.TaskCreateIn) (dto.TaskCreateOut, error) - GetAll(ctx context.Context, payload *dto.TaskGetAllIn) ([]dto.TaskGetAllOut, error) - Remove(ctx context.Context, payload *dto.TaskRemoveIn) error - GetByID(ctx context.Context, payload *dto.TaskGetByIDIn) (dto.TaskGetByIDOut, error) - Update(ctx context.Context, payload *dto.TaskUpdateIn) (dto.TaskUpdateOut, error) -} diff --git a/internal/task/delivery/http/handler.go b/internal/task/delivery/http/handler.go deleted file mode 100644 index a8e202b..0000000 --- a/internal/task/delivery/http/handler.go +++ /dev/null @@ -1,149 +0,0 @@ -package http - -import ( - "encoding/json" - "net/http" - - "github.com/go-chi/chi/v5" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/pkg/errorx" -) - -type HTTPHandler struct { - validator domain.ValidatorProvider - taskUsecase domain.TaskUsecase -} - -// New creates a new HTTPHandler. -func New(validator domain.ValidatorProvider, taskUsecase domain.TaskUsecase) HTTPHandler { - return HTTPHandler{validator: validator, taskUsecase: taskUsecase} -} - -// POST /tasks to create new task. -func (h *HTTPHandler) Post(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.TaskCreateIn - if err := json.NewDecoder(r.Body).Decode(&payload); err != nil { - w.WriteHeader(http.StatusBadRequest) - encoder.Encode(domain.NewErrorResponse(http.StatusBadRequest, "Invalid request body")) - return - } - payload.UserID = entity.GetAuthContext(r.Context()) - - if err := h.validator.Validate(&payload); err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - output, err := h.taskUsecase.Create(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusCreated) - encoder.Encode(domain.NewSuccessResponse(http.StatusCreated, "Successfully created new task", output)) -} - -// GET /tasks to get all tasks. -func (h *HTTPHandler) Get(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.TaskGetAllIn - payload.UserID = entity.GetAuthContext(r.Context()) - - output, err := h.taskUsecase.GetAll(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusOK) - encoder.Encode(domain.NewSuccessResponse(http.StatusOK, http.StatusText(http.StatusOK), output)) -} - -// DELETE /tasks/{task_id} to remove task. -func (h *HTTPHandler) Delete(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.TaskRemoveIn - payload.UserID = entity.GetAuthContext(r.Context()) - payload.TaskID = entity.TaskID(chi.URLParam(r, "task_id")) - - if err := h.taskUsecase.Remove(r.Context(), &payload); err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusOK) - encoder.Encode(domain.NewSuccessResponse(http.StatusOK, "Successfully deleted task", nil)) -} - -// GET /tasks/{task_id} to get task by task id. -func (h *HTTPHandler) GetByID(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.TaskGetByIDIn - payload.UserID = entity.GetAuthContext(r.Context()) - payload.TaskID = entity.TaskID(chi.URLParam(r, "task_id")) - - output, err := h.taskUsecase.GetByID(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusOK) - encoder.Encode(domain.NewSuccessResponse(http.StatusOK, http.StatusText(http.StatusOK), output)) -} - -// PUT /tasks/{task_id} to update task by task id. -func (h *HTTPHandler) Put(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.TaskUpdateIn - if err := json.NewDecoder(r.Body).Decode(&payload); err != nil { - w.WriteHeader(http.StatusBadRequest) - encoder.Encode(domain.NewErrorResponse(http.StatusBadRequest, "Invalid request body")) - return - } - payload.UserID = entity.GetAuthContext(r.Context()) - payload.TaskID = entity.TaskID(chi.URLParam(r, "task_id")) - - if err := h.validator.Validate(&payload); err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - output, err := h.taskUsecase.Update(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusOK) - encoder.Encode(domain.NewSuccessResponse(http.StatusOK, "Successfully updated task", output)) -} diff --git a/internal/task/delivery/http/handler_test.go b/internal/task/delivery/http/handler_test.go deleted file mode 100644 index 9c5bfe3..0000000 --- a/internal/task/delivery/http/handler_test.go +++ /dev/null @@ -1,617 +0,0 @@ -package http - -import ( - "bytes" - "database/sql" - "encoding/json" - "net/http" - "net/http/httptest" - "testing" - "time" - - "github.com/stretchr/testify/mock" - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/pkg/errorx" - "github.com/edwintantawi/taskit/test" -) - -type TaskHTTPHandlerTestSuite struct { - suite.Suite -} - -func TestTaskHTTPHandlerSuite(t *testing.T) { - suite.Run(t, new(TaskHTTPHandlerTestSuite)) -} - -type dependency struct { - req *http.Request - validator *mocks.ValidatorProvider - taskUsecase *mocks.TaskUsecase -} - -func (s *TaskHTTPHandlerTestSuite) TestPost() { - type args struct { - requestBody []byte - } - type expected struct { - contentType string - statusCode int - message string - error string - payload map[string]any - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when request body is invalid or not provided", - isError: true, - args: args{ - requestBody: []byte(`{`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusBadRequest, - message: http.StatusText(http.StatusBadRequest), - error: "Invalid request body", - }, - setup: func(d *dependency) {}, - }, - { - name: "it should response with error when payload is not valid", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.validator.On("Validate", mock.Anything). - Return(test.ErrValidator) - }, - }, - { - name: "it should response with error when taskUsecase Create returns unexpected error", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.taskUsecase.On("Create", mock.Anything, &dto.TaskCreateIn{UserID: "user-xxxxx"}). - Return(dto.TaskCreateOut{}, test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusCreated, - message: "Successfully created new task", - payload: map[string]any{ - "id": "task-xxxxx", - }, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.taskUsecase.On("Create", mock.Anything, &dto.TaskCreateIn{UserID: "user-xxxxx"}). - Return(dto.TaskCreateOut{ID: "task-xxxxx"}, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - reqBody := bytes.NewReader(t.args.requestBody) - rr := httptest.NewRecorder() - req := httptest.NewRequest("POST", "/", reqBody) - - d := &dependency{ - req: req, - validator: &mocks.ValidatorProvider{}, - taskUsecase: &mocks.TaskUsecase{}, - } - t.setup(d) - - handler := New(d.validator, d.taskUsecase) - handler.Post(rr, d.req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - payloadMap := resBody.Payload.(map[string]any) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.payload, payloadMap) - } - }) - } -} - -func (s *TaskHTTPHandlerTestSuite) TestGet() { - type expected struct { - contentType string - statusCode int - message string - error string - payload []map[string]any - } - tests := []struct { - name string - isError bool - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when task usecase return unexpected error", - isError: true, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.taskUsecase.On("GetAll", mock.Anything, &dto.TaskGetAllIn{UserID: "user-xxxxx"}). - Return(nil, test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusOK, - message: http.StatusText(http.StatusOK), - payload: []map[string]any{ - {"id": "task-xxxxx", "content": "task_xxxxx_content", "description": "task_xxxxx_description", "is_completed": false, "due_date": nil, "created_at": test.TimeBeforeNow.Format(time.RFC3339Nano), "updated_at": test.TimeBeforeNow.Format(time.RFC3339Nano)}, - {"id": "task-yyyyy", "content": "task_yyyyy_content", "description": "task_yyyyy_description", "is_completed": true, "due_date": test.TimeAfterNow.Format(time.RFC3339Nano), "created_at": test.TimeBeforeNow.Format(time.RFC3339Nano), "updated_at": test.TimeBeforeNow.Format(time.RFC3339Nano)}, - }, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.taskUsecase.On("GetAll", mock.Anything, &dto.TaskGetAllIn{UserID: "user-xxxxx"}). - Return([]dto.TaskGetAllOut{ - {ID: "task-xxxxx", Content: "task_xxxxx_content", Description: "task_xxxxx_description", IsCompleted: false, DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, CreatedAt: test.TimeBeforeNow, UpdatedAt: test.TimeBeforeNow}, - {ID: "task-yyyyy", Content: "task_yyyyy_content", Description: "task_yyyyy_description", IsCompleted: true, DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, CreatedAt: test.TimeBeforeNow, UpdatedAt: test.TimeBeforeNow}, - }, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - rr := httptest.NewRecorder() - req := httptest.NewRequest("GET", "/", nil) - - d := &dependency{ - req: req, - taskUsecase: &mocks.TaskUsecase{}, - } - t.setup(d) - - handler := New(nil, d.taskUsecase) - handler.Get(rr, d.req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - payloadList := resBody.Payload.([]any) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - - for i, payload := range t.expected.payload { - s.Equal(payload, payloadList[i].(map[string]any)) - } - } - }) - } -} - -func (s *TaskHTTPHandlerTestSuite) TestDelete() { - type args struct { - params map[string]string - } - type expected struct { - contentType string - statusCode int - message string - error string - payload any - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when task usecase Remove return unexpected error", - isError: true, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.taskUsecase.On("Remove", mock.Anything, &dto.TaskRemoveIn{TaskID: "", UserID: "user-xxxxx"}). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - args: args{ - params: map[string]string{ - "task_id": "task-xxxxx", - }, - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusOK, - message: "Successfully deleted task", - payload: nil, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.taskUsecase.On("Remove", mock.Anything, &dto.TaskRemoveIn{TaskID: "task-xxxxx", UserID: "user-xxxxx"}). - Return(nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - rr := httptest.NewRecorder() - req := httptest.NewRequest("DELETE", "/{task_id}", nil) - - req = test.InjectChiRouterParams(req, t.args.params) - - d := &dependency{ - req: req, - taskUsecase: &mocks.TaskUsecase{}, - } - t.setup(d) - - handler := New(nil, d.taskUsecase) - handler.Delete(rr, d.req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - - s.Equal(t.expected.payload, nil) - } - }) - } -} - -func (s *TaskHTTPHandlerTestSuite) TestGetByID() { - type args struct { - params map[string]string - } - type expected struct { - contentType string - statusCode int - message string - error string - payload map[string]any - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when task usecase GetByID return unexpected error", - isError: true, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.taskUsecase.On("GetByID", mock.Anything, &dto.TaskGetByIDIn{TaskID: "", UserID: "user-xxxxx"}). - Return(dto.TaskGetByIDOut{}, test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - args: args{ - params: map[string]string{ - "task_id": "task-xxxxx", - }, - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusOK, - message: http.StatusText(http.StatusOK), - payload: map[string]any{ - "id": "task-xxxxx", "content": "task_xxxxx_content", "description": "task_xxxxx_description", "is_completed": true, "due_date": test.TimeAfterNow.Format(time.RFC3339Nano), "created_at": test.TimeBeforeNow.Format(time.RFC3339Nano), "updated_at": test.TimeBeforeNow.Format(time.RFC3339Nano), - }, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.taskUsecase.On("GetByID", mock.Anything, &dto.TaskGetByIDIn{TaskID: "task-xxxxx", UserID: "user-xxxxx"}). - Return(dto.TaskGetByIDOut{ - ID: "task-xxxxx", - Content: "task_xxxxx_content", - Description: "task_xxxxx_description", - IsCompleted: true, - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - rr := httptest.NewRecorder() - req := httptest.NewRequest("GET", "/{task_id}", nil) - - req = test.InjectChiRouterParams(req, t.args.params) - - d := &dependency{ - req: req, - taskUsecase: &mocks.TaskUsecase{}, - } - t.setup(d) - - handler := New(nil, d.taskUsecase) - handler.GetByID(rr, d.req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - payloadMap := resBody.Payload.(map[string]any) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.payload, payloadMap) - } - }) - } -} - -func (s *TaskHTTPHandlerTestSuite) TestPut() { - type args struct { - requestBody []byte - params map[string]string - } - type expected struct { - contentType string - statusCode int - message string - error string - payload map[string]any - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when request body is invalid or not provided", - isError: true, - args: args{ - requestBody: []byte(`{`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusBadRequest, - message: http.StatusText(http.StatusBadRequest), - error: "Invalid request body", - }, - setup: func(d *dependency) {}, - }, - { - name: "it should response with error when payload is not valid", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.validator.On("Validate", mock.Anything). - Return(test.ErrValidator) - }, - }, - { - name: "it should response with error when task usecase GetByID return unexpected error", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.taskUsecase.On("Update", mock.Anything, &dto.TaskUpdateIn{TaskID: "", UserID: "user-xxxxx"}). - Return(dto.TaskUpdateOut{}, test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - args: args{ - requestBody: []byte(`{}`), - params: map[string]string{ - "task_id": "task-xxxxx", - }, - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusOK, - message: "Successfully updated task", - payload: map[string]any{ - "id": "task-xxxxx", - }, - }, - setup: func(d *dependency) { - d.req = test.InjectAuthContext(d.req, entity.UserID("user-xxxxx")) - - d.validator.On("Validate", mock.Anything). - Return(nil) - - d.taskUsecase.On("Update", mock.Anything, &dto.TaskUpdateIn{ - TaskID: "task-xxxxx", - UserID: "user-xxxxx", - }).Return(dto.TaskUpdateOut{ - ID: "task-xxxxx", - }, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - reqBody := bytes.NewReader(t.args.requestBody) - rr := httptest.NewRecorder() - req := httptest.NewRequest("PUT", "/{task_id}", reqBody) - - req = test.InjectChiRouterParams(req, t.args.params) - - d := &dependency{ - req: req, - validator: &mocks.ValidatorProvider{}, - taskUsecase: &mocks.TaskUsecase{}, - } - t.setup(d) - - handler := New(d.validator, d.taskUsecase) - handler.Put(rr, d.req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - payloadMap := resBody.Payload.(map[string]any) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.payload, payloadMap) - } - }) - } -} diff --git a/internal/task/repository/repository.go b/internal/task/repository/repository.go deleted file mode 100644 index d895871..0000000 --- a/internal/task/repository/repository.go +++ /dev/null @@ -1,106 +0,0 @@ -package repository - -import ( - "context" - "database/sql" - "errors" - "time" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -type Repository struct { - db *sql.DB - idProvider domain.IDProvider -} - -// New create a new task repository. -func New(db *sql.DB, idProvider domain.IDProvider) Repository { - return Repository{db: db, idProvider: idProvider} -} - -// Store save a new task. -func (r *Repository) Store(ctx context.Context, t *entity.Task) (entity.TaskID, error) { - id := r.idProvider.Generate() - q := `INSERT INTO tasks (id, user_id, content, description, due_date) VALUES ($1, $2, $3, $4, $5)` - _, err := r.db.ExecContext(ctx, q, id, t.UserID, t.Content, t.Description, t.DueDate) - if err != nil { - return "", err - } - return entity.TaskID(id), nil -} - -// FindByID get task by id. -func (r *Repository) FindByID(ctx context.Context, taskID entity.TaskID) (entity.Task, error) { - var task entity.Task - q := `SELECT id, user_id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE id = $1` - row := r.db.QueryRowContext(ctx, q, taskID) - err := row.Scan(&task.ID, &task.UserID, &task.Content, &task.Description, &task.IsCompleted, &task.DueDate, &task.CreatedAt, &task.UpdatedAt) - if errors.Is(err, sql.ErrNoRows) { - return entity.Task{}, domain.ErrTaskNotFound - } else if err != nil { - return entity.Task{}, err - } - return task, nil -} - -// FindAllByUserID get all tasks owned by a user by user id. -func (r *Repository) FindAllByUserID(ctx context.Context, userID entity.UserID) ([]entity.Task, error) { - q := `SELECT id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE user_id = $1` - rows, err := r.db.QueryContext(ctx, q, userID) - if err != nil { - return nil, err - } - defer rows.Close() - - tasks := make([]entity.Task, 0) - for rows.Next() { - var task entity.Task - err := rows.Scan(&task.ID, &task.Content, &task.Description, &task.IsCompleted, &task.DueDate, &task.CreatedAt, &task.UpdatedAt) - if err != nil { - return nil, err - } - tasks = append(tasks, task) - } - if err := rows.Err(); err != nil { - return nil, err - } - - return tasks, nil -} - -// VerifyAvailableByID check if a task is available by id. -func (r *Repository) VerifyAvailableByID(ctx context.Context, taskID entity.TaskID) error { - var id string - q := `SELECT id FROM tasks WHERE id = $1` - row := r.db.QueryRowContext(ctx, q, taskID) - err := row.Scan(&id) - if errors.Is(err, sql.ErrNoRows) { - return domain.ErrTaskNotFound - } else if err != nil { - return err - } - return nil -} - -// DeleteByID delete a task by id. -func (r *Repository) DeleteByID(ctx context.Context, taskID entity.TaskID) error { - q := `DELETE FROM tasks WHERE id = $1` - _, err := r.db.ExecContext(ctx, q, taskID) - if err != nil { - return err - } - return nil -} - -// Update update task by id. -func (r *Repository) Update(ctx context.Context, t *entity.Task) (entity.TaskID, error) { - t.UpdatedAt = time.Now() - q := `UPDATE tasks SET content = $2, description = $3, is_completed = $4, due_date = $5, updated_at = $6 WHERE id = $1` - _, err := r.db.ExecContext(ctx, q, t.ID, t.Content, t.Description, t.IsCompleted, t.DueDate, t.UpdatedAt) - if err != nil { - return "", err - } - return t.ID, nil -} diff --git a/internal/task/repository/repository_test.go b/internal/task/repository/repository_test.go deleted file mode 100644 index 1bc8d39..0000000 --- a/internal/task/repository/repository_test.go +++ /dev/null @@ -1,627 +0,0 @@ -package repository - -import ( - "context" - "database/sql" - "errors" - "regexp" - "testing" - - "github.com/DATA-DOG/go-sqlmock" - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/test" -) - -type TaskRepositoryTestSuite struct { - suite.Suite -} - -func TestTaskRepositorySuite(t *testing.T) { - suite.Run(t, new(TaskRepositoryTestSuite)) -} - -type dependency struct { - mockDB sqlmock.Sqlmock - idProvider *mocks.IDProvider -} - -func (s *TaskRepositoryTestSuite) TestStore() { - type args struct { - ctx context.Context - task *entity.Task - } - type expected struct { - taskID entity.TaskID - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to store", - args: args{ - ctx: context.Background(), - task: &entity.Task{ - UserID: "user-xxxxx", - Content: "task_content", - Description: "task_description", - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - }, - }, - expected: expected{ - taskID: "", - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.idProvider.On("Generate").Return("task-xxxxx") - d.mockDB.ExpectExec(regexp.QuoteMeta(`INSERT INTO tasks (id, user_id, content, description, due_date)`)). - WithArgs("task-xxxxx", "user-xxxxx", "task_content", "task_description", &test.TimeAfterNow). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error nil and task id when successfully store", - args: args{ - ctx: context.Background(), - task: &entity.Task{ - UserID: "user-xxxxx", - Content: "task_content", - Description: "task_description", - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - }, - }, - expected: expected{ - taskID: "task-xxxxx", - err: nil, - }, - setup: func(d *dependency) { - d.idProvider.On("Generate").Return("task-xxxxx") - d.mockDB.ExpectExec(regexp.QuoteMeta(`INSERT INTO tasks (id, user_id, content, description, due_date)`)). - WithArgs("task-xxxxx", "user-xxxxx", "task_content", "task_description", &test.TimeAfterNow). - WillReturnResult(sqlmock.NewResult(1, 1)) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - idProvider: &mocks.IDProvider{}, - } - t.setup(d) - - repository := New(db, d.idProvider) - taskID, err := repository.Store(t.args.ctx, t.args.task) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.taskID, taskID) - }) - } -} - -func (s *TaskRepositoryTestSuite) TestFindByID() { - type args struct { - ctx context.Context - taskID entity.TaskID - } - type expected struct { - task entity.Task - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to query", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - task: entity.Task{}, - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, user_id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE id = $1")). - WithArgs("task-xxxxx"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error ErrTaskNotFound when task not found", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - task: entity.Task{}, - err: domain.ErrTaskNotFound, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, user_id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE id = $1")). - WithArgs("task-xxxxx"). - WillReturnError(sql.ErrNoRows) - }, - }, - { - name: "it should return error when database scan fail", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - task: entity.Task{}, - err: test.ErrRowScan, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, user_id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE id = $1")). - WithArgs("task-xxxxx"). - WillReturnError(test.ErrRowScan) - }, - }, - { - name: "it should return error nil and task when success", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - task: entity.Task{ - ID: "task-xxxxx", - UserID: "user-xxxxx", - Content: "task_content", - Description: "task_description", - IsCompleted: true, - DueDate: entity.NullTime{ - NullTime: sql.NullTime{ - Time: test.TimeAfterNow, - Valid: true, - }, - }, - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, - err: nil, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id", "user_id", "content", "description", "is_completed", "due_date", "created_at", "updated_at"}). - AddRow("task-xxxxx", "user-xxxxx", "task_content", "task_description", true, test.TimeAfterNow, test.TimeBeforeNow, test.TimeBeforeNow) - - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, user_id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE id = $1")). - WithArgs("task-xxxxx"). - WillReturnRows(mockRow) - }, - }, - } - - for _, t := range tests { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - task, err := repository.FindByID(t.args.ctx, t.args.taskID) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.task, task) - } -} - -func (s *TaskRepositoryTestSuite) TestFindAllByUserID() { - type args struct { - ctx context.Context - userID entity.UserID - } - type expected struct { - tasks []entity.Task - allowAnyError bool - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to query", - args: args{ - ctx: context.Background(), - userID: "user-xxxxx", - }, - expected: expected{ - tasks: nil, - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE user_id = $1`)). - WithArgs("user-xxxxx"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error when database rows fail to scan", - args: args{ - ctx: context.Background(), - userID: "user-xxxxx", - }, - expected: expected{ - tasks: nil, - allowAnyError: true, - err: errors.New("anything"), - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id", "content", "description", "is_completed", "due_date", "created_at", "updated_at"}). - AddRow(nil, "task_xxxxx_content", "task_yyyyy_description", false, nil, test.TimeBeforeNow, test.TimeBeforeNow) - - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE user_id = $1`)). - WithArgs("user-xxxxx"). - WillReturnRows(mockRow) - }, - }, - { - name: "it should return error when database rows error", - args: args{ - ctx: context.Background(), - userID: "user-xxxxx", - }, - expected: expected{ - tasks: nil, - err: test.ErrRows, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id", "content", "description", "is_completed", "due_date", "created_at", "updated_at"}). - AddRow("task-xxxxx", "task_xxxxx_content", "task_yyyyy_description", false, nil, test.TimeBeforeNow, test.TimeBeforeNow). - AddRow("task-yyyyy", "task_yyyyy_content", "task_yyyyy_description", true, test.TimeAfterNow, test.TimeBeforeNow, test.TimeBeforeNow). - RowError(1, test.ErrRows) - - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE user_id = $1`)). - WithArgs("user-xxxxx"). - WillReturnRows(mockRow) - }, - }, - { - name: "it should return error nil and empty slice task when successfully query with no tasks", - args: args{ - ctx: context.Background(), - userID: "user-xxxxx", - }, - expected: expected{ - tasks: []entity.Task{}, - err: nil, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id", "content", "description", "is_completed", "due_date", "created_at", "updated_at"}) - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE user_id = $1`)). - WithArgs("user-xxxxx"). - WillReturnRows(mockRow) - }, - }, - { - name: "it should return error nil and all task when successfully query", - args: args{ - ctx: context.Background(), - userID: "user-xxxxx", - }, - expected: expected{ - tasks: []entity.Task{ - { - ID: "task-xxxxx", - Content: "task_xxxxx_content", - Description: "task_xxxxx_description", - IsCompleted: false, - DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, - { - ID: "task-yyyyy", - Content: "task_yyyyy_content", - Description: "task_yyyyy_description", - IsCompleted: true, - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - CreatedAt: test.TimeBeforeNow, UpdatedAt: test.TimeBeforeNow, - }, - }, - err: nil, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id", "content", "description", "is_completed", "due_date", "created_at", "updated_at"}). - AddRow("task-xxxxx", "task_xxxxx_content", "task_xxxxx_description", false, nil, test.TimeBeforeNow, test.TimeBeforeNow). - AddRow("task-yyyyy", "task_yyyyy_content", "task_yyyyy_description", true, test.TimeAfterNow, test.TimeBeforeNow, test.TimeBeforeNow) - - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id, content, description, is_completed, due_date, created_at, updated_at FROM tasks WHERE user_id = $1`)). - WithArgs("user-xxxxx"). - WillReturnRows(mockRow) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, d.idProvider) - tasks, err := repository.FindAllByUserID(t.args.ctx, t.args.userID) - - if t.expected.allowAnyError { - s.Error(err) - } else { - s.Equal(t.expected.err, err) - } - s.Equal(t.expected.tasks, tasks) - }) - } -} - -func (s *TaskRepositoryTestSuite) TestVerifyAvailableByID() { - type args struct { - ctx context.Context - taskID entity.TaskID - } - type expected struct { - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to query", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id FROM tasks WHERE id = $1`)). - WithArgs("task-xxxxx"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error ErrTaskNotFound when task not found", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - err: domain.ErrTaskNotFound, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id FROM tasks WHERE id = $1`)). - WithArgs("task-xxxxx"). - WillReturnError(sql.ErrNoRows) - }, - }, - { - name: "it should return error when fail to scan row", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - err: test.ErrRowScan, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id FROM tasks WHERE id = $1`)). - WithArgs("task-xxxxx"). - WillReturnError(test.ErrRowScan) - }, - }, - { - name: "it should return error nil when task found", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - err: nil, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id"}).AddRow("task-xxxxx") - d.mockDB.ExpectQuery(regexp.QuoteMeta(`SELECT id FROM tasks WHERE id = $1`)). - WithArgs("task-xxxxx"). - WillReturnRows(mockRow) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - err = repository.VerifyAvailableByID(t.args.ctx, t.args.taskID) - - s.Equal(t.expected.err, err) - }) - } -} - -func (s *TaskRepositoryTestSuite) TestDeleteByID() { - type args struct { - ctx context.Context - taskID entity.TaskID - } - type expected struct { - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to query", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectExec(regexp.QuoteMeta(`DELETE FROM tasks WHERE id = $1`)). - WithArgs("task-xxxxx"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return nil when success to delete", - args: args{ - ctx: context.Background(), - taskID: "task-xxxxx", - }, - expected: expected{ - err: nil, - }, - setup: func(d *dependency) { - d.mockDB.ExpectExec(regexp.QuoteMeta(`DELETE FROM tasks WHERE id = $1`)). - WithArgs("task-xxxxx"). - WillReturnResult(sqlmock.NewResult(1, 1)) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - err = repository.DeleteByID(t.args.ctx, t.args.taskID) - - s.Equal(t.expected.err, err) - }) - } -} - -func (s *TaskRepositoryTestSuite) TestUpdate() { - type args struct { - ctx context.Context - task *entity.Task - } - type expected struct { - taskID entity.TaskID - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail", - args: args{ - ctx: context.Background(), - task: &entity.Task{}, - }, - expected: expected{ - taskID: "", - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectExec(regexp.QuoteMeta("UPDATE tasks SET content = $2, description = $3, is_completed = $4, due_date = $5, updated_at = $6 WHERE id = $1")). - WithArgs("", "", "", false, entity.NullTime{NullTime: sql.NullTime{Valid: false}}, sqlmock.AnyArg()). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error nil and task id when success update", - args: args{ - ctx: context.Background(), - task: &entity.Task{ - ID: "task-xxxxx", - UserID: "user-xxxxx", - Content: "task_content", - Description: "task_description", - IsCompleted: true, - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, - }, - expected: expected{ - taskID: "task-xxxxx", - err: nil, - }, - setup: func(d *dependency) { - d.mockDB.ExpectExec(regexp.QuoteMeta("UPDATE tasks SET content = $2, description = $3, is_completed = $4, due_date = $5, updated_at = $6 WHERE id = $1")). - WithArgs("task-xxxxx", "task_content", "task_description", true, entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, sqlmock.AnyArg()). - WillReturnResult(sqlmock.NewResult(1, 1)) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - taskID, err := repository.Update(t.args.ctx, t.args.task) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.taskID, taskID) - }) - } -} diff --git a/internal/task/usecase/usecase.go b/internal/task/usecase/usecase.go deleted file mode 100644 index 2b6610b..0000000 --- a/internal/task/usecase/usecase.go +++ /dev/null @@ -1,109 +0,0 @@ -package usecase - -import ( - "context" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -type Usecase struct { - taskRepository domain.TaskRepository -} - -// New create a new usecase. -func New(taskRepository domain.TaskRepository) Usecase { - return Usecase{taskRepository: taskRepository} -} - -// Create create a new task. -func (u *Usecase) Create(ctx context.Context, payload *dto.TaskCreateIn) (dto.TaskCreateOut, error) { - task := &entity.Task{UserID: payload.UserID, Content: payload.Content, Description: payload.Description, DueDate: payload.DueDate} - - taskID, err := u.taskRepository.Store(ctx, task) - if err != nil { - return dto.TaskCreateOut{}, err - } - return dto.TaskCreateOut{ID: taskID}, nil -} - -// GetAll get all tasks. -func (u *Usecase) GetAll(ctx context.Context, payload *dto.TaskGetAllIn) ([]dto.TaskGetAllOut, error) { - tasks, err := u.taskRepository.FindAllByUserID(ctx, payload.UserID) - if err != nil { - return nil, err - } - - output := make([]dto.TaskGetAllOut, len(tasks)) - for i, task := range tasks { - output[i] = dto.TaskGetAllOut{ - ID: task.ID, - Content: task.Content, - Description: task.Description, - IsCompleted: task.IsCompleted, - DueDate: task.DueDate, - CreatedAt: task.CreatedAt, - UpdatedAt: task.UpdatedAt, - } - } - return output, nil -} - -// Remove remove a task. -func (u *Usecase) Remove(ctx context.Context, payload *dto.TaskRemoveIn) error { - task, err := u.taskRepository.FindByID(ctx, payload.TaskID) - if err != nil { - return err - } - if task.UserID != payload.UserID { - return domain.ErrTaskAuthorization - } - if err := u.taskRepository.DeleteByID(ctx, payload.TaskID); err != nil { - return err - } - return nil -} - -// GetByID get task by id. -func (u *Usecase) GetByID(ctx context.Context, payload *dto.TaskGetByIDIn) (dto.TaskGetByIDOut, error) { - task, err := u.taskRepository.FindByID(ctx, payload.TaskID) - if err != nil { - return dto.TaskGetByIDOut{}, err - } - if task.UserID != payload.UserID { - return dto.TaskGetByIDOut{}, domain.ErrTaskAuthorization - } - - output := dto.TaskGetByIDOut{ - ID: task.ID, - Content: task.Content, - Description: task.Description, - IsCompleted: task.IsCompleted, - DueDate: task.DueDate, - CreatedAt: task.CreatedAt, - UpdatedAt: task.UpdatedAt, - } - return output, nil -} - -func (u *Usecase) Update(ctx context.Context, payload *dto.TaskUpdateIn) (dto.TaskUpdateOut, error) { - task, err := u.taskRepository.FindByID(ctx, payload.TaskID) - if err != nil { - return dto.TaskUpdateOut{}, err - } - if task.UserID != payload.UserID { - return dto.TaskUpdateOut{}, domain.ErrTaskAuthorization - } - - task.Content = payload.Content - task.Description = payload.Description - task.IsCompleted = payload.IsCompleted - task.DueDate = payload.DueDate - - taskID, err := u.taskRepository.Update(ctx, &task) - if err != nil { - return dto.TaskUpdateOut{}, err - } - return dto.TaskUpdateOut{ID: taskID}, nil -} diff --git a/internal/task/usecase/usecase_test.go b/internal/task/usecase/usecase_test.go deleted file mode 100644 index 5dc33a3..0000000 --- a/internal/task/usecase/usecase_test.go +++ /dev/null @@ -1,505 +0,0 @@ -package usecase - -import ( - "context" - "database/sql" - "testing" - - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/test" -) - -type TaskUsecaseTestSuite struct { - suite.Suite -} - -func TestTaskUsecaseSuite(t *testing.T) { - suite.Run(t, new(TaskUsecaseTestSuite)) -} - -type dependency struct { - taskRepository *mocks.TaskRepository -} - -func (s *TaskUsecaseTestSuite) TestCreate() { - type args struct { - ctx context.Context - payload *dto.TaskCreateIn - } - type expected struct { - output dto.TaskCreateOut - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when task respository return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.TaskCreateIn{ - UserID: "user-xxxxx", - Content: "task_content", - Description: "content_description", - DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, - }, - }, - expected: expected{ - output: dto.TaskCreateOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.taskRepository.On("Store", context.Background(), &entity.Task{ - UserID: "user-xxxxx", - Content: "task_content", - Description: "content_description", - DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, - }).Return(entity.TaskID(""), test.ErrUnexpected) - }, - }, - { - name: "it should return error nil and output when task respository return nil error", - args: args{ - ctx: context.Background(), - payload: &dto.TaskCreateIn{ - UserID: "user-xxxxx", - Content: "task_content", - Description: "content_description", - DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, - }, - }, - expected: expected{ - output: dto.TaskCreateOut{ID: "task-xxxxx"}, - err: nil, - }, - setup: func(d *dependency) { - d.taskRepository.On("Store", context.Background(), &entity.Task{ - UserID: "user-xxxxx", - Content: "task_content", - Description: "content_description", - DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, - }).Return(entity.TaskID("task-xxxxx"), nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - d := &dependency{ - taskRepository: &mocks.TaskRepository{}, - } - t.setup(d) - - usecase := New(d.taskRepository) - output, err := usecase.Create(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.output, output) - }) - } -} - -func (s *TaskUsecaseTestSuite) TestGetAll() { - type args struct { - ctx context.Context - payload *dto.TaskGetAllIn - } - type expected struct { - output []dto.TaskGetAllOut - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when task respository return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.TaskGetAllIn{UserID: "user-xxxxx"}, - }, - expected: expected{ - output: nil, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindAllByUserID", context.Background(), entity.UserID("user-xxxxx")). - Return(nil, test.ErrUnexpected) - }, - }, - { - name: "it should return error nil and tasks when success", - args: args{ - ctx: context.Background(), - payload: &dto.TaskGetAllIn{UserID: "user-xxxxx"}, - }, - expected: expected{ - output: []dto.TaskGetAllOut{ - {ID: "task-xxxxx", Content: "task_xxxxx_content", Description: "task_xxxxx_description", IsCompleted: false, DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, CreatedAt: test.TimeBeforeNow, UpdatedAt: test.TimeBeforeNow}, - {ID: "task-yyyyy", Content: "task_yyyyy_content", Description: "task_yyyyy_description", IsCompleted: true, DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, CreatedAt: test.TimeBeforeNow, UpdatedAt: test.TimeBeforeNow}, - }, - }, - setup: func(d *dependency) { - tasks := []entity.Task{ - {ID: "task-xxxxx", Content: "task_xxxxx_content", Description: "task_xxxxx_description", IsCompleted: false, DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, CreatedAt: test.TimeBeforeNow, UpdatedAt: test.TimeBeforeNow}, - {ID: "task-yyyyy", Content: "task_yyyyy_content", Description: "task_yyyyy_description", IsCompleted: true, DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, CreatedAt: test.TimeBeforeNow, UpdatedAt: test.TimeBeforeNow}, - } - - d.taskRepository.On("FindAllByUserID", context.Background(), entity.UserID("user-xxxxx")). - Return(tasks, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - d := &dependency{ - taskRepository: &mocks.TaskRepository{}, - } - t.setup(d) - - usecase := New(d.taskRepository) - output, err := usecase.GetAll(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.output, output) - }) - } -} - -func (s *TaskUsecaseTestSuite) TestRemove() { - type args struct { - ctx context.Context - payload *dto.TaskRemoveIn - } - type expected struct { - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when task repository FindByID return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.TaskRemoveIn{ - TaskID: "task-xxxxx", - UserID: "user-xxxxx", - }, - }, - expected: expected{ - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error ErrTaskAuthorization when task not own by the user", - args: args{ - ctx: context.Background(), - payload: &dto.TaskRemoveIn{ - TaskID: "task-xxxxx", - UserID: "user-xxxxx", - }, - }, - expected: expected{ - err: domain.ErrTaskAuthorization, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{UserID: "user-yyyyy"}, nil) - }, - }, - { - name: "it should return error when task repository DeleteByID return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.TaskRemoveIn{ - TaskID: "task-xxxxx", - UserID: "user-xxxxx", - }, - }, - expected: expected{ - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{UserID: "user-xxxxx"}, nil) - - d.taskRepository.On("DeleteByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should return error nil when success delete task", - args: args{ - ctx: context.Background(), - payload: &dto.TaskRemoveIn{ - TaskID: "task-xxxxx", - UserID: "user-xxxxx", - }, - }, - expected: expected{ - err: nil, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{UserID: "user-xxxxx"}, nil) - - d.taskRepository.On("DeleteByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(nil) - }, - }, - } - - for _, t := range tests { - d := &dependency{ - taskRepository: &mocks.TaskRepository{}, - } - t.setup(d) - - usecase := New(d.taskRepository) - err := usecase.Remove(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - } -} - -func (s *TaskUsecaseTestSuite) TestGetByID() { - type args struct { - ctx context.Context - payload *dto.TaskGetByIDIn - } - type expected struct { - output dto.TaskGetByIDOut - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when task repository FindByID return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.TaskGetByIDIn{}, - }, - expected: expected{ - output: dto.TaskGetByIDOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("")). - Return(entity.Task{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error ErrTaskAuthorization when task not own by the user", - args: args{ - ctx: context.Background(), - payload: &dto.TaskGetByIDIn{ - TaskID: "task-xxxxx", - UserID: "user-xxxxx", - }, - }, - expected: expected{ - output: dto.TaskGetByIDOut{}, - err: domain.ErrTaskAuthorization, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{UserID: "user-yyyyy"}, nil) - }, - }, - { - name: "it should return error nil when success get task", - args: args{ - ctx: context.Background(), - payload: &dto.TaskGetByIDIn{ - TaskID: "task-xxxxx", - UserID: "user-xxxxx", - }, - }, - expected: expected{ - output: dto.TaskGetByIDOut{ - ID: "task-xxxxx", - Content: "task_content", - Description: "task_description", - IsCompleted: true, - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, - err: nil, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{ - ID: "task-xxxxx", - UserID: "user-xxxxx", - Content: "task_content", - Description: "task_description", - IsCompleted: true, - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, nil) - }, - }, - } - - for _, t := range tests { - d := &dependency{ - taskRepository: &mocks.TaskRepository{}, - } - t.setup(d) - - usecase := New(d.taskRepository) - output, err := usecase.GetByID(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.output, output) - } -} - -func (s *TaskUsecaseTestSuite) TestUpdate() { - type args struct { - ctx context.Context - payload *dto.TaskUpdateIn - } - type expected struct { - output dto.TaskUpdateOut - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when task repository FindByID return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.TaskUpdateIn{TaskID: "task-xxxxx"}, - }, - expected: expected{ - output: dto.TaskUpdateOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{}, test.ErrUnexpected) - }, - }, - { - name: "it should return error ErrTaskAuthorization when task is not own by the user", - args: args{ - ctx: context.Background(), - payload: &dto.TaskUpdateIn{TaskID: "task-xxxxx", UserID: "user-xxxxx"}, - }, - expected: expected{ - output: dto.TaskUpdateOut{}, - err: domain.ErrTaskAuthorization, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{UserID: "user-yyyyy"}, nil) - }, - }, - { - name: "it should return error when task repository Update return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.TaskUpdateIn{TaskID: "task-xxxxx", UserID: "user-xxxxx"}, - }, - expected: expected{ - output: dto.TaskUpdateOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{UserID: "user-xxxxx"}, nil) - - d.taskRepository.On("Update", context.Background(), &entity.Task{UserID: "user-xxxxx"}). - Return(entity.TaskID(""), test.ErrUnexpected) - }, - }, - { - name: "it should return error nil when success update", - args: args{ - ctx: context.Background(), - payload: &dto.TaskUpdateIn{ - TaskID: "task-xxxxx", - UserID: "user-xxxxx", - Content: "new_content", - Description: "new_description", - IsCompleted: true, - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - }, - }, - expected: expected{ - output: dto.TaskUpdateOut{ - ID: "task-xxxxx", - }, - err: nil, - }, - setup: func(d *dependency) { - d.taskRepository.On("FindByID", context.Background(), entity.TaskID("task-xxxxx")). - Return(entity.Task{ - ID: "task-xxxxx", - UserID: "user-xxxxx", - Content: "task_content", - Description: "task_description", - IsCompleted: false, - DueDate: entity.NullTime{NullTime: sql.NullTime{Valid: false}}, - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, nil) - - d.taskRepository.On("Update", context.Background(), &entity.Task{ - ID: "task-xxxxx", - UserID: "user-xxxxx", - Content: "new_content", - Description: "new_description", - IsCompleted: true, - DueDate: entity.NullTime{NullTime: sql.NullTime{Time: test.TimeAfterNow, Valid: true}}, - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }).Return(entity.TaskID("task-xxxxx"), nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - d := &dependency{ - taskRepository: &mocks.TaskRepository{}, - } - t.setup(d) - - usecase := New(d.taskRepository) - output, err := usecase.Update(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.output, output) - }) - } -} diff --git a/internal/user/delivery/http/handler.go b/internal/user/delivery/http/handler.go deleted file mode 100644 index 26583b7..0000000 --- a/internal/user/delivery/http/handler.go +++ /dev/null @@ -1,50 +0,0 @@ -package http - -import ( - "encoding/json" - "net/http" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/pkg/errorx" -) - -type HTTPHandler struct { - userUsecase domain.UserUsecase - validator domain.ValidatorProvider -} - -// New creates a new user handler. -func New(validator domain.ValidatorProvider, userUsecase domain.UserUsecase) HTTPHandler { - return HTTPHandler{validator: validator, userUsecase: userUsecase} -} - -// POST /users to create new user. -func (h *HTTPHandler) Post(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Content-Type", "application/json") - encoder := json.NewEncoder(w) - - var payload dto.UserCreateIn - if err := json.NewDecoder(r.Body).Decode(&payload); err != nil { - w.WriteHeader(http.StatusBadRequest) - encoder.Encode(domain.NewErrorResponse(http.StatusBadRequest, "Invalid request body")) - return - } - if err := h.validator.Validate(&payload); err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - output, err := h.userUsecase.Create(r.Context(), &payload) - if err != nil { - code, msg := errorx.HTTPErrorTranslator(err) - w.WriteHeader(code) - encoder.Encode(domain.NewErrorResponse(code, msg)) - return - } - - w.WriteHeader(http.StatusCreated) - encoder.Encode(domain.NewSuccessResponse(http.StatusCreated, "Successfully registered user", output)) -} diff --git a/internal/user/delivery/http/handler_test.go b/internal/user/delivery/http/handler_test.go deleted file mode 100644 index fe23ea3..0000000 --- a/internal/user/delivery/http/handler_test.go +++ /dev/null @@ -1,165 +0,0 @@ -package http - -import ( - "bytes" - "encoding/json" - "net/http" - "net/http/httptest" - "testing" - - "github.com/stretchr/testify/mock" - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/pkg/errorx" - "github.com/edwintantawi/taskit/test" -) - -type UserHTTPHandlerTestSuite struct { - suite.Suite -} - -func TestUserHTTPHandlerSuite(t *testing.T) { - suite.Run(t, new(UserHTTPHandlerTestSuite)) -} - -type dependency struct { - req *http.Request - validator *mocks.ValidatorProvider - userUsecase *mocks.UserUsecase -} - -func (s *UserHTTPHandlerTestSuite) TestPost() { - type args struct { - requestBody []byte - } - type expected struct { - contentType string - statusCode int - message string - error string - payload map[string]any - } - tests := []struct { - name string - isError bool - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should response with error when request body is invalid or not provided", - isError: true, - args: args{ - requestBody: []byte(`{`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusBadRequest, - message: http.StatusText(http.StatusBadRequest), - error: "Invalid request body", - }, - setup: func(d *dependency) {}, - }, - { - name: "it should response with error when payload is not valid", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.UserCreateIn{}). - Return(test.ErrValidator) - }, - }, - { - name: "it should response with error when user usecase Create return unexpected error", - isError: true, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusInternalServerError, - message: http.StatusText(http.StatusInternalServerError), - error: errorx.InternalServerErrorMessage, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.UserCreateIn{}). - Return(nil) - - d.userUsecase.On("Create", mock.Anything, &dto.UserCreateIn{}). - Return(dto.UserCreateOut{}, test.ErrUnexpected) - }, - }, - { - name: "it should response with success when success", - isError: false, - args: args{ - requestBody: []byte(`{}`), - }, - expected: expected{ - contentType: "application/json", - statusCode: http.StatusCreated, - message: "Successfully registered user", - payload: map[string]any{ - "id": "user-xxxxx", - "email": "gopher@go.dev", - }, - }, - setup: func(d *dependency) { - d.validator.On("Validate", &dto.UserCreateIn{}). - Return(nil) - - d.userUsecase.On("Create", mock.Anything, &dto.UserCreateIn{}). - Return(dto.UserCreateOut{ID: "user-xxxxx", Email: "gopher@go.dev"}, nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - reqBody := bytes.NewReader(t.args.requestBody) - rr := httptest.NewRecorder() - req := httptest.NewRequest("POST", "/", reqBody) - - d := &dependency{ - validator: &mocks.ValidatorProvider{}, - userUsecase: &mocks.UserUsecase{}, - req: req, - } - t.setup(d) - - handler := New(d.validator, d.userUsecase) - handler.Post(rr, d.req) - - s.Equal(t.expected.contentType, rr.Header().Get("Content-Type")) - s.Equal(t.expected.statusCode, rr.Code) - - if t.isError { - var resBody domain.ErrorResponse - json.NewDecoder(rr.Body).Decode(&resBody) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.error, resBody.Error) - } else { - var resBody domain.SuccessResponse - json.NewDecoder(rr.Body).Decode(&resBody) - payloadMap := resBody.Payload.(map[string]any) - - s.Equal(t.expected.statusCode, resBody.StatusCode) - s.Equal(t.expected.message, resBody.Message) - s.Equal(t.expected.payload, payloadMap) - } - }) - } -} diff --git a/internal/user/repository/repository.go b/internal/user/repository/repository.go deleted file mode 100644 index f1eced7..0000000 --- a/internal/user/repository/repository.go +++ /dev/null @@ -1,70 +0,0 @@ -package repository - -import ( - "context" - "database/sql" - "errors" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -type Repository struct { - db *sql.DB - idProvider domain.IDProvider -} - -// New create a new user repository. -func New(db *sql.DB, idProvider domain.IDProvider) Repository { - return Repository{db: db, idProvider: idProvider} -} - -// Store save a new user to database. -func (r *Repository) Store(ctx context.Context, u *entity.User) (entity.UserID, error) { - id := entity.UserID(r.idProvider.Generate()) - q := `INSERT INTO users (id, name, email, password) VALUES ($1, $2, $3, $4)` - _, err := r.db.ExecContext(ctx, q, id, u.Name, u.Email, u.Password) - if err != nil { - return "", err - } - return id, nil -} - -// VerifyAvailableEmail check if the email is available. -func (r *Repository) VerifyAvailableEmail(ctx context.Context, email string) error { - var id entity.UserID - q := `SELECT id FROM users WHERE email = $1` - err := r.db.QueryRowContext(ctx, q, email).Scan(&id) - if errors.Is(err, sql.ErrNoRows) { - return nil - } else if err != nil { - return err - } - return domain.ErrEmailNotAvailable -} - -// FindByEmail find a user by email. -func (r *Repository) FindByEmail(ctx context.Context, email string) (entity.User, error) { - var u entity.User - q := `SELECT id, name, email, password, created_at, updated_at FROM users WHERE email = $1` - err := r.db.QueryRowContext(ctx, q, email).Scan(&u.ID, &u.Name, &u.Email, &u.Password, &u.CreatedAt, &u.UpdatedAt) - if errors.Is(err, sql.ErrNoRows) { - return u, domain.ErrUserNotFound - } else if err != nil { - return u, err - } - return u, nil -} - -// FindByID find a user by id. -func (r *Repository) FindByID(ctx context.Context, id entity.UserID) (entity.User, error) { - var u entity.User - q := `SELECT id, name, email, password, created_at, updated_at FROM users WHERE id = $1` - err := r.db.QueryRowContext(ctx, q, id).Scan(&u.ID, &u.Name, &u.Email, &u.Password, &u.CreatedAt, &u.UpdatedAt) - if errors.Is(err, sql.ErrNoRows) { - return u, domain.ErrUserNotFound - } else if err != nil { - return u, err - } - return u, nil -} diff --git a/internal/user/repository/repository_test.go b/internal/user/repository/repository_test.go deleted file mode 100644 index 7a065a0..0000000 --- a/internal/user/repository/repository_test.go +++ /dev/null @@ -1,376 +0,0 @@ -package repository - -import ( - "context" - "database/sql" - "regexp" - "testing" - - "github.com/DATA-DOG/go-sqlmock" - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/test" -) - -type UserRepositoryTestSuite struct { - suite.Suite -} - -func TestUserRepositorySuite(t *testing.T) { - suite.Run(t, new(UserRepositoryTestSuite)) -} - -type dependency struct { - mockDB sqlmock.Sqlmock - idProvider *mocks.IDProvider -} - -func (s *UserRepositoryTestSuite) TestCreate() { - type args struct { - ctx context.Context - user *entity.User - } - type expected struct { - userID entity.UserID - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to store", - args: args{ - ctx: context.Background(), - user: &entity.User{Name: "Gopher", Email: "gopher@go.dev", Password: "secret_password"}, - }, - expected: expected{ - userID: "", - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.idProvider.On("Generate").Return("user-xxxxx") - d.mockDB.ExpectExec(regexp.QuoteMeta(`INSERT INTO users (id, name, email, password) VALUES ($1, $2, $3, $4)`)). - WithArgs("user-xxxxx", "Gopher", "gopher@go.dev", "secret_password"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error nil and user id when successfully store", - args: args{ - ctx: context.Background(), - user: &entity.User{Name: "Gopher", Email: "gopher@go.dev", Password: "secret_password"}, - }, - expected: expected{ - userID: "user-xxxxx", - err: nil, - }, - setup: func(d *dependency) { - d.idProvider.On("Generate").Return("user-xxxxx") - d.mockDB.ExpectExec(regexp.QuoteMeta(`INSERT INTO users (id, name, email, password) VALUES ($1, $2, $3, $4)`)). - WithArgs("user-xxxxx", "Gopher", "gopher@go.dev", "secret_password"). - WillReturnResult(sqlmock.NewResult(1, 1)) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - idProvider: &mocks.IDProvider{}, - } - t.setup(d) - - repository := New(db, d.idProvider) - userID, err := repository.Store(t.args.ctx, t.args.user) - - s.Equal(t.expected.userID, userID) - s.Equal(t.expected.err, err) - }) - } -} - -func (s *UserRepositoryTestSuite) TestVerifyAvailableEmail() { - type args struct { - ctx context.Context - email string - } - type expected struct { - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to query", - args: args{ - ctx: context.Background(), - email: "gopher@go.dev", - }, - expected: expected{ - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id FROM users WHERE email = $1")). - WithArgs("gopher@go.dev"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error ErrEmailNotAvailable when email is already exist in database", - args: args{ - ctx: context.Background(), - email: "gopher@go.dev", - }, - expected: expected{ - err: domain.ErrEmailNotAvailable, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id"}).AddRow("user-xxxxx") - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id FROM users WHERE email = $1")). - WithArgs("gopher@go.dev"). - WillReturnRows(mockRow) - }, - }, - { - name: "it should return error nil when email is not exist in database", - args: args{ - ctx: context.Background(), - email: "gopher@go.dev", - }, - expected: expected{ - err: nil, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id FROM users WHERE email = $1")). - WithArgs("gopher@go.dev"). - WillReturnError(sql.ErrNoRows) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - err = repository.VerifyAvailableEmail(t.args.ctx, t.args.email) - - s.Equal(t.expected.err, err) - }) - } -} - -func (s *UserRepositoryTestSuite) TestFindByEmail() { - type args struct { - ctx context.Context - email string - } - type expected struct { - user entity.User - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to query", - args: args{ - ctx: context.Background(), - email: "gopher@go.dev", - }, - expected: expected{ - user: entity.User{}, - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, name, email, password, created_at, updated_at FROM users WHERE email = $1")). - WithArgs("gopher@go.dev"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error ErrUserNotExist when user is not exist", - args: args{ - ctx: context.Background(), - email: "gopher@go.dev", - }, - expected: expected{ - user: entity.User{}, - err: domain.ErrUserNotFound, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, name, email, password, created_at, updated_at FROM users WHERE email = $1")). - WithArgs("gopher@go.dev"). - WillReturnError(sql.ErrNoRows) - }, - }, - { - name: "it should return error nil and user when user is exist", - args: args{ - ctx: context.Background(), - email: "gopher@go.dev", - }, - expected: expected{ - user: entity.User{ - ID: "user-xxxxx", - Name: "Gopher", - Email: "gopher@go.dev", - Password: "secret_password", - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, - err: nil, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id", "name", "email", "password", "created_at", "updated_at"}). - AddRow("user-xxxxx", "Gopher", "gopher@go.dev", "secret_password", test.TimeBeforeNow, test.TimeBeforeNow) - - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, name, email, password, created_at, updated_at FROM users WHERE email = $1")). - WithArgs("gopher@go.dev"). - WillReturnRows(mockRow) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - user, err := repository.FindByEmail(t.args.ctx, t.args.email) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.user, user) - }) - } -} - -func (s *UserRepositoryTestSuite) TestFindByID() { - type args struct { - ctx context.Context - userID entity.UserID - } - type expected struct { - user entity.User - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when database fail to query", - args: args{ - ctx: context.Background(), - userID: "user-xxxxx", - }, - expected: expected{ - user: entity.User{}, - err: test.ErrDatabase, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, name, email, password, created_at, updated_at FROM users WHERE id = $1")). - WithArgs("user-xxxxx"). - WillReturnError(test.ErrDatabase) - }, - }, - { - name: "it should return error ErrUserNotFound when user is not found", - args: args{ - ctx: context.Background(), - userID: "user-xxxxx", - }, - expected: expected{ - user: entity.User{}, - err: domain.ErrUserNotFound, - }, - setup: func(d *dependency) { - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, name, email, password, created_at, updated_at FROM users WHERE id = $1")). - WithArgs("user-xxxxx"). - WillReturnError(sql.ErrNoRows) - }, - }, - { - name: "it should return error nil and user when user is found", - args: args{ - ctx: context.Background(), - userID: "user-xxxxx", - }, - expected: expected{ - user: entity.User{ - ID: "user-xxxxx", - Name: "Gopher", - Email: "gopher@go.dev", - Password: "secret_password", - CreatedAt: test.TimeBeforeNow, - UpdatedAt: test.TimeBeforeNow, - }, - err: nil, - }, - setup: func(d *dependency) { - mockRow := sqlmock.NewRows([]string{"id", "name", "email", "password", "created_at", "updated_at"}). - AddRow("user-xxxxx", "Gopher", "gopher@go.dev", "secret_password", test.TimeBeforeNow, test.TimeBeforeNow) - - d.mockDB.ExpectQuery(regexp.QuoteMeta("SELECT id, name, email, password, created_at, updated_at FROM users WHERE id = $1")). - WithArgs("user-xxxxx"). - WillReturnRows(mockRow) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - db, mockDB, err := sqlmock.New() - if err != nil { - s.FailNow("an error '%s' was not expected when opening a database mock connection", err) - } - - d := &dependency{ - mockDB: mockDB, - } - t.setup(d) - - repository := New(db, nil) - user, err := repository.FindByID(t.args.ctx, t.args.userID) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.user, user) - }) - } -} diff --git a/internal/user/usecase/usecase.go b/internal/user/usecase/usecase.go deleted file mode 100644 index a2481ce..0000000 --- a/internal/user/usecase/usecase.go +++ /dev/null @@ -1,44 +0,0 @@ -package usecase - -import ( - "context" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -type Usecase struct { - validator domain.ValidatorProvider - userRepository domain.UserRepository - hashProvider domain.HashProvider -} - -// New create a new user usecase. -func New(validator domain.ValidatorProvider, userRepository domain.UserRepository, hashProvider domain.HashProvider) Usecase { - return Usecase{validator: validator, userRepository: userRepository, hashProvider: hashProvider} -} - -// Create create a new user. -func (u *Usecase) Create(ctx context.Context, payload *dto.UserCreateIn) (dto.UserCreateOut, error) { - user := &entity.User{Name: payload.Name, Email: payload.Email, Password: payload.Password} - if err := u.validator.Validate(user); err != nil { - return dto.UserCreateOut{}, err - } - - if err := u.userRepository.VerifyAvailableEmail(ctx, user.Email); err != nil { - return dto.UserCreateOut{}, err - } - - securePassword, err := u.hashProvider.Hash(user.Password) - if err != nil { - return dto.UserCreateOut{}, err - } - user.Password = string(securePassword) - - id, err := u.userRepository.Store(ctx, user) - if err != nil { - return dto.UserCreateOut{}, err - } - return dto.UserCreateOut{ID: id, Email: user.Email}, nil -} diff --git a/internal/user/usecase/usecase_test.go b/internal/user/usecase/usecase_test.go deleted file mode 100644 index b73f0bc..0000000 --- a/internal/user/usecase/usecase_test.go +++ /dev/null @@ -1,160 +0,0 @@ -package usecase - -import ( - "context" - "testing" - - "github.com/stretchr/testify/mock" - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/internal/domain/mocks" - "github.com/edwintantawi/taskit/test" -) - -type UserUsecaseTestSuite struct { - suite.Suite -} - -func TestUserUsecaseSuite(t *testing.T) { - suite.Run(t, new(UserUsecaseTestSuite)) -} - -type dependency struct { - validator *mocks.ValidatorProvider - userRepository *mocks.UserRepository - hashProvider *mocks.HashProvider -} - -func (s *UserUsecaseTestSuite) TestCreate() { - type args struct { - ctx context.Context - payload *dto.UserCreateIn - } - type expected struct { - output dto.UserCreateOut - err error - } - tests := []struct { - name string - args args - expected expected - setup func(d *dependency) - }{ - { - name: "it should return error when user validation error", - args: args{ - ctx: context.Background(), - payload: &dto.UserCreateIn{}, - }, - expected: expected{ - output: dto.UserCreateOut{}, - err: test.ErrValidator, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything).Return(test.ErrValidator) - }, - }, - { - name: "it should return error when user repository VerifyAvailableEmail return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.UserCreateIn{Name: "Gopher", Email: "gopher@go.dev", Password: "secret_password"}, - }, - expected: expected{ - output: dto.UserCreateOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything).Return(nil) - - d.userRepository.On("VerifyAvailableEmail", context.Background(), "gopher@go.dev"). - Return(test.ErrUnexpected) - }, - }, - { - name: "it should return error when hash provider Hash return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.UserCreateIn{Name: "Gopher", Email: "gopher@go.dev", Password: "secret_password"}, - }, - expected: expected{ - output: dto.UserCreateOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything).Return(nil) - - d.userRepository.On("VerifyAvailableEmail", context.Background(), "gopher@go.dev"). - Return(nil) - - d.hashProvider.On("Hash", "secret_password"). - Return(nil, test.ErrUnexpected) - }, - }, - { - name: "it should return error when user repository Store return unexpected error", - args: args{ - ctx: context.Background(), - payload: &dto.UserCreateIn{Name: "Gopher", Email: "gopher@go.dev", Password: "secret_password"}, - }, - expected: expected{ - output: dto.UserCreateOut{}, - err: test.ErrUnexpected, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything).Return(nil) - - d.userRepository.On("VerifyAvailableEmail", context.Background(), "gopher@go.dev"). - Return(nil) - - d.hashProvider.On("Hash", "secret_password"). - Return([]byte("secret_hashed_password"), nil) - - d.userRepository.On("Store", context.Background(), &entity.User{Name: "Gopher", Email: "gopher@go.dev", Password: "secret_hashed_password"}). - Return(entity.UserID(""), test.ErrUnexpected) - }, - }, - { - name: "it should return error nil and output when success", - args: args{ - ctx: context.Background(), - payload: &dto.UserCreateIn{Name: "Gopher", Email: "gopher@go.dev", Password: "secret_password"}, - }, - expected: expected{ - output: dto.UserCreateOut{ID: "user-xxxxx", Email: "gopher@go.dev"}, - err: nil, - }, - setup: func(d *dependency) { - d.validator.On("Validate", mock.Anything).Return(nil) - - d.userRepository.On("VerifyAvailableEmail", context.Background(), "gopher@go.dev"). - Return(nil) - - d.hashProvider.On("Hash", "secret_password"). - Return([]byte("secret_hashed_password"), nil) - - d.userRepository.On("Store", context.Background(), &entity.User{Name: "Gopher", Email: "gopher@go.dev", Password: "secret_hashed_password"}). - Return(entity.UserID("user-xxxxx"), nil) - }, - }, - } - - for _, t := range tests { - s.Run(t.name, func() { - d := &dependency{ - validator: &mocks.ValidatorProvider{}, - userRepository: &mocks.UserRepository{}, - hashProvider: &mocks.HashProvider{}, - } - t.setup(d) - - usecase := New(d.validator, d.userRepository, d.hashProvider) - output, err := usecase.Create(t.args.ctx, t.args.payload) - - s.Equal(t.expected.err, err) - s.Equal(t.expected.output, output) - }) - } -} diff --git a/migrations/000001_create_users_table.down.sql b/migrations/000001_create_users_table.down.sql deleted file mode 100644 index 441087a..0000000 --- a/migrations/000001_create_users_table.down.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE users; \ No newline at end of file diff --git a/migrations/000001_create_users_table.up.sql b/migrations/000001_create_users_table.up.sql deleted file mode 100644 index 4edef0d..0000000 --- a/migrations/000001_create_users_table.up.sql +++ /dev/null @@ -1,8 +0,0 @@ -CREATE TABLE users ( - id VARCHAR(64) PRIMARY KEY, - name VARCHAR(255) NOT NULL, - email VARCHAR(255) NOT NULL UNIQUE, - password TEXT NOT NULL, - created_at TIMESTAMP NOT NULL DEFAULT NOW(), - updated_at TIMESTAMP NOT NULL DEFAULT NOW() -); \ No newline at end of file diff --git a/migrations/000002_create_authentications_table.down.sql b/migrations/000002_create_authentications_table.down.sql deleted file mode 100644 index c489193..0000000 --- a/migrations/000002_create_authentications_table.down.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE authentications; \ No newline at end of file diff --git a/migrations/000002_create_authentications_table.up.sql b/migrations/000002_create_authentications_table.up.sql deleted file mode 100644 index 66a50f9..0000000 --- a/migrations/000002_create_authentications_table.up.sql +++ /dev/null @@ -1,8 +0,0 @@ -CREATE TABLE authentications ( - id VARCHAR(64) PRIMARY KEY, - user_id VARCHAR(255) NOT NULL, - token TEXT NOT NULL, - expires_at TIMESTAMP NOT NULL, - - CONSTRAINT fk_authentications_users FOREIGN KEY(user_id) REFERENCES users(id) -); \ No newline at end of file diff --git a/migrations/000003_create_tasks_table.down.sql b/migrations/000003_create_tasks_table.down.sql deleted file mode 100644 index 3518cd0..0000000 --- a/migrations/000003_create_tasks_table.down.sql +++ /dev/null @@ -1 +0,0 @@ -DROP TABLE tasks; \ No newline at end of file diff --git a/migrations/000003_create_tasks_table.up.sql b/migrations/000003_create_tasks_table.up.sql deleted file mode 100644 index 5f097dd..0000000 --- a/migrations/000003_create_tasks_table.up.sql +++ /dev/null @@ -1,12 +0,0 @@ -CREATE TABLE tasks ( - id VARCHAR(64) PRIMARY KEY, - user_id VARCHAR(64) NOT NULL, - content VARCHAR(255) NOT NULL, - description TEXT NOT NULL, - is_completed BOOLEAN NOT NULL DEFAULT FALSE, - due_date TIMESTAMP, - created_at TIMESTAMP NOT NULL DEFAULT NOW(), - updated_at TIMESTAMP NOT NULL DEFAULT NOW(), - - CONSTRAINT fk_tasks_users FOREIGN KEY(user_id) REFERENCES users(id) -) \ No newline at end of file diff --git a/pkg/errorx/http_translator.go b/pkg/errorx/http_translator.go deleted file mode 100644 index 224084d..0000000 --- a/pkg/errorx/http_translator.go +++ /dev/null @@ -1,70 +0,0 @@ -package errorx - -import ( - "fmt" - "log" - "net/http" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/pkg/security" -) - -// HTTPError message -var ( - InternalServerErrorMessage = "Something went wrong" -) - -// HTTPErrorTranslator translates error to http status code and human readable error message. -func HTTPErrorTranslator(err error) (code int, msg string) { - log.Println("[ERROR]", err) - switch err { - // User entity - case entity.ErrEmailInvalid: - return http.StatusBadRequest, "Email must be a valid email address" - case entity.ErrPasswordTooShort: - return http.StatusBadRequest, fmt.Sprintf("Password must be greater then %d character in length", entity.MinPasswordLength) - // User repository - case domain.ErrEmailNotAvailable: - return http.StatusBadRequest, "Email is not available" - case domain.ErrUserNotFound: - return http.StatusNotFound, "User not found" - // Auth entity - case entity.ErrAuthTokenExpired: - return http.StatusBadRequest, "Refresh token is expired" - // Auth repository - case domain.ErrAuthNotFound: - return http.StatusNotFound, "Authentication not found" - case domain.ErrEmailNotExist: - return http.StatusBadRequest, "Email is not exist" - // Auth usecase - case domain.ErrPasswordIncorrect: - return http.StatusBadRequest, "Password is incorrect" - // Task repository - case domain.ErrTaskNotFound: - return http.StatusNotFound, "Task not found" - // Task usecase - case domain.ErrTaskAuthorization: - return http.StatusForbidden, "Not have access to this task" - // DTO - case dto.ErrEmailEmpty: - return http.StatusBadRequest, "Email is required field" - case dto.ErrPasswordEmpty: - return http.StatusBadRequest, "Password is required field" - case dto.ErrNameEmpty: - return http.StatusBadRequest, "Name is required field" - case dto.ErrRefreshTokenEmpty: - return http.StatusBadRequest, "Refresh token is required field" - case dto.ErrContentEmpty: - return http.StatusBadRequest, "Content is required field" - // Security JWT - case security.ErrAccessTokenExpired: - return http.StatusUnauthorized, "Access token is expired" - case security.ErrAccessTokenInvalid: - return http.StatusUnauthorized, "Access token is invalid" - // Other - default: - return http.StatusInternalServerError, InternalServerErrorMessage - } -} diff --git a/pkg/errorx/http_translator_test.go b/pkg/errorx/http_translator_test.go deleted file mode 100644 index 5a333f3..0000000 --- a/pkg/errorx/http_translator_test.go +++ /dev/null @@ -1,65 +0,0 @@ -package errorx - -import ( - "errors" - "fmt" - "testing" - - "github.com/stretchr/testify/suite" - - "github.com/edwintantawi/taskit/internal/domain" - "github.com/edwintantawi/taskit/internal/domain/dto" - "github.com/edwintantawi/taskit/internal/domain/entity" - "github.com/edwintantawi/taskit/pkg/security" -) - -type HTTPErrorTranslatorTestSuite struct { - suite.Suite -} - -func TestHTTPErrorTranslatorSuite(t *testing.T) { - suite.Run(t, new(HTTPErrorTranslatorTestSuite)) -} - -func (s *HTTPErrorTranslatorTestSuite) TestErrorTranslator() { - tests := []struct { - err error - expectedCode int - expectedMsg string - }{ - // User entity - {entity.ErrEmailInvalid, 400, "Email must be a valid email address"}, - {entity.ErrPasswordTooShort, 400, fmt.Sprintf("Password must be greater then %d character in length", entity.MinPasswordLength)}, - // User repository - {domain.ErrEmailNotAvailable, 400, "Email is not available"}, - {domain.ErrUserNotFound, 404, "User not found"}, - // Auth entity - {entity.ErrAuthTokenExpired, 400, "Refresh token is expired"}, - // Auth repository - {domain.ErrAuthNotFound, 404, "Authentication not found"}, - // Auth usecase - {domain.ErrPasswordIncorrect, 400, "Password is incorrect"}, - {domain.ErrEmailNotExist, 400, "Email is not exist"}, - // Task repository - {domain.ErrTaskNotFound, 404, "Task not found"}, - // Task usecase - {domain.ErrTaskAuthorization, 403, "Not have access to this task"}, - // DTO - {dto.ErrEmailEmpty, 400, "Email is required field"}, - {dto.ErrPasswordEmpty, 400, "Password is required field"}, - {dto.ErrNameEmpty, 400, "Name is required field"}, - {dto.ErrRefreshTokenEmpty, 400, "Refresh token is required field"}, - {dto.ErrContentEmpty, 400, "Content is required field"}, - // Security JWT - {security.ErrAccessTokenExpired, 401, "Access token is expired"}, - {security.ErrAccessTokenInvalid, 401, "Access token is invalid"}, - // Other - {errors.New("other error"), 500, "Something went wrong"}, - } - - for _, test := range tests { - code, msg := HTTPErrorTranslator(test.err) - s.Equal(test.expectedCode, code) - s.Equal(test.expectedMsg, msg) - } -} diff --git a/pkg/httpsvr/httpsvr.go b/pkg/httpsvr/httpsvr.go deleted file mode 100644 index 4920b0e..0000000 --- a/pkg/httpsvr/httpsvr.go +++ /dev/null @@ -1,52 +0,0 @@ -package httpsvr - -import ( - "context" - "errors" - "log" - "net/http" - "os" - "os/signal" - "syscall" - "time" - - "github.com/go-chi/chi/v5" -) - -type Server struct { - Addr string - Router *chi.Mux -} - -// New creates a new HTTP server. -func New(addr string, r *chi.Mux) Server { - return Server{Addr: addr, Router: r} -} - -// Run starts the HTTP server with gracefully shutdown. -func (s *Server) Run() error { - svr := &http.Server{ - Addr: s.Addr, - Handler: s.Router, - } - - shutdownChan := make(chan error) - go func() { - quit := make(chan os.Signal, 1) - signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM) - <-quit - - log.Println("Shutting down the server") - ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second) - defer cancel() - - shutdownChan <- svr.Shutdown(ctx) - }() - - err := svr.ListenAndServe() - if !errors.Is(err, http.ErrServerClosed) { - return err - } - - return <-shutdownChan -} diff --git a/pkg/idgen/uuid.go b/pkg/idgen/uuid.go deleted file mode 100644 index aebdb8c..0000000 --- a/pkg/idgen/uuid.go +++ /dev/null @@ -1,15 +0,0 @@ -package idgen - -import "github.com/google/uuid" - -type UUID struct{} - -// NewUUID creates a new UUID generator. -func NewUUID() UUID { - return UUID{} -} - -// Generate generates a new UUID string. -func (p *UUID) Generate() string { - return uuid.NewString() -} diff --git a/pkg/postgres/postgres.go b/pkg/postgres/postgres.go deleted file mode 100644 index 7a2f8ef..0000000 --- a/pkg/postgres/postgres.go +++ /dev/null @@ -1,71 +0,0 @@ -package postgres - -import ( - "database/sql" - "errors" - "fmt" - "log" - "os" - - "github.com/golang-migrate/migrate/v4" - _ "github.com/golang-migrate/migrate/v4/database/postgres" - "github.com/golang-migrate/migrate/v4/source/iofs" - _ "github.com/lib/pq" -) - -type Config struct { - Port string - Host string - DB string - User string - Password string - SSLMode string -} - -const Driver = "postgres" - -// New create new postgres connection. -func New(cfg Config) (*sql.DB, func(autoMigrate bool) error) { - dsn := fmt.Sprintf( - "postgres://%s:%s@%s:%s/%s?sslmode=%s", - cfg.User, - cfg.Password, - cfg.Host, - cfg.Port, - cfg.DB, - cfg.SSLMode, - ) - - db, err := sql.Open(Driver, dsn) - if err != nil { - log.Fatalf("Failed open postgres connection: %v", err) - } - if err := db.Ping(); err != nil { - log.Fatalf("Failed to ping postgres database: %v", err) - } - - migrate := func(autoMigrate bool) error { - if !autoMigrate { - return nil - } - iofsDriver, err := iofs.New(os.DirFS("migrations"), ".") - if err != nil { - return err - } - migrator, err := migrate.NewWithSourceInstance("iofs", iofsDriver, dsn) - if err != nil { - return err - } - err = migrator.Up() - if errors.Is(err, migrate.ErrNoChange) { - log.Println("Migration no change, nothing to migrate") - return nil - } else if err != nil { - return err - } - log.Println("Successfully migrate database") - return nil - } - - return db, migrate -} diff --git a/pkg/security/bcrypt.go b/pkg/security/bcrypt.go deleted file mode 100644 index aa737f5..0000000 --- a/pkg/security/bcrypt.go +++ /dev/null @@ -1,19 +0,0 @@ -package security - -import "golang.org/x/crypto/bcrypt" - -type Bcrypt struct{} - -func NewBcrypt() Bcrypt { - return Bcrypt{} -} - -// Hash hashes a raw string. -func (b *Bcrypt) Hash(raw string) ([]byte, error) { - return bcrypt.GenerateFromPassword([]byte(raw), bcrypt.DefaultCost) -} - -// Compare compares a raw string with a hashed string. -func (b *Bcrypt) Compare(raw string, hashed string) error { - return bcrypt.CompareHashAndPassword([]byte(hashed), []byte(raw)) -} diff --git a/pkg/security/jwt.go b/pkg/security/jwt.go deleted file mode 100644 index ddf05b5..0000000 --- a/pkg/security/jwt.go +++ /dev/null @@ -1,98 +0,0 @@ -package security - -import ( - "errors" - "time" - - "github.com/golang-jwt/jwt/v4" - - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -var ( - ErrAccessTokenExpired = errors.New("security.jwt.access_token_expired") - ErrAccessTokenInvalid = errors.New("security.jwt.access_token_invalid") -) - -type jwtClaims struct { - jwt.RegisteredClaims - UserID entity.UserID `json:"user_id"` -} - -type JWTTokenConfig struct { - Key string - Exp int -} - -type JWT struct { - accessTokenKey string - refreshTokenKey string - accessTokenExpires int - refreshTokenExpires int -} - -func NewJWT(accessToken, refreshToken JWTTokenConfig) JWT { - return JWT{ - accessTokenKey: accessToken.Key, - refreshTokenKey: refreshToken.Key, - accessTokenExpires: accessToken.Exp, - refreshTokenExpires: refreshToken.Exp, - } -} - -func (j *JWT) GenerateAccessToken(userID entity.UserID) (string, time.Time, error) { - expiresTime := time.Now().Add(time.Duration(j.accessTokenExpires) * time.Second) - claims := jwtClaims{ - RegisteredClaims: jwt.RegisteredClaims{ - ExpiresAt: jwt.NewNumericDate(expiresTime), - }, - UserID: userID, - } - - token := jwt.NewWithClaims(jwt.SigningMethodHS256, claims) - signedToken, err := token.SignedString([]byte(j.accessTokenKey)) - if err != nil { - return "", time.Time{}, err - } - return signedToken, expiresTime, nil -} - -func (j *JWT) GenerateRefreshToken(userID entity.UserID) (string, time.Time, error) { - expiresTime := time.Now().Add(time.Duration(j.refreshTokenExpires) * time.Second) - claims := jwtClaims{ - RegisteredClaims: jwt.RegisteredClaims{ - ExpiresAt: jwt.NewNumericDate(expiresTime), - }, - UserID: userID, - } - - token := jwt.NewWithClaims(jwt.SigningMethodHS256, claims) - signedToken, err := token.SignedString([]byte(j.refreshTokenKey)) - if err != nil { - return "", time.Time{}, err - } - return signedToken, expiresTime, nil -} - -func (j *JWT) VerifyAccessToken(rawToken string) (entity.UserID, error) { - token, err := jwt.Parse(rawToken, func(t *jwt.Token) (interface{}, error) { - if _, ok := t.Method.(*jwt.SigningMethodHMAC); !ok { - return nil, errors.New("invalid token alg") - } - return []byte(j.accessTokenKey), nil - }) - - if errors.Is(err, jwt.ErrTokenExpired) { - return "", ErrAccessTokenExpired - } else if err != nil { - return "", ErrAccessTokenInvalid - } - - claims, ok := token.Claims.(jwt.MapClaims) - if !ok || !token.Valid { - return "", ErrAccessTokenInvalid - } - - userID := entity.UserID(claims["user_id"].(string)) - return userID, nil -} diff --git a/pkg/validator/validator.go b/pkg/validator/validator.go deleted file mode 100644 index 9e5a240..0000000 --- a/pkg/validator/validator.go +++ /dev/null @@ -1,13 +0,0 @@ -package validator - -import "github.com/edwintantawi/taskit/internal/domain" - -type Validator struct{} - -func New() Validator { - return Validator{} -} - -func (v *Validator) Validate(validater domain.Validater) error { - return validater.Validate() -} diff --git a/test/helper.go b/test/helper.go deleted file mode 100644 index 2de5880..0000000 --- a/test/helper.go +++ /dev/null @@ -1,38 +0,0 @@ -package test - -import ( - "context" - "errors" - "net/http" - "time" - - "github.com/go-chi/chi/v5" - - "github.com/edwintantawi/taskit/internal/domain/entity" -) - -var ( - ErrUnexpected = errors.New("test.unexpected") - ErrRowAffected = errors.New("test.row_affected") - ErrDatabase = errors.New("test.database") - ErrRowScan = errors.New("test.rowscan") - ErrRows = errors.New("test.rows") - ErrValidator = errors.New("test.validator") - - TimeAfterNow = time.Now().Add(time.Hour) - TimeBeforeNow = time.Now().Add(-time.Hour) -) - -// InjectAuthContext injects the user ID into the request context. -func InjectAuthContext(r *http.Request, userID entity.UserID) *http.Request { - return r.WithContext(context.WithValue(r.Context(), entity.AuthUserIDKey, userID)) -} - -// InjectChiRouterParams injects the chi router params into the request context. -func InjectChiRouterParams(r *http.Request, params map[string]string) *http.Request { - rctx := chi.NewRouteContext() - for key, value := range params { - rctx.URLParams.Add(key, value) - } - return r.WithContext(context.WithValue(r.Context(), chi.RouteCtxKey, rctx)) -} From 35731b3e77bff8a8b550fbb745f6f64562f5abbb Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Sun, 22 Jan 2023 23:00:18 +0700 Subject: [PATCH 02/18] docs: add postgres sql env example --- .env.example | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .env.example diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..1a4d26c --- /dev/null +++ b/.env.example @@ -0,0 +1,7 @@ +# PostgreSQL +POSTGRES_HOST= +POSTGRES_PORT= +POSTGRES_DB= +POSTGRES_USER= +POSTGRES_PASSWORD= +POSTGRES_SSLMODE= \ No newline at end of file From 9d4abd92b5e01e531b992c2a53b656ef55060235 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Sun, 22 Jan 2023 23:00:46 +0700 Subject: [PATCH 03/18] chore: add POSTGRES_DSN --- Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile b/Makefile index 824f291..517b516 100644 --- a/Makefile +++ b/Makefile @@ -2,6 +2,8 @@ include $(PWD)/.env export $(shell sed 's/=.*//' $(PWD)/.env) +POSTGRES_DSN=postgres://$(POSTGRES_USER):$(POSTGRES_PASSWORD)@$(POSTGRES_HOST):$(POSTGRES_PORT)/$(POSTGRES_DB)?sslmode=disable + ## help: show help .PHONY: help help: From fdc12d81f06f44caeb77f83801aa446335c103cd Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Sun, 22 Jan 2023 23:01:24 +0700 Subject: [PATCH 04/18] feat: add sql migration for users table --- migrations/000001_create_users_table.down.sql | 1 + migrations/000001_create_users_table.up.sql | 8 ++++++++ 2 files changed, 9 insertions(+) create mode 100644 migrations/000001_create_users_table.down.sql create mode 100644 migrations/000001_create_users_table.up.sql diff --git a/migrations/000001_create_users_table.down.sql b/migrations/000001_create_users_table.down.sql new file mode 100644 index 0000000..441087a --- /dev/null +++ b/migrations/000001_create_users_table.down.sql @@ -0,0 +1 @@ +DROP TABLE users; \ No newline at end of file diff --git a/migrations/000001_create_users_table.up.sql b/migrations/000001_create_users_table.up.sql new file mode 100644 index 0000000..4edef0d --- /dev/null +++ b/migrations/000001_create_users_table.up.sql @@ -0,0 +1,8 @@ +CREATE TABLE users ( + id VARCHAR(64) PRIMARY KEY, + name VARCHAR(255) NOT NULL, + email VARCHAR(255) NOT NULL UNIQUE, + password TEXT NOT NULL, + created_at TIMESTAMP NOT NULL DEFAULT NOW(), + updated_at TIMESTAMP NOT NULL DEFAULT NOW() +); \ No newline at end of file From 4f8f059ff24614fb38d4852b6fe4353795a72343 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Sun, 22 Jan 2023 23:06:06 +0700 Subject: [PATCH 05/18] chore: init go module --- go.mod | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 go.mod diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..79746d7 --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module github.com/edwintantawi/taskit + +go 1.19 From 37872814f93a5fc8f71651d045f7bfe048f8b513 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Sun, 22 Jan 2023 23:22:10 +0700 Subject: [PATCH 06/18] chore: add testify --- go.mod | 8 ++++++++ go.sum | 17 +++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 go.sum diff --git a/go.mod b/go.mod index 79746d7..092b72e 100644 --- a/go.mod +++ b/go.mod @@ -1,3 +1,11 @@ module github.com/edwintantawi/taskit go 1.19 + +require github.com/stretchr/testify v1.8.1 + +require ( + github.com/davecgh/go-spew v1.1.1 // indirect + github.com/pmezard/go-difflib v1.0.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect +) diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..2ec90f7 --- /dev/null +++ b/go.sum @@ -0,0 +1,17 @@ +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/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/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= From 18f6570737c0458a3afc520b437bd90488cb52bd Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Sun, 22 Jan 2023 23:22:46 +0700 Subject: [PATCH 07/18] feat: add new user entity --- internal/entity/new_user.go | 41 ++++++++++++++++++++++++++ internal/entity/new_user_test.go | 49 ++++++++++++++++++++++++++++++++ 2 files changed, 90 insertions(+) create mode 100644 internal/entity/new_user.go create mode 100644 internal/entity/new_user_test.go diff --git a/internal/entity/new_user.go b/internal/entity/new_user.go new file mode 100644 index 0000000..a1d3353 --- /dev/null +++ b/internal/entity/new_user.go @@ -0,0 +1,41 @@ +package entity + +import ( + "errors" + "fmt" + "regexp" +) + +const ( + emailRegexStr = "^(?:(?:(?:(?:[a-zA-Z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])+(?:\\.([a-zA-Z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])+)*)|(?:(?:\\x22)(?:(?:(?:(?:\\x20|\\x09)*(?:\\x0d\\x0a))?(?:\\x20|\\x09)+)?(?:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:(?:[\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}]))))*(?:(?:(?:\\x20|\\x09)*(?:\\x0d\\x0a))?(\\x20|\\x09)+)?(?:\\x22))))@(?:(?:(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])(?:[a-zA-Z]|\\d|-|\\.|~|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])*(?:[a-zA-Z]|\\d|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])))\\.)+(?:(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])|(?:(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])(?:[a-zA-Z]|\\d|-|\\.|~|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])*(?:[a-zA-Z]|[\\x{00A0}-\\x{D7FF}\\x{F900}-\\x{FDCF}\\x{FDF0}-\\x{FFEF}])))\\.?$" + MinPasswordLength = 6 +) + +var ( + ErrEmptyName = errors.New("name is required") + ErrInvalidEmail = errors.New("email is not valid") + ErrTooShortPassword = fmt.Errorf("password must be at least %d characters long", MinPasswordLength) +) + +// EmailRegex is a regular expression for validating email addresses. +var EmailRegex = regexp.MustCompile(emailRegexStr) + +// NewUser represents a new user. +type NewUser struct { + Name string + Email string + Password string +} + +func (nu NewUser) Validate() error { + if nu.Name == "" { + return ErrEmptyName + } + if !EmailRegex.MatchString(nu.Email) { + return ErrInvalidEmail + } + if len(nu.Password) < MinPasswordLength { + return ErrTooShortPassword + } + return nil +} diff --git a/internal/entity/new_user_test.go b/internal/entity/new_user_test.go new file mode 100644 index 0000000..b5a6a2d --- /dev/null +++ b/internal/entity/new_user_test.go @@ -0,0 +1,49 @@ +package entity + +import ( + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestNewUser_Validate(t *testing.T) { + tests := map[string]struct { + args NewUser + expected error + }{ + "it should return error ErrEmptyName when name is empty": { + args: NewUser{}, + expected: ErrEmptyName, + }, + "it should return error ErrInvalidEmail when email is not valid": { + args: NewUser{ + Name: "gopher", + Email: "invalid-email", + }, + expected: ErrInvalidEmail, + }, + "it should return error ErrTooShortPassword when the password less than 6 characters": { + args: NewUser{ + Name: "gopher", + Email: "gopher@go.dev", + Password: "12345", + }, + expected: ErrTooShortPassword, + }, + "it should return error nil when no validation error": { + args: NewUser{ + Name: "gopher", + Email: "gopher@go.dev", + Password: "123456", + }, + expected: nil, + }, + } + + for name, tc := range tests { + t.Run(name, func(t *testing.T) { + err := tc.args.Validate() + assert.Equal(t, tc.expected, err) + }) + } +} From 5391021c9dd19bd5ef6d68edde3a087517dc70b4 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Sun, 22 Jan 2023 23:25:11 +0700 Subject: [PATCH 08/18] feat: add added user entity --- internal/entity/added_user.go | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 internal/entity/added_user.go diff --git a/internal/entity/added_user.go b/internal/entity/added_user.go new file mode 100644 index 0000000..ff65f85 --- /dev/null +++ b/internal/entity/added_user.go @@ -0,0 +1,7 @@ +package entity + +// AddedUser represents a user that has been added/created. +type AddedUser struct { + ID string + Email string +} From eede7af8a077a0e8634b1931760f9647bf913484 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 11:06:31 +0700 Subject: [PATCH 09/18] feat(test): add postgres resource with dockertest --- test/dockertest.go | 78 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 test/dockertest.go diff --git a/test/dockertest.go b/test/dockertest.go new file mode 100644 index 0000000..c13fc68 --- /dev/null +++ b/test/dockertest.go @@ -0,0 +1,78 @@ +package test + +import ( + "database/sql" + "fmt" + "log" + "time" + + _ "github.com/lib/pq" + "github.com/ory/dockertest/v3" + "github.com/ory/dockertest/v3/docker" +) + +const ( + postgresImageTag = "15.1" + postgresUser = "postgres" + postgresPassword = "secret" + postgresDB = "taskit" +) + +type PostgresResource struct { + DB *sql.DB + DSN string + CleanUp func() error +} + +func NewPostgresResource() PostgresResource { + var db *sql.DB + + pool, err := dockertest.NewPool("") + if err != nil { + log.Fatalf("Could not construct pool: %s", err) + } + + err = pool.Client.Ping() + if err != nil { + log.Fatalf("Could not connect to Docker: %s", err) + } + + resource, err := pool.RunWithOptions(&dockertest.RunOptions{ + Repository: "postgres", + Tag: postgresImageTag, + Env: []string{ + fmt.Sprintf("POSTGRES_USER=%s", postgresUser), + fmt.Sprintf("POSTGRES_PASSWORD=%s", postgresPassword), + fmt.Sprintf("POSTGRES_DB=%s", postgresDB), + "listen_addresses = '*'", + }, + }, func(config *docker.HostConfig) { + config.AutoRemove = true + config.RestartPolicy = docker.RestartPolicy{Name: "no"} + }) + if err != nil { + log.Fatalf("Could not start resource: %s", err) + } + + hostAndPort := resource.GetHostPort("5432/tcp") + dsn := fmt.Sprintf("postgres://%s:%s@%s/%s?sslmode=disable", postgresUser, postgresPassword, hostAndPort, postgresDB) + + resource.Expire(120) + + pool.MaxWait = 120 * time.Second + if err = pool.Retry(func() error { + db, err = sql.Open("postgres", dsn) + if err != nil { + return err + } + return db.Ping() + }); err != nil { + log.Fatalf("Could not connect to docker: %s", err) + } + + cleanUp := func() error { + return pool.Purge(resource) + } + + return PostgresResource{db, dsn, cleanUp} +} From 1d8ac4c41a6bd4e33d16c51ae11c7ed461939839 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 11:07:48 +0700 Subject: [PATCH 10/18] feat: add database migration function the migration will run the database migration base on migration directory --- pkg/database/migration.go | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 pkg/database/migration.go diff --git a/pkg/database/migration.go b/pkg/database/migration.go new file mode 100644 index 0000000..53776a8 --- /dev/null +++ b/pkg/database/migration.go @@ -0,0 +1,31 @@ +package database + +import ( + "errors" + "os" + + "github.com/golang-migrate/migrate/v4" + _ "github.com/golang-migrate/migrate/v4/database/postgres" + "github.com/golang-migrate/migrate/v4/source/iofs" +) + +// Migration runs the database migrations. +// The dsn is the database connection string. +// The migrationDir is the path to the directory containing the migrations. +func Migration(dsn, migrationDir string) error { + iofsDriver, err := iofs.New(os.DirFS(migrationDir), ".") + if err != nil { + return err + } + migrator, err := migrate.NewWithSourceInstance("iofs", iofsDriver, dsn) + if err != nil { + return err + } + err = migrator.Up() + if errors.Is(err, migrate.ErrNoChange) { + return nil + } else if err != nil { + return err + } + return nil +} From 57782a574fc216d533e225feff27be0cbfbb539a Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 11:08:44 +0700 Subject: [PATCH 11/18] chore: tidy go module (dockertest and migrate) --- go.mod | 37 +- go.sum | 1849 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 1884 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index 092b72e..8a19201 100644 --- a/go.mod +++ b/go.mod @@ -2,10 +2,45 @@ module github.com/edwintantawi/taskit go 1.19 -require github.com/stretchr/testify v1.8.1 +require ( + github.com/golang-migrate/migrate/v4 v4.15.2 + github.com/lib/pq v1.10.7 + github.com/ory/dockertest/v3 v3.9.1 + github.com/stretchr/testify v1.8.1 +) require ( + github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect + github.com/Microsoft/go-winio v0.6.0 // indirect + github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect + github.com/cenkalti/backoff/v4 v4.2.0 // indirect + github.com/containerd/continuity v0.3.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect + github.com/docker/cli v20.10.23+incompatible // indirect + github.com/docker/docker v20.10.23+incompatible // indirect + github.com/docker/go-connections v0.4.0 // indirect + github.com/docker/go-units v0.5.0 // indirect + github.com/gogo/protobuf v1.3.2 // indirect + github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect + github.com/hashicorp/errwrap v1.1.0 // indirect + github.com/hashicorp/go-multierror v1.1.1 // indirect + github.com/imdario/mergo v0.3.13 // indirect + github.com/mitchellh/mapstructure v1.5.0 // indirect + github.com/moby/term v0.0.0-20221205130635-1aeaba878587 // indirect + github.com/opencontainers/go-digest v1.0.0 // indirect + github.com/opencontainers/image-spec v1.0.2 // indirect + github.com/opencontainers/runc v1.1.4 // indirect + github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect + github.com/sirupsen/logrus v1.9.0 // indirect + github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect + github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect + github.com/xeipuuv/gojsonschema v1.2.0 // indirect + go.uber.org/atomic v1.7.0 // indirect + golang.org/x/mod v0.7.0 // indirect + golang.org/x/net v0.5.0 // indirect + golang.org/x/sys v0.4.0 // indirect + golang.org/x/tools v0.5.0 // indirect + gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index 2ec90f7..8586730 100644 --- a/go.sum +++ b/go.sum @@ -1,17 +1,1864 @@ +bazil.org/fuse v0.0.0-20160811212531-371fbbdaa898/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8= +bazil.org/fuse v0.0.0-20200407214033-5883e5a4b512/go.mod h1:FbcW6z/2VytnFDhZfumh8Ss8zxHE6qpMP5sHTRe0EaM= +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 v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY= +cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM= +cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY= +cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ= +cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= +cloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4= +cloud.google.com/go v0.97.0/go.mod h1:GF7l59pYBVlXQIBLx3a761cZ41F9bBH3JUlihCt2Udc= +cloud.google.com/go v0.98.0/go.mod h1:ua6Ush4NALrHk5QXDWnjvZHN93OuF0HfuEPq9I1X0cM= +cloud.google.com/go v0.99.0/go.mod h1:w0Xx2nLzqWJPuozYQX+hFfCSI8WioryfRDzkoI/Y2ZA= +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/spanner v1.28.0/go.mod h1:7m6mtQZn/hMbMfx62ct5EWrGND4DNqkXyrmBPRS+OJo= +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= +gioui.org v0.0.0-20210308172011-57750fc8a0a6/go.mod h1:RSH6KIUZ0p2xy5zHDxgAM4zumjgTw83q2ge/PI+yyw8= +github.com/AdaLogics/go-fuzz-headers v0.0.0-20210715213245-6c3934b029d8/go.mod h1:CzsSbkDixRphAF5hS6wbMKq0eI6ccJRb7/A0M6JBnwg= +github.com/Azure/azure-pipeline-go v0.2.3/go.mod h1:x841ezTBIMG6O3lAcl8ATHnsOPVl2bqk7S3ta6S6u4k= +github.com/Azure/azure-sdk-for-go v16.2.1+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-storage-blob-go v0.14.0/go.mod h1:SMqIBi+SuiQH32bvyjngEewEeXoPfKMgWlBDaYf6fck= +github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Azure/go-ansiterm v0.0.0-20210608223527-2377c96fe795/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= +github.com/Azure/go-autorest v10.8.1+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.11.1/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= +github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= +github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg= +github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= +github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= +github.com/Azure/go-autorest/autorest/adal v0.9.16/go.mod h1:tGMin8I49Yij6AQ+rvV+Xa/zwxYQB5hmsd6DkfAx2+A= +github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= +github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= +github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= +github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= +github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= +github.com/ClickHouse/clickhouse-go v1.4.3/go.mod h1:EaI/sW7Azgz9UATzd5ZdZHRUhHgv5+JMS9NSr2smCJI= +github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA= +github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA= +github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw= +github.com/Microsoft/go-winio v0.4.16-0.20201130162521-d1ffc52c7331/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= +github.com/Microsoft/go-winio v0.4.16/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= +github.com/Microsoft/go-winio v0.4.17-0.20210211115548-6eac466e5fa3/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.4.17-0.20210324224401-5516f17a5958/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.4.17/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.5.1/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= +github.com/Microsoft/go-winio v0.6.0 h1:slsWYD/zyx7lCXoZVlvQrj0hPTM1HI4+v1sIda2yDvg= +github.com/Microsoft/go-winio v0.6.0/go.mod h1:cTAf44im0RAYeL23bpB+fzCyDH2MJiz2BO69KH/soAE= +github.com/Microsoft/hcsshim v0.8.6/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= +github.com/Microsoft/hcsshim v0.8.7-0.20190325164909-8abdbb8205e4/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= +github.com/Microsoft/hcsshim v0.8.7/go.mod h1:OHd7sQqRFrYd3RmSgbgji+ctCwkbq2wbEYNSzOYtcBQ= +github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8= +github.com/Microsoft/hcsshim v0.8.14/go.mod h1:NtVKoYxQuTLx6gEq0L96c9Ju4JbRJ4nY2ow3VK6a9Lg= +github.com/Microsoft/hcsshim v0.8.15/go.mod h1:x38A4YbHbdxJtc0sF6oIz+RG0npwSCAvn69iY6URG00= +github.com/Microsoft/hcsshim v0.8.16/go.mod h1:o5/SZqmR7x9JNKsW3pu+nqHm0MF8vbA+VxGOoXdC600= +github.com/Microsoft/hcsshim v0.8.20/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= +github.com/Microsoft/hcsshim v0.8.21/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= +github.com/Microsoft/hcsshim v0.8.23/go.mod h1:4zegtUJth7lAvFyc6cH2gGQ5B3OFQim01nnU2M8jKDg= +github.com/Microsoft/hcsshim v0.9.2/go.mod h1:7pLA8lDk46WKDWlVsENo92gC0XFa8rbKfyFRBqxEbCc= +github.com/Microsoft/hcsshim/test v0.0.0-20201218223536-d3e5debf77da/go.mod h1:5hlzMzRKMLyo42nCZ9oml8AdTlq/0cvIaBv6tK1RehU= +github.com/Microsoft/hcsshim/test v0.0.0-20210227013316-43a75bb4edd3/go.mod h1:mw7qgWloBUl75W/gVH3cQszUg1+gUITj7D6NY7ywVnY= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= +github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= +github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw= +github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk= +github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= +github.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw= +github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/alexflint/go-filemutex v0.0.0-20171022225611-72bdc8eae2ae/go.mod h1:CgnQgUtFrFz9mxFNtED3jI5tLDjKlOM+oUF/sTk6ps0= +github.com/alexflint/go-filemutex v1.1.0/go.mod h1:7P4iRhttt/nUvUOrYIhcpMzv2G6CY9UnI16Z+UJqRyk= +github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/apache/arrow/go/arrow v0.0.0-20210818145353-234c94e4ce64/go.mod h1:2qMFB56yOP3KzkB3PbYZ4AlUFg3a88F67TIx5lB/WwY= +github.com/apache/arrow/go/arrow v0.0.0-20211013220434-5962184e7a30/go.mod h1:Q7yQnSMnLvcXlZ8RV+jwz/6y1rQTqbX6C82SndT52Zs= +github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= +github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= +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/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= +github.com/aws/aws-sdk-go v1.15.11/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= +github.com/aws/aws-sdk-go v1.17.7/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= +github.com/aws/aws-sdk-go-v2 v1.8.0/go.mod h1:xEFuWz+3TYdlPRuo+CqATbeDWIWyaT5uAPwPaWtgse0= +github.com/aws/aws-sdk-go-v2 v1.9.2/go.mod h1:cK/D0BBs0b/oWPIcX/Z/obahJK1TT7IPVjy53i/mX/4= +github.com/aws/aws-sdk-go-v2/config v1.6.0/go.mod h1:TNtBVmka80lRPk5+S9ZqVfFszOQAGJJ9KbT3EM3CHNU= +github.com/aws/aws-sdk-go-v2/config v1.8.3/go.mod h1:4AEiLtAb8kLs7vgw2ZV3p2VZ1+hBavOc84hqxVNpCyw= +github.com/aws/aws-sdk-go-v2/credentials v1.3.2/go.mod h1:PACKuTJdt6AlXvEq8rFI4eDmoqDFC5DpVKQbWysaDgM= +github.com/aws/aws-sdk-go-v2/credentials v1.4.3/go.mod h1:FNNC6nQZQUuyhq5aE5c7ata8o9e4ECGmS4lAXC7o1mQ= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.4.0/go.mod h1:Mj/U8OpDbcVcoctrYwA2bak8k/HFPdcLzI/vaiXMwuM= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.6.0/go.mod h1:gqlclDEZp4aqJOancXK6TN24aKhT0W0Ae9MHk3wzTMM= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.4.0/go.mod h1:eHwXu2+uE/T6gpnYWwBwqoeqRf9IXyCcolyOWDRAErQ= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.5.4/go.mod h1:Ex7XQmbFmgFHrjUX6TN3mApKW5Hglyga+F7wZHTtYhA= +github.com/aws/aws-sdk-go-v2/internal/ini v1.2.0/go.mod h1:Q5jATQc+f1MfZp3PDMhn6ry18hGvE0i8yvbXoKbnZaE= +github.com/aws/aws-sdk-go-v2/internal/ini v1.2.4/go.mod h1:ZcBrrI3zBKlhGFNYWvju0I3TR93I7YIgAfy82Fh4lcQ= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.2.2/go.mod h1:EASdTcM1lGhUe1/p4gkojHwlGJkeoRjjr1sRCzup3Is= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.3.0/go.mod h1:v8ygadNyATSm6elwJ/4gzJwcFhri9RqS8skgHKiwXPU= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.2.2/go.mod h1:NXmNI41bdEsJMrD0v9rUvbGCB5GwdBEpKvUvIY3vTFg= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.3.2/go.mod h1:72HRZDLMtmVQiLG2tLfQcaWLCssELvGl+Zf2WVxMmR8= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.5.2/go.mod h1:QuL2Ym8BkrLmN4lUofXYq6000/i5jPjosCNK//t6gak= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.7.2/go.mod h1:np7TMuJNT83O0oDOSF8i4dF3dvGqA6hPYYo6YYkzgRA= +github.com/aws/aws-sdk-go-v2/service/s3 v1.12.0/go.mod h1:6J++A5xpo7QDsIeSqPK4UHqMSyPOCopa+zKtqAMhqVQ= +github.com/aws/aws-sdk-go-v2/service/s3 v1.16.1/go.mod h1:CQe/KvWV1AqRc65KqeJjrLzr5X2ijnFTTVzJW0VBRCI= +github.com/aws/aws-sdk-go-v2/service/sso v1.3.2/go.mod h1:J21I6kF+d/6XHVk7kp/cx9YVD2TMD2TbLwtRGVcinXo= +github.com/aws/aws-sdk-go-v2/service/sso v1.4.2/go.mod h1:NBvT9R1MEF+Ud6ApJKM0G+IkPchKS7p7c2YPKwHmBOk= +github.com/aws/aws-sdk-go-v2/service/sts v1.6.1/go.mod h1:hLZ/AnkIKHLuPGjEiyghNEdvJ2PP0MgOxcmv9EBJ4xs= +github.com/aws/aws-sdk-go-v2/service/sts v1.7.2/go.mod h1:8EzeIqfWt2wWT4rJVu3f21TfrhJ8AEMzVybRNSb/b4g= +github.com/aws/smithy-go v1.7.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E= +github.com/aws/smithy-go v1.8.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E= +github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= +github.com/beorn7/perks v0.0.0-20160804104726-4c0e84591b9a/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bitly/go-hostpool v0.0.0-20171023180738-a3a6125de932/go.mod h1:NOuUCSz6Q9T7+igc/hlvDOUdtWKryOrtFyIVABv/p7k= +github.com/bitly/go-simplejson v0.5.0/go.mod h1:cXHtHw4XUPsvGaxgjIAn8PhEWG9NfngEKAMDJEczWVA= +github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA= +github.com/bkaradzic/go-lz4 v1.0.0/go.mod h1:0YdlkowM3VswSROI7qDxhRvJ3sLhlFrRRwjwegp5jy4= +github.com/bketelsen/crypt v0.0.3-0.20200106085610-5cbc8cc4026c/go.mod h1:MKsuJmJgSg28kpZDP6UIiPt0e0Oz0kqKNGyRaWEPv84= +github.com/blang/semver v3.1.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= +github.com/boombuler/barcode v1.0.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= +github.com/bshuster-repo/logrus-logstash-hook v0.4.1/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= +github.com/buger/jsonparser v0.0.0-20180808090653-f4dd9f5a6b44/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= +github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0= +github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= +github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= +github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= +github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= +github.com/cenkalti/backoff/v4 v4.1.2/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= +github.com/cenkalti/backoff/v4 v4.2.0 h1:HN5dHm3WBOgndBH6E8V0q2jIYIR3s9yglV8k/+MN3u4= +github.com/cenkalti/backoff/v4 v4.2.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= +github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/census-instrumentation/opencensus-proto v0.3.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= +github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= +github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/checkpoint-restore/go-criu/v4 v4.1.0/go.mod h1:xUQBLp4RLc5zJtWY++yjOoMoB5lihDt7fai+75m+rGw= +github.com/checkpoint-restore/go-criu/v5 v5.0.0/go.mod h1:cfwC0EG7HMUenopBsUf9d89JlCLQIfgVcNsNN0t6T2M= +github.com/checkpoint-restore/go-criu/v5 v5.3.0/go.mod h1:E/eQpaFtUKGOOSEBZgmKAcn+zUUwWxqcaKZlF54wK8E= +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/cilium/ebpf v0.0.0-20200110133405-4032b1d8aae3/go.mod h1:MA5e5Lr8slmEg9bt0VpxxWqJlO4iwu3FBdHUzV7wQVg= +github.com/cilium/ebpf v0.0.0-20200702112145-1c8d4c9ef775/go.mod h1:7cR51M8ViRLIdUjrmSXlK9pkrsDlLHbO8jiB8X8JnOc= +github.com/cilium/ebpf v0.2.0/go.mod h1:To2CFviqOWL/M0gIMsvSMlqe7em/l1ALkX1PyjrX2Qs= +github.com/cilium/ebpf v0.4.0/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= +github.com/cilium/ebpf v0.6.2/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= +github.com/cilium/ebpf v0.7.0/go.mod h1:/oI2+1shJiTGAMgl6/RgJr36Eo1jzrRcAWbcXO2usCA= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/cloudflare/golz4 v0.0.0-20150217214814-ef862a3cdc58/go.mod h1:EOBUe0h4xcZ5GoxqC5SDxFQ8gwyZPKQoEzownBlhI80= +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/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= +github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20211130200136-a8f946100490/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ= +github.com/cockroachdb/cockroach-go/v2 v2.1.1/go.mod h1:7NtUnP6eK+l6k483WSYNrq3Kb23bWV10IRV1TyeSpwM= +github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= +github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo= +github.com/cockroachdb/errors v1.2.4/go.mod h1:rQD95gz6FARkaKkQXUksEje/d9a6wBJoCr5oaCLELYA= +github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u985jwjWRlyHXQbwatDASoW0RMlZ/3i9yJHE2xLkI= +github.com/containerd/aufs v0.0.0-20200908144142-dab0cbea06f4/go.mod h1:nukgQABAEopAHvB6j7cnP5zJ+/3aVcE7hCYqvIwAHyE= +github.com/containerd/aufs v0.0.0-20201003224125-76a6863f2989/go.mod h1:AkGGQs9NM2vtYHaUen+NljV0/baGCAPELGm2q9ZXpWU= +github.com/containerd/aufs v0.0.0-20210316121734-20793ff83c97/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= +github.com/containerd/aufs v1.0.0/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= +github.com/containerd/btrfs v0.0.0-20201111183144-404b9149801e/go.mod h1:jg2QkJcsabfHugurUvvPhS3E08Oxiuh5W/g1ybB4e0E= +github.com/containerd/btrfs v0.0.0-20210316141732-918d888fb676/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= +github.com/containerd/btrfs v1.0.0/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= +github.com/containerd/cgroups v0.0.0-20190717030353-c4b9ac5c7601/go.mod h1:X9rLEHIqSf/wfK8NsPqxJmeZgW4pcfzdXITDrUSJ6uI= +github.com/containerd/cgroups v0.0.0-20190919134610-bf292b21730f/go.mod h1:OApqhQ4XNSNC13gXIwDjhOQxjWa/NxkwZXJ1EvqT0ko= +github.com/containerd/cgroups v0.0.0-20200531161412-0dbf7f05ba59/go.mod h1:pA0z1pT8KYB3TCXK/ocprsh7MAkoW8bZVzPdih9snmM= +github.com/containerd/cgroups v0.0.0-20200710171044-318312a37340/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= +github.com/containerd/cgroups v0.0.0-20200824123100-0b889c03f102/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= +github.com/containerd/cgroups v0.0.0-20210114181951-8a68de567b68/go.mod h1:ZJeTFisyysqgcCdecO57Dj79RfL0LNeGiFUqLYQRYLE= +github.com/containerd/cgroups v1.0.1/go.mod h1:0SJrPIenamHDcZhEcJMNBB85rHcUsw4f25ZfBiPYRkU= +github.com/containerd/cgroups v1.0.3/go.mod h1:/ofk34relqNjSGyqPrmEULrO4Sc8LJhvJmWbUCUKqj8= +github.com/containerd/console v0.0.0-20180822173158-c12b1e7919c1/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= +github.com/containerd/console v0.0.0-20181022165439-0650fd9eeb50/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= +github.com/containerd/console v0.0.0-20191206165004-02ecf6a7291e/go.mod h1:8Pf4gM6VEbTNRIT26AyyU7hxdQU3MvAvxVI0sc00XBE= +github.com/containerd/console v1.0.1/go.mod h1:XUsP6YE/mKtz6bxc+I8UiKKTP04qjQL4qcS3XoQ5xkw= +github.com/containerd/console v1.0.2/go.mod h1:ytZPjGgY2oeTkAONYafi2kSj0aYggsf8acV1PGKCbzQ= +github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U= +github.com/containerd/containerd v1.2.10/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.0-beta.2.0.20190828155532-0293cbd26c69/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.0/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.2/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.0-beta.2.0.20200729163537-40b22ef07410/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.1/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.3/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.9/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.5.0-beta.1/go.mod h1:5HfvG1V2FsKesEGQ17k5/T7V960Tmcumvqn8Mc+pCYQ= +github.com/containerd/containerd v1.5.0-beta.3/go.mod h1:/wr9AVtEM7x9c+n0+stptlo/uBBoBORwEx6ardVcmKU= +github.com/containerd/containerd v1.5.0-beta.4/go.mod h1:GmdgZd2zA2GYIBZ0w09ZvgqEq8EfBp/m3lcVZIvPHhI= +github.com/containerd/containerd v1.5.0-rc.0/go.mod h1:V/IXoMqNGgBlabz3tHD2TWDoTJseu1FGOKuoA4nNb2s= +github.com/containerd/containerd v1.5.1/go.mod h1:0DOxVqwDy2iZvrZp2JUx/E+hS0UNTVn7dJnIOwtYR4g= +github.com/containerd/containerd v1.5.7/go.mod h1:gyvv6+ugqY25TiXxcZC3L5yOeYgEw0QMhscqVp1AR9c= +github.com/containerd/containerd v1.5.8/go.mod h1:YdFSv5bTFLpG2HIYmfqDpSYYTDX+mc5qtSuYx1YUb/s= +github.com/containerd/containerd v1.6.1/go.mod h1:1nJz5xCZPusx6jJU8Frfct988y0NpumIq9ODB0kLtoE= +github.com/containerd/continuity v0.0.0-20190426062206-aaeac12a7ffc/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20190815185530-f2a389ac0a02/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20191127005431-f65d91d395eb/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20200710164510-efbc4488d8fe/go.mod h1:cECdGN1O8G9bgKTlLhuPJimka6Xb/Gg7vYzCTNVxhvo= +github.com/containerd/continuity v0.0.0-20201208142359-180525291bb7/go.mod h1:kR3BEg7bDFaEddKm54WSmrol1fKWDU1nKYkgrcgZT7Y= +github.com/containerd/continuity v0.0.0-20210208174643-50096c924a4e/go.mod h1:EXlVlkqNba9rJe3j7w3Xa924itAMLgZH4UD/Q4PExuQ= +github.com/containerd/continuity v0.1.0/go.mod h1:ICJu0PwR54nI0yPEnJ6jcS+J7CZAUXrLh8lPo2knzsM= +github.com/containerd/continuity v0.2.2/go.mod h1:pWygW9u7LtS1o4N/Tn0FoCFDIXZ7rxcMX7HX1Dmibvk= +github.com/containerd/continuity v0.3.0 h1:nisirsYROK15TAMVukJOUyGJjz4BNQJBVsNvAXZJ/eg= +github.com/containerd/continuity v0.3.0/go.mod h1:wJEAIwKOm/pBZuBd0JmeTvnLquTB1Ag8espWhkykbPM= +github.com/containerd/fifo v0.0.0-20180307165137-3d5202aec260/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= +github.com/containerd/fifo v0.0.0-20190226154929-a9fb20d87448/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= +github.com/containerd/fifo v0.0.0-20200410184934-f15a3290365b/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= +github.com/containerd/fifo v0.0.0-20201026212402-0724c46b320c/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= +github.com/containerd/fifo v0.0.0-20210316144830-115abcc95a1d/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= +github.com/containerd/fifo v1.0.0/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= +github.com/containerd/go-cni v1.0.1/go.mod h1:+vUpYxKvAF72G9i1WoDOiPGRtQpqsNW/ZHtSlv++smU= +github.com/containerd/go-cni v1.0.2/go.mod h1:nrNABBHzu0ZwCug9Ije8hL2xBCYh/pjfMb1aZGrrohk= +github.com/containerd/go-cni v1.1.0/go.mod h1:Rflh2EJ/++BA2/vY5ao3K6WJRR/bZKsX123aPk+kUtA= +github.com/containerd/go-cni v1.1.3/go.mod h1:Rflh2EJ/++BA2/vY5ao3K6WJRR/bZKsX123aPk+kUtA= +github.com/containerd/go-runc v0.0.0-20180907222934-5a6d9f37cfa3/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= +github.com/containerd/go-runc v0.0.0-20190911050354-e029b79d8cda/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= +github.com/containerd/go-runc v0.0.0-20200220073739-7016d3ce2328/go.mod h1:PpyHrqVs8FTi9vpyHwPwiNEGaACDxT/N/pLcvMSRA9g= +github.com/containerd/go-runc v0.0.0-20201020171139-16b287bc67d0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= +github.com/containerd/go-runc v1.0.0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= +github.com/containerd/imgcrypt v1.0.1/go.mod h1:mdd8cEPW7TPgNG4FpuP3sGBiQ7Yi/zak9TYCG3juvb0= +github.com/containerd/imgcrypt v1.0.4-0.20210301171431-0ae5c75f59ba/go.mod h1:6TNsg0ctmizkrOgXRNQjAPFWpMYRWuiB6dSF4Pfa5SA= +github.com/containerd/imgcrypt v1.1.1-0.20210312161619-7ed62a527887/go.mod h1:5AZJNI6sLHJljKuI9IHnw1pWqo/F0nGDOuR9zgTs7ow= +github.com/containerd/imgcrypt v1.1.1/go.mod h1:xpLnwiQmEUJPvQoAapeb2SNCxz7Xr6PJrXQb0Dpc4ms= +github.com/containerd/imgcrypt v1.1.3/go.mod h1:/TPA1GIDXMzbj01yd8pIbQiLdQxed5ue1wb8bP7PQu4= +github.com/containerd/nri v0.0.0-20201007170849-eb1350a75164/go.mod h1:+2wGSDGFYfE5+So4M5syatU0N0f0LbWpuqyMi4/BE8c= +github.com/containerd/nri v0.0.0-20210316161719-dbaa18c31c14/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= +github.com/containerd/nri v0.1.0/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= +github.com/containerd/stargz-snapshotter/estargz v0.4.1/go.mod h1:x7Q9dg9QYb4+ELgxmo4gBUeJB0tl5dqH1Sdz0nJU1QM= +github.com/containerd/ttrpc v0.0.0-20190828154514-0e0f228740de/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= +github.com/containerd/ttrpc v0.0.0-20190828172938-92c8520ef9f8/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= +github.com/containerd/ttrpc v0.0.0-20191028202541-4f1b8fe65a5c/go.mod h1:LPm1u0xBw8r8NOKoOdNMeVHSawSsltak+Ihv+etqsE8= +github.com/containerd/ttrpc v1.0.1/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v1.0.2/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v1.1.0/go.mod h1:XX4ZTnoOId4HklF4edwc4DcqskFZuvXB1Evzy5KFQpQ= +github.com/containerd/typeurl v0.0.0-20180627222232-a93fcdb778cd/go.mod h1:Cm3kwCdlkCfMSHURc+r6fwoGH6/F1hH3S4sg0rLFWPc= +github.com/containerd/typeurl v0.0.0-20190911142611-5eb25027c9fd/go.mod h1:GeKYzf2pQcqv7tJ0AoCuuhtnqhva5LNU3U+OyKxxJpk= +github.com/containerd/typeurl v1.0.1/go.mod h1:TB1hUtrpaiO88KEK56ijojHS1+NeF0izUACaJW2mdXg= +github.com/containerd/typeurl v1.0.2/go.mod h1:9trJWW2sRlGub4wZJRTW83VtbOLS6hwcDZXTn6oPz9s= +github.com/containerd/zfs v0.0.0-20200918131355-0a33824f23a2/go.mod h1:8IgZOBdv8fAgXddBT4dBXJPtxyRsejFIpXoklgxgEjw= +github.com/containerd/zfs v0.0.0-20210301145711-11e8f1707f62/go.mod h1:A9zfAbMlQwE+/is6hi0Xw8ktpL+6glmqZYtevJgaB8Y= +github.com/containerd/zfs v0.0.0-20210315114300-dde8f0fda960/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containerd/zfs v0.0.0-20210324211415-d5c4544f0433/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containerd/zfs v1.0.0/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containernetworking/cni v0.7.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v0.8.0/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v0.8.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v1.0.1/go.mod h1:AKuhXbN5EzmD4yTNtfSsX3tPcmtrBI6QcRV0NiNt15Y= +github.com/containernetworking/plugins v0.8.6/go.mod h1:qnw5mN19D8fIwkqW7oHHYDHVlzhJpcY6TQxn/fUyDDM= +github.com/containernetworking/plugins v0.9.1/go.mod h1:xP/idU2ldlzN6m4p5LmGiwRDjeJr6FLK6vuiUwoH7P8= +github.com/containernetworking/plugins v1.0.1/go.mod h1:QHCfGpaTwYTbbH+nZXKVTxNBDZcxSOplJT5ico8/FLE= +github.com/containers/ocicrypt v1.0.1/go.mod h1:MeJDzk1RJHv89LjsH0Sp5KTY3ZYkjXO/C+bKAeWFIrc= +github.com/containers/ocicrypt v1.1.0/go.mod h1:b8AOe0YR67uU8OqfVNcznfFpAzu3rdgUV4GP9qXPfu4= +github.com/containers/ocicrypt v1.1.1/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= +github.com/containers/ocicrypt v1.1.2/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= +github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= +github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/go-iptables v0.4.5/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= +github.com/coreos/go-iptables v0.5.0/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= +github.com/coreos/go-iptables v0.6.0/go.mod h1:Qe8Bv2Xik5FyTXwgIbLAnv2sWSBmvWdFETJConOQ//Q= +github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd v0.0.0-20161114122254-48702e0da86b/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd/v22 v22.0.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= +github.com/cyphar/filepath-securejoin v0.2.2/go.mod h1:FpkQEhXnPnOthhzymB7CGsFk2G9VLXONKD9G7QGMM+4= +github.com/cyphar/filepath-securejoin v0.2.3/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/cznic/mathutil v0.0.0-20180504122225-ca4c9f2c1369/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM= +github.com/d2g/dhcp4 v0.0.0-20170904100407-a1d1b6c41b1c/go.mod h1:Ct2BUK8SB0YC1SMSibvLzxjeJLnrYEVLULFNiHY9YfQ= +github.com/d2g/dhcp4client v1.0.0/go.mod h1:j0hNfjhrt2SxUOw55nL0ATM/z4Yt3t2Kd1mW34z5W5s= +github.com/d2g/dhcp4server v0.0.0-20181031114812-7d4a0a7f59a5/go.mod h1:Eo87+Kg/IX2hfWJfwxMzLyuSZyxSoAug2nGa1G2QAi8= +github.com/d2g/hardwareaddr v0.0.0-20190221164911-e7d9fbe030e4/go.mod h1:bMl4RjIciD2oAxI7DmWRx6gbeqrkoLqv3MV0vzNad+I= 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/denisenkom/go-mssqldb v0.10.0/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU= +github.com/denverdino/aliyungo v0.0.0-20190125010748-a747050bb1ba/go.mod h1:dV8lFg6daOBZbT6/BDGIz6Y3WFGn8juu6G+CQ6LHtl0= +github.com/dgrijalva/jwt-go v0.0.0-20170104182250-a601269ab70c/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= +github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= +github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= +github.com/dhui/dktest v0.3.10 h1:0frpeeoM9pHouHjhLeZDuDTJ0PqjDTrycaHaMmkJAo8= +github.com/dhui/dktest v0.3.10/go.mod h1:h5Enh0nG3Qbo9WjNFRrwmKUaePEBhXMOygbz3Ww7Sz0= +github.com/dnaeon/go-vcr v1.0.1/go.mod h1:aBB1+wY4s93YsC3HHjMBMrwTj2R9FHDzUr9KyGc8n1E= +github.com/docker/cli v0.0.0-20191017083524-a8ff7f821017/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/cli v20.10.23+incompatible h1:qwyha/T3rXk9lfuVcn533cKFc7n/6IzL5GXVAgMVPBg= +github.com/docker/cli v20.10.23+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/distribution v0.0.0-20190905152932-14b96e55d84c/go.mod h1:0+TTO4EOBfRPhZXAeF1Vu+W3hHZ8eLp8PgKVZlcvtFY= +github.com/docker/distribution v2.7.1-0.20190205005809-0d3efadf0154+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/distribution v2.8.1+incompatible h1:Q50tZOPR6T/hjNsyc9g8/syEs6bk8XXApsHjKukMl68= +github.com/docker/distribution v2.8.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v20.10.13+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v20.10.23+incompatible h1:1ZQUUYAdh+oylOT85aA2ZcfRp22jmLhoaEcVEfK8dyA= +github.com/docker/docker v20.10.23+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker-credential-helpers v0.6.3/go.mod h1:WRaJzqw3CTB9bk10avuGsjVBZsD05qeibJ1/TYlvc0Y= +github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= +github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= +github.com/docker/go-events v0.0.0-20170721190031-9461782956ad/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= +github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= +github.com/docker/go-metrics v0.0.0-20180209012529-399ea8c73916/go.mod h1:/u0gXw0Gay3ceNrsHubL3BtdOL2fHf93USgMTe0W5dI= +github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= +github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= +github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= +github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= +github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/edsrzf/mmap-go v0.0.0-20170320065105-0bce6a688712/go.mod h1:YO35OhQPt3KJa3ryjFM5Bs14WD66h8eGKpfaBNrHW5M= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +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/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= +github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= +github.com/envoyproxy/go-control-plane v0.10.1/go.mod h1:AY7fTTXNdv/aJ2O5jwpxAPOWUZ7hQAEvzN5Pf27BkQQ= +github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/envoyproxy/protoc-gen-validate v0.6.2/go.mod h1:2t7qjJNvHPx8IjnBOzl9E9/baC+qXE/TeeyBRzgJDws= +github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.11.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= +github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/form3tech-oss/jwt-go v3.2.5+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/fsouza/fake-gcs-server v1.17.0/go.mod h1:D1rTE4YCyHFNa99oyJJ5HyclvN/0uQR+pM/VdlL83bw= +github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa/go.mod h1:KnogPXtdwXqoenmZCw6S+25EAm2MkxbG0deNDu4cbSA= +github.com/gabriel-vasile/mimetype v1.3.1/go.mod h1:fA8fi6KUiG7MgQQ+mEWotXoEOvmxRtOJlERCzSmRvr8= +github.com/gabriel-vasile/mimetype v1.4.0/go.mod h1:fA8fi6KUiG7MgQQ+mEWotXoEOvmxRtOJlERCzSmRvr8= +github.com/garyburd/redigo v0.0.0-20150301180006-535138d7bcd7/go.mod h1:NR3MbYisc3/PwhQ00EMzDiPmrwpPxAn5GI05/YaO1SY= +github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ= +github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/go-fonts/dejavu v0.1.0/go.mod h1:4Wt4I4OU2Nq9asgDCteaAaWZOV24E+0/Pwo0gppep4g= +github.com/go-fonts/latin-modern v0.2.0/go.mod h1:rQVLdDMK+mK1xscDwsqM5J8U2jrRa3T0ecnM9pNujks= +github.com/go-fonts/liberation v0.1.1/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY= +github.com/go-fonts/stix v0.1.0/go.mod h1:w/c1f0ldAUlJmLBvlbkvVXLAD+tAMqobIIQpmnUIzUY= +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-ini/ini v1.25.4/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8= +github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= +github.com/go-latex/latex v0.0.0-20210118124228-b3d85cf34e07/go.mod h1:CO1AlKB2CSIqUrmQPqA0gdRIlnLEY0gK5JGjh37zN5U= +github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= +github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= +github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= +github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v0.4.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.1/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/stdr v1.2.0/go.mod h1:YkVgnZu1ZjjL7xTxrfm/LLZBfkhTqSR1ydtm6jTKKwI= +github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= +github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= +github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg= +github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= +github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= +github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= +github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc= +github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= +github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I= +github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= +github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= +github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE= +github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= +github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= +github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0= +github.com/gobuffalo/depgen v0.0.0-20190329151759-d478694a28d3/go.mod h1:3STtPUQYuzV0gBVOY3vy6CfMm/ljR4pABfrTeHNLHUY= +github.com/gobuffalo/depgen v0.1.0/go.mod h1:+ifsuy7fhi15RWncXQQKjWS9JPkdah5sZvtHc2RXGlg= +github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= +github.com/gobuffalo/envy v1.7.0/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= +github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs= +github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= +github.com/gobuffalo/flect v0.1.3/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= +github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk= +github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e/go.mod h1:80lIj3kVJWwOrXWWMRzzdhW3DsrdjILVil/SFKBzF28= +github.com/gobuffalo/genny v0.1.0/go.mod h1:XidbUqzak3lHdS//TPu2OgiFB+51Ur5f7CSnXZ/JDvo= +github.com/gobuffalo/genny v0.1.1/go.mod h1:5TExbEyY48pfunL4QSXxlDOmdsD44RRq4mVZ0Ex28Xk= +github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw= +github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360= +github.com/gobuffalo/gogen v0.1.0/go.mod h1:8NTelM5qd8RZ15VjQTFkAW6qOMx5wBbW4dSCS3BY8gg= +github.com/gobuffalo/gogen v0.1.1/go.mod h1:y8iBtmHmGc4qa3urIyo1shvOD8JftTtfcKi+71xfDNE= +github.com/gobuffalo/here v0.6.0/go.mod h1:wAG085dHOYqUpf+Ap+WOdrPTp5IYcDAs/x7PLa8Y5fM= +github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8= +github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= +github.com/gobuffalo/mapi v1.0.2/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= +github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= +github.com/gobuffalo/packd v0.1.0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= +github.com/gobuffalo/packr/v2 v2.0.9/go.mod h1:emmyGweYTm6Kdper+iywB6YK5YzuKchGtJQZ0Odn4pQ= +github.com/gobuffalo/packr/v2 v2.2.0/go.mod h1:CaAwI0GPIAv+5wKLtv8Afwl+Cm78K/I/VCm/3ptBN+0= +github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754/go.mod h1:HhnNqWY95UYwwW3uSASeV7vtgYkT2t16hJgV3AEPUpw= +github.com/gocql/gocql v0.0.0-20210515062232-b7ef815b4556/go.mod h1:DL0ekTmBSTdlNF25Orwt/JMzqIq3EJ4MVa/J/uK64OY= +github.com/godbus/dbus v0.0.0-20151105175453-c7fdd8b5cd55/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= +github.com/godbus/dbus v0.0.0-20180201030542-885f9cc04c9c/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= +github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4= +github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/godbus/dbus/v5 v5.0.6/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/gofrs/uuid v3.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= +github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= +github.com/gogo/googleapis v1.2.0/go.mod h1:Njal3psf3qN6dwBtQfUmBZh2ybovJ0tlu3o/AC7HYjU= +github.com/gogo/googleapis v1.4.0/go.mod h1:5YRNX2z1oM5gXdAkurHa942MDgEJyk02w4OecKY87+c= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.0/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= +github.com/golang-jwt/jwt/v4 v4.1.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= +github.com/golang-migrate/migrate/v4 v4.15.2 h1:vU+M05vs6jWHKDdmE1Ecwj0BznygFc4QsdRe2E/L7kc= +github.com/golang-migrate/migrate/v4 v4.15.2/go.mod h1:f2toGLkYqD3JH+Todi4aZ2ZdbeUNx4sIwiOK96rE9Lw= +github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0= +github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +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/groupcache v0.0.0-20210331224755-41bb18bfe9da/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/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= +github.com/golang/protobuf v1.0.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +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/golang/snappy v0.0.0-20170215233205-553a64147049/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +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/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA= +github.com/google/flatbuffers v2.0.0+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= +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 h1:BKbKCqvP6I+rmFHt06ZmyQtvB8xAkWdhFyr0ZUNZcxQ= +github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-containerregistry v0.5.1/go.mod h1:Ct15B4yir3PLOP5jsy0GNeYVaIZs/MK/Jz5any1wFW0= +github.com/google/go-github/v39 v39.2.0/go.mod h1:C1s8C5aCC9L+JXIYpJM5GYytdX52vC1bLvHEF1IhBrE= +github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck= +github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.2.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/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= +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-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= +github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.3.0/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/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0= +github.com/googleapis/gax-go/v2 v2.1.1/go.mod h1:hddJymUZASv3XPyGkUpKj8pPO47Rmb0eJc8R6ouapiM= +github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= +github.com/googleapis/gnostic v0.5.1/go.mod h1:6U4PtQXGIEt/Z3h5MAT7FNofLnw9vXk2cUuW7uA/OeU= +github.com/googleapis/gnostic v0.5.5/go.mod h1:7+EbHbldMins07ALC74bsA81Ovc97DwqyJO1AENw9kA= +github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= +github.com/gorilla/handlers v0.0.0-20150720190736-60c7bfde3e33/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ= +github.com/gorilla/handlers v1.4.2/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ= +github.com/gorilla/mux v1.7.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y= +github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= +github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= +github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed/go.mod h1:tMWxXQ9wFIaZeTI9F+hmhFiGpFmhOHzyShyFUhRm0H4= +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 v0.0.0-20141028054710-7554cd9344ce/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= +github.com/hashicorp/errwrap v1.1.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 v0.0.0-20161216184304-ed905158d874/go.mod h1:JMRHfdO9jKNzS/+BTlxCjKNQHg/jZAft8U7LloJvN7I= +github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= +github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= +github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= +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/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/iancoleman/strcase v0.2.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho= +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/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.8/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.10/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= +github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/intel/goresctrl v0.2.0/go.mod h1:+CZdzouYFn5EsxgqAQTEzMfwKwuc0fVdMrT9FCCAVRQ= +github.com/j-keck/arping v0.0.0-20160618110441-2cf9dc699c56/go.mod h1:ymszkNOg6tORTn+6F6j+Jc8TOr5osrynvN6ivFWZ2GA= +github.com/j-keck/arping v1.0.2/go.mod h1:aJbELhR92bSk7tp79AWM/ftfc90EfEi2bQJrbBFOsPw= +github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= +github.com/jackc/chunkreader/v2 v2.0.0/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= +github.com/jackc/chunkreader/v2 v2.0.1/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= +github.com/jackc/pgconn v0.0.0-20190420214824-7e0022ef6ba3/go.mod h1:jkELnwuX+w9qN5YIfX0fl88Ehu4XC3keFuOJJk9pcnA= +github.com/jackc/pgconn v0.0.0-20190824142844-760dd75542eb/go.mod h1:lLjNuW/+OfW9/pnVKPazfWOgNfH2aPem8YQ7ilXGvJE= +github.com/jackc/pgconn v0.0.0-20190831204454-2fabfa3c18b7/go.mod h1:ZJKsE/KZfsUgOEh9hBm+xYTstcNHg7UPMVJqRfQxq4s= +github.com/jackc/pgconn v1.4.0/go.mod h1:Y2O3ZDF0q4mMacyWV3AstPJpeHXWGEetiFttmq5lahk= +github.com/jackc/pgconn v1.5.0/go.mod h1:QeD3lBfpTFe8WUnPZWN5KY/mB8FGMIYRdd8P8Jr0fAI= +github.com/jackc/pgconn v1.5.1-0.20200601181101-fa742c524853/go.mod h1:QeD3lBfpTFe8WUnPZWN5KY/mB8FGMIYRdd8P8Jr0fAI= +github.com/jackc/pgconn v1.8.0/go.mod h1:1C2Pb36bGIP9QHGBYCjnyhqu7Rv3sGshaQUvmfGIB/o= +github.com/jackc/pgerrcode v0.0.0-20201024163028-a0d42d470451/go.mod h1:a/s9Lp5W7n/DD0VrVoyJ00FbP2ytTPDVOivvn2bMlds= +github.com/jackc/pgio v1.0.0/go.mod h1:oP+2QK2wFfUWgr+gxjoBH9KGBb31Eio69xUb0w5bYf8= +github.com/jackc/pgmock v0.0.0-20190831213851-13a1b77aafa2/go.mod h1:fGZlG77KXmcq05nJLRkk0+p82V8B8Dw8KN2/V9c/OAE= +github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= +github.com/jackc/pgproto3 v1.1.0/go.mod h1:eR5FA3leWg7p9aeAqi37XOTgTIbkABlvcPB3E5rlc78= +github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190420180111-c116219b62db/go.mod h1:bhq50y+xrl9n5mRYyCBFKkpRVTLYJVWeCc+mEAI3yXA= +github.com/jackc/pgproto3/v2 v2.0.0-alpha1.0.20190609003834-432c2951c711/go.mod h1:uH0AWtUmuShn0bcesswc4aBTWGvw0cAxIJp+6OB//Wg= +github.com/jackc/pgproto3/v2 v2.0.0-rc3/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= +github.com/jackc/pgproto3/v2 v2.0.0-rc3.0.20190831210041-4c03ce451f29/go.mod h1:ryONWYqW6dqSg1Lw6vXNMXoBJhpzvWKnT95C46ckYeM= +github.com/jackc/pgproto3/v2 v2.0.1/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgproto3/v2 v2.0.6/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgproto3/v2 v2.0.7/go.mod h1:WfJCnwN3HIg9Ish/j3sgWXnAfK8A9Y0bwXYU5xKaEdA= +github.com/jackc/pgservicefile v0.0.0-20200307190119-3430c5407db8/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E= +github.com/jackc/pgservicefile v0.0.0-20200714003250-2b9c44734f2b/go.mod h1:vsD4gTJCa9TptPL8sPkXrLZ+hDuNrZCnj29CQpr4X1E= +github.com/jackc/pgtype v0.0.0-20190421001408-4ed0de4755e0/go.mod h1:hdSHsc1V01CGwFsrv11mJRHWJ6aifDLfdV3aVjFF0zg= +github.com/jackc/pgtype v0.0.0-20190824184912-ab885b375b90/go.mod h1:KcahbBH1nCMSo2DXpzsoWOAfFkdEtEJpPbVLq8eE+mc= +github.com/jackc/pgtype v0.0.0-20190828014616-a8802b16cc59/go.mod h1:MWlu30kVJrUS8lot6TQqcg7mtthZ9T0EoIBFiJcmcyw= +github.com/jackc/pgtype v1.2.0/go.mod h1:5m2OfMh1wTK7x+Fk952IDmI4nw3nPrvtQdM0ZT4WpC0= +github.com/jackc/pgtype v1.3.1-0.20200510190516-8cd94a14c75a/go.mod h1:vaogEUkALtxZMCH411K+tKzNpwzCKU+AnPzBKZ+I+Po= +github.com/jackc/pgtype v1.3.1-0.20200606141011-f6355165a91c/go.mod h1:cvk9Bgu/VzJ9/lxTO5R5sf80p0DiucVtN7ZxvaC4GmQ= +github.com/jackc/pgtype v1.6.2/go.mod h1:JCULISAZBFGrHaOXIIFiyfzW5VY0GRitRr8NeJsrdig= +github.com/jackc/pgx/v4 v4.0.0-20190420224344-cc3461e65d96/go.mod h1:mdxmSJJuR08CZQyj1PVQBHy9XOp5p8/SHH6a0psbY9Y= +github.com/jackc/pgx/v4 v4.0.0-20190421002000-1b8f0016e912/go.mod h1:no/Y67Jkk/9WuGR0JG/JseM9irFbnEPbuWV2EELPNuM= +github.com/jackc/pgx/v4 v4.0.0-pre1.0.20190824185557-6972a5742186/go.mod h1:X+GQnOEnf1dqHGpw7JmHqHc1NxDoalibchSk9/RWuDc= +github.com/jackc/pgx/v4 v4.5.0/go.mod h1:EpAKPLdnTorwmPUUsqrPxy5fphV18j9q3wrfRXgo+kA= +github.com/jackc/pgx/v4 v4.6.1-0.20200510190926-94ba730bb1e9/go.mod h1:t3/cdRQl6fOLDxqtlyhe9UWgfIi9R8+8v8GKV5TRA/o= +github.com/jackc/pgx/v4 v4.6.1-0.20200606145419-4e5062306904/go.mod h1:ZDaNWkt9sW1JMiNn0kdYBaLelIhw7Pg4qd+Vk6tw7Hg= +github.com/jackc/pgx/v4 v4.10.1/go.mod h1:QlrWebbs3kqEZPHCTGyxecvzG6tvIsYu+A5b1raylkA= +github.com/jackc/puddle v0.0.0-20190413234325-e4ced69a3a2b/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v0.0.0-20190608224051-11cab39313c9/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v1.1.0/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v1.1.1/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jackc/puddle v1.1.3/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= +github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= +github.com/jinzhu/now v1.1.1/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= +github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jmespath/go-jmespath v0.0.0-20160803190731-bd40a432e4c7/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= +github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= +github.com/jmoiron/sqlx v1.2.0/go.mod h1:1FEQNm3xlJgrMD+FBdI9+xvCksHtbpVBBw5dYhBSsks= +github.com/jmoiron/sqlx v1.3.1/go.mod h1:2BljVx/86SuTyjE+aPYlHCTNvZrnJXghYGpNiXLBMCQ= +github.com/joefitzgerald/rainbow-reporter v0.1.0/go.mod h1:481CNgqmVHQZzdIbN52CupLJyoVwB10FQ/IQlF1pdL8= +github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg= +github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/jonboulle/clockwork v0.2.2/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= +github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= +github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +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/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= +github.com/jung-kurt/gofpdf v1.0.0/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= +github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= +github.com/k0kubun/colorstring v0.0.0-20150214042306-9440f1994b88/go.mod h1:3w7q1U84EfirKl04SVQ/s7nPm1ZPhiXd34z40TNz36k= +github.com/k0kubun/pp v2.3.0+incompatible/go.mod h1:GWse8YhT0p8pT4ir3ZgBbfZild3tgzSScAn6HmfYukg= +github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0/go.mod h1:1NbS8ALrpOvjt0rHPNLyCIeMtbizbir8U//inJ+zuB8= +github.com/karrick/godirwalk v1.8.0/go.mod h1:H5KPZjojv4lE+QYImBI8xVtrBRgYrIVsaRPx4tDPEn4= +github.com/karrick/godirwalk v1.10.3/go.mod h1:RoGL9dQei4vP9ilrpETWE8CLOZ1kiN0LhBygSwrAsHA= +github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8= +github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= +github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= +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/klauspost/compress v1.9.5/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A= +github.com/klauspost/compress v1.11.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= +github.com/klauspost/compress v1.11.13/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= +github.com/klauspost/compress v1.13.1/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= +github.com/klauspost/compress v1.13.4/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= +github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= +github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= +github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= +github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= +github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/ktrysmt/go-bitbucket v0.6.4/go.mod h1:9u0v3hsd2rqCHRIpbir1oP7F58uo5dq19sBYvuMoyQ4= +github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lib/pq v1.1.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lib/pq v1.3.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= +github.com/lib/pq v1.8.0/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= +github.com/lib/pq v1.10.0/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= +github.com/lib/pq v1.10.7 h1:p7ZhMD+KsSRozJr34udlUrhboJwWAgCg34+/ZZNvZZw= +github.com/lib/pq v1.10.7/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= +github.com/linuxkit/virtsock v0.0.0-20201010232012-f8cee7dfc7a3/go.mod h1:3r6x7q95whyfWQpmGZTu3gk3v2YkMi05HEzl7Tf7YEo= +github.com/lyft/protoc-gen-star v0.5.3/go.mod h1:V0xaHgaf5oCCqmcxYcWiDfTiKsZsRc87/1qhoTACD8w= +github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= +github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= +github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE= +github.com/markbates/pkger v0.15.1/go.mod h1:0JoVlrol20BSywW79rN3kdFFsE5xYM+rSCQDXbLhiuI= +github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0= +github.com/marstr/guid v1.1.0/go.mod h1:74gB1z2wpxxInTG6yaqA7KrtM0NZ+RbrcqDvYHefzho= +github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= +github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= +github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= +github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= +github.com/mattn/go-ieproxy v0.0.1/go.mod h1:pYabZ6IHcRpFh7vIaLfK7rdcWgFEb3SFJ6/gNWuh88E= +github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= +github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ= +github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= +github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= +github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= +github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= +github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= +github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= +github.com/mattn/go-sqlite3 v1.14.10/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/maxbrunsfeld/counterfeiter/v6 v6.2.2/go.mod h1:eD9eIE7cdwcMi9rYluz88Jz2VyhSmden33/aXg4oVIY= +github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/miekg/pkcs11 v1.0.3/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= +github.com/mistifyio/go-zfs v2.1.2-0.20190413222219-f784269be439+incompatible/go.mod h1:8AuVvqP/mXw1px98n46wfvcGfQ4ci2FwoAjKYxuo3Z4= +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-homedir v1.1.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 v0.0.0-20180220230111-00c29f56e238/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= +github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/osext v0.0.0-20151018003038-5e2d6d41470f/go.mod h1:OkQIRizQZAeMln+1tSwduZz7+Af5oFlKirV/MSYes2A= +github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= +github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= +github.com/moby/sys/mountinfo v0.4.0/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= +github.com/moby/sys/mountinfo v0.4.1/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= +github.com/moby/sys/mountinfo v0.5.0/go.mod h1:3bMD3Rg+zkqx8MRYPi7Pyb0Ie97QEBmdxbhnCLlSvSU= +github.com/moby/sys/signal v0.6.0/go.mod h1:GQ6ObYZfqacOwTtlXvcmh9A26dVRul/hbOZn88Kg8Tg= +github.com/moby/sys/symlink v0.1.0/go.mod h1:GGDODQmbFOjFsXvfLVn3+ZRxkch54RkSiGqsZeMYowQ= +github.com/moby/sys/symlink v0.2.0/go.mod h1:7uZVF2dqJjG/NsClqul95CqKOBRQyYSNnJ6BMgR/gFs= +github.com/moby/term v0.0.0-20200312100748-672ec06f55cd/go.mod h1:DdlQx2hp0Ss5/fLikoLlEeIYiATotOjgB//nb973jeo= +github.com/moby/term v0.0.0-20210610120745-9d4ed1856297/go.mod h1:vgPCkQMyxTZ7IDy8SXRufE172gr8+K/JE/7hHFxHW3A= +github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6/go.mod h1:E2VnQOmVuvZB6UYnnDB0qG5Nq/1tD9acaOpo6xmt0Kw= +github.com/moby/term v0.0.0-20221205130635-1aeaba878587 h1:HfkjXDfhgVaN5rmueG8cL8KKeFNecRCXFhaJ2qZ5SKA= +github.com/moby/term v0.0.0-20221205130635-1aeaba878587/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/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/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= +github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= +github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= +github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/mutecomm/go-sqlcipher/v4 v4.4.0/go.mod h1:PyN04SaWalavxRGH9E8ZftG6Ju7rsPrGmQRjrEaVpiY= +github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= +github.com/nakagami/firebirdsql v0.0.0-20190310045651-3c02a58cfed8/go.mod h1:86wM1zFnC6/uDBfZGNwB65O+pR2OFi5q/YQaEUid1qA= +github.com/ncw/swift v1.0.47/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= +github.com/neo4j/neo4j-go-driver v1.8.1-0.20200803113522-b626aa943eba/go.mod h1:ncO5VaFWh0Nrt+4KT4mOZboaczBZcLuHrG+/sUeP8gI= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= +github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= +github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= +github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= +github.com/onsi/ginkgo v0.0.0-20151202141238-7f8ab55aaf3b/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.10.3/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.13.0/go.mod h1:+REjRxOmWfHCjfv9TTWB1jD1Frx4XydAD3zm1lskyM0= +github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= +github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0= +github.com/onsi/gomega v0.0.0-20151007035656-2152b45fa28a/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= +github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.10.3/go.mod h1:V9xEwhxec5O8UDM77eCW8vLymOMltsqPVYWrpDsH8xc= +github.com/onsi/gomega v1.15.0/go.mod h1:cIuvLEne0aoVhAgh/O6ac0Op8WWw9H6eYCriF+tEHG0= +github.com/opencontainers/go-digest v0.0.0-20170106003457-a6d0ee40d420/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v1.0.0-rc1.0.20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= +github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= +github.com/opencontainers/image-spec v1.0.0/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.2-0.20211117181255-693428a734f5/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.2 h1:9yCKha/T5XdGtO0q9Q9a6T5NUCsTn/DrBg0D7ufOcFM= +github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/runc v0.0.0-20190115041553-12f6a991201f/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc8.0.20190926000215-3e425f80a8c9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc93/go.mod h1:3NOsor4w32B2tC0Zbl8Knk4Wg84SM2ImC1fxBuqJ/H0= +github.com/opencontainers/runc v1.0.2/go.mod h1:aTaHFFwQXuA71CiyxOdFFIorAoemI04suvGRQFzWTD0= +github.com/opencontainers/runc v1.1.0/go.mod h1:Tj1hFw6eFWp/o33uxGf5yF2BX5yz2Z6iptFpuvbbKqc= +github.com/opencontainers/runc v1.1.4 h1:nRCz/8sKg6K6jgYAFLDlXzPeITBZJyX28DBVhWD+5dg= +github.com/opencontainers/runc v1.1.4/go.mod h1:1J5XiS+vdZ3wCyZybsuxXZWGrgSr8fFJHLXuG2PsnNg= +github.com/opencontainers/runtime-spec v0.1.2-0.20190507144316-5b71a03e2700/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.1/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.2-0.20190207185410-29686dbc5559/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.2/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.3-0.20200929063507-e6143ca7d51d/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-tools v0.0.0-20181011054405-1d69bd0f9c39/go.mod h1:r3f7wjNzSs2extwzU3Y+6pKfobzPh+kKFJ3ofN+3nfs= +github.com/opencontainers/selinux v1.6.0/go.mod h1:VVGKuOLlE7v4PJyT6h7mNWvq1rzqiriPsEqVhc+svHE= +github.com/opencontainers/selinux v1.8.0/go.mod h1:RScLhm78qiWa2gbVCcGkC7tCGdgk3ogry1nUQF8Evvo= +github.com/opencontainers/selinux v1.8.2/go.mod h1:MUIHuUEvKB1wtJjQdOyYRgOnLD2xAPP8dBsCoU0KuF8= +github.com/opencontainers/selinux v1.10.0/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI= +github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= +github.com/ory/dockertest/v3 v3.9.1 h1:v4dkG+dlu76goxMiTT2j8zV7s4oPPEppKT8K8p2f1kY= +github.com/ory/dockertest/v3 v3.9.1/go.mod h1:42Ir9hmvaAPm0Mgibk6mBPi7SFvTXxEcnztDYOJ//uM= +github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= +github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= +github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE= +github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrapLU/GW4pbc= +github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= +github.com/phpdave11/gofpdf v1.4.2/go.mod h1:zpO6xFn9yxo3YLyMvW8HcKWVdbNqgIfOOp2dXMnm1mY= +github.com/phpdave11/gofpdi v1.0.12/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI= +github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= +github.com/pierrec/lz4/v4 v4.1.8/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4= +github.com/pkg/browser v0.0.0-20210706143420-7d21f8c997e2/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI= +github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI= +github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.8.1-0.20171018195549-f15c970de5b7/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +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/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= +github.com/prometheus/client_golang v0.0.0-20180209125602-c332b6f63c06/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_model v0.0.0-20171117100541-99fa1f4be8e5/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/common v0.0.0-20180110214958-89604d197083/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= +github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= +github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= +github.com/prometheus/common v0.30.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= +github.com/prometheus/procfs v0.0.0-20180125133057-cb4147076ac7/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.0-20190522114515-bc1a522cf7b1/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= +github.com/prometheus/procfs v0.0.5/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= +github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.2.0/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= +github.com/remyoudompheng/bigfft v0.0.0-20190728182440-6a916e37a237/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= +github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= +github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= +github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= +github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ= +github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= +github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc= +github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/ruudk/golang-pdf417 v0.0.0-20181029194003-1af4ab5afa58/go.mod h1:6lfFZQK844Gfx8o5WFuvpxWRwnSoipWe/p622j1v06w= +github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= +github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= +github.com/safchain/ethtool v0.0.0-20210803160452-9aa261dae9b1/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= +github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= +github.com/sclevine/agouti v3.0.0+incompatible/go.mod h1:b4WX9W9L1sfQKXeJf1mUTLZKJ48R1S7H23Ji7oFO5Bw= +github.com/sclevine/spec v1.2.0/go.mod h1:W4J29eT/Kzv7/b9IWLB055Z+qvVC9vt0Arko24q7p+U= +github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= +github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo= +github.com/seccomp/libseccomp-golang v0.9.2-0.20210429002308-3879420cc921/go.mod h1:JA8cRccbGaA1s33RQf7Y1+q9gHmZX1yB/z9WDN1C6fg= +github.com/seccomp/libseccomp-golang v0.9.2-0.20220502022130-f33da4d89646/go.mod h1:JA8cRccbGaA1s33RQf7Y1+q9gHmZX1yB/z9WDN1C6fg= +github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4= +github.com/shopspring/decimal v0.0.0-20200227202807-02e2044944cc/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= +github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= +github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= +github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= +github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= +github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= +github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= +github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= +github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= +github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= +github.com/snowflakedb/gosnowflake v1.6.3/go.mod h1:6hLajn6yxuJ4xUHZegMekpq9rnQbGJ7TMwXjgTmA6lg= +github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= +github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= +github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= +github.com/spf13/afero v1.3.3/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4= +github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= +github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= +github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= +github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= +github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= +github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE= +github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= +github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980/go.mod h1:AO3tvPzVZ/ayst6UlUKUv6rcPQInYe3IknH3jYhAKu8= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= +github.com/stretchr/objx v0.0.0-20180129172003-8a3f7159479f/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +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.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= +github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= +github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/tchap/go-patricia v2.2.6+incompatible/go.mod h1:bmLyhP68RS6kStMGxByiQ23RP/odRBOTVjwp2cDyi6I= +github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tv42/httpunix v0.0.0-20191220191345-2ba4b9c3382c/go.mod h1:hzIxponao9Kjc7aWznkXaL4U4TWaDSs8zcsY4Ka08nM= +github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGrc= +github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= +github.com/urfave/cli v1.22.2/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= +github.com/vishvananda/netlink v0.0.0-20181108222139-023a6dafdcdf/go.mod h1:+SR5DhBJrl6ZM7CoCKvpw5BKroDKQ+PJqOg65H/2ktk= +github.com/vishvananda/netlink v1.1.0/go.mod h1:cTgwzPIzzgDAYoQrMm0EdrjRUBkTqKYppBueQtXaqoE= +github.com/vishvananda/netlink v1.1.1-0.20201029203352-d40f9887b852/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= +github.com/vishvananda/netlink v1.1.1-0.20210330154013-f5de75959ad5/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= +github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc/go.mod h1:ZjcWmFBXmLKZu9Nxj3WKYEafiSqer2rnvPr0en9UNpI= +github.com/vishvananda/netns v0.0.0-20191106174202-0a2b9b5464df/go.mod h1:JP3t17pCcGlemwknint6hfoeCVQrEMVwxRLRjXpq+BU= +github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= +github.com/vishvananda/netns v0.0.0-20210104183010-2eb08e3e575f/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= +github.com/willf/bitset v1.1.11-0.20200630133818-d5bec3311243/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4= +github.com/willf/bitset v1.1.11/go.mod h1:83CECat5yLh5zVOf4P1ErAgKA5UDvKtgyUABdr3+MjI= +github.com/xanzy/go-gitlab v0.15.0/go.mod h1:8zdQa/ri1dfn8eS3Ir1SyfvOKlw7WBJ8DVThkpGiXrs= +github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= +github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs= +github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= +github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo= +github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= +github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f/go.mod h1:5yf86TLmAcydyeJq5YvxkGPE2fm/u4myDekKRoLuqhs= +github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= +github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= +github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= +github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= +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/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= +github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= +github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= +github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= +gitlab.com/nyarla/go-crypt v0.0.0-20160106005555-d9a5dc2b789b/go.mod h1:T3BPAOm2cqquPa0MKWeNkmOM5RQsRhkrwMWonFMN7fE= +go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ= +go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= +go.etcd.io/etcd v0.5.0-alpha.5.0.20200910180754-dd1b699fc489/go.mod h1:yVHk9ub3CSBatqGNg7GRmsnfLWtoW60w4eDYfh7vHDg= +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.etcd.io/etcd/client/v3 v3.5.0/go.mod h1:AIKXXVX/DQXtfTEqBryiLTUXwON+GuvO6Z7lLS/oTh0= +go.etcd.io/etcd/pkg/v3 v3.5.0/go.mod h1:UzJGatBQ1lXChBkQF0AuAtkRQMYnHubxAEYIrC3MSsE= +go.etcd.io/etcd/raft/v3 v3.5.0/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= +go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4= +go.mongodb.org/mongo-driver v1.7.0/go.mod h1:Q4oFMbo1+MSNqICAdYMlC/zSTrwCogR4R8NzkI+yfU8= +go.mozilla.org/pkcs7 v0.0.0-20200128120323-432b2356ecb1/go.mod h1:SNgMg+EgDFwmvSmLRTNKC5fegJjB7v23qTQ0XLGUNHk= +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.opentelemetry.io/contrib v0.20.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.20.0/go.mod h1:oVGt1LRbBOBq1A5BQLlUg9UaU/54aiHw8cgjV3aWZ/E= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.28.0/go.mod h1:vEhqr0m4eTc+DWxfsXoXue2GBgV2uUwVznkGIHW/e5w= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.20.0/go.mod h1:2AboqHi0CiIZU0qwhtUfCYD1GeUzvvIXWNkhDt7ZMG4= +go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo= +go.opentelemetry.io/otel v1.3.0/go.mod h1:PWIKzi6JCp7sM0k9yZ43VX+T345uNbAkDKwHVjb2PTs= +go.opentelemetry.io/otel/exporters/otlp v0.20.0/go.mod h1:YIieizyaN77rtLJra0buKiNBOm9XQfkPEKBeuhoMwAM= +go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.3.0/go.mod h1:VpP4/RMn8bv8gNo9uK7/IMY4mtWLELsS+JIP0inH0h4= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.3.0/go.mod h1:hO1KLR7jcKaDDKDkvI9dP/FIhpmna5lkqPUQdEjFAM8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.3.0/go.mod h1:keUU7UfnwWTWpJ+FWnyqmogPa82nuU5VUANFq49hlMY= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.3.0/go.mod h1:QNX1aly8ehqqX1LEa6YniTU7VY9I6R3X/oPxhGdTceE= +go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU= +go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa9FqQ2IQ8LoxiGnw= +go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc= +go.opentelemetry.io/otel/sdk v1.3.0/go.mod h1:rIo4suHNhQwBIPg9axF8V9CA72Wz2mKF1teNrup8yzs= +go.opentelemetry.io/otel/sdk/export/metric v0.20.0/go.mod h1:h7RBNMsDJ5pmI1zExLi+bJK+Dr8NQCh0qGhm1KDnNlE= +go.opentelemetry.io/otel/sdk/metric v0.20.0/go.mod h1:knxiS8Xd4E/N+ZqKmUPf3gTTZ4/0TjTXukfxjzSTpHE= +go.opentelemetry.io/otel/trace v0.20.0/go.mod h1:6GjCW8zgDjwGHGa6GkyeB8+/5vjT16gUEi0Nf1iBdgw= +go.opentelemetry.io/otel/trace v1.3.0/go.mod h1:c/VDhno8888bvQYmbYLqe41/Ldmr/KKunbvWM4/fEjk= +go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= +go.opentelemetry.io/proto/otlp v0.11.0/go.mod h1:QpEjXPrNQzrFDZgoTo49dgHR9RYRSrg3NAKnUGl9YpQ= +go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= +go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= +go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/goleak v1.1.12/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= +go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= +go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= +go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= +go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= +go.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= +golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +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-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= +golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= +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-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190911031432-227b76d455e7/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/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-20201002170205-7f63de1d35b0/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-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= +golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20190125153040-c74c464bbbf2/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-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= +golang.org/x/exp v0.0.0-20191002040644-a1355ae1e2c3/go.mod h1:NOZ3BPKG0ec/BKJQgnvsSFpcKLM5xXVWnvZS97DWHgE= +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-20180708004352-c73c2afc3b81/go.mod h1:ux5Hcp/YLpHSI86hEcLt0YII63i6oz57MZXIpbrjZUs= +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.0.0-20190910094157-69e4b8554b2a/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.0.0-20200119044424-58c23975cae1/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.0.0-20200430140353-33d19683fad8/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.0.0-20200618115811-c13761719519/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.0.0-20201208152932-35266b937fa6/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.0.0-20210216034530-4410531fe030/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +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/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/mod v0.5.0/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= +golang.org/x/mod v0.7.0 h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA= +golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +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-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181011144130-49bb7cea24b1/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-20181108082009-03003ca0c849/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/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-20181220203305-927f97764cc3/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-20190225153610-fe579d43d832/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-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190619014844-b5b0513f8c1b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +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-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191112182307-2180aed22343/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-20200520004742-59133d7f0dd7/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-20201006153459-a7d1128ccaa0/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +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-20201202161906-c7110b5ffcbb/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-20201224014010-6772e930b67b/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-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= +golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210505024714-0287a6fb4125/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210520170846-37e1c6afe023/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210813160813-60bc85c4be6d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211216030914-fe4d6282115f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20220111093109-d55c255bac03/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= +golang.org/x/net v0.5.0 h1:GyT4nK/YDHSqa1c4753ouYCDajOYKTja9Xb/OHtgvSw= +golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= +golang.org/x/oauth2 v0.0.0-20180227000427-d7d64896b5ff/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/oauth2 v0.0.0-20181106182150-f42d05182288/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-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/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-20190412183630-56d357773e84/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/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= +golang.org/x/sys v0.0.0-20180224232135-f6cff0780e54/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +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-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/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-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/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-20190222072716-a9d3bda3a223/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-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190422165155-953cdadca894/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-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190522044717-8097e1b27ff5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190812073006-9eafafc0a87e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/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-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191112214154-59a1497f0cea/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191115151921-52ab43148777/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191210023423-ac6580df4449/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200120151820-655fe14d7479/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200124204421-9fbb57f87de9/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-20200217220822-9197077df867/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-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200622214017-ed371f2e16b4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200817155316-9781c653f443/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200828194041-157a740278f4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200831180312-196b9ba8737a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200916030750-2334cc1a136f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200922070232-aee5d888a860/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201117170446-d9b008d0a637/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201126233918-771906719818/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201202213521-69691e467435/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210304124612-50617c2ba197/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-20210324051608-47abb6519492/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-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210426230700-d19ff857e887/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-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603125802-9665404d3644/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-20210616045830-e2b7044e8c71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/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-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210816183151-1e6c022a8912/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210818153620-00dd8d7831e7/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210903071746-97244b99971b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210906170528-6f6e22806c34/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211116061358-0a5406a5449c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211205182925-97ca703d548d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220111092808-5a964db01320/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220317061510-51cd9980dadf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.4.0 h1:Zr2JFtRQNX3BCZ8YtxRE9hNJYC8J6I1MVbMg6owUp18= +golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +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.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +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/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220224211638-0e9765cccd65/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/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-20190206041539-40960b6deb8e/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-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190416151739-9c9e1878f421/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190420181800-aa740d480789/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190425163242-31fd60d6bfdc/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-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/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-20190624222133-a101b041ded4/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-20190706070813-72ffa07ba3db/go.mod h1:jcCCGcm9btYwXyDqrUWc6MKQKKGJCWEQ3AfLSRIbEuI= +golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20190823170909-c4a336ef6a2f/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-20190927191325-030b2cf1153e/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-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/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-20200505023115-26f46d2f7ef8/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-20200616133436-c1934b75d054/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-20200916195026-c9a70fc28ce3/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= +golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20201124115921-2c860bdd6e78/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-20201224043029-2b0845dc783e/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.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.3/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.4/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.5.0 h1:+bSpV5HIeWkuvgaMfI3UmKRThoTA5ODJTUd8T17NO+4= +golang.org/x/tools v0.5.0/go.mod h1:N+Kgy78s5I24c24dU8OfWNEotWjutIs8SnJvn5IDq+k= +golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +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 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= +gonum.org/v1/gonum v0.8.2/go.mod h1:oe/vMfY3deqTw+1EZJhuvEW2iwGF1bW9wwu7XCu0+v0= +gonum.org/v1/gonum v0.9.3/go.mod h1:TZumC3NeyVQskjXqmyWt4S3bINhy7B4eYwW69EbyX+0= +gonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw= +gonum.org/v1/plot v0.0.0-20190515093506-e2840ee46a6b/go.mod h1:Wt8AAjI+ypCyYX3nZBvf6cAIx93T+c/OS2HFAYskSZc= +gonum.org/v1/plot v0.9.0/go.mod h1:3Pcqqmp6RHvJI72kgb8fThyUnav364FOsdDo2aGW5lY= +google.golang.org/api v0.0.0-20160322025152-9bf6e6e569ff/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0= +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.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59tHXo= +google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4= +google.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw= +google.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU= +google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k= +google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= +google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= +google.golang.org/api v0.57.0/go.mod h1:dVPlbZyBo2/OjBpmvNdpn2GRm6rPy75jyU7bmhdrMgI= +google.golang.org/api v0.61.0/go.mod h1:xQRti5UdCmoCEqFxcz93fTl338AVqDgyaDRuOZ3hg9I= +google.golang.org/api v0.62.0/go.mod h1:dKmwPCydfsad4qCH08MSdgWjfHOyfpd4VtDGgRFdavw= +google.golang.org/appengine v1.0.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.3.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +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/cloud v0.0.0-20151119220103-975617b05ea8/go.mod h1:0H1ncTHf11KCFhTc/+EFRbzSCOZx+VUbRMk55Yv5MYk= +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-20190522204451-c2c4e71fbf69/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= +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-20200117163144-32f20d992d24/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-20200423170343-7949de9c1215/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-20200527145253-8367513e4ece/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= +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-20201019141844-1ed22bb0c154/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-20201110150050-8816d57aaa9a/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-20210513213006-bf773b8c8384/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= +google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= +google.golang.org/genproto v0.0.0-20210604141403-392c879c8b08/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= +google.golang.org/genproto v0.0.0-20210608205507-b6d2f5bf0d7d/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= +google.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84/go.mod h1:SzzZ/N+nwJDaO1kznhnlzqS8ocJICar6hYhVyhi++24= +google.golang.org/genproto v0.0.0-20210630183607-d20f26d13c79/go.mod h1:yiaVoXHpRzHGyxV3o4DktVWY4mSUErTKaeEOq6C3t3U= +google.golang.org/genproto v0.0.0-20210713002101-d411969a0d9a/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= +google.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= +google.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= +google.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= +google.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w= +google.golang.org/genproto v0.0.0-20210821163610-241b8fcbd6c8/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20210828152312-66f60bf46e71/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20210903162649-d08c68adba83/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20210909211513-a8c4777a87af/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20210924002016-3dee208752a0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20211118181313-81c1377c94b1/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20211129164237-f09f9a12af12/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20211203200212-54befc351ae9/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20211206160659-862468c7d6e0/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20211208223120-3a66f561d7aa/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20220111164026-67b88f271998/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20220314164441-57ef72a4c106/go.mod h1:hAL49I2IFola2sVEjAn7MEwsja0xp51I0tlGAf9hz4E= +google.golang.org/grpc v0.0.0-20160317175043-d3ddb4469d5a/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= +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.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= +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.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.24.0/go.mod h1:XDChyiUovWa60DnaeDeZmSW86xtLtjtZbwvSiRnRtcA= +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.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.37.1/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.39.0/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= +google.golang.org/grpc v1.39.1/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE= +google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= +google.golang.org/grpc v1.40.1/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= +google.golang.org/grpc v1.42.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= +google.golang.org/grpc v1.43.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= +google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= +google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= +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= +google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U= +gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20141024133853-64131543e789/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-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= +gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= +gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo= +gopkg.in/inconshreveable/log15.v2 v2.0.0-20180818164646-67afb5ed74ec/go.mod h1:aPpfJ7XW+gOuirDoZ8gHhLh3kZ1B08FtV2bbmy7Jv3s= +gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= +gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= +gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +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.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.8/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/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/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.0/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= +gorm.io/driver/postgres v1.0.8/go.mod h1:4eOzrI1MUfm6ObJU/UcmbXyiHSs8jSwH95G5P5dxcAg= +gorm.io/gorm v1.20.12/go.mod h1:0HFTzE/SqkGTzK6TlDPPQbAYCluiVvhzoA1+aVyzenw= +gorm.io/gorm v1.21.4/go.mod h1:0HFTzE/SqkGTzK6TlDPPQbAYCluiVvhzoA1+aVyzenw= +gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= +gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= +gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= +gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= +gotest.tools/v3 v3.1.0/go.mod h1:fHy7eyTmJFO5bQbUsEGQ1v4m2J3Jz9eWL54TP2/ZuYQ= +gotest.tools/v3 v3.2.0 h1:I0DwBVMGAx26dttAj1BtJLAkVGncrkkUXfJLC4Flt/I= +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= +k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo= +k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ= +k8s.io/api v0.20.6/go.mod h1:X9e8Qag6JV/bL5G6bU8sdVRltWKmdHsFUGS3eVndqE8= +k8s.io/api v0.22.5/go.mod h1:mEhXyLaSD1qTOf40rRiKXkc+2iCem09rWLlFwhCEiAs= +k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/apimachinery v0.20.6/go.mod h1:ejZXtW1Ra6V1O5H8xPBGz+T3+4gfkTCeExAHKU57MAc= +k8s.io/apimachinery v0.22.1/go.mod h1:O3oNtNadZdeOMxHFVxOreoznohCpy0z6mocxbZr7oJ0= +k8s.io/apimachinery v0.22.5/go.mod h1:xziclGKwuuJ2RM5/rSFQSYAj0zdbci3DH8kj+WvyN0U= +k8s.io/apiserver v0.20.1/go.mod h1:ro5QHeQkgMS7ZGpvf4tSMx6bBOgPfE+f52KwvXfScaU= +k8s.io/apiserver v0.20.4/go.mod h1:Mc80thBKOyy7tbvFtB4kJv1kbdD0eIH8k8vianJcbFM= +k8s.io/apiserver v0.20.6/go.mod h1:QIJXNt6i6JB+0YQRNcS0hdRHJlMhflFmsBDeSgT1r8Q= +k8s.io/apiserver v0.22.5/go.mod h1:s2WbtgZAkTKt679sYtSudEQrTGWUSQAPe6MupLnlmaQ= +k8s.io/client-go v0.20.1/go.mod h1:/zcHdt1TeWSd5HoUe6elJmHSQ6uLLgp4bIJHVEuy+/Y= +k8s.io/client-go v0.20.4/go.mod h1:LiMv25ND1gLUdBeYxBIwKpkSC5IsozMMmOOeSJboP+k= +k8s.io/client-go v0.20.6/go.mod h1:nNQMnOvEUEsOzRRFIIkdmYOjAZrC8bgq0ExboWSU1I0= +k8s.io/client-go v0.22.5/go.mod h1:cs6yf/61q2T1SdQL5Rdcjg9J1ElXSwbjSrW2vFImM4Y= +k8s.io/code-generator v0.19.7/go.mod h1:lwEq3YnLYb/7uVXLorOJfxg+cUu2oihFhHZ0n9NIla0= +k8s.io/component-base v0.20.1/go.mod h1:guxkoJnNoh8LNrbtiQOlyp2Y2XFCZQmrcg2n/DeYNLk= +k8s.io/component-base v0.20.4/go.mod h1:t4p9EdiagbVCJKrQ1RsA5/V4rFQNDfRlevJajlGwgjI= +k8s.io/component-base v0.20.6/go.mod h1:6f1MPBAeI+mvuts3sIdtpjljHWBQ2cIy38oBIWMYnrM= +k8s.io/component-base v0.22.5/go.mod h1:VK3I+TjuF9eaa+Ln67dKxhGar5ynVbwnGrUiNF4MqCI= +k8s.io/cri-api v0.17.3/go.mod h1:X1sbHmuXhwaHs9xxYffLqJogVsnI+f6cPRcgPel7ywM= +k8s.io/cri-api v0.20.1/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= +k8s.io/cri-api v0.20.4/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= +k8s.io/cri-api v0.20.6/go.mod h1:ew44AjNXwyn1s0U4xCKGodU7J1HzBeZ1MpGrpa5r8Yc= +k8s.io/cri-api v0.23.1/go.mod h1:REJE3PSU0h/LOV1APBrupxrEJqnoxZC8KWzkBUHwrK4= +k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= +k8s.io/klog/v2 v2.30.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20200805222855-6aeccd4b50c6/go.mod h1:UuqjUnNftUyPE5H64/qeyjQoUZhGpeFDVdxjTeEVN2o= +k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= +k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= +k8s.io/kube-openapi v0.0.0-20211109043538-20434351676c/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= +k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk= +k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210930125809-cb0fa318a74b/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +modernc.org/b v1.0.0/go.mod h1:uZWcZfRj1BpYzfN9JTerzlNUnnPsV9O2ZA8JsRcubNg= +modernc.org/cc/v3 v3.32.4/go.mod h1:0R6jl1aZlIl2avnYfbfHBS1QB6/f+16mihBObaBC878= +modernc.org/ccgo/v3 v3.9.2/go.mod h1:gnJpy6NIVqkETT+L5zPsQFj7L2kkhfPMzOghRNv/CFo= +modernc.org/db v1.0.0/go.mod h1:kYD/cO29L/29RM0hXYl4i3+Q5VojL31kTUVpVJDw0s8= +modernc.org/file v1.0.0/go.mod h1:uqEokAEn1u6e+J45e54dsEA/pw4o7zLrA2GwyntZzjw= +modernc.org/fileutil v1.0.0/go.mod h1:JHsWpkrk/CnVV1H/eGlFf85BEpfkrp56ro8nojIq9Q8= +modernc.org/golex v1.0.0/go.mod h1:b/QX9oBD/LhixY6NDh+IdGv17hgB+51fET1i2kPSmvk= +modernc.org/httpfs v1.0.6/go.mod h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM= +modernc.org/internal v1.0.0/go.mod h1:VUD/+JAkhCpvkUitlEOnhpVxCgsBI90oTzSCRcqQVSM= +modernc.org/libc v1.7.13-0.20210308123627-12f642a52bb8/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w= +modernc.org/libc v1.9.5/go.mod h1:U1eq8YWr/Kc1RWCMFUWEdkTg8OTcfLw2kY8EDwl039w= +modernc.org/lldb v1.0.0/go.mod h1:jcRvJGWfCGodDZz8BPwiKMJxGJngQ/5DrRapkQnLob8= +modernc.org/mathutil v1.0.0/go.mod h1:wU0vUrJsVWBZ4P6e7xtFJEhFSNsfRLJ8H458uRjg03k= +modernc.org/mathutil v1.1.1/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= +modernc.org/mathutil v1.2.2/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= +modernc.org/memory v1.0.4/go.mod h1:nV2OApxradM3/OVbs2/0OsP6nPfakXpi50C7dcoHXlc= +modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= +modernc.org/ql v1.0.0/go.mod h1:xGVyrLIatPcO2C1JvI/Co8c0sr6y91HKFNy4pt9JXEY= +modernc.org/sortutil v1.1.0/go.mod h1:ZyL98OQHJgH9IEfN71VsamvJgrtRX9Dj2gX+vH86L1k= +modernc.org/sqlite v1.10.6/go.mod h1:Z9FEjUtZP4qFEg6/SiADg9XCER7aYy9a/j7Pg9P7CPs= +modernc.org/strutil v1.1.0/go.mod h1:lstksw84oURvj9y3tn8lGvRxyRC1S2+g5uuIzNfIOBs= +modernc.org/tcl v1.5.2/go.mod h1:pmJYOLgpiys3oI4AeAafkcUfE+TKKilminxNyU/+Zlo= +modernc.org/token v1.0.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= +modernc.org/z v1.0.1-0.20210308123920-1f282aa71362/go.mod h1:8/SRk5C/HgiQWCgXdfpb+1RvhORdkz5sw72d3jjtyqA= +modernc.org/z v1.0.1/go.mod h1:8/SRk5C/HgiQWCgXdfpb+1RvhORdkz5sw72d3jjtyqA= +modernc.org/zappy v1.0.0/go.mod h1:hHe+oGahLVII/aTTyWK/b53VDHMAGCBYYeZ9sn83HC4= +rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= +rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= +rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= +rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.14/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.15/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.22/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.3/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.1.2/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= From d8a78cd81846e1628ecb89a8a82243b61bd3c9e3 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 11:46:37 +0700 Subject: [PATCH 12/18] chore: add google uuid --- go.mod | 1 + go.sum | 1 + 2 files changed, 2 insertions(+) diff --git a/go.mod b/go.mod index 8a19201..8736a6a 100644 --- a/go.mod +++ b/go.mod @@ -4,6 +4,7 @@ go 1.19 require ( github.com/golang-migrate/migrate/v4 v4.15.2 + github.com/google/uuid v1.3.0 github.com/lib/pq v1.10.7 github.com/ory/dockertest/v3 v3.9.1 github.com/stretchr/testify v1.8.1 diff --git a/go.sum b/go.sum index 8586730..cca988c 100644 --- a/go.sum +++ b/go.sum @@ -596,6 +596,7 @@ github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+ github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/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= From a7feff030a4dcc904de85727d15e3c1c223d5aec Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 11:47:40 +0700 Subject: [PATCH 13/18] feat(test): add user table helper get by id --- test/testdb/user_table_helper.go | 33 ++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 test/testdb/user_table_helper.go diff --git a/test/testdb/user_table_helper.go b/test/testdb/user_table_helper.go new file mode 100644 index 0000000..60bfa65 --- /dev/null +++ b/test/testdb/user_table_helper.go @@ -0,0 +1,33 @@ +package testdb + +import ( + "database/sql" + "log" + "time" +) + +type User struct { + ID string + Name string + Email string + Password string + CreatedAt time.Time + UpdatedAt time.Time +} + +type UserTableHelper struct { + db *sql.DB +} + +func NewUserTableHelper(db *sql.DB) UserTableHelper { + return UserTableHelper{db} +} + +func (d UserTableHelper) GetByID(id string) User { + var user User + q := `SELECT id, name, email, password, created_at, updated_at FROM users WHERE id = $1` + if err := d.db.QueryRow(q, id).Scan(&user.ID, &user.Name, &user.Email, &user.Password, &user.CreatedAt, &user.UpdatedAt); err != nil { + log.Fatalf("Could not get user: %s", err) + } + return user +} From eb56367ddb8a5e1189c6ce3a2712b4397f425edf Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 11:48:12 +0700 Subject: [PATCH 14/18] feat: add user repository save --- internal/user/repository/postgres.go | 37 +++++++++++ internal/user/repository/postgres_test.go | 81 +++++++++++++++++++++++ 2 files changed, 118 insertions(+) create mode 100644 internal/user/repository/postgres.go create mode 100644 internal/user/repository/postgres_test.go diff --git a/internal/user/repository/postgres.go b/internal/user/repository/postgres.go new file mode 100644 index 0000000..c7c0536 --- /dev/null +++ b/internal/user/repository/postgres.go @@ -0,0 +1,37 @@ +package repository + +import ( + "context" + "database/sql" + "time" + + "github.com/google/uuid" + + "github.com/edwintantawi/taskit/internal/entity" +) + +// Postgres represents a User postgres repository. +type Postgres struct { + db *sql.DB +} + +// NewPostgres creates a new User postgres repository. +func NewPostgres(db *sql.DB) Postgres { + return Postgres{db} +} + +// Save saves a new user to the database. +func (p *Postgres) Save(ctx context.Context, newUser entity.NewUser) (entity.AddedUser, error) { + id := uuid.NewString() + createdTime := time.Now() + + q := `INSERT INTO users (id, name, email, password, created_at, updated_at) + VALUES ($1, $2, $3, $4, $5, $5)` + + _, err := p.db.ExecContext(ctx, q, id, newUser.Name, newUser.Email, newUser.Password, createdTime) + if err != nil { + return entity.AddedUser{}, err + } + + return entity.AddedUser{ID: id, Email: newUser.Email}, nil +} diff --git a/internal/user/repository/postgres_test.go b/internal/user/repository/postgres_test.go new file mode 100644 index 0000000..a037dc3 --- /dev/null +++ b/internal/user/repository/postgres_test.go @@ -0,0 +1,81 @@ +package repository + +import ( + "context" + "database/sql" + "log" + "testing" + + "github.com/stretchr/testify/suite" + + "github.com/edwintantawi/taskit/internal/entity" + "github.com/edwintantawi/taskit/pkg/database" + "github.com/edwintantawi/taskit/test" + "github.com/edwintantawi/taskit/test/testdb" +) + +type UserRepositoryPostgresTestSuite struct { + suite.Suite + db *sql.DB + userTableHelper testdb.UserTableHelper + cleanUp func() error +} + +func TestUserRepositoryPostgresSuite(t *testing.T) { + suite.Run(t, new(UserRepositoryPostgresTestSuite)) +} + +func (s *UserRepositoryPostgresTestSuite) SetupSuite() { + resource := test.NewPostgresResource() + if err := database.Migration(resource.DSN, "../../../migrations"); err != nil { + s.Fail("Could not migrate database", err) + } + + s.userTableHelper = testdb.NewUserTableHelper(resource.DB) + + s.db = resource.DB + s.cleanUp = resource.CleanUp +} + +func (s *UserRepositoryPostgresTestSuite) TearDownSuite() { + if err := s.cleanUp(); err != nil { + log.Fatalf("Could not cleanup resource: %s", err) + } +} + +func (s *UserRepositoryPostgresTestSuite) TestSave() { + s.Run("it should return an error if database fail or operation canceled", func() { + ctx := context.Background() + repository := NewPostgres(s.db) + ctx, cancel := context.WithCancel(ctx) + cancel() + + _, err := repository.Save(ctx, entity.NewUser{}) + + s.EqualError(err, context.Canceled.Error()) + }) + + s.Run("it should save a new user to the database", func() { + ctx := context.Background() + repository := NewPostgres(s.db) + newUser := entity.NewUser{ + Name: "Gopher", + Email: "gopher@go.dev", + Password: "secret_password", + } + + addedUser, err := repository.Save(ctx, newUser) + + s.NoError(err) + s.NotEmpty(addedUser.ID) + s.Equal(newUser.Email, addedUser.Email) + + userInDB := s.userTableHelper.GetByID(addedUser.ID) + s.Equal(addedUser.ID, userInDB.ID) + s.Equal(newUser.Name, userInDB.Name) + s.Equal(newUser.Email, userInDB.Email) + s.Equal(newUser.Password, userInDB.Password) + s.NotEmpty(userInDB.CreatedAt) + s.Equal(userInDB.CreatedAt, userInDB.UpdatedAt) + }) +} From 8b4d323ef7bf22308e9296c74b05623b9ea185f2 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 15:18:41 +0700 Subject: [PATCH 15/18] feat: add testing time --- test/constant.go | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 test/constant.go diff --git a/test/constant.go b/test/constant.go new file mode 100644 index 0000000..0deb49d --- /dev/null +++ b/test/constant.go @@ -0,0 +1,8 @@ +package test + +import "time" + +var ( + TimeBeforeNow = time.Now().Add(-1 * time.Hour).UTC().Round(time.Microsecond) + TimeAfterNow = time.Now().Add(1 * time.Hour).UTC().Round(time.Microsecond) +) From 72fc92fdd1b88e3b86162496971ffb5b7d1a9c25 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 15:19:25 +0700 Subject: [PATCH 16/18] feat: add user table add test helper --- test/table_helper.go | 19 +++++++++++++++ test/testdb/user_table_helper.go | 33 ------------------------- test/user_table_helper.go | 42 ++++++++++++++++++++++++++++++++ 3 files changed, 61 insertions(+), 33 deletions(-) create mode 100644 test/table_helper.go delete mode 100644 test/testdb/user_table_helper.go create mode 100644 test/user_table_helper.go diff --git a/test/table_helper.go b/test/table_helper.go new file mode 100644 index 0000000..858088e --- /dev/null +++ b/test/table_helper.go @@ -0,0 +1,19 @@ +package test + +import ( + "database/sql" + "fmt" + "log" + "strings" +) + +var Tables = []string{"users"} + +func TruncateTables(db *sql.DB) func() { + return func() { + q := fmt.Sprintf("TRUNCATE TABLE %s", strings.Join(Tables, ", ")) + if _, err := db.Exec(q); err != nil { + log.Fatalf("Could not truncate tables: %s", err) + } + } +} diff --git a/test/testdb/user_table_helper.go b/test/testdb/user_table_helper.go deleted file mode 100644 index 60bfa65..0000000 --- a/test/testdb/user_table_helper.go +++ /dev/null @@ -1,33 +0,0 @@ -package testdb - -import ( - "database/sql" - "log" - "time" -) - -type User struct { - ID string - Name string - Email string - Password string - CreatedAt time.Time - UpdatedAt time.Time -} - -type UserTableHelper struct { - db *sql.DB -} - -func NewUserTableHelper(db *sql.DB) UserTableHelper { - return UserTableHelper{db} -} - -func (d UserTableHelper) GetByID(id string) User { - var user User - q := `SELECT id, name, email, password, created_at, updated_at FROM users WHERE id = $1` - if err := d.db.QueryRow(q, id).Scan(&user.ID, &user.Name, &user.Email, &user.Password, &user.CreatedAt, &user.UpdatedAt); err != nil { - log.Fatalf("Could not get user: %s", err) - } - return user -} diff --git a/test/user_table_helper.go b/test/user_table_helper.go new file mode 100644 index 0000000..626ab92 --- /dev/null +++ b/test/user_table_helper.go @@ -0,0 +1,42 @@ +package test + +import ( + "database/sql" + "log" + "time" +) + +type User struct { + ID string + Name string + Email string + Password string + CreatedAt time.Time + UpdatedAt time.Time +} + +type UserTableHelper struct { + db *sql.DB +} + +func NewUserTableHelper(db *sql.DB) UserTableHelper { + return UserTableHelper{db} +} + +func (uth UserTableHelper) GetByID(id string) User { + var user User + q := `SELECT id, name, email, password, created_at, updated_at FROM users WHERE id = $1` + if err := uth.db.QueryRow(q, id).Scan(&user.ID, &user.Name, &user.Email, &user.Password, &user.CreatedAt, &user.UpdatedAt); err != nil { + log.Fatalf("Could not get user: %s", err) + } + return user +} + +func (uth UserTableHelper) Add(user User) { + q := `INSERT INTO users (id, name, email, password, created_at, updated_at) + VALUES ($1, $2, $3, $4, $5, $6)` + + if _, err := uth.db.Exec(q, user.ID, user.Name, user.Email, user.Password, user.CreatedAt, user.UpdatedAt); err != nil { + log.Fatalf("Could not add user: %s", err) + } +} From 70cd3748b229d83a0a77173051fbe42412087b02 Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 15:20:13 +0700 Subject: [PATCH 17/18] feat: add user repository find by email --- internal/entity/user.go | 12 ++++ internal/user/repository/postgres.go | 30 +++++++++- internal/user/repository/postgres_test.go | 68 +++++++++++++++++++++-- 3 files changed, 101 insertions(+), 9 deletions(-) create mode 100644 internal/entity/user.go diff --git a/internal/entity/user.go b/internal/entity/user.go new file mode 100644 index 0000000..4e65f98 --- /dev/null +++ b/internal/entity/user.go @@ -0,0 +1,12 @@ +package entity + +import "time" + +type User struct { + ID string + Name string + Email string + Password string + CreatedAt time.Time + UpdatedAt time.Time +} diff --git a/internal/user/repository/postgres.go b/internal/user/repository/postgres.go index c7c0536..c83ea05 100644 --- a/internal/user/repository/postgres.go +++ b/internal/user/repository/postgres.go @@ -3,6 +3,7 @@ package repository import ( "context" "database/sql" + "errors" "time" "github.com/google/uuid" @@ -10,20 +11,23 @@ import ( "github.com/edwintantawi/taskit/internal/entity" ) +var ( + ErrUserNotFound = errors.New("user not found") +) + // Postgres represents a User postgres repository. type Postgres struct { db *sql.DB } -// NewPostgres creates a new User postgres repository. func NewPostgres(db *sql.DB) Postgres { return Postgres{db} } // Save saves a new user to the database. -func (p *Postgres) Save(ctx context.Context, newUser entity.NewUser) (entity.AddedUser, error) { +func (p Postgres) Save(ctx context.Context, newUser entity.NewUser) (entity.AddedUser, error) { id := uuid.NewString() - createdTime := time.Now() + createdTime := time.Now().UTC() q := `INSERT INTO users (id, name, email, password, created_at, updated_at) VALUES ($1, $2, $3, $4, $5, $5)` @@ -35,3 +39,23 @@ func (p *Postgres) Save(ctx context.Context, newUser entity.NewUser) (entity.Add return entity.AddedUser{ID: id, Email: newUser.Email}, nil } + +// FindByEmail find user by email. +func (p Postgres) FindByEmail(ctx context.Context, email string) (entity.User, error) { + var user entity.User + q := `SELECT id, name, email, password, created_at, updated_at + FROM users WHERE email = $1` + + row := p.db.QueryRowContext(ctx, q, email) + err := row.Scan(&user.ID, &user.Name, &user.Email, &user.Password, &user.CreatedAt, &user.UpdatedAt) + if errors.Is(err, sql.ErrNoRows) { + return entity.User{}, ErrUserNotFound + } else if err != nil { + return entity.User{}, err + } + + user.CreatedAt = user.CreatedAt.UTC() + user.UpdatedAt = user.UpdatedAt.UTC() + + return user, nil +} diff --git a/internal/user/repository/postgres_test.go b/internal/user/repository/postgres_test.go index a037dc3..9ff5756 100644 --- a/internal/user/repository/postgres_test.go +++ b/internal/user/repository/postgres_test.go @@ -11,14 +11,14 @@ import ( "github.com/edwintantawi/taskit/internal/entity" "github.com/edwintantawi/taskit/pkg/database" "github.com/edwintantawi/taskit/test" - "github.com/edwintantawi/taskit/test/testdb" ) type UserRepositoryPostgresTestSuite struct { suite.Suite db *sql.DB - userTableHelper testdb.UserTableHelper - cleanUp func() error + userTableHelper test.UserTableHelper + cleanUpSuite func() error + cleanUpTest func() } func TestUserRepositoryPostgresSuite(t *testing.T) { @@ -31,14 +31,15 @@ func (s *UserRepositoryPostgresTestSuite) SetupSuite() { s.Fail("Could not migrate database", err) } - s.userTableHelper = testdb.NewUserTableHelper(resource.DB) + s.userTableHelper = test.NewUserTableHelper(resource.DB) s.db = resource.DB - s.cleanUp = resource.CleanUp + s.cleanUpSuite = resource.CleanUp + s.cleanUpTest = test.TruncateTables(resource.DB) } func (s *UserRepositoryPostgresTestSuite) TearDownSuite() { - if err := s.cleanUp(); err != nil { + if err := s.cleanUpSuite(); err != nil { log.Fatalf("Could not cleanup resource: %s", err) } } @@ -56,6 +57,8 @@ func (s *UserRepositoryPostgresTestSuite) TestSave() { }) s.Run("it should save a new user to the database", func() { + defer s.cleanUpTest() + ctx := context.Background() repository := NewPostgres(s.db) newUser := entity.NewUser{ @@ -79,3 +82,56 @@ func (s *UserRepositoryPostgresTestSuite) TestSave() { s.Equal(userInDB.CreatedAt, userInDB.UpdatedAt) }) } + +func (s *UserRepositoryPostgresTestSuite) TestFindByEmail() { + s.Run("it should return an error if database fail or operation canceled", func() { + ctx := context.Background() + repository := NewPostgres(s.db) + ctx, cancel := context.WithCancel(ctx) + cancel() + + user, err := repository.FindByEmail(ctx, "gopher@gmail.com") + + s.EqualError(err, context.Canceled.Error()) + s.Empty(user) + }) + + s.Run("it should return error when user not found", func() { + ctx := context.Background() + repository := NewPostgres(s.db) + email := "gopher@go.dev" + + user, err := repository.FindByEmail(ctx, email) + + s.Equal(ErrUserNotFound, err) + s.Empty(user) + }) + + s.Run("it should return user when user found", func() { + defer s.cleanUpTest() + + ctx := context.Background() + repository := NewPostgres(s.db) + email := "gopher@go.dev" + + existingUserInDB := test.User{ + ID: "user-xxxxx", + Name: "Gopher", + Email: email, + Password: "secret_password", + CreatedAt: test.TimeBeforeNow, + UpdatedAt: test.TimeAfterNow, + } + s.userTableHelper.Add(existingUserInDB) + + user, err := repository.FindByEmail(ctx, email) + + s.NoError(err) + s.Equal(existingUserInDB.ID, user.ID) + s.Equal(existingUserInDB.Name, user.Name) + s.Equal(existingUserInDB.Email, user.Email) + s.Equal(existingUserInDB.Password, user.Password) + s.Equal(existingUserInDB.CreatedAt, user.CreatedAt) + s.Equal(existingUserInDB.UpdatedAt, user.UpdatedAt) + }) +} From 0ea0d0c61340061f581c2abba4b892ed503f4c2f Mon Sep 17 00:00:00 2001 From: edwintantawi Date: Tue, 24 Jan 2023 17:40:13 +0700 Subject: [PATCH 18/18] feat: add user usecase register --- go.mod | 1 + go.sum | 1 + internal/user/usecase/mocks/PasswordHasher.go | 48 +++++++++ .../usecase/mocks/UserRepositoryFindSaver.go | 72 +++++++++++++ internal/user/usecase/register.go | 48 +++++++++ internal/user/usecase/register_test.go | 101 ++++++++++++++++++ internal/user/usecase/usecase.go | 28 +++++ 7 files changed, 299 insertions(+) create mode 100644 internal/user/usecase/mocks/PasswordHasher.go create mode 100644 internal/user/usecase/mocks/UserRepositoryFindSaver.go create mode 100644 internal/user/usecase/register.go create mode 100644 internal/user/usecase/register_test.go create mode 100644 internal/user/usecase/usecase.go diff --git a/go.mod b/go.mod index 8736a6a..4802d04 100644 --- a/go.mod +++ b/go.mod @@ -34,6 +34,7 @@ require ( github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/sirupsen/logrus v1.9.0 // indirect + github.com/stretchr/objx v0.5.0 // indirect github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect github.com/xeipuuv/gojsonschema v1.2.0 // indirect diff --git a/go.sum b/go.sum index cca988c..41be04b 100644 --- a/go.sum +++ b/go.sum @@ -1038,6 +1038,7 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+ github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= diff --git a/internal/user/usecase/mocks/PasswordHasher.go b/internal/user/usecase/mocks/PasswordHasher.go new file mode 100644 index 0000000..a595c09 --- /dev/null +++ b/internal/user/usecase/mocks/PasswordHasher.go @@ -0,0 +1,48 @@ +// Code generated by mockery v2.15.0. DO NOT EDIT. + +package mocks + +import mock "github.com/stretchr/testify/mock" + +// PasswordHasher is an autogenerated mock type for the PasswordHasher type +type PasswordHasher struct { + mock.Mock +} + +// Hash provides a mock function with given fields: password +func (_m *PasswordHasher) Hash(password string) ([]byte, error) { + ret := _m.Called(password) + + var r0 []byte + if rf, ok := ret.Get(0).(func(string) []byte); ok { + r0 = rf(password) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).([]byte) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(string) error); ok { + r1 = rf(password) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +type mockConstructorTestingTNewPasswordHasher interface { + mock.TestingT + Cleanup(func()) +} + +// NewPasswordHasher creates a new instance of PasswordHasher. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. +func NewPasswordHasher(t mockConstructorTestingTNewPasswordHasher) *PasswordHasher { + mock := &PasswordHasher{} + mock.Mock.Test(t) + + t.Cleanup(func() { mock.AssertExpectations(t) }) + + return mock +} diff --git a/internal/user/usecase/mocks/UserRepositoryFindSaver.go b/internal/user/usecase/mocks/UserRepositoryFindSaver.go new file mode 100644 index 0000000..967128d --- /dev/null +++ b/internal/user/usecase/mocks/UserRepositoryFindSaver.go @@ -0,0 +1,72 @@ +// Code generated by mockery v2.15.0. DO NOT EDIT. + +package mocks + +import ( + context "context" + + entity "github.com/edwintantawi/taskit/internal/entity" + mock "github.com/stretchr/testify/mock" +) + +// UserRepositoryFindSaver is an autogenerated mock type for the UserRepositoryFindSaver type +type UserRepositoryFindSaver struct { + mock.Mock +} + +// FindByEmail provides a mock function with given fields: ctx, email +func (_m *UserRepositoryFindSaver) FindByEmail(ctx context.Context, email string) (entity.User, error) { + ret := _m.Called(ctx, email) + + var r0 entity.User + if rf, ok := ret.Get(0).(func(context.Context, string) entity.User); ok { + r0 = rf(ctx, email) + } else { + r0 = ret.Get(0).(entity.User) + } + + var r1 error + if rf, ok := ret.Get(1).(func(context.Context, string) error); ok { + r1 = rf(ctx, email) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// Save provides a mock function with given fields: ctx, newUser +func (_m *UserRepositoryFindSaver) Save(ctx context.Context, newUser entity.NewUser) (entity.AddedUser, error) { + ret := _m.Called(ctx, newUser) + + var r0 entity.AddedUser + if rf, ok := ret.Get(0).(func(context.Context, entity.NewUser) entity.AddedUser); ok { + r0 = rf(ctx, newUser) + } else { + r0 = ret.Get(0).(entity.AddedUser) + } + + var r1 error + if rf, ok := ret.Get(1).(func(context.Context, entity.NewUser) error); ok { + r1 = rf(ctx, newUser) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +type mockConstructorTestingTNewUserRepositoryFindSaver interface { + mock.TestingT + Cleanup(func()) +} + +// NewUserRepositoryFindSaver creates a new instance of UserRepositoryFindSaver. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. +func NewUserRepositoryFindSaver(t mockConstructorTestingTNewUserRepositoryFindSaver) *UserRepositoryFindSaver { + mock := &UserRepositoryFindSaver{} + mock.Mock.Test(t) + + t.Cleanup(func() { mock.AssertExpectations(t) }) + + return mock +} diff --git a/internal/user/usecase/register.go b/internal/user/usecase/register.go new file mode 100644 index 0000000..78a27db --- /dev/null +++ b/internal/user/usecase/register.go @@ -0,0 +1,48 @@ +package usecase + +import ( + "context" + "errors" + + "github.com/edwintantawi/taskit/internal/entity" +) + +var ( + ErrEmailAlreadyExists = errors.New("email already exists") +) + +type RegisterPayload struct { + Name string + Email string + Password string +} + +type Register struct { + userRepository UserRepositoryFindSaver + passwordHasher PasswordHasher +} + +func NewRegister(userRepository UserRepositoryFindSaver, passwordHasher PasswordHasher) Register { + return Register{userRepository: userRepository, passwordHasher: passwordHasher} +} + +// Execute execute the register usecase. +func (r Register) Execute(ctx context.Context, payload RegisterPayload) (entity.AddedUser, error) { + newUser := entity.NewUser(payload) + if err := newUser.Validate(); err != nil { + return entity.AddedUser{}, err + } + + _, err := r.userRepository.FindByEmail(ctx, newUser.Email) + if err == nil { + return entity.AddedUser{}, ErrEmailAlreadyExists + } + + hashedPassword, err := r.passwordHasher.Hash(newUser.Password) + if err != nil { + return entity.AddedUser{}, err + } + newUser.Password = string(hashedPassword) + + return r.userRepository.Save(ctx, newUser) +} diff --git a/internal/user/usecase/register_test.go b/internal/user/usecase/register_test.go new file mode 100644 index 0000000..21b1e1a --- /dev/null +++ b/internal/user/usecase/register_test.go @@ -0,0 +1,101 @@ +package usecase + +import ( + "context" + "errors" + "testing" + + "github.com/stretchr/testify/suite" + + "github.com/edwintantawi/taskit/internal/entity" + "github.com/edwintantawi/taskit/internal/user/usecase/mocks" +) + +type UserUsecaseRegisterTestSuite struct { + suite.Suite +} + +func TestUserUsecaseRegisterSuite(t *testing.T) { + suite.Run(t, new(UserUsecaseRegisterTestSuite)) +} + +func (s *UserUsecaseRegisterTestSuite) TestExecute() { + s.Run("it should return error when entity validation fail", func() { + ctx := context.Background() + payload := RegisterPayload{} + + usecase := NewRegister(nil, nil) + output, err := usecase.Execute(ctx, payload) + + s.Error(err) + s.Empty(output) + }) + + s.Run("it should return error ErrEmailAlreadyExists when user with that email is already exists", func() { + ctx := context.Background() + payload := RegisterPayload{ + Name: "Gopher", + Email: "gopher@go.dev", + Password: "secret_password", + } + + mockUserRepository := &mocks.UserRepositoryFindSaver{} + mockUserRepository.On("FindByEmail", ctx, payload.Email).Return(entity.User{}, nil) + + usecase := NewRegister(mockUserRepository, nil) + output, err := usecase.Execute(ctx, payload) + + s.Equal(ErrEmailAlreadyExists, err) + s.Empty(output) + }) + + s.Run("it should return error when fail to hash the password", func() { + errOccurred := errors.New("failed hashing password") + + ctx := context.Background() + payload := RegisterPayload{ + Name: "Gopher", + Email: "gopher@go.dev", + Password: "secret_password", + } + + mockUserRepository := &mocks.UserRepositoryFindSaver{} + mockUserRepository.On("FindByEmail", ctx, payload.Email).Return(entity.User{}, errors.New("user not found")) + + mockPasswordHasher := &mocks.PasswordHasher{} + mockPasswordHasher.On("Hash", payload.Password).Return(nil, errOccurred) + + usecase := NewRegister(mockUserRepository, mockPasswordHasher) + output, err := usecase.Execute(ctx, payload) + + s.Equal(errOccurred, err) + s.Empty(output) + }) + + s.Run("it should return added user when success register new user", func() { + ctx := context.Background() + payload := RegisterPayload{ + Name: "Gopher", + Email: "gopher@go.dev", + Password: "secret_password", + } + + mockUserRepository := &mocks.UserRepositoryFindSaver{} + mockUserRepository.On("FindByEmail", ctx, payload.Email).Return(entity.User{}, errors.New("user not found")) + mockUserRepository.On("Save", ctx, entity.NewUser{ + Name: payload.Name, + Email: payload.Email, + Password: "hashed_password", + }).Return(entity.AddedUser{ID: "user-xxxxx", Email: payload.Email}, nil) + + mockPasswordHasher := &mocks.PasswordHasher{} + mockPasswordHasher.On("Hash", payload.Password).Return([]byte("hashed_password"), nil) + + usecase := NewRegister(mockUserRepository, mockPasswordHasher) + output, err := usecase.Execute(ctx, payload) + + s.NoError(err) + s.Equal("user-xxxxx", output.ID) + s.Equal(payload.Email, output.Email) + }) +} diff --git a/internal/user/usecase/usecase.go b/internal/user/usecase/usecase.go new file mode 100644 index 0000000..3418999 --- /dev/null +++ b/internal/user/usecase/usecase.go @@ -0,0 +1,28 @@ +package usecase + +import ( + "context" + + "github.com/edwintantawi/taskit/internal/entity" +) + +// UserRepositoryFindSaver is the interface that groups the basic find and save methods. +type UserRepositoryFindSaver interface { + UserRepositoryFinder + UserRepositorySaver +} + +// UserRepositorySaver is the interface that wraps the basic save method. +type UserRepositorySaver interface { + Save(ctx context.Context, newUser entity.NewUser) (entity.AddedUser, error) +} + +// UserRepositoryFinder is the interface that wraps the basic find method. +type UserRepositoryFinder interface { + FindByEmail(ctx context.Context, email string) (entity.User, error) +} + +// PasswordHasher is an interface for hashing passwords. +type PasswordHasher interface { + Hash(password string) ([]byte, error) +}

    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�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