From 7271fc3242ec9efd0294d7347269be578ea9bb6b Mon Sep 17 00:00:00 2001 From: Chris Raborg Date: Mon, 3 Jun 2024 16:09:01 -0400 Subject: [PATCH 1/3] WIP - redis streams poc --- Makefile | 18 +- backends/redis/README.md | 132 ++++++++++++++ backends/redis/streams.go | 317 +++++++++++++++++++++++++++++++++ backends/redis/streams_test.go | 251 ++++++++++++++++++++++++++ go.mod | 3 + go.sum | 39 ++-- msg.go | 14 +- 7 files changed, 732 insertions(+), 42 deletions(-) create mode 100644 backends/redis/README.md create mode 100644 backends/redis/streams.go create mode 100644 backends/redis/streams_test.go diff --git a/Makefile b/Makefile index 9be6773..8b8ee95 100644 --- a/Makefile +++ b/Makefile @@ -1,20 +1,12 @@ -PACKAGES=$(shell go list ./...) - all: lint test -init: tools - GO111MODULE=on go mod vendor +fmt: + golangci-lint run ./... --fix -lint: init +lint: golangci-lint run ./... -test: init +test: go test -race -v ./... -tools: - curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b $(GOPATH)/bin v1.17.0 - -fmt: tools - go fmt $(PACKAGES) - -.PHONY: help lint test fmt tools +.PHONY: lint test fmt diff --git a/backends/redis/README.md b/backends/redis/README.md new file mode 100644 index 0000000..a89dd63 --- /dev/null +++ b/backends/redis/README.md @@ -0,0 +1,132 @@ +# Redis Stream Implemenation + +## Architecture Overview + +* A **Stream** is equivalent to an SNS topic. + +* **Consumer groups** are equivalent to an SNS topic subscription. + A **stream** may have multiple consumer groups (subscribers). + + > Note, when creating a consumer group, you can choose whether to forward all messages in the stream, or only new ones + > by specifying a message ID. "0" means send all, "$" means only send new. + +* **Consumers** are individual processes that can receive messages from a stream. + A service which scales horizontally will have multiple consumers reading from the same stream. + + > Note, consumers will use XREADGROUP to read messages from a stream. Those messages will be assigned to that consumer, + > so if the message is not ACKd, then it will be received again by the same consumer (no others will have access to it). + > This ensures that messages are not processed by more than one consumer. + > + > There is one slight caveat to this, which is that you can use XCLAIM/XAUTOCLAIM in order to re-assign any messages + > on the PEL (Pending Entries List) to another consumer. + +## Example: Multiple Consumers + +This example: + +* Creates a stream with multiple consumer groups (3) +* Creates 2 consumers for one of the groups (`group1`) +* Writes 2 messages to the stream +* Once the messages are processed, they will not be processed again (by the same or the other consumer). +* The other groups will still have 2 messages to be assigned (`group2`, `group3`). + +```bash +# start local redis-server for tests +$ redis-server -v +Redis server v=7.2.5 sha=00000000:0 malloc=libc bits=64 build=bd81cd1340e80580 +$ redis-server & + +# run test +$ +2024/06/24 14:03:05 === Test #1 - Multiple Consumers of a Stream +2024/06/24 14:03:05 Stream=stream1 has messages=2, consumer_groups=2 +2024/06/24 14:03:05 XInfoGroups: [{Name:group1 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 14:03:06 XInfoGroups: [{Name:group1 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 14:03:07 Returning without error to ACK. +2024/06/24 14:03:07 Returning without error to ACK. +2024/06/24 14:03:07 XInfoGroups: [{Name:group1 Consumers:1 Pending:2 LastDeliveredID:1719252185290-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 14:03:08 XInfoGroups: [{Name:group1 Consumers:1 Pending:0 LastDeliveredID:1719252185290-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 14:03:09 XInfoGroups: [{Name:group1 Consumers:1 Pending:0 LastDeliveredID:1719252185290-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 14:03:10 XInfoGroups: [{Name:group1 Consumers:1 Pending:0 LastDeliveredID:1719252185290-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 14:03:11 Processed all messages! +``` + +## Example: Reassign messages + +This example: + +* Creates a stream with multiple consumer groups (3) +* Creates 2 consumers for one of the groups (`group1`) +* Writes 2 messages to the stream +* Srv1 will fail to process the messages +* A few seconds later, Srv2 starts up. It will poll for a few seconds, then will claim the messages from srv1. +* Once the messages are processed, they will not be processed again (by the same or the other consumer). +* The other groups will still have 2 messages to be assigned (`group2`, `group3`). + +```bash +# start local redis-server for tests +$ redis-server -v +Redis server v=7.2.5 sha=00000000:0 malloc=libc bits=64 build=bd81cd1340e80580 +$ redis-server & + +# run test +$ cd backends/redis +$ go run . +2024/06/24 16:07:09 === Test #2 - Reassigning failed messages with XAUTOCLAIM +2024/06/24 16:07:09 XREADGROUP +2024/06/24 16:07:09 Stream=stream2 has messages=2, consumer_groups=2 +2024/06/24 16:07:09 Starting srv1... +2024/06/24 16:07:09 XREADGROUP +2024/06/24 16:07:09 XInfoGroups: [{Name:group1 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:09 XREADGROUP +2024/06/24 16:07:09 Simulating a message failure in server1, returning error to re-assign +2024/06/24 16:07:09 Simulating a message failure in server1, returning error to re-assign +2024/06/24 16:07:10 Starting srv2... +2024/06/24 16:07:10 XREADGROUP +2024/06/24 16:07:10 XInfoGroups: [{Name:group1 Consumers:1 Pending:2 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:10 XREADGROUP +2024/06/24 16:07:10 XREADGROUP +2024/06/24 16:07:11 XInfoGroups: [{Name:group1 Consumers:2 Pending:2 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:11 XREADGROUP +2024/06/24 16:07:11 XREADGROUP +2024/06/24 16:07:11 XREADGROUP +2024/06/24 16:07:12 XInfoGroups: [{Name:group1 Consumers:2 Pending:2 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:12 XREADGROUP +2024/06/24 16:07:12 Returning without error to ACK. +2024/06/24 16:07:12 Returning without error to ACK. +2024/06/24 16:07:12 XREADGROUP +2024/06/24 16:07:12 XREADGROUP +2024/06/24 16:07:13 XInfoGroups: [{Name:group1 Consumers:2 Pending:0 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:13 XREADGROUP +2024/06/24 16:07:13 XREADGROUP +2024/06/24 16:07:13 XREADGROUP +2024/06/24 16:07:14 XInfoGroups: [{Name:group1 Consumers:2 Pending:0 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:14 XREADGROUP +2024/06/24 16:07:14 XREADGROUP +2024/06/24 16:07:14 XREADGROUP +2024/06/24 16:07:15 XInfoGroups: [{Name:group1 Consumers:2 Pending:0 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:15 XREADGROUP +2024/06/24 16:07:15 XREADGROUP +2024/06/24 16:07:15 XREADGROUP +2024/06/24 16:07:16 XInfoGroups: [{Name:group1 Consumers:2 Pending:0 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:16 XREADGROUP +2024/06/24 16:07:16 XREADGROUP +2024/06/24 16:07:16 XREADGROUP +2024/06/24 16:07:17 XInfoGroups: [{Name:group1 Consumers:2 Pending:0 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:17 XREADGROUP +2024/06/24 16:07:17 XREADGROUP +2024/06/24 16:07:17 XREADGROUP +2024/06/24 16:07:18 XInfoGroups: [{Name:group1 Consumers:2 Pending:0 LastDeliveredID:1719259629201-0 EntriesRead:2 Lag:0} {Name:group2 Consumers:0 Pending:0 LastDeliveredID:0-0 EntriesRead:0 Lag:2}] +2024/06/24 16:07:18 XREADGROUP +2024/06/24 16:07:18 XREADGROUP +2024/06/24 16:07:18 XREADGROUP +2024/06/24 16:07:19 Processed all messages! +``` + +## TODO + +* Despite ACKing messages, they will not be removed from the stream. Which means Redis will grow unbounded. + To resolve, we could run XTRIM on a cron (Say 3d) which will remove any messages older than that period. + This is effectively creating a message retention period. + +* diff --git a/backends/redis/streams.go b/backends/redis/streams.go new file mode 100644 index 0000000..8387a81 --- /dev/null +++ b/backends/redis/streams.go @@ -0,0 +1,317 @@ +package redis + +import ( + "bytes" + "context" + "fmt" + "sync" + "time" + + "github.com/redis/go-redis/v9" + "github.com/zerofox-oss/go-msg" +) + +type Server struct { + Stream string + Group string + Consumer string // Consumer should be unique, so if we horizontally scale a component each alloc gets its own ID + Concurrency int + + conn *redis.Client + + inFlightQueue chan struct{} + + // context used to shutdown processing of in-flight messages + receiverCtx context.Context + receiverCancelFunc context.CancelFunc + + // context used to shutdown the server + serverCtx context.Context + serverCancelFunc context.CancelFunc +} + +func (s *Server) Serve(r msg.Receiver) error { + for { + select { + case <-s.serverCtx.Done(): + close(s.inFlightQueue) + + return msg.ErrServerClosed + default: + messages, err := s.xReadGroup() + if err != nil { + return err + } + + if len(messages) == 0 { + messages, err = s.xAutoclaim() + if err != nil { + return err + } + + // TODO - there isn't a concept of message retries w/ DLQ. A message could fail to be processed indefinitely. + // We could recreate this by using XCLAIM+XPENDING separately (the latter will return idle time + retries) + } + + // otherwise, we have messages to process + for _, m := range messages { + s.inFlightQueue <- struct{}{} + + go func(m redis.XMessage) { + defer func() { + <-s.inFlightQueue + }() + + s.process(m, r) + }(m) + } + } + } +} + +func (s *Server) xAutoclaim() ([]redis.XMessage, error) { + ctx, cancel := context.WithTimeout(s.receiverCtx, 1*time.Second) + defer cancel() + + messages, _, err := s.conn.XAutoClaim(ctx, &redis.XAutoClaimArgs{ + Stream: s.Stream, + Group: s.Group, + Consumer: s.Consumer, + + // MinIdle == Message Visibility Timeout (SQS) + MinIdle: 3 * time.Second, + Start: "0", + Count: int64(10), + }).Result() + if err != nil { + if err != redis.Nil { + return nil, fmt.Errorf("XAUTOCLAIM failed with: %w", err) + } + return []redis.XMessage{}, nil + } + + return messages, nil +} + +func (s *Server) xReadGroup() ([]redis.XMessage, error) { + ctx, cancel := context.WithTimeout(s.receiverCtx, 100*time.Millisecond) + defer cancel() + + resp, err := s.conn.XReadGroup(ctx, &redis.XReadGroupArgs{ + Group: s.Group, + Consumer: s.Consumer, + Streams: []string{s.Stream, ">"}, + Count: int64(10), + + // This effectively limits the server to poll at most once a second. + // https://github.com/redis/go-redis/issues/1941 + // https://stackoverflow.com/questions/64801757/redis-streams-how-to-manage-perpetual-subscription-and-block-behaviour + Block: 1 * time.Second, + }).Result() + if err != nil { + if err != redis.Nil { + return nil, fmt.Errorf("failed to read messages with: %w", err) + } + + return []redis.XMessage{}, nil + } + + return resp[0].Messages, nil +} + +func (s *Server) process(m redis.XMessage, r msg.Receiver) error { + message, err := toMessage(m.Values) + if err != nil { + return fmt.Errorf("could not marshal redis.XMessage: %w", err) + } + + if err := r.Receive(s.receiverCtx, &message); err != nil { + throttleErr, ok := err.(msg.ErrServerThrottled) + if ok { + time.Sleep(throttleErr.Duration) + return nil + } + + return fmt.Errorf("receiver error: %w", err) + } + + // ACK the message to remove it + ctx, cancel := context.WithTimeout(s.receiverCtx, 2*time.Second) + defer cancel() + + resp := s.conn.XAck(ctx, s.Stream, s.Group, m.ID) + if err := resp.Err(); err != nil { + return fmt.Errorf("could not XACK message: %w", err) + } + + return nil +} + +const shutdownPollInterval = 500 * time.Millisecond + +// Shutdown stops the receipt of new messages and waits for routines +// to complete or the passed in ctx to be canceled. msg.ErrServerClosed +// will be returned upon a clean shutdown. Otherwise, the passed ctx's +// Error will be returned. +func (s *Server) Shutdown(ctx context.Context) error { + if ctx == nil { + panic("context not set") + } + + s.serverCancelFunc() + + ticker := time.NewTicker(shutdownPollInterval) + defer ticker.Stop() + + for { + select { + case <-ctx.Done(): + s.receiverCancelFunc() + + return ctx.Err() + case <-ticker.C: + if len(s.inFlightQueue) == 0 { + return msg.ErrServerClosed + } + } + } +} + +// Option is the signature that modifies a `Server` to set some configuration +type Option func(*Server) error + +func NewServer(client *redis.Client, stream, group, consumer string, opts ...Option) (*Server, error) { + defaultConcurrency := 10 + + serverCtx, serverCancelFunc := context.WithCancel(context.Background()) + receiverCtx, receiverCancelFunc := context.WithCancel(context.Background()) + + srv := &Server{ + Stream: stream, + Group: group, + Consumer: consumer, + Concurrency: defaultConcurrency, + + conn: client, + inFlightQueue: make(chan struct{}, defaultConcurrency), + + receiverCtx: receiverCtx, + receiverCancelFunc: receiverCancelFunc, + serverCtx: serverCtx, + serverCancelFunc: serverCancelFunc, + } + + for _, opt := range opts { + if err := opt(srv); err != nil { + return nil, err + } + } + + return srv, nil +} + +func WithConcurrency(c int) func(*Server) error { + return func(srv *Server) error { + srv.Concurrency = c + srv.inFlightQueue = make(chan struct{}, c) + + return nil + } +} + +// Topic publishes Messages to a Redis Stream. +type Topic struct { + Stream string + Conn *redis.Client +} + +// NewWriter returns a MessageWriter. +// The MessageWriter may be used to write messages to a Reis Stream. +func (t *Topic) NewWriter(ctx context.Context) msg.MessageWriter { + return &MessageWriter{ + ctx: ctx, + attributes: make(map[string][]string), + buf: &bytes.Buffer{}, + + stream: t.Stream, + conn: t.Conn, + } +} + +// MessageWriter is used to publish a single Message to a Redis Stream. +// Once all of the data has been written and closed, it may not be used again. +type MessageWriter struct { + msg.MessageWriter + + stream string + conn *redis.Client + + ctx context.Context + attributes msg.Attributes + buf *bytes.Buffer // internal buffer + closed bool + mux sync.Mutex +} + +// Attributes returns the attributes of the MessageWriter. +func (w *MessageWriter) Attributes() *msg.Attributes { + return &w.attributes +} + +// Close publishes a Message. +// If the MessageWriter is already closed it will return an error. +func (w *MessageWriter) Close() error { + w.mux.Lock() + defer w.mux.Unlock() + + if w.closed { + return msg.ErrClosedMessageWriter + } + w.closed = true + + if w.buf.Len() > 0 { + message, err := toMap(msg.Message{ + Attributes: *w.Attributes(), + Body: w.buf, + }) + if err != nil { + return err + } + + res := w.conn.XAdd(w.ctx, &redis.XAddArgs{ + Stream: w.stream, + ID: "*", + Values: message, + }) + + return res.Err() + } + + return nil +} + +// Write writes bytes to an internal buffer. +func (w *MessageWriter) Write(p []byte) (int, error) { + w.mux.Lock() + defer w.mux.Unlock() + + if w.closed { + return 0, msg.ErrClosedMessageWriter + } + return w.buf.Write(p) +} + +func toMap(m msg.Message) (map[string]interface{}, error) { + return map[string]interface{}{ + "Attributes": nil, + "Body": fmt.Sprint(m.Body), + }, nil +} + +// converts map[string]interface{} to a Message +func toMessage(m map[string]interface{}) (msg.Message, error) { + return msg.Message{ + Attributes: nil, + Body: bytes.NewBufferString(fmt.Sprint(m["Body"])), + }, nil +} diff --git a/backends/redis/streams_test.go b/backends/redis/streams_test.go new file mode 100644 index 0000000..438fafe --- /dev/null +++ b/backends/redis/streams_test.go @@ -0,0 +1,251 @@ +package redis + +import ( + "context" + "encoding/json" + "errors" + "math/rand" + "sync/atomic" + "testing" + "time" + + "github.com/redis/go-redis/v9" + "github.com/zerofox-oss/go-msg" +) + +var redisURL = "localhost:6379" + +func Test_Redis(t *testing.T) { + client := redis.NewClient(&redis.Options{Addr: redisURL}) + + stream := "stream1" + groups := []string{"group1", "group2"} + + // delete stream once test is complete + cleanup := setupStream(t, client, streamConf{ + Stream: stream, + Groups: groups, + NumMessages: 1000000, + }) + defer cleanup() + + // setup consumers for each group + var count atomic.Uint32 + + go func() { + srv1, err := NewServer(client, stream, "group1", "consumer1") + if err != nil { + t.Errorf("could not start server: %s", err) + } + + receiveFunc := msg.ReceiverFunc(func(ctx context.Context, m *msg.Message) error { + t.Logf("Returning without error to ACK.") + count.Add(1) + + return nil + }) + + // sleep to allow the loop below to start + time.Sleep(1 * time.Second) + srv1.Serve(receiveFunc) + }() + + ctx, cancel := context.WithTimeout(context.Background(), 6*time.Second) + defer cancel() + + for { + select { + case <-ctx.Done(): + if actual := count.Load(); actual != uint32(2) { + t.Errorf("Expected 2 messages to be processed, got %d", actual) + } + + return + default: + resp := client.XInfoGroups(ctx, stream) + if err := resp.Err(); err != nil { + t.Errorf("XInfoGroups failed with: %s", err) + } + + t.Logf("XInfoGroups: %+v", resp.Val()) + time.Sleep(1 * time.Second) + } + } +} + +func Test_ServerClaimPendingMessages(t *testing.T) { + client := redis.NewClient(&redis.Options{Addr: redisURL}) + + stream := "stream2" + groups := []string{"group1", "group2"} + + // delete stream once test is complete + cleanup := setupStream(t, client, streamConf{ + Stream: stream, + Groups: groups, + NumMessages: 100, + }) + defer cleanup() + + // setup consumers for each group + var count atomic.Uint32 + + // srv1 - fails to process messages + go func() { + srv1, err := NewServer(client, stream, "group1", "consumer1") + if err != nil { + t.Errorf("could not start server: %s", err) + return + } + + receiveFunc := msg.ReceiverFunc(func(ctx context.Context, m *msg.Message) error { + t.Logf("Simulating a message failure in server1, returning error to re-assign") + + return errors.New("message timed out") + }) + + if err := srv1.Serve(receiveFunc); err != nil { + t.Logf("srv1 failed with: %s", err) + } + }() + + // srv2 - starts a few seconds after srv1 to let srv1 claim both messages. + go func() { + srv2, err := NewServer(client, stream, "group1", "consumer2") + if err != nil { + t.Errorf("could not start server: %s", err) + return + } + + time.Sleep(1 * time.Second) + + receiveFunc := msg.ReceiverFunc(func(ctx context.Context, m *msg.Message) error { + t.Logf("Returning without error to ACK.") + + count.Add(1) + + return nil + }) + + if err := srv2.Serve(receiveFunc); err != nil { + t.Logf("srv2 failed with: %s", err) + } + }() + + ctx, cancel := context.WithTimeout(context.Background(), 6*time.Second) + defer cancel() + + for { + select { + case <-ctx.Done(): + if actual := count.Load(); actual != uint32(2) { + t.Errorf("Expected 2 messages to be processed, got %d", actual) + } + + return + default: + resp, err := client.XInfoGroups(ctx, stream).Result() + if err != nil { + t.Errorf("XInfoGroups failed with: %s", err) + } + + t.Logf("XInfoGroups: %+v", resp) + time.Sleep(1 * time.Second) + } + } +} + +type streamConf struct { + Stream string + Groups []string + NumMessages int +} + +func setupStream(t *testing.T, client *redis.Client, conf streamConf) func() error { + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + // Consumer groups should only receive new messages - therefore specify $ as the ID + // See https://redis.io/docs/latest/commands/xgroup-create/ + for _, group := range conf.Groups { + resp := client.XGroupCreateMkStream(ctx, conf.Stream, group, "$") + if err := resp.Err(); err != nil { + t.Fatalf("could not create consumer group (%s): %s", group, err) + } + } + + // publish a bunch of messages to the stream + topic := Topic{Stream: conf.Stream, Conn: client} + batches := make(chan struct{}, 10) + batchSize := 1000 + totalWrites := 0 + + for i := 0; i < conf.NumMessages/batchSize; i++ { + if totalWrites%(batchSize*10) == 0 { + t.Logf("Wrote %d messages to stream", totalWrites) + } + + batches <- struct{}{} + + go func() { + // generate random string once, because this isn't safe to generate in goroutines + var r *rand.Rand = rand.New(rand.NewSource(time.Now().UnixNano())) + + defer func() { + <-batches + }() + + for j := 0; j < batchSize; j++ { + // generate random string of 100KB + raw, err := json.Marshal(String(r, 100000)) + if err != nil { + t.Errorf("could not marshal message: %s", err) + } + + ctx, cancel := context.WithTimeout(context.Background(), 1*time.Second) + defer cancel() + + w := topic.NewWriter(ctx) + if _, err := w.Write(raw); err != nil { + t.Errorf("could not write message: %s", err) + } + + if err := w.Close(); err != nil { + t.Errorf("could not close message: %s", err) + } + } + + totalWrites += batchSize + }() + } + + t.Logf("Stream=%s configured with consumer_groups=%d, messages=%d", conf.Stream, len(conf.Groups), conf.NumMessages) + + return func() error { + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + if err := client.Del(ctx, conf.Stream).Err(); err != nil { + t.Errorf("DEL %s failed with: %s", conf.Stream, err) + return err + } + + return nil + } +} + +// for testing stream sizes +// https://www.calhoun.io/creating-random-strings-in-go/ +const charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" + +func StringWithCharset(r *rand.Rand, length int, charset string) string { + b := make([]byte, length) + for i := range b { + b[i] = charset[r.Intn(len(charset))] + } + return string(b) +} + +func String(r *rand.Rand, length int) string { + return StringWithCharset(r, length, charset) +} diff --git a/go.mod b/go.mod index 8cde497..e991d84 100644 --- a/go.mod +++ b/go.mod @@ -5,6 +5,7 @@ go 1.21 require ( github.com/google/go-cmp v0.6.0 github.com/pierrec/lz4/v4 v4.1.8 + github.com/redis/go-redis/v9 v9.5.3 go.opencensus.io v0.24.0 go.opentelemetry.io/otel v1.24.0 go.opentelemetry.io/otel/bridge/opencensus v1.24.0 @@ -13,6 +14,8 @@ require ( ) require ( + github.com/cespare/xxhash/v2 v2.3.0 // indirect + github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect diff --git a/go.sum b/go.sum index 35764e3..ebb895c 100644 --- a/go.sum +++ b/go.sum @@ -1,18 +1,24 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/bsm/ginkgo/v2 v2.12.0 h1:Ny8MWAHyOepLGlLKYmXG4IEkioBysk6GpaRTLC8zwWs= +github.com/bsm/ginkgo/v2 v2.12.0/go.mod h1:SwYbGRRDovPVboqFv0tPTcG1sN61LM1Z4ARdbAV9g4c= +github.com/bsm/gomega v1.27.10 h1:yeMWxP2pV2fG3FgAODIY8EiRE3dy0aeFYt4l7wh6yKA= +github.com/bsm/gomega v1.27.10/go.mod h1:JyEr/xRbxbtgWNi8tIEVPUYZ5Dzef52k01W3YH0H+O0= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= +github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/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/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= +github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= 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/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= -github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= @@ -45,6 +51,8 @@ github.com/pierrec/lz4/v4 v4.1.8/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuR 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/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/redis/go-redis/v9 v9.5.3 h1:fOAp1/uJG+ZtcITgZOfYFmTKPE7n4Vclj1wZFgRciUU= +github.com/redis/go-redis/v9 v9.5.3/go.mod h1:hdY0cQFCN4fnSYT6TkisLufl/4W5UIXyv0b/CLO2V2M= 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= @@ -52,46 +60,21 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo= go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo= -go.opentelemetry.io/otel v1.25.0 h1:gldB5FfhRl7OJQbUHt/8s0a7cE8fbsPAtdpRaApKy4k= -go.opentelemetry.io/otel v1.25.0/go.mod h1:Wa2ds5NOXEMkCmUou1WA7ZBfLTHWIsp034OVD7AO+Vg= -go.opentelemetry.io/otel v1.26.0 h1:LQwgL5s/1W7YiiRwxf03QGnWLb2HW4pLiAhaA5cZXBs= -go.opentelemetry.io/otel v1.26.0/go.mod h1:UmLkJHUAidDval2EICqBMbnAd0/m2vmpf/dAM+fvFs4= go.opentelemetry.io/otel/bridge/opencensus v1.24.0 h1:Vlhy5ee5k5R0zASpH+9AgHiJH7xnKACI3XopO1tUZfY= go.opentelemetry.io/otel/bridge/opencensus v1.24.0/go.mod h1:jRjVXV/X38jyrnHtvMGN8+9cejZB21JvXAAvooF2s+Q= -go.opentelemetry.io/otel/bridge/opencensus v1.25.0 h1:0o/9KwAgxjK+3pMV0pwIF5toYHqDsPmQhfrBvKaG6mU= -go.opentelemetry.io/otel/bridge/opencensus v1.25.0/go.mod h1:rZyTdpmRqoV+PpUn6QlruxJp/kE4765rPy0pP6mRDk8= -go.opentelemetry.io/otel/bridge/opencensus v1.26.0 h1:DZzxj9QjznMVoehskOJnFP2gsTCWtDTFBDvFhPAY7nc= -go.opentelemetry.io/otel/bridge/opencensus v1.26.0/go.mod h1:rJiX0KrF5m8Tm1XE8jLczpAv5zUaDcvhKecFG0ZoFG4= go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI= go.opentelemetry.io/otel/metric v1.24.0/go.mod h1:VYhLe1rFfxuTXLgj4CBiyz+9WYBA8pNGJgDcSFRKBco= -go.opentelemetry.io/otel/metric v1.25.0 h1:LUKbS7ArpFL/I2jJHdJcqMGxkRdxpPHE0VU/D4NuEwA= -go.opentelemetry.io/otel/metric v1.25.0/go.mod h1:rkDLUSd2lC5lq2dFNrX9LGAbINP5B7WBkC78RXCpH5s= -go.opentelemetry.io/otel/metric v1.26.0 h1:7S39CLuY5Jgg9CrnA9HHiEjGMF/X2VHvoXGgSllRz30= -go.opentelemetry.io/otel/metric v1.26.0/go.mod h1:SY+rHOI4cEawI9a7N1A4nIg/nTQXe1ccCNWYOJUrpX4= go.opentelemetry.io/otel/sdk v1.24.0 h1:YMPPDNymmQN3ZgczicBY3B6sf9n62Dlj9pWD3ucgoDw= go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= -go.opentelemetry.io/otel/sdk v1.25.0 h1:PDryEJPC8YJZQSyLY5eqLeafHtG+X7FWnf3aXMtxbqo= -go.opentelemetry.io/otel/sdk v1.25.0/go.mod h1:oFgzCM2zdsxKzz6zwpTZYLLQsFwc+K0daArPdIhuxkw= -go.opentelemetry.io/otel/sdk v1.26.0 h1:Y7bumHf5tAiDlRYFmGqetNcLaVUZmh4iYfmGxtmz7F8= -go.opentelemetry.io/otel/sdk v1.26.0/go.mod h1:0p8MXpqLeJ0pzcszQQN4F0S5FVjBLgypeGSngLsmirs= go.opentelemetry.io/otel/sdk/metric v1.24.0 h1:yyMQrPzF+k88/DbH7o4FMAs80puqd+9osbiBrJrz/w8= go.opentelemetry.io/otel/sdk/metric v1.24.0/go.mod h1:I6Y5FjH6rvEnTTAYQz3Mmv2kl6Ek5IIrmwTLqMrrOE0= -go.opentelemetry.io/otel/sdk/metric v1.25.0 h1:7CiHOy08LbrxMAp4vWpbiPcklunUshVpAvGBrdDRlGw= -go.opentelemetry.io/otel/sdk/metric v1.25.0/go.mod h1:LzwoKptdbBBdYfvtGCzGwk6GWMA3aUzBOwtQpR6Nz7o= -go.opentelemetry.io/otel/sdk/metric v1.26.0 h1:cWSks5tfriHPdWFnl+qpX3P681aAYqlZHcAyHw5aU9Y= -go.opentelemetry.io/otel/sdk/metric v1.26.0/go.mod h1:ClMFFknnThJCksebJwz7KIyEDHO+nTB6gK8obLy8RyE= go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= -go.opentelemetry.io/otel/trace v1.25.0 h1:tqukZGLwQYRIFtSQM2u2+yfMVTgGVeqRLPUYx1Dq6RM= -go.opentelemetry.io/otel/trace v1.25.0/go.mod h1:hCCs70XM/ljO+BeQkyFnbK28SBIJ/Emuha+ccrCRT7I= -go.opentelemetry.io/otel/trace v1.26.0 h1:1ieeAUb4y0TE26jUFrCIXKpTuVK7uJGN9/Z/2LP5sQA= -go.opentelemetry.io/otel/trace v1.26.0/go.mod h1:4iDxvGDQuUkHve82hJJ8UqrwswHYsZuWCBllGV2U2y0= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= diff --git a/msg.go b/msg.go index daa5ee7..6349032 100644 --- a/msg.go +++ b/msg.go @@ -4,8 +4,10 @@ import ( "bytes" "context" "errors" + "fmt" "io" "net/textproto" + "time" ) // Attributes represent the key-value metadata for a Message. @@ -111,9 +113,19 @@ func (f ReceiverFunc) Receive(ctx context.Context, m *Message) error { return f(ctx, m) } -// ErrServerClosed represents a completed Shutdown +// ErrServerClosed represents a completed shutdown var ErrServerClosed = errors.New("msg: server closed") +// ErrServerThrottled signals that the server should sleep before resuming work. +type ErrServerThrottled struct { + Message string + Duration time.Duration +} + +func (e ErrServerThrottled) Error() string { + return fmt.Sprintf("error: %s - server throttled for %s", e.Message, e.Duration) +} + // A Server serves messages to a receiver. type Server interface { // Serve is a blocking function that gets data from an input stream, From a1d370b0bb22c3fa1bef237acbedee7056bb2eb4 Mon Sep 17 00:00:00 2001 From: Chris Raborg Date: Tue, 25 Jun 2024 15:10:39 -0400 Subject: [PATCH 2/3] WIP - rabbitmq / amqp implementation --- Makefile | 2 +- backends/rabbitmq/rabbitmq.go | 274 +++++++++++++++++++++++++++++ backends/rabbitmq/rabbitmq_test.go | 195 ++++++++++++++++++++ go.mod | 1 + go.sum | 4 + 5 files changed, 475 insertions(+), 1 deletion(-) create mode 100644 backends/rabbitmq/rabbitmq.go create mode 100644 backends/rabbitmq/rabbitmq_test.go diff --git a/Makefile b/Makefile index 8b8ee95..cebe26a 100644 --- a/Makefile +++ b/Makefile @@ -9,4 +9,4 @@ lint: test: go test -race -v ./... -.PHONY: lint test fmt +.PHONY: fmt lint test diff --git a/backends/rabbitmq/rabbitmq.go b/backends/rabbitmq/rabbitmq.go new file mode 100644 index 0000000..2f8c47e --- /dev/null +++ b/backends/rabbitmq/rabbitmq.go @@ -0,0 +1,274 @@ +package rabbitmq + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "log" + "sync" + "time" + + amqp "github.com/rabbitmq/amqp091-go" + "github.com/zerofox-oss/go-msg" +) + +type Server struct { + Queue string + Concurrency int + + conn *amqp.Connection + inFlightQueue chan struct{} + + // context used to shutdown processing of in-flight messages + receiverCtx context.Context + receiverCancelFunc context.CancelFunc + + // context used to shutdown the server + serverCtx context.Context + serverCancelFunc context.CancelFunc +} + +func (s *Server) Serve(r msg.Receiver) error { + ch, err := s.conn.Channel() + if err != nil { + return err + } + defer ch.Close() + + notifyConnClose := s.conn.NotifyClose(make(chan *amqp.Error, 1)) + notifyChanClose := ch.NotifyClose(make(chan *amqp.Error, 1)) + + // open queue channel + msgChan, err := ch.Consume(s.Queue, "", false, false, false, false, nil) + if err != nil { + return err + } + + for { + select { + case <-s.serverCtx.Done(): + ch.Close() + close(s.inFlightQueue) + + return msg.ErrServerClosed + + // exit if conn or channel are closed + case err, ok := <-notifyConnClose: + if ok { + return fmt.Errorf("amqp connection was closed: %s, exiting", err) + } + + case err, ok := <-notifyChanClose: + if ok { + return fmt.Errorf("amqp channel was closed: %s", err) + } + + case m := <-msgChan: + // apparently this doesn't block if there's no messages in the queue, it just returns an empty message + if m.Acknowledger == nil { + continue + } + + s.inFlightQueue <- struct{}{} + + go func(d amqp.Delivery) { + defer func() { + <-s.inFlightQueue + }() + + if err := s.process(d, r); err != nil { + log.Printf("failed to process: %s", err) + } + }(m) + } + } +} + +func (s *Server) process(d amqp.Delivery, r msg.Receiver) error { + message := msg.Message{ + Body: bytes.NewBuffer(d.Body), + } + + if err := r.Receive(s.receiverCtx, &message); err != nil { + if err := d.Nack(false, true); err != nil { + return err + } + + throttleErr, ok := err.(msg.ErrServerThrottled) + if ok { + time.Sleep(throttleErr.Duration) + return nil + } + + return fmt.Errorf("receiver error: %w", err) + } + + if err := d.Ack(false); err != nil { + return fmt.Errorf("could not ACK message: %w", err) + } + + return nil +} + +const shutdownPollInterval = 500 * time.Millisecond + +// Shutdown stops the receipt of new messages and waits for routines +// to complete or the passed in ctx to be canceled. msg.ErrServerClosed +// will be returned upon a clean shutdown. Otherwise, the passed ctx's +// Error will be returned. +func (s *Server) Shutdown(ctx context.Context) error { + if ctx == nil { + panic("context not set") + } + + s.serverCancelFunc() + + ticker := time.NewTicker(shutdownPollInterval) + defer ticker.Stop() + + for { + select { + case <-ctx.Done(): + s.receiverCancelFunc() + + return ctx.Err() + case <-ticker.C: + if len(s.inFlightQueue) == 0 { + return msg.ErrServerClosed + } + } + } +} + +// Option is the signature that modifies a `Server` to set some configuration +type Option func(*Server) error + +func NewServer(conn *amqp.Connection, queue string, opts ...Option) (*Server, error) { + defaultConcurrency := 10 + + serverCtx, serverCancelFunc := context.WithCancel(context.Background()) + receiverCtx, receiverCancelFunc := context.WithCancel(context.Background()) + + srv := &Server{ + Queue: queue, + Concurrency: defaultConcurrency, + + conn: conn, + inFlightQueue: make(chan struct{}, defaultConcurrency), + + receiverCtx: receiverCtx, + receiverCancelFunc: receiverCancelFunc, + serverCtx: serverCtx, + serverCancelFunc: serverCancelFunc, + } + + for _, opt := range opts { + if err := opt(srv); err != nil { + return nil, err + } + } + + return srv, nil +} + +func WithConcurrency(c int) func(*Server) error { + return func(srv *Server) error { + srv.Concurrency = c + srv.inFlightQueue = make(chan struct{}, c) + + return nil + } +} + +// Topic publishes Messages to a RabbitMQ Exchange. +type Topic struct { + Exchange string + Conn *amqp.Connection +} + +// NewWriter returns a MessageWriter. +// The MessageWriter may be used to write messages to a RabbitMQ Exchange. +func (t *Topic) NewWriter(ctx context.Context) msg.MessageWriter { + return &MessageWriter{ + ctx: ctx, + attributes: make(map[string][]string), + buf: &bytes.Buffer{}, + + exchange: t.Exchange, + conn: t.Conn, + } +} + +// MessageWriter is used to publish a single Message to a RabbitMQ Exchange. +// Once all of the data has been written and closed, it may not be used again. +type MessageWriter struct { + msg.MessageWriter + + exchange string + conn *amqp.Connection + + ctx context.Context + attributes msg.Attributes + buf *bytes.Buffer // internal buffer + closed bool + mux sync.Mutex +} + +// Attributes returns the attributes of the MessageWriter. +func (w *MessageWriter) Attributes() *msg.Attributes { + return &w.attributes +} + +// Write writes bytes to an internal buffer. +func (w *MessageWriter) Write(p []byte) (int, error) { + w.mux.Lock() + defer w.mux.Unlock() + + if w.closed { + return 0, msg.ErrClosedMessageWriter + } + return w.buf.Write(p) +} + +// Close publishes a Message. +// If the MessageWriter is already closed it will return an error. +func (w *MessageWriter) Close() error { + w.mux.Lock() + defer w.mux.Unlock() + + if w.closed { + return msg.ErrClosedMessageWriter + } + w.closed = true + + if w.buf.Len() > 0 { + raw, err := json.Marshal(w.buf) + if err != nil { + return err + } + + ch, err := w.conn.Channel() + if err != nil { + return err + } + defer ch.Close() + + return ch.PublishWithContext(w.ctx, w.exchange, "", false, false, amqp.Publishing{ + Headers: attrsToHeaders(w), + Body: raw, + }) + } + + return nil +} + +func attrsToHeaders(w msg.MessageWriter) map[string]interface{} { + headers := map[string]interface{}{} + + for k, v := range *w.Attributes() { + headers[k] = v + } + + return headers +} diff --git a/backends/rabbitmq/rabbitmq_test.go b/backends/rabbitmq/rabbitmq_test.go new file mode 100644 index 0000000..5a60de4 --- /dev/null +++ b/backends/rabbitmq/rabbitmq_test.go @@ -0,0 +1,195 @@ +package rabbitmq + +import ( + "context" + "encoding/json" + "math/rand" + "sync/atomic" + "testing" + "time" + + amqp "github.com/rabbitmq/amqp091-go" + "github.com/zerofox-oss/go-msg" +) + +const rabbitmqURL = "amqp://guest:guest@localhost:5672" + +func Test_RabbitMQ(t *testing.T) { + conn, err := amqp.Dial(rabbitmqURL) + if err != nil { + t.Fatalf("could not connect to rabbitmq: %s", err) + } + defer conn.Close() + + t.Log("opened connection") + + // creates a pub/sub exchange + conf := exchangeConf{ + Name: "my_new_exchange", + Type: amqp.ExchangeTopic, + Queues: []string{"queue1"}, + NumMessages: 1000000, + } + + cleanup := setupExchange(t, conn, conf) + defer cleanup() + + // setup consumers for each group + var count atomic.Uint32 + + go func() { + srvConn, err := amqp.Dial(rabbitmqURL) + if err != nil { + t.Errorf("could not connect to rabbitmq: %s", err) + } + defer srvConn.Close() + + srv1, err := NewServer(srvConn, conf.Queues[0]) + if err != nil { + t.Errorf("could not start server: %s", err) + } + + receiveFunc := msg.ReceiverFunc(func(ctx context.Context, m *msg.Message) error { + t.Logf("Returning without error to ACK.") + count.Add(1) + + return nil + }) + + // sleep to allow the loop below to start + time.Sleep(1 * time.Second) + srv1.Serve(receiveFunc) + }() + + ctx, cancel := context.WithTimeout(context.Background(), 6*time.Second) + defer cancel() + + for { + select { + case <-ctx.Done(): + if actual := count.Load(); actual != uint32(conf.NumMessages) { + t.Errorf("Expected %d messages to be processed, got %d", conf.NumMessages, actual) + } + + t.Fail() + return + default: + // inspect state of exchange + time.Sleep(1 * time.Second) + } + } +} + +type exchangeConf struct { + Name string + Type string + Queues []string + NumMessages int +} + +func setupExchange(t *testing.T, conn *amqp.Connection, conf exchangeConf) func() error { + ch, err := conn.Channel() + if err != nil { + t.Fatalf("could not open channel: %s", err) + } + defer ch.Close() + + if err := ch.ExchangeDeclare(conf.Name, conf.Type, true, false, false, false, nil); err != nil { + t.Errorf("could not declare exchange: %s", err) + } + + // setup queues + for _, name := range conf.Queues { + _, err := ch.QueueDeclare(name, true, false, false, false, nil) + if err != nil { + t.Fatalf("could not create queue: %s", err) + } + + if err := ch.QueueBind(name, "#", conf.Name, false, nil); err != nil { + t.Fatalf("could not bind queue: %s", err) + } + } + + // publish a bunch of messages to the exchange + topic := Topic{Conn: conn, Exchange: conf.Name} + batches := make(chan struct{}, 10) + batchSize := 1000 + totalWrites := 0 + + for i := 0; i < conf.NumMessages/batchSize; i++ { + if totalWrites%(batchSize*10) == 0 { + t.Logf("Wrote %d messages to exchange", totalWrites) + } + + batches <- struct{}{} + + go func() { + // generate random string once, because this isn't safe to generate in goroutines + var r *rand.Rand = rand.New(rand.NewSource(time.Now().UnixNano())) + + defer func() { + <-batches + }() + + for j := 0; j < batchSize; j++ { + // generate random string of 100KB + raw, err := json.Marshal(String(r, 100000)) + if err != nil { + t.Errorf("could not marshal message: %s", err) + } + + ctx, cancel := context.WithTimeout(context.Background(), 1*time.Second) + defer cancel() + + w := topic.NewWriter(ctx) + if _, err := w.Write(raw); err != nil { + t.Errorf("could not write message: %s", err) + } + + if err := w.Close(); err != nil { + t.Errorf("could not close message: %s", err) + } + } + + totalWrites += batchSize + }() + } + + t.Logf("Exchange=%s configured with queues=%d, messages=%d", conf.Name, len(conf.Queues), conf.NumMessages) + + return func() error { + ch, err := conn.Channel() + if err != nil { + t.Fatalf("could not open channel: %s", err) + } + defer ch.Close() + + for _, name := range conf.Queues { + if _, err := ch.QueueDelete(name, false, false, false); err != nil { + t.Errorf("could not delete queue %s: %s", name, err) + } + } + + if err := ch.ExchangeDelete(conf.Name, false, false); err != nil { + t.Errorf("could not delete exchange: %s", err) + } + + return err + } +} + +// for testing stream sizes +// https://www.calhoun.io/creating-random-strings-in-go/ +const charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" + +func StringWithCharset(r *rand.Rand, length int, charset string) string { + b := make([]byte, length) + for i := range b { + b[i] = charset[r.Intn(len(charset))] + } + return string(b) +} + +func String(r *rand.Rand, length int) string { + return StringWithCharset(r, length, charset) +} diff --git a/go.mod b/go.mod index e991d84..a23ab7f 100644 --- a/go.mod +++ b/go.mod @@ -5,6 +5,7 @@ go 1.21 require ( github.com/google/go-cmp v0.6.0 github.com/pierrec/lz4/v4 v4.1.8 + github.com/rabbitmq/amqp091-go v1.10.0 github.com/redis/go-redis/v9 v9.5.3 go.opencensus.io v0.24.0 go.opentelemetry.io/otel v1.24.0 diff --git a/go.sum b/go.sum index ebb895c..e6a746a 100644 --- a/go.sum +++ b/go.sum @@ -53,6 +53,8 @@ github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZN github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/redis/go-redis/v9 v9.5.3 h1:fOAp1/uJG+ZtcITgZOfYFmTKPE7n4Vclj1wZFgRciUU= github.com/redis/go-redis/v9 v9.5.3/go.mod h1:hdY0cQFCN4fnSYT6TkisLufl/4W5UIXyv0b/CLO2V2M= +github.com/rabbitmq/amqp091-go v1.10.0 h1:STpn5XsHlHGcecLmMFCtg7mqq0RnD+zFr4uzukfVhBw= +github.com/rabbitmq/amqp091-go v1.10.0/go.mod h1:Hy4jKW5kQART1u+JkDTF9YYOQUHXqMuhrgxOEeS7G4o= 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= @@ -75,6 +77,8 @@ go.opentelemetry.io/otel/sdk/metric v1.24.0 h1:yyMQrPzF+k88/DbH7o4FMAs80puqd+9os go.opentelemetry.io/otel/sdk/metric v1.24.0/go.mod h1:I6Y5FjH6rvEnTTAYQz3Mmv2kl6Ek5IIrmwTLqMrrOE0= go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= +go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= +go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= From 6b6abb77f47135d59d4ae1bf26651d0c031d2437 Mon Sep 17 00:00:00 2001 From: Chris Raborg Date: Thu, 27 Jun 2024 09:29:30 -0400 Subject: [PATCH 3/3] WIP - docker-compose for running performance tests --- docker/README.md | 75 ++ docker/docker-compose.rabbitmq.yml | 69 ++ docker/docker-compose.redis.yml | 73 ++ docker/grafana/README.md | 39 + docker/grafana/dashboards.yml | 10 + docker/grafana/dashboards/RabbitMQ.json | 929 ++++++++++++++++++ docker/grafana/dashboards/Redis.json | 316 ++++++ docker/grafana/datasources.yml | 44 + docker/prometheus.yml | 52 + docker/rabbitmq/overview-definitions.json | 49 + docker/rabbitmq/overview.conf | 32 + docker/results/docker-resource-allocation.png | Bin 0 -> 67338 bytes docker/results/rabbitmq-test-results.png | Bin 0 -> 161295 bytes docker/results/redis-test-results.png | Bin 0 -> 194697 bytes 14 files changed, 1688 insertions(+) create mode 100644 docker/README.md create mode 100644 docker/docker-compose.rabbitmq.yml create mode 100644 docker/docker-compose.redis.yml create mode 100644 docker/grafana/README.md create mode 100644 docker/grafana/dashboards.yml create mode 100644 docker/grafana/dashboards/RabbitMQ.json create mode 100644 docker/grafana/dashboards/Redis.json create mode 100644 docker/grafana/datasources.yml create mode 100644 docker/prometheus.yml create mode 100644 docker/rabbitmq/overview-definitions.json create mode 100644 docker/rabbitmq/overview.conf create mode 100644 docker/results/docker-resource-allocation.png create mode 100644 docker/results/rabbitmq-test-results.png create mode 100644 docker/results/redis-test-results.png diff --git a/docker/README.md b/docker/README.md new file mode 100644 index 0000000..2f55bf3 --- /dev/null +++ b/docker/README.md @@ -0,0 +1,75 @@ +# A comparison of Message Brokers + +## Setup + +### RabbitMQ/Prometheus/Grafana Stack + +Setup: +```bash +docker-compose -f docker/docker-compose.rabbitmq.yml up -d --remove-orphans +``` + +Teardown: + +```bash +docker-compose -f docker/docker-compose.rabbitmq.yml down -v +``` + +> This will tear down attached volumes to reset Prometheus/Grafana metrics. + +While docker is running, you can run tests: + +```bash +go test -v --run "Test_RabbitMQ" ./backends/rabbitmq --timeout 20m +``` + +Go to http://localhost:3000/d/5qyVNpQIk/memory-disk-usage?orgId=1&from=now-15m&to=now&refresh=10s +to monitor RabbitMQ while the tests are running. + +### Redis/Prometheus/Grafana Stack + +Setup: + +```bash +docker-compose -f docker/docker-compose.redis.yml up -d --remove-orphans +``` + +Teardown: + +```bash +docker-compose -f docker/docker-compose.redis.yml down -v +``` + +> This will tear down attached volumes to reset Prometheus/Grafana metrics. + +While docker is running, you can run tests: + +```bash +go test -v --run "Test_Redis" ./backends/redis --timeout 20m +``` + + +## Results + +The test is as follows: + +* Write 1M (million) messages to the broker. +* Each message is a random alphanumeric string of size 100KB. +* Process them using a go-msg server (no errors). + +Each test runs a broker (Rabbitmq or Redis), Prometheus, Grafana, and optional exporter (to scrape metrics for Prometheus). +Each broker is configured for the default Docker resource allocations: + +![](./results/docker-resource-allocation.png) + +We're going to compare resource usage between the message brokers, to see if one is more viable. + +**Redis** wrote ~100K messages before it got an OOM error (at 8GB memory), crashed, and then the tests failed. + + +![](./results/redis-test-results.png) + +**RabbitMQ** wrote all 1M messages while only using 500MB memory and ~200MB disk. +All messages were processed. + +![](./results/rabbitmq-test-results.png) diff --git a/docker/docker-compose.rabbitmq.yml b/docker/docker-compose.rabbitmq.yml new file mode 100644 index 0000000..eb6efa8 --- /dev/null +++ b/docker/docker-compose.rabbitmq.yml @@ -0,0 +1,69 @@ +# https://docs.docker.com/compose/compose-file/#networks +networks: + rabbitmq_prometheus: + +# https://docs.docker.com/compose/compose-file/#volumes +volumes: + prometheus_prometheus: + prometheus_grafana: + +services: + rabbitmq: + image: rabbitmq:3.13.3 + networks: + - "rabbitmq_prometheus" + ports: + - "5672:5672" + # https://unix.stackexchange.com/questions/71940/killing-tcp-connection-in-linux + # https://en.wikipedia.org/wiki/Tcpkill + # https://www.digitalocean.com/community/tutorials/iptables-essentials-common-firewall-rules-and-commands#block-an-ip-address + cap_add: + - ALL + environment: + RABBITMQ_ERLANG_COOKIE: prometheus + # Uncomment the following line if you want debug logs & colour + # RABBITMQ_LOG: debug,+color + volumes: + - ./rabbitmq/overview.conf:/etc/rabbitmq/rabbitmq.conf:ro + - ./rabbitmq/overview-definitions.json:/etc/rabbitmq/rabbitmq-definitions.json:ro + + grafana: + # https://hub.docker.com/r/grafana/grafana/tags + image: grafana/grafana:8.3.4 + ports: + - "3000:3000" + networks: + - "rabbitmq_prometheus" + volumes: + - prometheus_grafana:/var/lib/grafana + - ./grafana/dashboards.yml:/etc/grafana/provisioning/dashboards/dashboards.yaml + - ./grafana/datasources.yml:/etc/grafana/provisioning/datasources/prometheus.yaml + - ./grafana/dashboards:/dashboards + environment: + GF_INSTALL_PLUGINS: "flant-statusmap-panel,grafana-piechart-panel" + + prometheus: + # https://hub.docker.com/r/prom/prometheus/tags + image: prom/prometheus:v2.28.1 + networks: + - "rabbitmq_prometheus" + ports: + - "9090:9090" + volumes: + - prometheus_prometheus:/prometheus + - ./prometheus.yml:/etc/prometheus/prometheus.yml + + cadvisor: + image: gcr.io/cadvisor/cadvisor:v0.49.1 + networks: + - "rabbitmq_prometheus" + ports: + - "8080:8080" + volumes: + - /:/rootfs:ro + - /sys:/sys:ro + - /var/lib/docker/:/var/lib/docker:ro + - /var/run:/var/run:ro + - /var/run/docker.sock:/var/run/docker.sock:ro + command: + - '--store_container_labels=true' \ No newline at end of file diff --git a/docker/docker-compose.redis.yml b/docker/docker-compose.redis.yml new file mode 100644 index 0000000..07643a6 --- /dev/null +++ b/docker/docker-compose.redis.yml @@ -0,0 +1,73 @@ +# https://docs.docker.com/compose/compose-file/#networks +networks: + redis_prometheus: + +# https://docs.docker.com/compose/compose-file/#volumes +volumes: + prometheus_prometheus: + prometheus_grafana: + +services: + redis: + image: redis:7.2.5 + container_name: redis + networks: + - "redis_prometheus" + ports: + - "6379:6379" + + grafana: + # https://hub.docker.com/r/grafana/grafana/tags + image: grafana/grafana:8.3.4 + container_name: grafana + ports: + - "3000:3000" + networks: + - "redis_prometheus" + volumes: + - prometheus_grafana:/var/lib/grafana + - ./grafana/dashboards.yml:/etc/grafana/provisioning/dashboards/dashboards.yaml + - ./grafana/datasources.yml:/etc/grafana/provisioning/datasources/prometheus.yaml + - ./grafana/dashboards:/dashboards + environment: + GF_INSTALL_PLUGINS: "flant-statusmap-panel,grafana-piechart-panel" + + prometheus: + # https://hub.docker.com/r/prom/prometheus/tags + image: prom/prometheus:v2.28.1 + container_name: prometheus + networks: + - "redis_prometheus" + ports: + - "9090:9090" + volumes: + - prometheus_prometheus:/prometheus + - ./prometheus.yml:/etc/prometheus/prometheus.yml + + cadvisor: + image: gcr.io/cadvisor/cadvisor:v0.49.1 + networks: + - "rabbitmq_prometheus" + ports: + - "8080:8080" + volumes: + - /:/rootfs:ro + - /sys:/sys:ro + - /var/lib/docker/:/var/lib/docker:ro + - /var/run:/var/run:ro + - /var/run/docker.sock:/var/run/docker.sock:ro + command: + - '--store_container_labels=true' + + # https://github.com/oliver006/redis_exporter + redis-exporter: + image: oliver006/redis_exporter:v1.61.0 + container_name: redis-exporter + networks: + - redis_prometheus + ports: + - "9121:9121" + environment: + REDIS_ADDR: redis://redis:6379 + REDIS_EXPORTER_CHECK_SINGLE_STREAMS: stream1 + REDIS_EXPORTER_INCL_SYSTEM_METRICS: true \ No newline at end of file diff --git a/docker/grafana/README.md b/docker/grafana/README.md new file mode 100644 index 0000000..c0270fe --- /dev/null +++ b/docker/grafana/README.md @@ -0,0 +1,39 @@ +# RabbitMQ Grafana Dashboards + +## Creating or updating dashboards + +### Making changes + +First, from the `rabbitmq_prometheus` directory, run `make overview metrics` to spin up a local environment using +`docker-compose`. This will provide you with a full Prometheus + Grafana stack, and sample workloads to make the +dashboards 'come alive' with non-zero metrics. To tear down this infrastructure, run `make down`. + +Login to `localhost:3000` with the credentials `admin`:`admin` and begin creating / updating your dashboard in the +Grafana UI. + +Once you have finished editing your dashboard, navigate to the 'Share' menu next to the name of the dashboard, go to +'Export', and be sure to tick 'Export for sharing externally'. Either save the dashboard JSON to a file or click 'View +JSON' and copy-paste over into this repo. + +At this point, you can test your changes work on different versions of Grafana, by editing `services.grafana.image` in +[docker-compose-metrics.yml](../docker-compose-metrics.yml) and running `make metrics` to rebuild the Grafana server. +Be sure to test on the latest version publicly available. + +### If creating a new dashboard + +You will need some additional files for a new dashboard: + +- A description of the dashboard; see [the Erlang-Distribution one](publish/erlang-distribution-11352.md) for example +- Screenshots of the dashboard in action, saved in `./publish/` + +### Create a PR + +Create a pull request in `rabbitmq-server` with the above changes. + +## Making a dashboard available on grafana.com + +If you are on the RabbitMQ team, navigate to our GrafanaLabs dashboard at https://grafana.com/orgs/rabbitmq/dashboards, +and log in with the team credentials. + +Once a PR is merged, either create a new revision of a dashboard from the JSON checked in under `./dashboards/`, or +create a new dashboard from the JSON. \ No newline at end of file diff --git a/docker/grafana/dashboards.yml b/docker/grafana/dashboards.yml new file mode 100644 index 0000000..4b99d54 --- /dev/null +++ b/docker/grafana/dashboards.yml @@ -0,0 +1,10 @@ +apiVersion: 1 + +providers: + - name: 'rabbitmq' + orgId: 1 + folder: '' + type: file + disableDeletion: true + options: + path: /dashboards diff --git a/docker/grafana/dashboards/RabbitMQ.json b/docker/grafana/dashboards/RabbitMQ.json new file mode 100644 index 0000000..f960b37 --- /dev/null +++ b/docker/grafana/dashboards/RabbitMQ.json @@ -0,0 +1,929 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "target": { + "limit": 100, + "matchAny": false, + "tags": [], + "type": "dashboard" + }, + "type": "dashboard" + } + ] + }, + "description": "", + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "links": [], + "liveNow": false, + "panels": [ + { + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 7, + "title": "Row title", + "type": "row" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 1 + }, + "id": 11, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_connections", + "interval": "", + "legendFormat": "connections", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_channels", + "hide": false, + "interval": "", + "legendFormat": "channels", + "refId": "B" + } + ], + "title": "Connections + Channels", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 1 + }, + "id": 14, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_queue_messages_ready", + "interval": "", + "legendFormat": "ready", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_queue_messages_persistent", + "hide": false, + "interval": "", + "legendFormat": "persistent", + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_queue_messages_unacked", + "hide": false, + "interval": "", + "legendFormat": "unacked", + "refId": "C" + } + ], + "title": "Queue Size", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 1 + }, + "id": 13, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "sum(rate(rabbitmq_queue_disk_reads_total[$__rate_interval])) ", + "interval": "", + "legendFormat": "reads", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "sum(rate(rabbitmq_queue_disk_writes_total[$__rate_interval])) ", + "hide": false, + "interval": "", + "legendFormat": "writes", + "refId": "B" + } + ], + "title": "Disk Reds + Writes (per/sec)", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 0, + "y": 7 + }, + "id": 3, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_process_resident_memory_bytes", + "interval": "", + "legendFormat": "{{ instance }}", + "refId": "A" + } + ], + "title": "Memory Usage (bytes)", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 12, + "y": 7 + }, + "id": 4, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_disk_space_available_bytes", + "hide": false, + "interval": "", + "legendFormat": "{{ instance }}", + "refId": "A" + } + ], + "title": "Disk Usage (bytes)", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 0, + "y": 16 + }, + "id": 10, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_queue_messages_ram_bytes", + "interval": "", + "legendFormat": "messages_ram", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_queue_messages_paged_out_bytes", + "hide": false, + "interval": "", + "legendFormat": "messages_paged_out", + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_queue_process_memory_bytes", + "hide": false, + "interval": "", + "legendFormat": "process_memory", + "refId": "C" + } + ], + "title": "Queue Size (bytes)", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 12, + "y": 16 + }, + "id": 12, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "sum(rate(rabbitmq_connection_incoming_bytes_total[$__rate_interval])) ", + "interval": "", + "legendFormat": "incoming", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "sum(rate(rabbitmq_connection_outgoing_bytes_total[$__rate_interval])) ", + "hide": false, + "interval": "", + "legendFormat": "outgoing", + "refId": "B" + } + ], + "title": "Incoming + Outgoing (bytes/sec)", + "type": "timeseries" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 25 + }, + "id": 9, + "panels": [ + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percentunit" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 0, + "y": 11 + }, + "id": 2, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "rabbitmq_process_resident_memory_bytes / rabbitmq_resident_memory_limit_bytes", + "interval": "", + "legendFormat": "{{ instance }}", + "refId": "A" + } + ], + "title": "Memory Usage %", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percentunit" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 12, + "y": 11 + }, + "id": 5, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "1 - (\n rabbitmq_disk_space_available_bytes / (rabbitmq_disk_space_available_limit_bytes + rabbitmq_disk_space_available_bytes)\n)", + "hide": false, + "interval": "", + "legendFormat": "{{ instance }}", + "refId": "A" + } + ], + "title": "Disk Usage %", + "type": "timeseries" + } + ], + "title": "Row title", + "type": "row" + } + ], + "refresh": "10s", + "schemaVersion": 34, + "style": "dark", + "tags": [], + "templating": { + "list": [] + }, + "time": { + "from": "now-15m", + "to": "now" + }, + "timepicker": {}, + "timezone": "", + "title": "RabbitMQ", + "uid": "5qyVNpQIk", + "version": 1, + "weekStart": "" +} \ No newline at end of file diff --git a/docker/grafana/dashboards/Redis.json b/docker/grafana/dashboards/Redis.json new file mode 100644 index 0000000..122d2ae --- /dev/null +++ b/docker/grafana/dashboards/Redis.json @@ -0,0 +1,316 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "target": { + "limit": 100, + "matchAny": false, + "tags": [], + "type": "dashboard" + }, + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "id": 2, + "links": [], + "liveNow": false, + "panels": [ + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 8, + "x": 0, + "y": 0 + }, + "id": 4, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "redis_connected_clients", + "interval": "", + "legendFormat": "connections", + "refId": "A" + } + ], + "title": "Connections", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 8, + "x": 8, + "y": 0 + }, + "id": 11, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "single" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "redis_stream_length", + "interval": "", + "legendFormat": "size", + "refId": "A" + } + ], + "title": "Stream Size", + "type": "timeseries" + }, + { + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 8, + "x": 16, + "y": 0 + }, + "id": 10, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltip": { + "mode": "multi" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "redis_memory_used_bytes", + "interval": "", + "legendFormat": "used", + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "P1809F7CD0C75ACF3" + }, + "exemplar": true, + "expr": "redis_total_system_memory_bytes", + "hide": false, + "interval": "", + "legendFormat": "total", + "refId": "B" + } + ], + "title": "Memory Usage (bytes)", + "type": "timeseries" + } + ], + "refresh": false, + "schemaVersion": 34, + "style": "dark", + "tags": [], + "templating": { + "list": [] + }, + "time": { + "from": "now-30m", + "to": "now" + }, + "timepicker": {}, + "timezone": "", + "title": "Redis", + "uid": "NyBFUoQIz", + "version": 2, + "weekStart": "" +} \ No newline at end of file diff --git a/docker/grafana/datasources.yml b/docker/grafana/datasources.yml new file mode 100644 index 0000000..916e507 --- /dev/null +++ b/docker/grafana/datasources.yml @@ -0,0 +1,44 @@ +apiVersion: 1 + +datasources: + # name of the datasource. Required + - name: prometheus + # datasource type. Required + type: prometheus + # access mode. direct or proxy. Required + access: proxy + # org id. will default to orgId 1 if not specified + orgId: 1 + # url + url: http://prometheus:9090 + # database password, if used + # password: + # database user, if used + # user: + # database name, if used + # database: + # enable/disable basic auth + # basicAuth: + # basic auth username + # basicAuthUser: + # basic auth password + # basicAuthPassword: + # enable/disable with credentials headers + # withCredentials: + # mark as default datasource. Max one per org + isDefault: true + # fields that will be converted to json and stored in json_data + # jsonData: + # graphiteVersion: "1.1" + # tlsAuth: true + # tlsAuthWithCACert: true + # httpHeaderName1: "Authorization" + # json object of data that will be encrypted. + # secureJsonData: + # tlsCACert: "..." + # tlsClientCert: "..." + # tlsClientKey: "..." + # httpHeaderValue1: "Bearer xf5yhfkpsnmgo" + version: 1 + # allow users to edit datasources from the UI. + editable: false diff --git a/docker/prometheus.yml b/docker/prometheus.yml new file mode 100644 index 0000000..d4c3fa7 --- /dev/null +++ b/docker/prometheus.yml @@ -0,0 +1,52 @@ +# https://prometheus.io/docs/prometheus/latest/configuration/configuration/ +global: + # This is higher than RabbitMQ's collect_statistics_interval, + # but still close enough to capture metrics that were refreshed within this interval + # This value determines the range that we use with rate(): + # https://www.robustperception.io/what-range-should-i-use-with-rate + scrape_interval: 2s # Default is every 1 minute. + # scrape_timeout: 10s # Default is 10 seconds. + # evaluation_interval: 60s # Default is every 1 minute. + +# Alertmanager configuration +alerting: + alertmanagers: + - static_configs: + - targets: + # - 'alertmanager:9093' + +# Load rules once and periodically evaluate them according to the global 'evaluation_interval'. +rule_files: + # - "first_rules.yml" + # - "second_rules.yml" + +scrape_configs: + # The job name is added as a label `job=` to any timeseries scraped from this config. + - job_name: 'prometheus' + static_configs: + - targets: ['localhost:9090'] + + - job_name: 'docker' + static_configs: + - targets: ['docker.for.mac.localhost:9323'] + + - job_name: 'rabbitmq-server' + static_configs: + - targets: + - 'rabbitmq:15692' + + - job_name: 'rabbitmq-server-detailed' + metrics_path: "/metrics/detailed" + params: + family: ["queue_coarse_metrics"] + static_configs: + - targets: + - 'rabbitmq:15692' + + - job_name: redis_exporter + static_configs: + - targets: ['redis-exporter:9121'] + + - job_name: 'cadvisor' + static_configs: + - targets: ['cadvisor:8080'] \ No newline at end of file diff --git a/docker/rabbitmq/overview-definitions.json b/docker/rabbitmq/overview-definitions.json new file mode 100644 index 0000000..57267e1 --- /dev/null +++ b/docker/rabbitmq/overview-definitions.json @@ -0,0 +1,49 @@ +{ + "global_parameters": [ + {"name": "cluster_name", "value": "rabbitmq-overview"} + ], + "permissions": [ + { + "configure": ".*", + "read": ".*", + "user": "guest", + "vhost": "/", + "write": ".*" + } + ], + "policies": [ + { + "apply-to": "queues", + "definition": {"ha-mode": "exactly", "ha-params": 1}, + "name": "ha1", + "pattern": "ha1.*", + "priority": 0, + "vhost": "/" + }, + { + "apply-to": "queues", + "definition": {"ha-mode": "exactly", "ha-params": 2}, + "name": "ha2", + "pattern": "ha2.*", + "priority": 0, + "vhost": "/" + }, + { + "apply-to": "queues", + "definition": {"ha-mode": "exactly", "ha-params": 3}, + "name": "ha3", + "pattern": "ha3.*", + "priority": 0, + "vhost": "/" + } + ], + "users": [ + { + "hashing_algorithm": "rabbit_password_hashing_sha256", + "name": "guest", + "password_hash": "hENva+fxJ7gnmaBK/WhwNHOYbvB53/QjNcqhtF4KqF7p21+x", + "tags": "administrator" + } + ], + "vhosts": [{"name": "/"}] + } \ No newline at end of file diff --git a/docker/rabbitmq/overview.conf b/docker/rabbitmq/overview.conf new file mode 100644 index 0000000..8bc0af4 --- /dev/null +++ b/docker/rabbitmq/overview.conf @@ -0,0 +1,32 @@ +# https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.conf.example +loopback_users.guest = false +listeners.tcp.default = 5672 +management.listener.port = 15672 +management.listener.ssl = false + +vm_memory_high_watermark.absolute = 768MiB +vm_memory_high_watermark_paging_ratio = 0.2 + +# cluster_name = rabbitmq-overview + +# cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config +# cluster_formation.classic_config.nodes.1 = rabbit@rmq0 +# cluster_formation.classic_config.nodes.2 = rabbit@rmq1 +# cluster_formation.classic_config.nodes.3 = rabbit@rmq2 + +load_definitions = /etc/rabbitmq/rabbitmq-definitions.json + +# background_gc_enabled = true + +# Increase the 5s default so that we are below Prometheus' scrape interval, +# but still refresh in time for Prometheus scrape +# This is linked to Prometheus scrape interval & range used with rate() +collect_statistics_interval = 10000 + +# Run RabbitMQ Management in Management-only mode, no stats +# https://github.com/rabbitmq/rabbitmq-management/pull/707 +# management.disable_stats = true + +# Return per-object metrics (unaggregated) +# https://github.com/rabbitmq/rabbitmq-prometheus/pull/28 +# prometheus.return_per_object_metrics = true \ No newline at end of file diff --git a/docker/results/docker-resource-allocation.png b/docker/results/docker-resource-allocation.png new file mode 100644 index 0000000000000000000000000000000000000000..e47a0f040f1cfd8eb2d7b1071871fa68fc2e36ad GIT binary patch literal 67338 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 literal 0 HcmV?d00001 diff --git a/docker/results/rabbitmq-test-results.png b/docker/results/rabbitmq-test-results.png new file mode 100644 index 0000000000000000000000000000000000000000..dd7d0ee21298dd9e36b87d9fd7892c2d093974d9 GIT binary patch literal 161295 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 M!xR z&eHs^)>iRb>6_FkU7j9Cy`Ue~k*A*f}&k}H_Q@1wp z4Rp%8NgqZIkW(*M^vOy*j_)okt2i1TVqp~Z)69=Nw-C@7lq`{|?}KjL_)@*M7~i$D z>1t5B41t=Dvb?@4=7(o<)kWXY&u%v*Gk1>O6OC-&@4Ufa*JI`3;gRSw87OHyvq{Ac#^U;{c{B;ouryUP9%xGt+RY-4_3Zn-)z` zyBkG@xwi>jcCP~33_GWHHgh)H4p9`e3)in#UPH7ArkCw}LYvHx%_HpUDc$!2?3Q{J z7Atdev$jq1csUC=`TE#8+tLmX7K2Jloz^<0TS;5{&R&#b=TDO6GuFz@Eq7Q7U7c#? zPqQqZD_F}tYN~Q~O#!Ok-MD6h>^I{WfV2<-`F3>(rUGL%WwkC&cM`K!IoeC1Mv^@z*?fm3jQ)5k;29;oKhIlevR?)us_*QSq_|jSmc}hjZ1%kl`=fVY!*GQYs zX7^p&g6Vg97gakv7ze6mZj|dMPIYQCep)=(>-u3ZHIrjGwHRw(Sp}CNY1mW)vJEh6 zX?{zc$aRavc$3)%dxw*_T`^Nxt8B0BTx&Nl0#F+Bu1Sm8p)HoOnQt-%-jG3tzU$w? z^|xv{OT(?#wMZEOfC+BAU6}fM?u``4^ZN^&je=FLd2S;Xcu@l3*Oj!;T+55MlF-D3 z)oBHgR*Pa@btiClFec2_?91?twMXy*Nguey;pmK*1TD24I3?ys4kE||BAFdWY^rBH z{;0RWA3*L1(RzNF4+sj+>aHuUnq-^UTH@C?covt;wttD2es~ca2s^@V`f^i4JMfs6 zj5&UXc?-9d$&d4c8zj{dR@AnuDM(0H@H)N>s>FmL@FFQKD9n$6ExE*wQa`01nr88c z+lB8r)^!UcWdpwo`JUdAN9OkD;~9!sS}Ek`QU`NZ^}QZ!9PMAHcPE=kdd3S+ZbzH7 zLQAo|mTJffC%0o>;c7~&u~h$_*-!sUxO^g^C_#|qCfG95VDCJo@?bT|b*2amR)qU1 zr4+a8Wj@K~%BT78SP-CPw7k$#i)85uKYK&_n|kHN3w0()AoEED%c)cVwM&dg+t6Zt z=4S`@DtUHfr2yYFa&40R;HPqGbQh&UMy56Iqa*0c1{j4fQXp=|g2i#IJ znYX~D!BzY9s*Wlp!EL;#JpFnuDM?AfgR^q=0o>8B(vUmCjQoe?T3lAUTIz+R4KqAd zb=zfw`!aL0kQ$7i7Uh|8^vu!C?ukRWL*LDnB|Uic#%A+seYorcH-RIA0rF&R!M&y< zPE&BnEdleo<7o(<|8+y-rHJS{3oLT}VJaRX^YMXwAREg z;D9jPp`@Lx)XG5`+9zXDQ|68Tg#n!7d#zhkgWyQ9OuPZkm8yEN+`_#raIOseNLJ|< z;(vA>Z=oPxqQL1AIN4W+b4s11B#zIO;7NSS5`GY_;JKE&8e_thvJh5}wl-B0)55;@ zF%b^0HlrYyJ{c{*pOt+06rhPj7jl`JdOO$)G0=V|lbxN56%L%eS|1g4neJOV%-vhuH_RUdTwp8 zeVtE*e@r0L8y2sZeYyyNrYf#N%JpkUZE1&GUFtAzo~xF~dE&-Deb-}TJG|%8@*M)t zLK1+r;CynQmZH%tD=*Lan4V_8u@w>KlW8lqM$h07?IWzG*GoIB{nPUizU)w6_Y{a9$X(?;ByoYMYsdOVOv!~XmRaH;Q;win2IA#I*N#rL4o%y?U7cl!V@ z#}dmubktYGcTYJklgD{&OGfI5!ZpN4_z=mG?Jl04V;xVB^QX9I`9VUVc!m+NGz_ji zeDkF25C}aaxL*r@mfZC#IRFS+06f`;r&(e1L(Ttd#^CRqk;r3Astb?*^?%K|`~x$O z1DPar6j8?ig*BW4T23J6bk*T69jE^VPY4htDD|<^DgNOF{N1^~^DyADR3&cu`Ky?k zumAO#pa0-=2js|%8P-T(Ua7q>yt+T;FXHIM)GnV(M!YJTOk+G8dEREPg#XmBI3 z?9qsb(8->+2%dv=@!$`SX_J0m>^F<8+hP3R<8Ph4#*LZGEQ4fzp)!ETxp0 zng2cbnNKHAwJkB0nql2+XqmeyZ}e9&47hVeUYJv1cdMM6W-h6HY+WsuE{5B*UT7}~ z+`~Q)V)3)|1N7=NAsDDr4V|jBdrJpehluiOXEcEGLM=g#4Jf=N1-)?nMcMSGC)r+W z7p7sibqr;E{*wWIJcJJCXV`h%ub~>JW!2?ZsehNKVap}BjlEBz@x+^1XW_O7MhD#! zl6$m4pq4)=A+brK-7lSE)z|2xLlxh;BZ=5I4s%{aXq;^*w)B+lPHRnZ*`UE_h~#4e zqu~x8i6$Wb5yqHn!g`Lts9A!tJrw47&?lf$WX3t`pk$5l&G%QE@pdK)2wFgNH6)W8 zT5OpcTt0(nKhbOr~~6Y)vWAhD8ef$DvqWi=(&+SN;hGh zs$3SDbnM1eEIT{S&|OnwNq{Iv&*qx--RIh`k`sa*cu!8o&RnoU%)3ntdG|FRy6+jZ zjT$!skxTLo-4jVc++r`eua54h#bDL!Xt#|G&1B?yh#KvIo`&|JjjiVlbu!*lcJ8gn zM{eUc*7{$QXfiGM7q@{EWfHliot~{E`5p)&{9H9&j#w8-<4g-%;k<+Dt!?}|>ctk+ z7&9NGAk`idc>^Iwh;yf^TELHydemE zalv)nqhM|QeRJ+*%SfxyD%l@DCMFx{;zFuQ978~g(MWX3EqMiKL!aeEXQg!|eHVku z#FM7F?cjk>$&Njj{0MnR&~-EH)!nC4K;c1ZYq3N!(5j@t)6pv8?1p@Z!$MA2HPYqf z6MD}d`cJ`??F=NO)SPBYZ_Jf(b9=gDi#D3=$@ASGRYNt^1YQX3 z270z!mO1z4pzkb@n?812H%A6fQSS6S?tHVgTwm9)M2dKygR&VgRFR4wg7fgXY2CBI zTw!~>>*??4s_bP!r+A`x#yK0Cnm)Yr$!~RN?zfR|0$iPzP5j9!Ym;wWJ)sU0c49dcwYORHJXF_m%K(>g z#M(y3oFOVyDoH^-st=e7-zLl2YAun9Aa#u*k8`)GtZ}QGw$v4(452}BtS{Qkf0C`A zdQ-m{uKL8n!a3R5ImtbvebTNv1@$rq+;+2HT3GSXKTEA#TD`=KF`~qhj{C@;AwmWl zb*#B`3hVw=-CaY{l}b>-^2rJ6FSPE<&F64#xU+ly^TGUDV2WA+ehdHXz=1Lb;v42% zzLwm*c4wf(I@b?E+oTgB=gG33=n45U@AR}9qc zq(efa)%}&;8_@;|LsT(UZ(Nr9NVhRAk8kwsvP;?}H(*tn{toJ%$y&Y5u^TBs)#kkx z=2G9EM*>wBwt%TQaiy_Nj!j!Kn7GBbmqn)Tud_6cD9gY-dH%-GN+76M)28N9xMb;* zW28RFx#p)(vwJ}<{`)LDFYJ8U@qEoG-cm~UkD!wf(h~?Qmj|*A77i}1cA~!vh=CA* z(^l_iFJ=F4(pMzqg_~zY1P%N?3+mq48GFes=4lsAOb*-YmZy{0ohzA-hB+qHs1Pk7 z3+gMxNnMuEDw@^`e4`peL@cHr(M3+}+D+-)#-2Xa z%gH6FvjeCm4R#?&)#bA0SP$m~_)#h2d!S7H)8GKf%=P=~eL0neJq4(5+w`{kX_TzV`F z)alGqdf5=2Jb7|0{`^y>p|qLI_2qX<&HifcS9y>ibErggH_?aAux$je@yBeB7`fwK!>9jb<+V69q^_mJ$Ul0To;Xvq#KZ-Ca6kEsM)mm&!1JpdSsf{RS`=!% z*@o|BQ?B^AB|zP_O=)i#T9h!YQ%}wH%9PZU zD0B~tPF_P_(xeY4dcm+__?TPQ`_dbxBD5^CN`@5UZVEm+EHEl6tX!9lI;s)Kh>N5N z6y7YXIIQE?nTxlj8NH4Z8y>ElHOyMQs|iX+sJBMeK37=#v3QJmKbsb90kuw~=*8l@ z;Uj$a_E#WD-S-J@y7^RC37mrMe?u$MepLRZfFnZZtD=+1b(bqnj# z(~KVnwhWHu6YBPBQ=F*B#k?=$FM$keBP4>Eadt;x@al#vyKahuhzxd<>xxwWDB1zRVx4cEJjZ}N|y6FU4HAF z@V-@XsGVr(K)Usk*^O`Uhm%LcHud{0f;?M?x&l_=dIVU6UZ=3BPMyZB;J|JZSmWUK zJQUbkpboUD=Ghotj`F2Enk*H6wqI)25^3Yn8+79tS8g50(N;5lO?;i`DBoPB$7VhL zxM5|8r$ZVkw*xq84z@VDCSLw*ROA#Ep^2}Tc0l<-fX1+okW<25=lS$9mZJ;Jn!UDZ z{kET#N~Wg6!9acP;pfHt zv&P1y7rCQ}@94CQI2DM8LEA5pdT(Q%0P|x`47hf(QCyX}Q?3l}JGJ9nh!!*G;w@Me z?zslkU9t;M| z^|6jm$AjO^HlyixpXR2@#G`{$6aw6je+Z1)*=yc>6D42o33bm8U8Y8?vSt+>ric$* z4jy-$YML4sE6sQM_PbwRBI&qU3={0`hkCPJsfX;kjIIfpE^Sv`tx{21@`9D0eR3lB zL=59NOa-_4^#hH>GJwB&C)38ny8g4;8>ipRsM2C(*BM{8S2@r6?$)nI20fW0G~uKV z3;3$rlU;*#<9Gk4?h)eN6C%Zx@Mgmd&G9^YpY>LrD5!%|`*WO(*{=m~@|m9_`TJd6 zFTyV$`9&^afB*f?@3#K=xnJ)-7C)72b%XfNga26w|M~q3gjm<@&oy`_T>rfa|3@c& zHr|ALfe~Lb?DK3lw;lh|x_bHoXW#yJE%(-^nMnbK|4&UIOt31s=9*0S^>@W@2rQsk zmmCIXIpsXr7O#=ljoiMx`PZoa9`yh0_c~37dGccUrn9HKr4T5Gn|?D;#)JoSVT<%@BC#IXo(XUP+70_7|2yNF;^xWKBdsZXU~}v#*Qxtgs`J(vXX9QbI2ki#*r|zv|Bt=* zj%sS#+J}$50HR_81XP-Iq$*WKL4<%v?=^IS^iGZmT1A-#5lLG6sXe4tuS=_MCIg=b6u1OWWq%=|9@)Q$Fs| zX5&z(p<6=uS<-W&RgLwA`=dW?S&PBUU#C0d#vlK%@$#aX|L)5d-0FY)sW0|B6N2Qb ze&y{S9sZ-mKgQ!vgTLW@Qh4P;o#o@O|8Vi|R%LZ$4gpJP<;Np*x`uv z&nk=BK{eR9JAh%9#NGY#_5V3u|Di8G&+SZnD;Temn62t@#CWZ3Q+^{QJ5XY>Xa5+% zzuE5}R&sRbhp7)?5w$PqKC zna4jnZuXF2DN#eWvWwZXXhdYg)3*a0UaOcO@Cz|Sc7MJ{N?%;7jsP z_kq$47so-CZ8>9mMe*F!k&_0c!SZV`ZRU;)Hy9+&*1}V1CqKRjeRMep%ykW%A4qC)GpR`Eca0Y$WM(2?GDF&6%qz4Ima7aMW_yEN~ zv{SVAa2lKZu%JqI3~lQ0IPKGoL`959mXmH;NWWlmer!3vOa^qyG(LAAVY#Hl9j&GQ zL31EgUK7jPt18@$Pz?>vM(6nRN0O#99BA~*zmUOq4SavV!ZU-j4SSF`l`YxbA3(Vt z9im=T?7TB&RG?9TgHi?5l-(%&Li;v75tb1nDl18DqplIRry*%{r|zNP^u2Ah90 zhN7V`zK>_!IjU#wacr+Ad#0iiBK?hosy$OpRF} z>6>iy{=cZ3JiUhk5Mch+{@5l#B#8$EO$oFPXFF^}U?{P^% z`Mav#iy~*%j5MoLXZZOsu9R$}A4;k(15=^LV;=O#OT%cDi;MJ9&S`Mv?(f_z=SYP< z;NoE>vh{Lct(Txp%a5rk1g5P%>cj&Jy(K6!Sus80poa2_3?`Y^KP?-sF;^WBn5754 zZSys-7zqM};$W4Rn!jwfH8~dC-{za@5f4W3^fV0!ESh#c_5Z;!zxOf&I_~na#y{`; zZkw3cxL#6oItx`Sf4+4>L8Y`s(A73(Rxe~dO71EEwY$CO$Hr%ym9Onq5b3YB}~as(DL z+TX@^L`)TFeGL?45e^OXAB80L6@O}o}XFS*PbO;>HC!iwh~#; z2HviLoR~;=E^_4Z7pn3;hfFyAA{+3@kiA>l@WoDr8jDjI4%I_C7!t8NWpSP*=h%zo zji3rD&zR55M(ymh69;!{8Fqaran5{3P}cyZ5tCIZ%h97d4>a7MhQ`l9U1`azWc2~L zYN`gJM1GxGP1Q8~Ni3MkT&{IEWND!2Aqz>D*XbzAsgc1=bE`6--Iyx-X*r2c0ui_k z>))9?7=&BiGZ&}Rc3PagZ?|#G))TC?vcCG5aknfe~61GOKt8JheyLYEOrvikAqpL+oaQ+N>#!W1h~Uf`Qe?%Ccl z$|I+sMbou#WUPx4q>f1{agJE9&3~T`9Hg>0uiNDAnDE0+@;c1HC$>BQE%CH!l2OXH zYs|Uo(+c0~oKE8TZx=Gll!J?AJYR;qV3T*9d$va!$X3pCl~NVFE8-EebxySOiSk*; zcJBN)w&x9fREA0n^dDD8#mc!U$0#oH)N2c(rf4|8=Wi!@Ys$qaTP8Pkuu(>Y{SQBr zmpP_M<&6tI>Tw}&3J(Y-;MB8_m0SZuy~KwO%An~Tct<)AR70u&G-8?f(?{H&9?FRJS@jc`uHMh5y)DcZm z7p$a^o)uT>3o*+`n5YZ3dp=&aI?t^IDY#EVqnssAwjXlRx+9=Dz&sWy1RtKd#c{R& zRLg+9w8f9J&O-q`x!apMx~6zlHKu^%SGUjma0D{{cozDg<7D*5uRae8UmcbQ#i%4_ zquhPe72J{~mO!MK*amABo!2q*DRgb~el>-I zc1Xn6$nwg+wIhwC8lZ<08&^Mg>b+SL#%LfDl6-}>*Q9Pzq%G#rQ=U7Z@aKxj&l!WKeSp4&dT9rYf%6Dc< zLduGI6%i6Nz$;^Zm9!jqZ*sRX4wb9?I0h^B!T-eq{JxWRzStqZN%{)|ayuTbqll)z zbj?P(rf5EzrnByv5@jRz9|LM-Y`Kt01rfi33HNuCN_oVSH4 z!Wy66-hkQ4S0ELGc=opzuP&NCJyh-$$fQ}+D~=Tj)K8T;m5{*mM4aHT5ehA~1B0Hf zHBDSx>xD<(e2 zWWqP8UAB?vR{ZcB{Fp}NN31FM;}1fR#_0L}yAKmR3XHE#QS}>R$E!QStj!~|!qg`K zW?(s94lee!TnzNWHH-s$Qu6xs?OlEk)!J>BIjm34n(bStbcK`<4YfzqNr|0=&K&m9 z-}g$llV+O6UMT88H6gcE(fwzsp0*w)*C=T=6OoGhaD{^HvJJe(tze1Ra1Pa31W*4<6ViJ71+1W5CG_TWSa(?|UC5Ny)N00S1qRx+ zxf5N94(1rhyM!g~+^$%r;Nyl7WxSHs^Z5^}o|I`f{)hliA4 z$QjpPNsGHf?b&kFWhS9HNA!L6z2a>U6F;$nr9GX^$Z{F<@M)@Nn1>E4C2fAZSYjWp zQdqvVf#>h_tZYOYTcpK>LT!Ai3g{?nmvMzMBxzK+vD1cgf}YL%G*&--%{~Z<_#wqd z|1V7(3`ZlAw6{672+yn+CBmz%iDHLfV85;kakRAsQu~<*LUKthJng{o(;WVa@n^ANCCY1;PZV=C5XT%Z7ww%Xc$E>T zDaohS-gW*Z-PH=vOfQb2Zb68y~+;T8fRxN<@ z6t&@wp}G(W=d!}bv%hzB+}C&7G)mJ{xe*C#9~q>f`lb?}pQi*otx7l9ADtc2eYt_> zD(FH?9i{B z(OK@EA2if+aoEa9AThLpZ~o}HfAzsc!={-2pyg&uQAdhNtPnc6=Sw81VOdmvFgBs% z5R^`0;B75%bWq(Uy$_tVE6d5fYjem&PksAtlNZgTX{lQ!p3ddq+i7*xdTT@dEF-L} zh$CF{4rY7QJGpRqnJ4LOV%@U%L0Qpq;XwAQK^x!(yb&F-(8ulGaZV9-S5<~p^j*Bu{8)G5`fKI*4tT`0I$*VRxF7^+8P&T!tK)>_s^Rh+EmmXnU=A??(LwB4>D*k; z!tu*h#flbpC2($E2B}0UU%Zf)P(yW@Q83tqHRY8!qcm4wfd!N6(}aTpt<%$5xq0!0 z%eK#T+fg(5TV0_kj!{J-cc{OgqC|{5I&>&$_fLg_0@7SM_C&PjYdhlv-P z3Ay-UWKCeT%axa=6thnrD`4}a%j3EXr>eTY)N!Lma32XCSFKm#KQ%?^Jhr|2(Be~N zmw;tCuc7yN72@zIeFJ)}x_Nhf7*RLjL@rCH0ZB}aMX-vtf|BaeC6|ca8LyT;-hL#g zN~bf$B*5c8CcHP(`D5wu3qA7;O7sV+c*C4G^t<~(K*!yPnK|0TWsPdmKxWYZZ#ZdM z{cx6)1&j*a=y_xOfWzBjb|YvtMTBBT%5L}_$f=#z<*TVPl-NV(bomWZ@S?g5boPL~ z*VKp7we7V^KW4f^x_HR2D=EvzJHeJ=RNW_FQa6V27&TsxH>6Heh@;3_W=OS0Oj6+h zr%rEcl|yI6^0l1(sx(IF071DTtph?@fI^(+yCx@7#69i@jP72O=1O}680&h~l&{0+ z8eO$(eo1)V#K`b<)Q4Y-q~xa$C3-ftbV~}jVwJ(#_1lrslcNn3kQdOc(6Bu4{C_3= z@lUlvI?Ph6=ZXq$Tdt*K4i|P?&lC-5hMzr+f$VLbpm&$QzYCrG8peQm-dzaV79qD- ztt$MF-1C1^f;W~A`8i} zx~DprO_@u%v?~cJHxKoz*`${q?j7_7at&$}>S^0I{St9r7r-Tz|WRb9v4s`ZFiQc+Jp=&)dMlr;P>fWkXrf&HSvhp|kuh^jD@^;l#6b z4%od~91NLh*9zGRo{_5DIX(Hq$F1m~{+RA*Ju;633GCwW>AAK@(f)=|K%QOAyl-Cg zn_s&5{j=@sL;@_JMYq+lT)BRQ*`xkV*F5=U5|gXj=6oGvTH~6Hw#(H$7z-hI=!H3gUu+ej zIZC;3_HQ71zT?&_#P4;{@R!l&KgK`WLOa%bd?}QA^lsUtVNyVz>JOhO;HF%6_Q zfK9Nyc==xPLM9d=eT|b?#RM-+5hX`JsQP$!_KBfUBZJ+)aPhQ8$Gs+9LJ^b@=1Cnx zr>j$3CUG$ooGI0Hltjiuw!0gx%3JcuS`|;%0YTkALtu(Wr;W;)=-*; zj(5gGG<0>wNXJoI+@ekbgTALRA5}+w4*fQ{W(}!`&igj$DNlLpw@zc~p2g-j1Y(sQ zsi7NDx4JGrdyP!G0-u|~)@oo6i*W|dFS8^4pX?2^VagK%CL#h|(hZ#_CyE{FMwgBE z$_^m?#@yAMUZy`s#>w|bD|dYltl}uAdgZ5g>le1yA4y^(SP_wi&I3Pg9d6J>)nqNC z&8cO0g&h*quwI&@`MM3A;qU%gVfpXKA^h99NiQt0SA~k;IU$OD*f(vLJuDR3SLr`4 z5?)(yJmzmT2SJwEh&|eL%{O_n4FvFB$uqaKwY&0u1@bSJb&{@()3*z1H%d1SX+pas5`ii1-_vy z>02gQmLnPz)ZTsxl1k6KGJ7pxodzijHSj5C+C-m3Q3FiMaY zp5=~urI6u2Ca@)fTitXU6&EX3Ke}OnZF?4E=Ic2SQ8Du7vZ5O6GOO>5#@>2?JigeQ ztUlR(+a&-L3_kM6pFt4P{-(L9Jbco>+;0$qr~y-g=j9I>5o@)|%O_u| z=sFF>O=~&upGnwv^NVj-7|EsYaaf8m*Ik(YVdshGkVklC!{6%GTwOH2XuY&6yku}3 zX1Vj$1Jl{Y>W1n;^wB|e{a3cOplJ-&OV+22hbucgYVI+#c?WDymLYmQ*sI3iJXO_h zohKGU8Ecas?X|pVxNQs}eFawZS#D$U=#73}NUm4cICc1!v|oqsxG(!bVR`Qb?B!%} z2OV$22d2j`xU{ud7=q%vmk2fV8Ce})??&KRr@Z4+8|d9z8EvXlNTBuEDEW1Fh5EfI zKLm@{*lifszEJ(nz^n2?$vo<|JarJLOp2~w&rMsP9P~m%vWu$%$5E5OIrWP`CEUpi z*b5+3zX9gm!Z#_qH-%durmR>-$x0yl1$mvdBblA+`i)m@ZebTaK&fIKPDqUBx-8x& zido9tHa;PKx%M#KZxZ8$U9;{^UET#eV2{rf4w&^IC`qIxU?+>sBgLuKj*Hr<+b|%z z)2Fa*Y7*E?C+Y5ouS`H2WN>alrkjG-D@-XOLm+2s=hB0P^#D8+nIhuj`VP5}?9h~g zC7KN0r*4?}_2TLqWDL%$ZUK8i>zFn4K~Z*^NPmJ{pbrcrInMEQ{%@A$d%3SZ$9mbm zY8@nrnXAGE9;QE*d$O0-975*?L^a)a375RyW=!&MTjEur^40hTx|A>RHdEfS5g00k zwD>3|jV*wp6Klc1kh28+te9QBc z93#mBkf{3y`#MO+v#K~l&tClGedL^L2|u@3a_rqMYC^b`VNLm>@uhg93&i)QjX8A^ zsW5O7=ZC)_))Fa(j~d$8OT;#L%Cuq>>sops(QXforBvlT&!x;V=~#JWQFu#<7OwG@Zs$p^jbepqVYGq_d9W%$o%r8f}950zKq8=h*-Tg>-) zy`i>2rIjUDMbe8m3ZCV4$&;7WQ?>@S3`Dj%ONi=1hjFmLVOboibjlYOOeC$^$UDR! ze>Txz*r)o6oJDz}Ed5z|alo<%e5A})`vzSuVboOqhCg*32P&&?%l+)7sPgQ zyuR+Xo}x8lozM<(&T2_+uWtKI=3ynw&sdliC$Oy~Lx1zHbG;TrAF4{^Yr5ZhP2A&J zDtW9;ZlPh506UYkSC0=^7p1gV)sRTYG6e z!NOz#>&`lSmWNQ}y(KtWS!}vh)AgGJ&q)-{@SbF8mEo)L-T2&fSLVV+WGcQ~nH15gelm9*~n-Ol`V$Tf^Pd4Vu%AC@ojKGm=5F~l`#W{?SNt~bnVHoD$ z((#aIcD7gjK?`|a2@JoF8;7`>7?@9BxKIC+Rk& zcE;K6Ay>;#k4b0bH(r~WjoceZS(qVK!RrNnZ2nEYBzta&vWumxVVh`v)LzF}r#ShZ z6)>(9E7bF#lJ`QZ%c0xM@G5AHu9}cU@1$*3$?-UojkULfWD^ku@qQhPArK($7SVhR zjlIzoABdh1-#O{v`s_t|kDSD$fep<$)8gVxPHp?>LJm~KQ4#~WHJ8h76f80qa}nNLuNf26C15<=N=6^FxA$b~~5Bl_Go z+^-g=*pNFqe&f#_FI=ct{gfIHkI`fe^;2-3nzuQCETh(N$#d^2XskG%<<2S^2 zq1?J3%;xi-GP(uR*RZSc8oGpZQJYA=H3t)h@Xllcf9`w=z0AhLy*C+~j(a0Y`$_da z35zlGZGQ@%{yWj6JMKo}eqF))siDZwdPue#7Wwsh5J5RjIzR-&zS5wcG24%-hx=M? zO!{n3!pSQy(_VGF)dN)w`x`o27HTCwd#hg)bFbNPyT}&2BG#nB$G&#JhKLea>Fc(4 z%vs;)mhgaViuN2Nm21EqYnbJvYsMox=u)a{aDnCxxGiT%n_yn94auJvN^?syS4BEg z{aS4bA~XZaFLUu*DjA0?C;+!qF^w9Smfrm9il4`A1A9jntci8{y*BczR=Ai?c( zb5!)}n}o(m9qNH1?>ax{`91Hps&suD_vPi&f&Yg>`c6w>x)RU0OA;PGtXa$Qdx)CErrR=Y^9dT7does_nx?o|)Jw$NJ5xP;*^#3N^+i-NVhguJk4SrN5>|XO1V^<#R^kH&3ezAY=xZ zL0}`XT>Wp-`_6qUbPM=Eyx;nK;CQ~g_ld8Qd}K$X7U#u?uS63^xxoG}PtC_I2DfuC zo^H-QD8r_3BLRWB2x>@icmt49pF2ofM6yYD_D0tKByD3voV!ToQhvh&Xr0q0-R}h4 zN?n)Ma0MjSew%b3>qKMztn%n0=G)-9GD%lC?Sb2Za6(!L48)8_;@KjdC zN)CQ2{Z-Ss#%F$m-IAeG98qd0f4NUwE#xy zYQpysc({1%UIb#@AlJ72uc0RE+!CijJ->fFH9R8Kdr;pRPhfK;FRx;xeB9yh>Zb0y1Eo$MHnk6Ze3Fz@B5JufjvWMPj5zR@qvCBi z*sXcj;`ZyeDn!ypUP$@(dR22?H<<|$G+I(r*MsMpkK**pHhAFP1HKRzA#^7l)?Wxd zw@x$J$Ia$x$rZUd!>eR)F|LDZN}98PTeZ8xBNLqF0rpIN4^@*;9h%`i6p=B9bonH? znsXYHo1r&nU3Y(2`PyHs*35(Jb5a$tYE?*0R=h44;KF$A_01R`cC)P7d|C z;^~&x7XC4l)4`wt7ast5esleT0EM|GnGO+|0ji~j%CGJSOr9CQGk6>%2jRZYx&XfJaZAppYw-D2=+48DGvCAr&gOiAuCq$(ii5fU?M;FDif>UuZA`b-7@ ztZoa{XBWY%~{J`ovwMv7WPKNICGG=f)Boa_dNZL$0z0g zV&u0ja(-4nOWp{T=Z_l)vU7|&i9GSx88*~qgcy}x`W!R~BsYw-b+ul6QW)F{%&XY^ z*;=xQldq+a?I6UJ!BNz68$H69vrO*J<%yTrwpj*0Azb3qEp(@!^z(8*0B0`;lFsc- zUT;`Zl;8cvyqK`y${vH4I2bK$rp0i^av?O7puHYNl02w83(F?NYQNnwbws~V&$hDy zY%Re;ZO6keK>d)hw)aBP^nU?q&-y4vA#ch#I9@!%i@x>%vNPr}`OZCW2`t3#*30iZ z((OJtnIsLxf{Y7H4lKaj7ycdleSdiSbM}Wd!!j^1SAXRQ*?(bc|+rkNB9l8->nr%?@hX4VB|uq7cqsr=dG|B!>Lk+U%%#&4{>!k z#9zLirh^zzI5}(>g8rguEQZrZX~3TQeDEFrD@*p8!v6WX53n^A3fY%385)1XL)=bW z1W~1}uW9LYQAMCembSL$8KVcj{;;@Jb^IL#0xfSKO>R$ap#;59c<8NX7c#^L>9AxF zWZwkuZXEdDO}hB-DGZ;1bV02jrWrPDOg+f}VokgaYeUP;QSq;`0jRnLYCYA+Ye69a zfk)BJmO3s5IFKAp@_OIz6q{R`d!DAx*=TjDF7P07jT zWW^k#2cmr;X*%+G??1kj@AgD<+|o#~d+z2!WWD$o8~VR-lfIX4#GK4t7zQS>d+4fM zZw?Oev5<4sz#DzeeT#TI^rPzX?LH9=6#1`4^pnD2{GYS6c+JD!Z0=GO(|JqExo6(pd3zC?b zqBTHUD6$$qW}3zENg`L8o6i!G-|e?8vQQj!7mAN&5nN`mE(|DpxJr1f^{eho zWnJZ-U@aeTHUXM@Ot@Hto_hgvTOpZ?Ru}x_{$D}Ve|+pm>SptuaWzt&*^0)e zPR%-aNo7`bo=s61M-zh%+bnZgvfJzaB9d&48;d&%GO_5Uy&g&ijyxttQ& z(Q6@K{(-XsnUnK$#UjI8+qR-%m!lG5u1a1NRFAb+W@naS9d%TjkNUcTDKYy&kZzPnIW0j83wyCM8r}%vGP7&vQ6Wg;HbpLPLu0wsJ$nJ} z)=kXsKXml(V>0saIB?3}mi5q3`ifIg^C~;S*jV}VE`x$|S%m2GfqiUO$ETF8ZS9Xy z(f#nY zB??)2X-X#xSg(h_?r3%Cujrvitd2K_(mQKmQ;Y}a6A%L}G0a^0%A8#25dT=A(&M3@ znLN>{#fq#8MO%J>VDVa(RuzT&dsB}w)z&&H@eS;bVkVl6p3$4Hd{p6K93 znmF6p>wk@<|N033bjUy3HoXQ_~ZaU zX>l6d3uusVDf{N>19)vZpF#nJ+j@i}|8{)NGs!$gNfnzsRo?zfyBx`DIjoxLG%!(3 zT@j&%eT$6l72_($q!ekdVzgB(sPK-HlgGs){tdofi>r#eVE!u({_3Ll{&Xm&2tLK+ z7zvo|g>u(WTE@$(sX}!dZ~W$>l_n!3r{1fWO!kqU$-cCf3(P`X5h{Euk`NX zlH~E^-}3PbJ&E_4>6l0M&qEr1JDQffUEVGOjj^xb~# zpp1JMP=;K6{OhruDd3sc^8o;6;Omp(R8{)3gxt(VxtOEqun6!uHE3Ws6!woOUBQO^ znGN$2>2P)+&4vD_=tFRNs3z=AZqAsqe;*lRJ63X_L>%849DRk9d^?h8W zc-IifsUk49(q%XtDKf#8^OIH4jON+SVt0$(n~%NtOfO<>VYZG`0bSV|_MN$G9n zB1gzmf1tktJw#(ev<3>Y zziQ{|Hf+VI&HJGYr)Dllua<0do822Mv+(UXvqzw;W)!0+ z*9}kS`uUOHthPRNKw3jY-?5@+NmL2dS8S~zb{;^vSJdYbeg0rIqSsI3_2PX{Z{nZ zGnMyl0incPq4`WO_-vwa@ac3Zzp=%|M zfSh4{NvBZn(vz--QocJ&j$xKh=WJaLkZ05^=QAncO>@0a_4_b* ze%--NOn=7kJvMG+)4bTMZuv)i!y&|L!Y=oeWr?)_>Q^o0k=nyu5m3m`oNB=3VWT9| z4BN`EG_C}!M0i8TlkqtkM3}sYf~2;&3LolpYR^VDpYv9(RIKot_jb_$XF~}nF!|+E zuTQ!0hUt=C=_yi928jYvKXCPX>3+>{a8?*ibaFlMXAphJc&UiNQ8^{)EwC{n5FJAp z^F)R^VI^S<+#!r52G{i0fpFvoc$IJbx;$l8eiERnOpYp2(%mQH>*QSPfSPkK_=C8n zPPsWM)%ut-KyFU=(q>Ej>{JQC0olPBh5V5b9sR;pi!Ws=RV;f)$pe%$%XT}gL7>nz zKT~_y_)T&ce-;7ohlP@g@|<^Y%{I@@Q2zft4b$O1UN&m?#wt+6TK_=&o>sw0xFuF4 z-gLKItUgX+smsT2A+vo*-2d8u8(-3s0+~Dte;1z55Sfv|xZ=f!nLM*tdx~a<4wDBV z?kwNNI0B3wqZGd8kQLsMlQNWET96&&H4eV+wbj8Ls-JJ5Ha5v;vUxtE_o$lR7JQ4* z@G95dx)&0i<~8Lr?N?`Dp^xHNOzY&#%8gf$1L%M^bqx-Fz_c8aRO7c=s$?RwGU{j= zHw#Q1^k+<4O}dw^!X)da>DB>PqnieXdftA1tK3t(TpxAc)U|`NamkVJZaARn?YYJh z{^nx$?j%ue$2c!%+*p3skN;gCW9D(IWV4m|Oja?MO{ZCbdhxY1F4xY_1?Lh)ZF=|> zb=SQ>NwtscAt0+Ry%a{v56UTD-4xNc5_0UPzB2inZ6P!JaRvu7&%Ju|Z9?=*Bi^}U zu@oY_BlPHtV#J`!%WP^f*x}8W?F}`Qc}Ox^wZoE2!8? z45wA@Zt6`5wup&8OePqJYu?u>7Rj>aFZZ0^uCYRViXoFIJmpjJig|FWW!Q<>t8I5DChKy_7?e^#F`G5_KY<3OTysulYbPhVc z)qWPIQdBe*GybaRI*HAoc399Se zv<*oQ^mxgpC1Q*7oBz8F0tu)d=$vf`L>k-Wqz$5)PZX~*SBMlZa1CD@NCuBo1usoP z>Z`$o|l{Ylk_{f~#>D>NeBW%f>bIc9jF&rTg42Hdj<#ymPUd>VY5!~|9L3l2x1!g7Vgk&7 zQ*x8FLv0HfYbSO~>Lp4`$JXnN;kToi{6M^68wP{n6&Z8WoL^dJL!SHpryKkYF^z~F z-%T?v*z4=JYzx#}7_qi2e7XqF^B8e%dW-Sb+E7vGzn}Ux$u=fb_hbIcYU^|KY!X99 z(##)H4HzdlX0kn+9mAk5bIIMga#-gdh(Hnx=w3Eku1lw5lfS)c|7gXDR~t4a9-)D~ zok4X37!~jF#0ko}*DZ;itX~j^xe)gW0PJ1iQcJx-(uqzIwW$@T8f%JR67Li+sQ8x0 z5(!kvczDnAdF#ZVcJ2a;)KFbzRViu6{H}VOQeYf+$~aqpu^5=3Ij#jGnR@5_ z!1aVCnYtX1u9&z3v;(~lk9x=jc`~wVQF{T zU^3rG+PW)odWtv#ua&G{20;cvk{&>{8^@~)6LK$h%{*Q5rm^pIFnpDmyV3Yket16n z)!L4Y(9?s?NWbyK+wvy)OhJ{rP<~^6!5m46*6?hcQ(#W{{nOb3MjqNM?6-c@9e6s{WYzbLInM-E|ze2Y_jTw1%g=%Q-^V3R}45eSq6q#p>N zz=9!@@ldZBLKYjjeYv&sA4(v(?WEqf*O_;x{G7d(GDAb$R5$Ij0MS~-phBsh)L`~b zD2r#J^zN7?=3p_yxiJo%PqL~@6#>6L#8WBGlE7g({N#j&9Zs)q@lmV8r|N})gSqNn z@|4Y}56Y8G!8Fa?^Iw%?eSh#g1Z(+pPK;OB4Nm6ermyVuwNBarDkn9$11q!u1~}wP zVuQysMv2Aa6R_`?3HX6_yi~FG%_^W+_dKnQ#Vb{M<{i85H`&Ehx5>>mHn#9`uv4DW z8>8<)wRZ7H%9OkPjQ)!tfFz9^7wgGsri%{38)78Wo$xM8MJ<|A_6Ej%K zF8q~oC#sc*t24?a)px_-qmcj=Ge$;I_o$CI*`TD&4c91QuC_}+W;uL*S)g}nVHE9N zDsf}*!Hbnq`_y4Hv1O%!tEF-*0uAG^X7cMkr@?JPY^FQ97}ydka)tGF>oy>f zgG&P$P0+EfEvchoA)`&IIpTyTS`8{;#@DadXc6G*+y-&7qQ<;$T`|!qajF{Ul5y_y zp5&7H)IqmXLaCEyTH?RU_Ropa;o9r2kmzKc&^)3@y*+YbGCwi(wM6O3Lt!^N{{++I z@iXFI0=((7O}^YVJ5Tf|2+dD04LtZPwsih0?L(0{cMHWAtKY*}Whcm63CJ$%fvQ6t z4^=PcSql$*?`(rvKB+_o;(sFhEYpj|pAZz;F4~?E$fFRZ+yyoL{bpUZ=n)PcI*Y?}DGo;!qVnGsl zUHCGTpc_yV-+NQKqnSa}x{I9poeFGZ$0#dSN?hi8si^7Z`(i&>$p7{dWmz4%awL3( zH=brbnYDX_bi;qf3_B8mvt8;d(qsuknwhB&VjZj^m zF_cV5N(|qS^2+Z_I;SWDZkx^wWz8STt1@c?*?YtavZqXajW4iQxm`A+L>R@sKEt}S zJK+F3pVxD0&nqyE@8J9JP|EBSdSYjO^N4qQT-s^6_l`)5c+PX?rDZ=>%+8})&FbeFRp9ya6$;8vp&Xqxik zszOU8?)~J|8&Iy;3r=gIoeKHALPv_x*1bH3QPA0cmbsZf!IVlIZT$F6G6{Tk{77t} zF!({Rw%u++kbCyy>DnW4V-xd8Ox)mQ4^z_2^&rz*?y>Qvfq;tMi`F^Lp@y}^Vc94y zGp>O51LVAT5U@r2e(>RT2K8qATOw&u9&aU#pi&MoZF0N!_JASL9t?AOVYs})92*#`oxp8g&{_QAHQQQy9SE01X0zH4F#?be~A*k>MZ6|P@s z;j4EmXdNJO7$PgX&q8;{ZGuX>2kiA<)tq7T7ryaom{tA$^jov-?vBGD4FDY@E&Jo6W`IGB9$BpUu@g46=alTLgAD3H z#>V%j(^B+v6aowi7JUOI71`UUBnZ+8+1`za_quw0Sb2J(g0^Za=3f0+x;Wn+z-QX8 zocUCopIYRu!xE~8sWhsf-E;L#%$Cfngy~PXYCG{f+1<*`H^%8LalXX|?je#EB#{T* zYUS7D_G)^AOY#FHRr+#r^Z8$D4v#M1Z=LZSgkD1{HZTk~NsFEr;u%vd$R4X;+If9`m2?|z!xg8%(t8Sp>jwHi0W#L- zM#d7uaS=$nUFAi>DebnqXSGS+rs{_orFD7BXd1QGYOnU{1!}iFV~k`JZ3T3Oc(+d7 zKo)d)uN>N`o-opnb1%H`p3foZyeZ2{?p3M$VrYJlkv2JIY!_!ZBJGL(+k^U~CF@Ni&_djwJQ6NWQ^uW#O z4#(&JmwW2wrh@&a4tl&owEe|;1ZwpHgUHn%o(^w{s)5^#%XcmI_i;<+dD`b7=PW|Bw#?Z1whSGb{Cg&p~u3858XzRN> z8xXqKJ+ZK6P4Uwoh8tTev_s+WwkrFZU;Oi{D{5J_419r>0P@7DFG!brzIkocLF0mwi10{Cvm@eyEv9ScQ@ za@fA@h&qzfkI(dQf2x!y9b0%Z_(|4X>@9Qc;E#ykQ`4Ck>_Zw;dairg5TFR6J9L-aHM&RN`z6*pRksFIC@K$-WM#xc+cWVI}UJ( zfa?Cf?x^_sxNuh6&h`RMfACm*!OT{%S3TdW=F@Qxh<1Ai&Ct* ze;@A7qqVPf8Mxf#yYWr($JKPN7Wem>=;5svERgPQebIpO%VUH)g)^Du>OXx>DmQqq zN^i7MTjpwD5McR|o@DhM;*nlyZzF}TU3sVdjf*<#%5$PeLE z`$OORg}7&h>$RTwQJP2#HEi}kGc1v>ASlh$_qVTdGXP7MGZ?dw+@Fmro2Y(JPx~d1 zP>U-r|J;Yq6X>`K(@uI3mRrc*DmoHxF&Y}~ z;-9_To4*vEro^cq{8v{Ppaic{VfxN0A?bTT@qfCJtUY_!2Iy#L{xZLP#o(#lP* zY#5XJT|tS{n*MPgvOlz3CA73AJ{`{|=acd$UJl)q9JhV9%lavdH| z4R<@2u`K}$Wk;P7sxyEGy~!NSPG!&zIc1=oU_Dd#TI%I^5h_ZnDj_8!Rf zo5<30LC=T}!?&+-*K5mMy^fH7Df6d{f>!6ab(>hMJrRUS9wtbf=2TUskO^Nv~b8HtgK^d@RqpCV+Z~ zrC$+4sj3B$fJsVp-;|KA8|*}}0V-;ZAGuFt(3bhqpi?1ZgctvZy|;|2x^4GG6;VJs zBt%N2q(Qor7Nl#^($dlm(%s!6B{1pk?ozrtq`M}yZ=Ut;wa-59^Nh95IQ!%NG{=x3 z&iVJ6_jO;ty5>?)7+GHTB5Ek%((k|?w9BpvGK*a?M+*Hr`5_ypd+G#kvDL)7O|bD| zG`q3S58`)wCPP!dj1_%&Yy=w?#Le0-If;fd#&LN~G)d`BIS2@)*2-Ioj!N@qhdSRm z$LsU=-|Fqw>==rmW9d7Nn{76OZnj)F2H}Y&gRs60mbN^8TNJB6IIdpG610X^hU zaTiL(#E$l5C3bM5>p#jrnb($7sT@BVC7g9u6}tVlP!eC-Z-~3oiAWIh?qnfl=tHA^ zhI1b^h5JgOKSGt66EwwuTb&4DooF;K{?XXR>1{Crv13cn%#k@%^By!wt0a*h?9lTp z1l70Ykj|0y_!0(O2s%T-(2KM1#=UsDbX|d;Rny6Lqo+#d1u&#u6-^#nx1V*yoi!aW z48B*RmG3vhZF{Dn7LD}UN)E|ZSXdQD*ahBsR}bETJ75rDZ4l44F<$8i#C=iKdGMop zyEqwZ(_Ysgu<~I{F&X&&BX(SqmFf&DuIRdsa_Tu*R5(%Q&6#GI(_Tu8V zMZ0y0GI%F=c3pj7j4`K~@b5Sdue^e!L&u%h`nq7-?JAv}U7!^~=!PM65RJs4Dg5$J zP58L|#ZdZj0`C_mJqO*68|y)L`PRyz(QNxp-r6%N{l})2D4{ZJ`{ggxgJ8kepekas ze`eN@Na6+4ZvS?-40lOgRk5E_pD(Vc6Qf?uGkU}=T1ULqWOlsPn~{GNztYzy-<3%R z6}T?9?%!{L9w@6Yi7BKz+49)go zg`l!i^?#p<<6sESj>84fR2a1)iyu+A8`AC2D zgAh-BTeS;9FnMhGM?#C0&Rn&#tc;p)@cW2&vZlj4n=83OKjX$cy2oWZ6RV7+phWIM ziX#87J)9SamYX!E-Zj~=sEBZNqAi%GX=uvuK z`5<9CD^?Cc4fxE)gox%Jx!vw)qg%F0L=yA%TxL_`pGJuFdl?fP`6A=_x#o{ddt1^Y zQ??hR#FfkeWUCGNiBdOXTsr+GHM=3FeEk^VfwdC%IAwkx0TzseK+}BM09ie@&=9uW znvg>Le2XHG?_!R1z(+PgtL2y3UBl>A4#MM&)1~)wXNP?ub*0vETV{5z#=7!tO+;J# z1#Xr<#|$@z=&bLou}>6LW{r=lXcNVSP6j>7f`w5S=6b< z(#WU*rL&un*N(}Xue<1E&d)60)d)NSKjxmSExXax<47)zJBUAdGLe76sO%4!`&_II z-7l@--jtgzWlJrsDci}(4mR(%J+GqgghfCIK&$1S9*GS-qc5tS%|8+@V1_8Um)e%r zymc#OHdK0vY#FPqs-DmKjP=%F_HCL$87?lZ(Kx3nYx_M=mijRJc0rw66;|IiuH_w> z(yAy8K~#0Q^|o}al(=17=5}5+m#r>ryJwH{2@=S-p?zdb-%fka*k`QGSg~y*yV2JN z{(WsThmSKX8ZDUkY!iTe&obF&SLYgU4C6k+H7DGSip=txP? zI&Nu>F_wxgN@Yvh?POnAPS~>wmbTbhi0T_)rJ41wb~ET0k&jpF6ScfcDz~io;+J9Z z%AjW))t}gKD2a`BKrk*tg@ZjQ(yS;XxO0niXK=W|R7tv5c?+8FqILiND1N+AXYi`9V(K$N|OnR9ksdwRyVA;S8+!)!x~pxH9PC@jlKmOZEQUA3u}cE z7asQ)9y*DZ>v>f_>?z4}LZVF^{wj0=_7ilbQ)^FRv>v6cka3xC!x` zw#GT{d4?9ASK+;PRv1$5&XC9rt3~PKwpX*~TBMxG6VjZ9)W@L}qLcu^hYv!i8oSmr z8=?#4t^DK3U?io@pds?wvZlGyPRE!|E;nlP#cTa)4Prl6^4>Wk&1!W_Y-`mKCqCvXF4w$& zzdhX7N4zsULu886?R{0Jt^sA7bdqOVs4R;=>%~>6(j4cG*{UdUy``g57U)$B6;jJq zn6cj}dS|UPNnV(iT^g^v@O!gee{I~xhr8&L5fsgtpK@~cx|!QR@Y#Qg(oopplHN!2 zl1ZAd)A71Xk+g}Dbk2CsBuKF5+>D?qPWE|^|qIvO_3D&0!Bt! z>{2XxPW@`)FegSDleU}yzOKZwvsac<*E+A`PXy;N?`TX}y1@Du4~;Cimjdr_6a^H@1m4hLsb6-nl94XC>_{*Nk# zT${?G;7V3LoL?-t+>@u@wHHU?M%B+YDpD#@R#?8J0_KAZvbZ!dFj`Pl_jb2nI3k+3 zR(YLnG;y=g|4-+tY_`IprLw?xgZ$HPA3dzq7}P9jiu0pOA)DD2cjM?CGnFv7-an8$ z^xserieE>KlcB^-YsB0#hnCR0!w9njOA8TU=dmFx zYDwB|-iBV?+ZF|wUvTSTdHJS#N0*)3vUKY8*LDCf1}89>uk26yH|ag*K?~7z7qAaG zw%)tE7Bqrts!z|X6Yz*~S2-vAw3;Fh=UoA~`ay)$bP#^reZHAWJgl?G!>&u!*-41i zvZ7&!CO2gSOLZ6j%pUqBF;0_%zG&VYno?SowPQQ);#0<=RC$%pKW!WH&_K*)w`){F zsnkMSV^pTC0wq z)On-&W%{2{%9op_t`vGXASOfiYRk3wt&wG7=g8TGRXCBrs>*~Gz#Y^q`0T@FI~BS` zwqjk7SByd8a$IM*M593@3IFwcQBchja1v)kVLgF`nc$8WCwhdLgk{cLK zOjT6}zl;r5E(nhe)-FIN22-9@v4l*A#JJu$c|hsZx>V88-yzE^!rgUoG%Z(T<)Jjr z^z}|<9rrle09~Em@uYW~9Q(X#orvZB38 z>w{E@QYoh4h0>eU%~*}!wX1rtK>C*M1f* zJU2HXQn{Yci5-I6DoUrSTXU22rBs?9aZq_%EAfnao6uvLv7W~61DsR@!Z0TkvJlDaS@L_-bt6T0`hT5S0zBk_d07$X0-spo|ZZvLnJ+IQADqHe?aFYP*o zx`l5P#oP|wO%&1FxOq$VKick6Lw8);&Z6xv9i7V&#JuFBm%BtR=!KRcf7Ub>^5 zY8BTM{?kU=4X~HAU?P%Gw=+}kq-h$rQ(zHMiPe7iIx0^1Lp+oR>dl(-2UX5`)%L`S z%%Ivii*0H|7k}OA5>Dd*jLJQ)-rL!g4(7v9=Iru^FC_Z{y(E>}#<81kn{z*F+z@{( z=Bn;`uccjj7GA*Fj|{Di{(6Wz_aefH)vygUu|RME_rB5vEsVi})VxwQoh&t@czYwlkzo$*pYU z<-yGqJv%`EKEQN`j^FlmY~vC72Po~{iC=YWYti|ihkEQfXKkXfYzGzdH!Dmkf$Ne` zNboUqMYWo@=RdU)o~`2VFFsngM&+l|jOIAVq}6>GY&M?XDNMhSlCG|5UH~^`0G{W~ zM>hyusW-cftgTt zt~aP!)#;s+h32%=x~@v9LDn-DqMQ23 zyqZHdw#+y;C8xN#`p*2!;(jS}mavmY?P6gfQy}rmA8Fp*c-*3Lc_FSk)fTYc?6<*B zGg7w`Dl)5^^>2mlTlyJ~X8G)Qr-%&{Yj3?%i8m96A_4tZGdryK=e!)-B`Y|#S;B~J z@O{XRdHue59lp2pjz;VqtMX8OO_`~`wq3?-Gab&5foAxa==j040p6^MrIOS34PCuf z=XTMK`8ZqdTN2-k^Q4!fc{Nj&`3Y4F!w_{7s%G80)HyJVFKmpeaQDw7#Fkd`7KBB% ziG{tIjy!4a!=H^yt#-N^Z*22&FV}cO*e6(F@pwR2&%29Q3`LAYibqdrTWRpgXALrFRV(bTXW0yKJyxWyqp@Z zz(uYq^;Y`As6c*5*TeAaPjIQ9t;)Ejm6Cy+22`es1+Uso$zPZM>NX!%`O;r8J9^)K zXJ7kx`vgH zQamudC!qa%k1EFgI(}Z_{s#HmJgmR_I@YmXESzAH&wkEl-)fc0)}i-1?P`&z#aT-H zr@Q!oYk~$ooEPf~p0?%I+4pxlYUJ%v7YRGL&V>*~We!Q)Qrd04@X@>mK@VO%y>SMQKp?)>f7l`VCaBpwLzLmP)mr_#w zrQQES^q4RDIQmUnu4V=I+;1@wO-anj8npzB{}rDk1%FyAQiuyx8b4Lppqn$?lrZd# zqOjN)n7%9L6B3Hj!D4y5wPhS*t~}4$G#xZ+Mk;ZI zx~NYquyPhf&38rj1^OAKiF1?9~|7v%*g9PI<$vC>wH#&rpMqbk&EgsVYVb41kZKr(R z;{slK?YqM(8Y$IVMfP#pd#XlQKhX6o{~yxzKyBv0g7m$ITozfFQmtQ=%T3Va7=F|L zuJ8#UOn?vSZe%RVbIY*#JOX8i9ol)2`RKSF{>cniMy?_lCFy3=&O*YbtRb?WYUMlb zA(zs7)!VUh%sq2-A$I$Y@;4-tlQJk&sITbYs&o)&=h`Y^fXTOcaDDwehV2v|EC2;Z zeK)bo03UePd`x4t{HNl=f2ZeTr12bfKQFh~tDHou!r&vMwlP?KaNqFkBXrl3X$G3> zCro~)sUvf%qZy6$`S{-HO3EZj%HW08%inJj3U5*Z*-i6?9LK?d*eg@Fcz<`X4AWdo>gh1_X45ika^dWrS4tGDz+y`QS2Q8Cndb|ZN%Gd#xw`A7sVt)Q9p2kub z*G59vTJ8T!ty9RVd~wIS-?sylInDK}ATr|`j zF*FKu4@gG6YPq4oR`Y2#W36dXE#)kuv+h|kzgyiyu7}2_6`TGhuLf&5OP)XBYR*&-jj4)DyK0yv0A5-4W&2*gS^$CZXMuS zfsQ!=NpvlF80QcF8891m69GLa z{+Gl1A*SdZdnuj*1z|mZ0z=i`oO>u}aAl!AStb?`#KUK*=Bq7$LekoVc5KOO@y#~|?9s~TWZEX6 zg#$GpaNNP;BpGBT;wI(2&QSTAn*p(a4wsT8g$pCC#{^B|Fzg=J}22?8;xr% zB0?rrue6skS#blX+~aEjH}293f#u1#y^ZkzC((ZT{f*Ht?KA9x^bl@mCS&QYpNy`{ z$R92MXg&J*=gdPWn%skj1Xc8FuL=9@R&M&;{WK5y*Mgv(z3^|S^*^XhvheHSaD{g@ zLr`@&>_3!>(0wTR{yFri-1`t1FQUCKq@@rzvbDpYt zJ!j2u(WVwY*EpPZH?*6$=WJ9M7*<}~d^a8H`Q;nl1L^#<&VW8CC<*`V>8O5M$kQ#3GT(3C^sj;E!IdVjG)u9yngj)QwzCPO z|Cu7@F-(0XeaA1eM+SML6`NTtrr}G#lc|x*6s-lWpNXS|7}E@5Q+tYQpx0hF5$S?< zR$g%{567KDoAwGU>vFnsu}n=Uj?Iu9%b2&oGqFpysLS)7($nk?7Nf|p zrWm>dP=xT%$qM~$YjZ?xv>Z4;8jOHZuGIUNOgRKpotM|z0?XNvF*tF}9R`@YFFi1> z%mn96iyL1h>rTz}_yv4Ae}rS*~|in`jgm3}&UG zUgBAD7-X9D_GkJ-YrWA#&tJjQQpPwwcml(z9xXky{`LI>KN>v7^O#?^$H3OLRtRTx zFUDD9lP8pxwe8jR40+;cwYwfTu14xjdG;zsU-?V}&GMfxe%KcWa5g(*1r2%4d46h3 zdFgu#BxGA97Wxi%fZbTXmy5??!0@Os%Zyf0H)kuBCFhU(PVFUsHg*iZ6Z763m4tsz zeI$&KgW*Nt$FzIkz>utR1K%K-bDpf%&&4$0S#V1%d_TF}9CbIwX89#fFyT01)PVndRp zmifG}IOcbbhf6=QWw|U!E6c6p^0+HHDpKRI*G3i0WiS+N+_{SV9W6&29<@C)q&v|1#aT}pUMWI7C)5mIZ7^i%`0)a4|%>wXl5#fsDra9+(#3eZdBW*iI=Oa&NZE(ZnkPC)y z5{U?PSdTZ5%=dbV#6kwI51JRlyGufL-SQWmn#m;h!Q0}nS`kh+19FtkwY;iw;KGq>%2A#z(ET6L{i^d<;gEpBB-ZPa=!95<|tSNPTa@|K`*O_T^rdLvjAb3w7KN7 zH_CEq?jH2s?3Z|@W`R+67|}TUmsM6JJaGbZdg)4f^mxT<`Kw-=JQ-7oi4Y`5v0MVV3Bb%gt zZ*2PZ?3v^Q5_`&_=1U1WC`AQ&KV&aCAoPd$IggKJ-q;0vT&L@GDKROF|JnZhY;;}L zx_ZogZM%ufQj2HW8!8JEH`0L)3?_J#$3iXt_M-L-4(J@SIrfDRNZUj$Z56(HA7&uB zYWMu83gSCuHoc{JLyJ-N291?EP#Noyi@FFrwph)a?MhV24Laf=kUO?N=y4aeamt=? zRA4mLY=}JeV-bECIFj^CP&je}h$xSqn?8OTQR4pXjff|H+VDqijinzkeqTCoRR_wb z)g=oVFsvZuD~1-{sO*Qz_|z4$-!m`U<*|<8<6UAZfw;^i`<;a0+yWNDQ}Q>A46bBV zkvI$wx65u{&Xn$FqBlaA&~b(S=#rRkj75&+7H9HDv{xFY^%DowTb$YiED?9#4!?by z1qwSG=FypUCvdnR>eD7;mcgltHp;E(JVr)(l<_Rj6WI`F8)A9L8)L@ZhF@R9$PY@m z?dNu*GI8Hm=mnYTbj-IX0*B&=xOE9=T9o~yro)*&8@&C3OB~0L<3Xv}k1%j=E%L}+ zOU>ogc$fJlySUtXx3t??{xZq5=*WoEs9oXg)4Hm(K-RH7zn80Fnvf^$0(KvP)m&g=K zTLWw*n6Zys;D9+UVpmNmB&J4(UjI`Wrq@LpDk(HWZMM?cM91l&j?MWb-t`Mij2Q2Y z9>1YGBL=T9O?8FJiw_04ak&#>YECcHDpIY2jSwbW!@?iwEg%%~&O~fGpvn~P`Sebg zs|v=KY)p9MorTxEHX~kE_so1+hJ|d3wAX)4*>{ch*nf9sIH9{A&W6gA{$9r0r`zT* zS?aZnz-`6FQmdnw{Ejzzg}~pQ<=_v0y~bGTf&4D_d$B>F^ZE~}Ny3CzHp62Jf@JD*Cj((O%6 z4=4V}SSN^MP~*$ypXPN+GvU!!x51oAHQ})vgArl9U_o1XQGgX=1lf9jlgs3d*!6>j z76QYFqY9CO-jjBU9Q9u1Ld;p7kxrD%biJm0L$0?KfXpm--T9i6PGH#P8Nax3RW)w732v(St7so>%__9P490(hDoU;)neq&ojx?uCxkWr(z%> zXb+)^85kpgR@gFo$-NzV7CTnoc9Y=T-NvhT61A3&s%JJ~bQg0YKRL$x;bv^66&9fu z{!XKUOIRENtuFgfsR?Z@Gd^}VHIJwO7n!>1*Q>Xino*kiSZRECe3ngdw$rrwggc}* z2$y8Kzr!|z6`RXHA_tCRo8BrWuy0I%1&9BY@lGTo)3I2)h^h9aCPr`7CG~aDm%W0q zYQ<8P#N>tp)*s!l@XfpnnRaX}G~`8fi`vf8JcQOWH|o;k3TDW@gEHjVg=6MtAuKVR zFC!W-#;UuIjngfNPJwujRK5F=$fa#8v==z!797OQ_BQWXt7sfweMULnt8RNv>-e)R zl*5ZiObDYII3`3KK4BTE{LLx**U|eW5iy{D9kM4R#A#b3*lcay&KTlg6R3H^a80yw zAADFBWgvB=B=g)D4y(pdy&*3!z0NxY)0d)y&?{LC9$67b2a&Z{d8TZeAePEkYT3?lR(-lPwHlYSO9({w%BN$y%?27E``!`^8(Ns&SGLqDns%|( z1MTyyPP$gYTyvQnA4ucLoCJdh@fmcQrmq{Eu>@j`^7jOn4Ejxsn+a$ID}*qN7b6g*`X=*zf&p`C?vLQ;Iww@NKK}j(U z!xeVo@TVAq)EibL=$^h=8+D3Al@1~W!E5nJ@rdERI&PCwCsYR68%TW;g+w#XS<8Y> zG?Aqt>-am8)ay_pog3@@N_KG=vtF0uF#e4py`&GgvS1CkS zq`MR87tHRD7#S>LW`8?6!*CYQz1%9;fM2S{Wz*nBX7qwREb_M@}#TX zF6OwRO46;uxvQ;$dH7XyesGM+`CH84r@hXL{MLiK5i51N%i~rgsAo$hy8`^!Nlbv9|=EexdxQ*2yIBTGpn> zB3YI>PPr3HzI|w7uCuiOiE%DtiC*hDJj+L1>YKB0Q{66`AOYV?;nv4f;EfDB263mu!_2+moFs;2v`kk zKq|CqcJTq}&4nnisCfqi2u&mdi*$(D6Q2{AevEAo&X zEjqqj>C~hSXp;q(9KRLXtIN!#t|)w3ex?^I87VM!!xYFY0d|JZEiwP_f~i|DkIWG7 zki;iug09xGSIF8i?z1==TY;a~TUGlp_(JfYY9%lI|7^bcLO%~oSZ@er5X;FP%Tv2* zg<#BmSwBL1U#Gi=oHsE23v`BTht5~}ay!ZeR6!D5+->!0MPF7!u7b;RoF-*MY~t9x zI)f4Sp=2Xuo|K;wmPqv01J<_yuykX&f#TyD(E!>d%8?&a&pD{ZAxlHzmRssR?K`rX z;4bI93^>&R7o^fw-tVEN8*nSXR0hZ(VNz+l(<)?)sbj3_Y3D^T$+>HqL$UnkJvXY- z1Uj$G_kK-~qsBAc@A8?F5I@ClzP-M=guMCST(}(+uTYr_3FAi z2BRjl6a7Y`Cm?>A@8)Xgm1K*n#B4>Czth+{zon~*T}Db>mCQD-A4Y5qCC z_;p{cpOeW^KMkWF)t-0Hdi{egxyW*{sVN}=A*{sJ9OZaE0meRfJ>>N+3$3A_S)LK< zJ!iUF9(9YSe*XtyLOYD27b{#Xp@PERTzYS`De$XYv73L^gnQG8ID(cd>*3(=WgD_A zbxJMrGV&GS{s`*oRO8>w=zmr0zz(9KldPZI89!D53bqNIy(vff&!t~h@2M-I=qChVt$C{DJvbyI+WfiQUalfe8`bs&@9Ok%LsaE<;c!FF-86BWAJ z&M1{(2xz`%=@2l2#Mqp2`r95ZwRV~%xV)6u_Cj!jbFaYMkv7+mT&@}F2xSw7moUsq zu`NA5UWkPaNwO$s4OwS5_zk2-$v9?f#^9Y73}Da9e5l)X_VJ}NKKY8&KfDl*&)il_ zk5P`HfS8QyD4<|&l!m(!(6lyZ*C6M^*#!%)WSf1ast_376YJ9Id(HcMV@FYq_f?A1 zMxuKr9AO$Yx>pJt+qga5P$YzJJy9c&%Djj0B(Ls$%j+{^?YHv)Ym6~VXZ&=9eQt#> zWtt9xQ~cKmi}Gf!Nw+FY>14JDYooMaKU0o%Z(FY0M7bsuzb;)P4>OoeL|L!BjO%Wk zIGAx2orx)-31BU~Dl#bdgJ585Gxg@Asz227GqhKKChaz2phl1FtQBgiowsnab>D|ew zT&`-iEk6udkUB!y`2@u){evT)H)ma06`w4|uBD*s_oEn?qZV{uc{Pvxi1qj7RHmjT z$dyUg>d)5A-cgpmqh2O6lWS2BD;1Ba2%&(cBO))db|GzjAuk#vL+FcDOk2;fWH{Oe zdlr(VO&#<$rz5Tu3XI;;RoOEkls{wEO6Ybh77Km3&MD~zWZHSqKKC#?JRi6n5Q0%2 zyj4-<@aI>nizVWsudd*FPLpYVR5p74f$N}4zhA(vT45z$F@stSJHLV*Su?DPF}5gg zR%OvWyb=9n6Dn#yEu$~hZ65~~ys@Upj)QqaR$pr-TnAA%aY;t-psS-AjhOtp(vN%H z9TGw+Qi^H1xEJ(vgdArs7S%G_BI(^tfyYfkZ`{r$xW%oTj;8hdHUxdFFYn=p8gqEr zcl9-gj84iH|EYieYQSt^r6R0mZdzUhgp7JYo9_ESD@@TJh^}IrLj`!Y1BJH-PiGt; z*%-tnMR!)`=*y4S)h`L8l*Qjg`^wve?pFF3WKm)^tIQh5g=!Hg?YnwqX7h+3R z$`cZ}8j^07gjL4FnO5dk|JeF}m0|v5%nNSS%#|*vfBM`{$WgP%x>=(IE}!kYIqM(s zfR!Hvg4Gy>F(eGUOE((FMU+e?4SX*6yeusu9RFS-;cyt43*m-D|x z*ibyL2p@YqvwZZS70G727%Pn}K-NZGs7Z8HSpXWS6dlFmRqz8xH|upQWvTW*Ro%ZM z+W*ll9T1nyr)>%j^L;%E41k;zUadrM$L+vnqLEpbP^UiD;>9MazwvXkq(_Rln z_6;ELYM;(lSOF)$X75SYO(_`JI3GQrPOen|G6|anK?(B@_IHqUJdq$WSnX74vL0@1 zQE?uv4e*%x6fPSLy;SO5?9s2jDilO`io6^Fw6y=E2kNz$RY@__6*<^VtbE zAaA2s{koMMZ=Z$Wy_;yF#@$m+^K!E1O zFrpN@_b?{FW8p8M1PEbAMO-qP(bMY?=I7%-3F_dc*4v{j9i@PMe_=fp}Ux z4*R=RGbRPE84jB7-SOxCTu5nZWpaEcFoZ}qgS5nzBA1K(rgKzPp`96zX*MNq%TTt7 zLz`uJNqQv~1QTOAsMG6+y$cCwUTjaf(~rcW7YAn#aazsj`~b|f?cnx%Cvxwrqy`M) z^T1d8$8a!7={QvA6+PWRCc}l)@1`-1$a5kr^~H9}WF-~N@#1lTn?vtwz%jW-t7uq> zR0CeLe!ASK9=yFKT$FVvdL`EMlfN%=@GU7oOtJ2xvG^^5cgBlc=Lv4=I9!r>_`{gC z`42E=^F2rxn2%M_T34f&T@roXYM#FmgGI$}*qfdo!mFoFDs`z8Tu|sP3v0lz@obCE zzc;a_>;2Askn~HmnP6!)?8)2%*3!C!hv{BQuNel`7!%?)yW8fK-PbG~?5fAIe>f~{iHPA2A-eeStX zZ#3?nMldb@<)61~IP!A=EDe!kC@{1ZR*Xn=vNwW<@j%j^6B5GC_jaT?m*MYqu|1ic zL78v|sL-eCi^4zz$?s5bUzrEg^f9NCR4jtiG)Vk%0FR_rI+gpyXgW|~?}HPb_HJn5 z%bvPHtkN8CT%<~^fXx-O#fRo#)G1^lmKEE^CNv`Aw*3k+BfW((-m>Vl!8-sWb^q`m zyIzX;)61SWG?5H7OK=yxROxSaK5F(wnh8L`2k+$tHh||GW>Y0<(+_krldASs@AMQT zKbF+-SD`wG1IW$fSs;(;K<7J^#hAIQ1_ifT{rze^AxY@x*6U!p6+aY$73Z_<^%)#? z5i)@CsN05IwWJ8x?KSTv zj7h9bYa9)nugotNi-g&3+PW|YY5V{?hR2%>zX6KsR)1|m# zvg5sG@Xx^50^)bZ6SQh>5h=f{ydXIu#hnjlCzLhsVGjXVCvP&4T`}HcaK%#El~UFMGB`M{f|_iz z>dQmrq=O5TKO8L~9es)7hZ63l2cZFNal;C|?fqr9K;47nE-j@s2}|%C&~H`%;ZJ>t z+n6J{J4Cnu?0f$$u-AXe!EW2XXufacxw~9-<61xM+%70iqdNd`mHyXYgV}cPh`{~T zaMK+TkG(C>N;JFOR!8=^pISIuRc4qb=V32%;Tt57OYN7$#0R z=4};hQ`|u9G^KsM02}YPx1E7Xo)b~7O&*T_lOG^-i(Nnk2mK~pc5;wEqZ3uM(7inb zM*!uCKAm`TBt1O*n^_>YSd#o0N|F7%>Gt!lVr_xRTp1F2lT05uWres&>R5}7#4K2< zRX^o7Dfa1(hsc}<{YcnFjt24>q?~rz0}#4tj4X!qMT3*2&Q%pgXXe^&qik&au@D8? zNF&LX=+KWK)uHGi2bHLUc!yhy_bp9qi`sTQFsjrO^EuZ%SjlxfUk2ggcA5Th)2j-% z^c&;AT;%iVY!a%dOdrgiH7gI5xdt$MyNpC7V*T|gvWBl7I1G|%9Ngw_@kx6|Jb zI+(LJit!AZyuT3=Pl0%#n|3#x_gLKDj=cWlA#>tBye{jj=ViMAp~OAd!!SrY77$KB z9rRt1uadWwn<7FRV7y7lN=w7h^eOgzt!r%-h=1(4NZ zWl52zlf#B0LhQ2-i1nRoHM%ydOa#x@uiZxl?k@FYmgN0^XNtMNVe6uMPPu_qf>B!m z-qUwL?RA^b8LQ1D*pzqtN4@LUQmc1xoZxzm=h%$D3#6+F@c^#x7jWo6IgOA0H(K{A zU&}L8_=}>YkI9Yh8uVlZogL&0ZN0|6GIEciriX4 zD5E z&wPr9>+wIc0EXlbw29Ls=}LWg4qKkMIq&xdUj!YnntuY{xd(Lb7PFqETW~29O#G#J zG%l$>LZxzz_xp<=YiCiurj&5=KctU^rL~kLSPD!$5#A^PH+~oS_zKtH zl|lG|JILIqi~-7V4CxZM8m70&L&f{@}S)1T&DTG4TtH^Mr*ObKK1#D zrLU(T@>A|00f<8nw#L5P#Du!#UhD`sAx|wV1HHX4qww&Wm`)LeEm7j#&ZoOq1z!#6 zJt4o#K%CglTmJ~uEO;sns@2YUm$9xzm6|&aF}5kiC6AK(XIixA2AsGz z5l}OU_q`$YD&qat6v{Fm>%slUx$Gqz&jDXQp;5yHgk4VTX5d7+mq*5_=8NA=#(&N0 zBHxK~>Cu4CSj~=Ca`hRk;h@nKNiBI}gr@5)XtFTgH`-QF7s0?bX{>XWDgYSQ6Q3&k zjtO#&;?*uz8Ts2G)p7AJIsl$FH`>z=)6>FS)(~ZH{DNib-JlIM8o&g!ZdiNvm4Xc4 z`lLZu4Px?#1Ql)9BN3;yO};LyD9wVPNGuMhZ^%b>!NY~}$3AR|ruE7)^mLZ4Iom%9 z#R3hly4AP~-PF>2vKPp~YqRMC5cmbiNycE}v@-3{Rjd|AyDdq>N0^@nuD{2M5z5~d zE$3CHGI6=EOa8%{n1eA^-pQ%>43fLjeyw<~tgAzx;pVg`?6gR>6rp)daN?-?d0)S9 z{oXj@&=JkO{NoyEQs>0H_y^)9Zik-d-Tx*-_}ApLK?A=eCg@%%<;nH!HyuV{V7awq zl6EXktYAW*kww8gqsj>eMc$=cbk0VRa#qI^@t2<>lhV_ zQwc9-|3O3M5ZODO5RqOpnH}~z#SM8&a+>-Dh^Vt!6piuTO!sJ_DlcVvgVHbY6{B~> zE1MwBes_2C)9+u$D3W-EX?cH0Y-()$C#hR*le#v@M%Xn49ljyhAgGra#O{zPB!Z&nor$-L zBn$cYbUM@0s?B!3q)VnesGfNC@fwJETxeMqJQgVI6MUooVs+6*{VpQRq22>TOa1{O zJZX%e4DY~^(a|^B^|^LYRfk}1HPj3B<14xEA8odp zr(jfPhEK@XD6}5wqcTv1a1Pe~t7c0p)9;6;a+a*VF@u2d=d{qJjOQE+i1x2gKg>Oh z0^x=cO!Y7SURdVW(h&NnjvS)I_*Azll**_eaZ3J&vhK&Vq+dz(W-0lL6cy$l*P=+C z>Lx5^53_JNTZ`hvVOSzs5M$EG%K4Dh{OV+RG}+q&#*yXX8zg$`V02avNN2`>#p>FW zFdOMxODq2)sVgO3K=)tMy1$BRD{5aA7~u3qsA9lUIK&posh^THlg5ydSxx&BT9H}G zZwX_D_VWj*z{f{{fLiZGrih1A#$4h{n=M3}l6^JNWu~$uFTMNo& ze6A0#8!Lqcb{podrfB(~;zLgS;Wo_NF+9INc0lALv-_8{pbPR=25JYQZ<%EJ{F9lp z+(VtlyVw|rtP%rf9eHuzzspSMcH@P|jY`^)w;Nk{QOFRbZKCy>7uWAhQ*SsuCN_zR znzqvZ3*hXK*RzGYSmN}cj2SWI_C81bwUaZXTiqc9t9*Kg$(0G{p%RD(NM6C4(3nws zKr1tu14g8GqLA4=ew4p3WvZTqqba+Bd&9RAChl@yafT0vi!}MT)GNjrR1{2;kTJ?= zx9_^GTKjx=n#sau8&s5-rj=x<68|DPMso%LjZOFerEUoOP5WoGSR3(s@Q2Ux%UZLD?F9-29Yq-?%zcG{j1Ef6Y^BeQsoMmoLlw?K zNa3#H;}Yc2Rvx#G?*ezFe3T=&4_!1*pM|}*{xA|t4v`Y9_#m;o5NUJGd9V#+&?j#+ z=+FxpIt~^Z>lZcA1APl5HEv63wS{rmAoxGVJbOf(f~`xzw6^e^zht|@TB$FaU0105Z5-`qkX+&7x_oTT zp~^~}`WHyxzU_Dw?XGJL$LS2W~fTvDd(Ixxi?v0_-q<-Nw2LCafx@s|1rr#803 z7wSGzhkEO9H%GI&Uc% zOsr&rfox@`<{5*SEVu5*Ktdgj3*9X)yX~yXPIr?WXr5;E|#=tF9Le{>o?k9&=C z3f~K%^R3a3C~Q$mCB2z;6ih%xiV$2r(e+spr44s@H1fh!TijsCZvo(kjkFu2!D`iN z*RqN%6POF*)*^&PpT4B94c7bVrj%D;(rF2QHA0O7Cs2qwT{nK_z;$AmK()h1$OO{&mxmoTAaENZGdY!f4;Z1- zszL$s`dFo#d^Myl$3j~Z#;5Th*PBrpVjEBh)|Pf+<~1e}W>|D9HypGE9Mf562k%#( zbyK~FgRZe^;{^xYEHb+#&9F#k9ilZY!t~hPhZ9bq+bK=%V%Lw`ekiS7KeiRq~yKuZ@3Te%#?A&)7(9lg$y-Te!Csd z(S5JMpxY>^5TK=z{5nEv4B^;tcdAs2EI|G%P&@w*_Rcygt99+yiXaHmEnU*3(w%}x z*DIaU4H6R4Ee#TaNGRQnlynNx-AH%Wd0t&>=VE_r?^EN9^Zn%*4u>f3WX}2Azx%p= zTDoC8TI29VUd8t#&dy091i*>gPQ>s2u5(+Nd58LU$1_Wu3WJirFyx6z|^-dS#Fsw+dzJ(^9$B&0zEt`*+w81pr3mUQ7^FwXNx%r(5S-IsO-bEsFTTP`Pv9o+jGzr&IRs~w!ctRv}l_r z3>;ES?uc<3@T+A_$wq=@P)Iq-7?=VBrH-T1rf30O694|vBa=%eXNkJGgzPV1kcR%15{ zfMeZ-i!vXt8uBPQv;y1E?wUqg9bf@#GWHw)T0DRZ%uRn@$aegX*K-jFR_`J|SOg_H zJkE=Zj`77ooPv@y9htxrGCrY=q|Q z{yQAaR%N~xyh3v(LmvFf%7e2)bF0_9dFq{n*JoyP7b9Xg`5ajUDn(RNNLj&&-!e(J z)G*jpehtEx;b2Egy{QMBUN^NrswlunEio@6XdY=VKU`=ZAndⅆ7q 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 literal 0 HcmV?d00001