From ba6f5ab984db625b2c359a18d3b4ca129c64ae19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=85=89?= Date: Wed, 20 Jan 2021 17:49:56 +0800 Subject: [PATCH 01/48] add helm and dockerfile --- Dockerfile | 42 +++++++ charts/didi-km/.helmignore | 23 ++++ charts/didi-km/Chart.yaml | 24 ++++ charts/didi-km/templates/NOTES.txt | 22 ++++ charts/didi-km/templates/_helpers.tpl | 62 ++++++++++ charts/didi-km/templates/configmap.yaml | 88 ++++++++++++++ charts/didi-km/templates/deployment.yaml | 56 +++++++++ charts/didi-km/templates/hpa.yaml | 28 +++++ charts/didi-km/templates/ingress.yaml | 41 +++++++ charts/didi-km/templates/service.yaml | 15 +++ charts/didi-km/templates/serviceaccount.yaml | 12 ++ .../templates/tests/test-connection.yaml | 15 +++ charts/didi-km/values.yaml | 79 +++++++++++++ docker-depends/agent/config/agent.config | 108 ++++++++++++++++++ docker-depends/config.yaml | 5 + docker-depends/settings | 21 ++++ docker-depends/sources.list | 3 + 17 files changed, 644 insertions(+) create mode 100644 Dockerfile create mode 100644 charts/didi-km/.helmignore create mode 100644 charts/didi-km/Chart.yaml create mode 100644 charts/didi-km/templates/NOTES.txt create mode 100644 charts/didi-km/templates/_helpers.tpl create mode 100644 charts/didi-km/templates/configmap.yaml create mode 100644 charts/didi-km/templates/deployment.yaml create mode 100644 charts/didi-km/templates/hpa.yaml create mode 100644 charts/didi-km/templates/ingress.yaml create mode 100644 charts/didi-km/templates/service.yaml create mode 100644 charts/didi-km/templates/serviceaccount.yaml create mode 100644 charts/didi-km/templates/tests/test-connection.yaml create mode 100644 charts/didi-km/values.yaml create mode 100644 docker-depends/agent/config/agent.config create mode 100644 docker-depends/config.yaml create mode 100644 docker-depends/settings create mode 100644 docker-depends/sources.list diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..a4a486bf --- /dev/null +++ b/Dockerfile @@ -0,0 +1,42 @@ +FROM openjdk:8-jdk-alpine3.9 + +LABEL author="yangvipguang" + +ENV VERSION 2.1.0 +ENV JAR_PATH kafka-manager-web/target +COPY $JAR_PATH/kafka-manager-web-$VERSION-SNAPSHOT.jar /tmp/app.jar +COPY $JAR_PATH/application.yml /km/ + +RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories +RUN apk add --no-cache --virtual .build-deps \ + font-adobe-100dpi \ + ttf-dejavu \ + fontconfig \ + curl \ + apr \ + apr-util \ + apr-dev \ + tomcat-native \ + && apk del .build-deps + +ENV AGENT_HOME /opt/agent/ + +WORKDIR /tmp +COPY ./docker-depends/agent $AGENT_HOME +COPY ./docker-depends/config.yaml $AGENT_HOME +COPY ./docker-depends/jmx_prometheus_javaagent-0.14.0.jar $AGENT_HOME + +ENV JAVA_AGENT="-javaagent:$AGENT_HOME/jmx_prometheus_javaagent-0.14.0.jar=9999:$AGENT_HOME/config.yaml" + +ENV JAVA_HEAP_OPTS="-Xms1024M -Xmx1024M -Xmn100M " + +ENV JAVA_OPTS="-verbose:gc \ + -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintHeapAtGC -Xloggc:/tmp/gc.log -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps \ + -XX:MaxMetaspaceSize=256M -XX:+DisableExplicitGC -XX:+UseStringDeduplication \ + -XX:+UseG1GC -XX:+HeapDumpOnOutOfMemoryError -XX:-UseContainerSupport" +#-Xlog:gc -Xlog:gc* -Xlog:gc+heap=trace -Xlog:safepoint + +EXPOSE 8080 9999 + +ENTRYPOINT ["sh","-c","java -jar $JAVA_AGENT $JAVA_HEAP_OPTS $JAVA_OPTS /tmp/app.jar --spring.config.location=/km/application.yml"] + diff --git a/charts/didi-km/.helmignore b/charts/didi-km/.helmignore new file mode 100644 index 00000000..0e8a0eb3 --- /dev/null +++ b/charts/didi-km/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/charts/didi-km/Chart.yaml b/charts/didi-km/Chart.yaml new file mode 100644 index 00000000..7161f735 --- /dev/null +++ b/charts/didi-km/Chart.yaml @@ -0,0 +1,24 @@ +apiVersion: v2 +name: didi-km +description: A Helm chart for Kubernetes + +# A chart can be either an 'application' or a 'library' chart. +# +# Application charts are a collection of templates that can be packaged into versioned archives +# to be deployed. +# +# Library charts provide useful utilities or functions for the chart developer. They're included as +# a dependency of application charts to inject those utilities and functions into the rendering +# pipeline. Library charts do not define any templates and therefore cannot be deployed. +type: application + +# This is the chart version. This version number should be incremented each time you make changes +# to the chart and its templates, including the app version. +# Versions are expected to follow Semantic Versioning (https://semver.org/) +version: 0.1.0 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +# It is recommended to use it with quotes. +appVersion: "1.16.0" diff --git a/charts/didi-km/templates/NOTES.txt b/charts/didi-km/templates/NOTES.txt new file mode 100644 index 00000000..e9c3e7e8 --- /dev/null +++ b/charts/didi-km/templates/NOTES.txt @@ -0,0 +1,22 @@ +1. Get the application URL by running these commands: +{{- if .Values.ingress.enabled }} +{{- range $host := .Values.ingress.hosts }} + {{- range .paths }} + http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }} + {{- end }} +{{- end }} +{{- else if contains "NodePort" .Values.service.type }} + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "didi-km.fullname" . }}) + export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") + echo http://$NODE_IP:$NODE_PORT +{{- else if contains "LoadBalancer" .Values.service.type }} + NOTE: It may take a few minutes for the LoadBalancer IP to be available. + You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "didi-km.fullname" . }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "didi-km.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + echo http://$SERVICE_IP:{{ .Values.service.port }} +{{- else if contains "ClusterIP" .Values.service.type }} + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "didi-km.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") + echo "Visit http://127.0.0.1:8080 to use your application" + kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT +{{- end }} diff --git a/charts/didi-km/templates/_helpers.tpl b/charts/didi-km/templates/_helpers.tpl new file mode 100644 index 00000000..23314fd4 --- /dev/null +++ b/charts/didi-km/templates/_helpers.tpl @@ -0,0 +1,62 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "didi-km.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "didi-km.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "didi-km.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "didi-km.labels" -}} +helm.sh/chart: {{ include "didi-km.chart" . }} +{{ include "didi-km.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "didi-km.selectorLabels" -}} +app.kubernetes.io/name: {{ include "didi-km.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "didi-km.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "didi-km.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/charts/didi-km/templates/configmap.yaml b/charts/didi-km/templates/configmap.yaml new file mode 100644 index 00000000..3641d10d --- /dev/null +++ b/charts/didi-km/templates/configmap.yaml @@ -0,0 +1,88 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: km-cm +data: + application.yml: | + server: + port: 8080 + tomcat: + accept-count: 1000 + max-connections: 10000 + max-threads: 800 + min-spare-threads: 100 + + spring: + application: + name: kafkamanager + datasource: + kafka-manager: + jdbc-url: jdbc:mysql://xxxxx:3306/kafka-manager?characterEncoding=UTF-8&serverTimezone=GMT%2B8&useSSL=false + username: admin + password: R8yGdxN#JnPhfLr5 + driver-class-name: com.mysql.jdbc.Driver + main: + allow-bean-definition-overriding: true + + profiles: + active: dev + servlet: + multipart: + max-file-size: 100MB + max-request-size: 100MB + + logging: + config: classpath:logback-spring.xml + + custom: + idc: cn + jmx: + max-conn: 20 + store-metrics-task: + community: + broker-metrics-enabled: true + topic-metrics-enabled: true + didi: + app-topic-metrics-enabled: false + topic-request-time-metrics-enabled: false + topic-throttled-metrics: false + save-days: 7 + + # 任务相关的开关 + task: + op: + sync-topic-enabled: false # 未落盘的Topic定期同步到DB中 + + account: + ldap: + + kcm: + enabled: false + storage: + base-url: http://127.0.0.1 + n9e: + base-url: http://127.0.0.1:8004 + user-token: 12345678 + timeout: 300 + account: root + script-file: kcm_script.sh + + monitor: + enabled: false + n9e: + nid: 2 + user-token: 1234567890 + mon: + base-url: http://127.0.0.1:8032 + sink: + base-url: http://127.0.0.1:8006 + rdb: + base-url: http://127.0.0.1:80 + + notify: + kafka: + cluster-id: 95 + topic-name: didi-kafka-notify + order: + detail-url: http://127.0.0.1 + diff --git a/charts/didi-km/templates/deployment.yaml b/charts/didi-km/templates/deployment.yaml new file mode 100644 index 00000000..4754b53e --- /dev/null +++ b/charts/didi-km/templates/deployment.yaml @@ -0,0 +1,56 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "didi-km.fullname" . }} + labels: + {{- include "didi-km.labels" . | nindent 4 }} +spec: + {{- if not .Values.autoscaling.enabled }} + replicas: {{ .Values.replicaCount }} + {{- end }} + selector: + matchLabels: + {{- include "didi-km.selectorLabels" . | nindent 6 }} + template: + metadata: + {{- with .Values.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} + labels: + {{- include "didi-km.selectorLabels" . | nindent 8 }} + spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "didi-km.serviceAccountName" . }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 8 }} + containers: + - name: {{ .Chart.Name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + ports: + - name: http + containerPort: 8080 + protocol: TCP + - name: jmx-metrics + containerPort: 9999 + protocol: TCP + resources: + {{- toYaml .Values.resources | nindent 12 }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/charts/didi-km/templates/hpa.yaml b/charts/didi-km/templates/hpa.yaml new file mode 100644 index 00000000..209d7ae4 --- /dev/null +++ b/charts/didi-km/templates/hpa.yaml @@ -0,0 +1,28 @@ +{{- if .Values.autoscaling.enabled }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: {{ include "didi-km.fullname" . }} + labels: + {{- include "didi-km.labels" . | nindent 4 }} +spec: + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: {{ include "didi-km.fullname" . }} + minReplicas: {{ .Values.autoscaling.minReplicas }} + maxReplicas: {{ .Values.autoscaling.maxReplicas }} + metrics: + {{- if .Values.autoscaling.targetCPUUtilizationPercentage }} + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.autoscaling.targetCPUUtilizationPercentage }} + {{- end }} + {{- if .Values.autoscaling.targetMemoryUtilizationPercentage }} + - type: Resource + resource: + name: memory + targetAverageUtilization: {{ .Values.autoscaling.targetMemoryUtilizationPercentage }} + {{- end }} +{{- end }} diff --git a/charts/didi-km/templates/ingress.yaml b/charts/didi-km/templates/ingress.yaml new file mode 100644 index 00000000..47aec7f2 --- /dev/null +++ b/charts/didi-km/templates/ingress.yaml @@ -0,0 +1,41 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "didi-km.fullname" . -}} +{{- $svcPort := .Values.service.port -}} +{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1beta1 +{{- else -}} +apiVersion: extensions/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }} + labels: + {{- include "didi-km.labels" . | nindent 4 }} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{- if .Values.ingress.tls }} + tls: + {{- range .Values.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} + {{- end }} + rules: + {{- range .Values.ingress.hosts }} + - host: {{ .host | quote }} + http: + paths: + {{- range .paths }} + - path: {{ .path }} + backend: + serviceName: {{ $fullName }} + servicePort: {{ $svcPort }} + {{- end }} + {{- end }} + {{- end }} diff --git a/charts/didi-km/templates/service.yaml b/charts/didi-km/templates/service.yaml new file mode 100644 index 00000000..7fcbc5ba --- /dev/null +++ b/charts/didi-km/templates/service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "didi-km.fullname" . }} + labels: + {{- include "didi-km.labels" . | nindent 4 }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.service.port }} + targetPort: http + protocol: TCP + name: http + selector: + {{- include "didi-km.selectorLabels" . | nindent 4 }} diff --git a/charts/didi-km/templates/serviceaccount.yaml b/charts/didi-km/templates/serviceaccount.yaml new file mode 100644 index 00000000..4f2676ee --- /dev/null +++ b/charts/didi-km/templates/serviceaccount.yaml @@ -0,0 +1,12 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "didi-km.serviceAccountName" . }} + labels: + {{- include "didi-km.labels" . | nindent 4 }} + {{- with .Values.serviceAccount.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} diff --git a/charts/didi-km/templates/tests/test-connection.yaml b/charts/didi-km/templates/tests/test-connection.yaml new file mode 100644 index 00000000..b5b41d4f --- /dev/null +++ b/charts/didi-km/templates/tests/test-connection.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ include "didi-km.fullname" . }}-test-connection" + labels: + {{- include "didi-km.labels" . | nindent 4 }} + annotations: + "helm.sh/hook": test +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['{{ include "didi-km.fullname" . }}:{{ .Values.service.port }}'] + restartPolicy: Never diff --git a/charts/didi-km/values.yaml b/charts/didi-km/values.yaml new file mode 100644 index 00000000..a5f49e40 --- /dev/null +++ b/charts/didi-km/values.yaml @@ -0,0 +1,79 @@ +# Default values for didi-km. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: docker.io/yangvipguang/km + pullPolicy: IfNotPresent + # Overrides the image tag whose default is the chart appVersion. + tag: "v18" + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "km" + +serviceAccount: + # Specifies whether a service account should be created + create: true + # Annotations to add to the service account + annotations: {} + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: "" + +podAnnotations: {} + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 8080 + +ingress: + enabled: false + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: [] + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + limits: + cpu: 50m + memory: 2048Mi + requests: + cpu: 10m + memory: 200Mi + +autoscaling: + enabled: false + minReplicas: 1 + maxReplicas: 100 + targetCPUUtilizationPercentage: 80 + # targetMemoryUtilizationPercentage: 80 + +nodeSelector: {} + +tolerations: [] + +affinity: {} diff --git a/docker-depends/agent/config/agent.config b/docker-depends/agent/config/agent.config new file mode 100644 index 00000000..9236a4ff --- /dev/null +++ b/docker-depends/agent/config/agent.config @@ -0,0 +1,108 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# The agent namespace +# agent.namespace=${SW_AGENT_NAMESPACE:default-namespace} + +# The service name in UI +agent.service_name=${SW_AGENT_NAME:crm-rest-new} + +# The number of sampled traces per 3 seconds +# Negative or zero means off, by default +# agent.sample_n_per_3_secs=${SW_AGENT_SAMPLE:-1} + +# Authentication active is based on backend setting, see application.yml for more details. +# agent.authentication = ${SW_AGENT_AUTHENTICATION:xxxx} + +# The max amount of spans in a single segment. +# Through this config item, SkyWalking keep your application memory cost estimated. +# agent.span_limit_per_segment=${SW_AGENT_SPAN_LIMIT:150} + +# Ignore the segments if their operation names end with these suffix. +# agent.ignore_suffix=${SW_AGENT_IGNORE_SUFFIX:.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg} + +# If true, SkyWalking agent will save all instrumented classes files in `/debugging` folder. +# SkyWalking team may ask for these files in order to resolve compatible problem. +# agent.is_open_debugging_class = ${SW_AGENT_OPEN_DEBUG:true} + +# If true, SkyWalking agent will cache all instrumented classes files to memory or disk files (decided by class cache mode), +# allow other javaagent to enhance those classes that enhanced by SkyWalking agent. +# agent.is_cache_enhanced_class = ${SW_AGENT_CACHE_CLASS:false} + +# The instrumented classes cache mode: MEMORY or FILE +# MEMORY: cache class bytes to memory, if instrumented classes is too many or too large, it may take up more memory +# FILE: cache class bytes in `/class-cache` folder, automatically clean up cached class files when the application exits +# agent.class_cache_mode = ${SW_AGENT_CLASS_CACHE_MODE:MEMORY} + +# The operationName max length +# Notice, in the current practice, we don't recommend the length over 190. +# agent.operation_name_threshold=${SW_AGENT_OPERATION_NAME_THRESHOLD:150} + +# If true, skywalking agent will enable profile when user create a new profile task. Otherwise disable profile. +# profile.active=${SW_AGENT_PROFILE_ACTIVE:true} + +# Parallel monitor segment count +# profile.max_parallel=${SW_AGENT_PROFILE_MAX_PARALLEL:5} + +# Max monitor segment time(minutes), if current segment monitor time out of limit, then stop it. +# profile.duration=${SW_AGENT_PROFILE_DURATION:10} + +# Max dump thread stack depth +# profile.dump_max_stack_depth=${SW_AGENT_PROFILE_DUMP_MAX_STACK_DEPTH:500} + +# Snapshot transport to backend buffer size +# profile.snapshot_transport_buffer_size=${SW_AGENT_PROFILE_SNAPSHOT_TRANSPORT_BUFFER_SIZE:50} + +# Backend service addresses. +collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:skywalking-oap.monitoring:11800} + +# Logging file_name +logging.file_name=${SW_LOGGING_FILE_NAME:skywalking-api.log} + +# Logging level +logging.level=${SW_LOGGING_LEVEL:INFO} + +# Logging dir +# logging.dir=${SW_LOGGING_DIR:""} + +# Logging max_file_size, default: 300 * 1024 * 1024 = 314572800 +# logging.max_file_size=${SW_LOGGING_MAX_FILE_SIZE:314572800} + +# The max history log files. When rollover happened, if log files exceed this number, +# then the oldest file will be delete. Negative or zero means off, by default. +# logging.max_history_files=${SW_LOGGING_MAX_HISTORY_FILES:-1} + +# Listed exceptions would not be treated as an error. Because in some codes, the exception is being used as a way of controlling business flow. +# Besides, the annotation named IgnoredException in the trace toolkit is another way to configure ignored exceptions. +# statuscheck.ignored_exceptions=${SW_STATUSCHECK_IGNORED_EXCEPTIONS:} + +# The max recursive depth when checking the exception traced by the agent. Typically, we don't recommend setting this more than 10, which could cause a performance issue. Negative value and 0 would be ignored, which means all exceptions would make the span tagged in error status. +# statuscheck.max_recursive_depth=${SW_STATUSCHECK_MAX_RECURSIVE_DEPTH:1} + +# Mount the specific folders of the plugins. Plugins in mounted folders would work. +plugin.mount=${SW_MOUNT_FOLDERS:plugins,activations} + +# Exclude activated plugins +# plugin.exclude_plugins=${SW_EXCLUDE_PLUGINS:} + +# mysql plugin configuration +# plugin.mysql.trace_sql_parameters=${SW_MYSQL_TRACE_SQL_PARAMETERS:false} + +# Kafka producer configuration +# plugin.kafka.bootstrap_servers=${SW_KAFKA_BOOTSTRAP_SERVERS:localhost:9092} + +# Match spring bean with regex expression for classname +# plugin.springannotation.classname_match_regex=${SW_SPRINGANNOTATION_CLASSNAME_MATCH_REGEX:} diff --git a/docker-depends/config.yaml b/docker-depends/config.yaml new file mode 100644 index 00000000..d4b7b547 --- /dev/null +++ b/docker-depends/config.yaml @@ -0,0 +1,5 @@ +--- + startDelaySeconds: 0 + ssl: false + lowercaseOutputName: false + lowercaseOutputLabelNames: false diff --git a/docker-depends/settings b/docker-depends/settings new file mode 100644 index 00000000..8254140a --- /dev/null +++ b/docker-depends/settings @@ -0,0 +1,21 @@ + + /usr/share/maven/ref/repository + + + + aliyun-nexus + * + http://maven.aliyun.com/nexus/content/groups/public/ + + + + aliyun-nexus-public-snapshots + public-snapshots + http://maven.aliyun.com/nexus/content/repositories/snapshots/ + + + diff --git a/docker-depends/sources.list b/docker-depends/sources.list new file mode 100644 index 00000000..8bde27f9 --- /dev/null +++ b/docker-depends/sources.list @@ -0,0 +1,3 @@ +deb http://mirrors.aliyun.com/debian/ jessie main +deb http://mirrors.aliyun.com/debian/ jessie-updates main +deb http://mirrors.aliyun.com/debian-security/ jessie/updates main From a950be2d95a3709e8962a572b032e06c57e116bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=85=89?= Date: Wed, 20 Jan 2021 17:57:14 +0800 Subject: [PATCH 02/48] change password --- charts/didi-km/templates/configmap.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/didi-km/templates/configmap.yaml b/charts/didi-km/templates/configmap.yaml index 3641d10d..ffc75ec5 100644 --- a/charts/didi-km/templates/configmap.yaml +++ b/charts/didi-km/templates/configmap.yaml @@ -19,7 +19,7 @@ data: kafka-manager: jdbc-url: jdbc:mysql://xxxxx:3306/kafka-manager?characterEncoding=UTF-8&serverTimezone=GMT%2B8&useSSL=false username: admin - password: R8yGdxN#JnPhfLr5 + password: admin driver-class-name: com.mysql.jdbc.Driver main: allow-bean-definition-overriding: true From 4e0114ab0d1450177c037cf6e636f0f985dfcc20 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Mon, 25 Jan 2021 13:24:01 +0800 Subject: [PATCH 03/48] Update alarm_rules.md --- docs/user_guide/alarm_rules.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user_guide/alarm_rules.md b/docs/user_guide/alarm_rules.md index f4356790..57cba628 100644 --- a/docs/user_guide/alarm_rules.md +++ b/docs/user_guide/alarm_rules.md @@ -1,4 +1,4 @@ -![kafka-manager-logo](../assets/images/common/logo_name.png)) +![kafka-manager-logo](../assets/images/common/logo_name.png) **一站式`Apache Kafka`集群指标监控与运维管控平台** From 1adc8af543bc2a42a7757f3706b5edcc49338c66 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Mon, 25 Jan 2021 19:27:31 +0800 Subject: [PATCH 04/48] Create resource_apply.md --- .../resource_apply/resource_apply.md | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 docs/user_guide/resource_apply/resource_apply.md diff --git a/docs/user_guide/resource_apply/resource_apply.md b/docs/user_guide/resource_apply/resource_apply.md new file mode 100644 index 00000000..427d8b14 --- /dev/null +++ b/docs/user_guide/resource_apply/resource_apply.md @@ -0,0 +1,32 @@ + +--- + +![kafka-manager-logo](../assets/images/common/logo_name.png) + +**一站式`Apache Kafka`集群指标监控与运维管控平台** + +--- + + +# 资源申请文档 + +## 主要名词解释 + +- 应用(App):作为Kafka中的账户,使用AppID+password作为身份标识 +- 集群:可使用平台提供的共享集群,也可为某一应用申请单独的集群 +- Topic:可申请创建Topic或申请其他Topic的生产/消费权限。进行生产/消费时通过Topic+AppID进行身份鉴权 +![production_consumption_flow](/production_consumption_flow.png) + +## 应用申请 +应用(App)作为Kafka中的账户,使用AppID+password作为身份标识。对Topic进行生产/消费时通过Topic+AppID进行身份鉴权。 + +用户申请应用,经由运维人员审批,审批通过后获得AppID和密钥 + +## 集群申请 +可使用平台提供的共享集群,若对隔离性、稳定性、生产消费速率有更高的需求,可对某一应用申请单独的集群 + +## Topic申请 +- 用户可根据已申请的应用创建Topic。创建后,应用负责人默认拥有该Topic的生产/消费权限和管理权限 +- 也可申请其他Topic的生产、消费权限。经由Topic所属应用的负责人审批后,即可拥有相应权限。 + + From ae18ff426277a522f8d3bd5ac85b022b53124ec5 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Tue, 26 Jan 2021 16:15:08 +0800 Subject: [PATCH 05/48] optimize login failed message --- .../kafka/manager/account/AccountService.java | 3 +- .../kafka/manager/account/LoginService.java | 3 +- .../component/AbstractSingleSignOn.java | 3 +- .../account/BaseEnterpriseStaffService.java | 9 +++- .../component/sso/BaseSessionSignOn.java | 18 ++++--- .../account/impl/AccountServiceImpl.java | 12 +++-- .../account/impl/LoginServiceImpl.java | 13 ++--- .../web/api/versionone/LoginController.java | 48 ++++--------------- .../versionone/rd/RdAccountController.java | 2 +- .../manager/web/config/SwaggerConfig.java | 6 +-- 10 files changed, 53 insertions(+), 64 deletions(-) diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/AccountService.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/AccountService.java index bb845932..8b208385 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/AccountService.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/AccountService.java @@ -2,6 +2,7 @@ package com.xiaojukeji.kafka.manager.account; import com.xiaojukeji.kafka.manager.account.common.EnterpriseStaff; import com.xiaojukeji.kafka.manager.common.bizenum.AccountRoleEnum; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.ao.account.Account; import com.xiaojukeji.kafka.manager.common.entity.pojo.AccountDO; @@ -25,7 +26,7 @@ public interface AccountService { * @param username 用户名 * @return */ - AccountDO getAccountDO(String username); + Result getAccountDO(String username); /** * 删除用户 diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/LoginService.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/LoginService.java index 0a061737..98e8bab1 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/LoginService.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/LoginService.java @@ -1,5 +1,6 @@ package com.xiaojukeji.kafka.manager.account; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ao.account.Account; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.LoginDTO; @@ -11,7 +12,7 @@ import javax.servlet.http.HttpServletResponse; * @date 20/8/20 */ public interface LoginService { - Account login(HttpServletRequest request, HttpServletResponse response, LoginDTO dto); + Result login(HttpServletRequest request, HttpServletResponse response, LoginDTO dto); void logout(HttpServletRequest request, HttpServletResponse response, Boolean needJump2LoginPage); diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/AbstractSingleSignOn.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/AbstractSingleSignOn.java index d5528f0b..d6257364 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/AbstractSingleSignOn.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/AbstractSingleSignOn.java @@ -1,5 +1,6 @@ package com.xiaojukeji.kafka.manager.account.component; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.LoginDTO; import javax.servlet.http.HttpServletRequest; @@ -18,7 +19,7 @@ public abstract class AbstractSingleSignOn { protected static final String HEADER_REDIRECT_KEY = "location"; - public abstract String loginAndGetLdap(HttpServletRequest request, HttpServletResponse response, LoginDTO dto); + public abstract Result loginAndGetLdap(HttpServletRequest request, HttpServletResponse response, LoginDTO dto); public abstract void logout(HttpServletRequest request, HttpServletResponse response, Boolean needJump2LoginPage); diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/account/BaseEnterpriseStaffService.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/account/BaseEnterpriseStaffService.java index b931eecd..2eef7774 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/account/BaseEnterpriseStaffService.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/account/BaseEnterpriseStaffService.java @@ -41,7 +41,14 @@ public class BaseEnterpriseStaffService extends AbstractEnterpriseStaffService { @Override public List searchEnterpriseStaffByKeyWord(String keyWord) { try { - List doList = accountDao.searchByNamePrefix(keyWord); + List doList = null; + if (ValidateUtils.isBlank(keyWord)) { + // 当用户没有任何输入的时候, 返回全部的用户 + doList = accountDao.list(); + } else { + doList = accountDao.searchByNamePrefix(keyWord); + } + if (ValidateUtils.isEmptyList(doList)) { return new ArrayList<>(); } diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/sso/BaseSessionSignOn.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/sso/BaseSessionSignOn.java index 1e2dbb97..89be275b 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/sso/BaseSessionSignOn.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/component/sso/BaseSessionSignOn.java @@ -3,6 +3,7 @@ package com.xiaojukeji.kafka.manager.account.component.sso; import com.xiaojukeji.kafka.manager.account.AccountService; import com.xiaojukeji.kafka.manager.account.component.AbstractSingleSignOn; import com.xiaojukeji.kafka.manager.common.constant.LoginConstant; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.LoginDTO; import com.xiaojukeji.kafka.manager.common.entity.pojo.AccountDO; import com.xiaojukeji.kafka.manager.common.utils.EncryptUtil; @@ -23,18 +24,21 @@ public class BaseSessionSignOn extends AbstractSingleSignOn { private AccountService accountService; @Override - public String loginAndGetLdap(HttpServletRequest request, HttpServletResponse response, LoginDTO dto) { + public Result loginAndGetLdap(HttpServletRequest request, HttpServletResponse response, LoginDTO dto) { if (ValidateUtils.isBlank(dto.getUsername()) || ValidateUtils.isNull(dto.getPassword())) { return null; } - AccountDO accountDO = accountService.getAccountDO(dto.getUsername()); - if (ValidateUtils.isNull(accountDO)) { - return null; + Result accountResult = accountService.getAccountDO(dto.getUsername()); + if (ValidateUtils.isNull(accountResult) || accountResult.failed()) { + return new Result<>(accountResult.getCode(), accountResult.getMessage()); } - if (!accountDO.getPassword().equals(EncryptUtil.md5(dto.getPassword()))) { - return null; + if (ValidateUtils.isNull(accountResult.getData())) { + return Result.buildFailure("username illegal"); } - return dto.getUsername(); + if (!accountResult.getData().getPassword().equals(EncryptUtil.md5(dto.getPassword()))) { + return Result.buildFailure("password illegal"); + } + return Result.buildSuc(accountResult.getData().getUsername()); } @Override diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/AccountServiceImpl.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/AccountServiceImpl.java index b03cd195..39d773ed 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/AccountServiceImpl.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/AccountServiceImpl.java @@ -7,6 +7,7 @@ import com.xiaojukeji.kafka.manager.account.common.EnterpriseStaff; import com.xiaojukeji.kafka.manager.account.component.AbstractEnterpriseStaffService; import com.xiaojukeji.kafka.manager.common.bizenum.AccountRoleEnum; import com.xiaojukeji.kafka.manager.common.constant.Constant; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.ao.account.Account; import com.xiaojukeji.kafka.manager.common.entity.pojo.AccountDO; @@ -101,7 +102,7 @@ public class AccountServiceImpl implements AccountService { return ResultStatus.ACCOUNT_NOT_EXIST; } - if (!ValidateUtils.isNull(accountDO.getPassword())) { + if (!ValidateUtils.isBlank(accountDO.getPassword())) { accountDO.setPassword(EncryptUtil.md5(accountDO.getPassword())); } else { accountDO.setPassword(oldAccountDO.getPassword()); @@ -117,8 +118,13 @@ public class AccountServiceImpl implements AccountService { } @Override - public AccountDO getAccountDO(String username) { - return accountDao.getByName(username); + public Result getAccountDO(String username) { + try { + return Result.buildSuc(accountDao.getByName(username)); + } catch (Exception e) { + LOGGER.warn("class=AccountServiceImpl||method=getAccountDO||username={}||errMsg={}||msg=get account fail", username, e.getMessage()); + } + return Result.buildFrom(ResultStatus.MYSQL_ERROR); } @Override diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/LoginServiceImpl.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/LoginServiceImpl.java index d6acb2f1..142dd239 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/LoginServiceImpl.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/LoginServiceImpl.java @@ -6,6 +6,7 @@ import com.xiaojukeji.kafka.manager.account.LoginService; import com.xiaojukeji.kafka.manager.common.bizenum.AccountRoleEnum; import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.common.constant.LoginConstant; +import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ao.account.Account; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.LoginDTO; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; @@ -34,15 +35,15 @@ public class LoginServiceImpl implements LoginService { private AbstractSingleSignOn singleSignOn; @Override - public Account login(HttpServletRequest request, HttpServletResponse response, LoginDTO loginDTO) { - String username = singleSignOn.loginAndGetLdap(request, response, loginDTO); - if (ValidateUtils.isBlank(username)) { + public Result login(HttpServletRequest request, HttpServletResponse response, LoginDTO loginDTO) { + Result userResult = singleSignOn.loginAndGetLdap(request, response, loginDTO); + if (ValidateUtils.isNull(userResult) || userResult.failed()) { logout(request, response, false); - return null; + return new Result<>(userResult.getCode(), userResult.getMessage()); } - Account account = accountService.getAccountFromCache(username); + Account account = accountService.getAccountFromCache(userResult.getData()); initLoginContext(request, response, account); - return account; + return Result.buildSuc(account); } private void initLoginContext(HttpServletRequest request, HttpServletResponse response, Account account) { diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/LoginController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/LoginController.java index 06ef70a6..462b46a6 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/LoginController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/LoginController.java @@ -1,8 +1,6 @@ package com.xiaojukeji.kafka.manager.web.api.versionone; -import com.xiaojukeji.kafka.manager.common.constant.Constant; import com.xiaojukeji.kafka.manager.common.entity.Result; -import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.ao.account.Account; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.LoginDTO; import com.xiaojukeji.kafka.manager.common.entity.vo.common.AccountVO; @@ -11,8 +9,6 @@ import com.xiaojukeji.kafka.manager.account.LoginService; import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -28,26 +24,22 @@ import javax.servlet.http.HttpServletResponse; @RestController @RequestMapping(ApiPrefix.API_V1_SSO_PREFIX) public class LoginController { - private static final Logger LOGGER = LoggerFactory.getLogger(LoginController.class); - @Autowired private LoginService loginService; @ApiOperation(value = "登陆", notes = "") @RequestMapping(value = "login", method = RequestMethod.POST) @ResponseBody - public Result login(HttpServletRequest request, - HttpServletResponse response, - @RequestBody LoginDTO dto){ - Account account = loginService.login(request, response, dto); - if (ValidateUtils.isNull(account)) { - return Result.buildFrom(ResultStatus.LOGIN_FAILED); + public Result login(HttpServletRequest request, HttpServletResponse response, @RequestBody LoginDTO dto){ + Result accountResult = loginService.login(request, response, dto); + if (ValidateUtils.isNull(accountResult) || accountResult.failed()) { + return new Result<>(accountResult.getCode(), accountResult.getMessage()); } AccountVO vo = new AccountVO(); - vo.setUsername(account.getUsername()); - vo.setChineseName(account.getChineseName()); - vo.setDepartment(account.getDepartment()); - vo.setRole(account.getAccountRoleEnum().getRole()); + vo.setUsername(accountResult.getData().getUsername()); + vo.setChineseName(accountResult.getData().getChineseName()); + vo.setDepartment(accountResult.getData().getDepartment()); + vo.setRole(accountResult.getData().getAccountRoleEnum().getRole()); return new Result<>(vo); } @@ -58,28 +50,4 @@ public class LoginController { loginService.logout(request, response, true); return new Result(); } - - @Deprecated - @ApiOperation(value = "登录检查", notes = "检查SSO返回的Code") - @RequestMapping(value = "xiaojukeji/login-check", method = RequestMethod.POST) - @ResponseBody - public Result checkCodeAndGetStaffInfo(HttpServletRequest request, - HttpServletResponse response, - @RequestBody LoginDTO dto) { - Result ra = login(request, response, dto); - if (!Constant.SUCCESS.equals(ra.getCode())) { - LOGGER.info("user login failed, req:{} result:{}.", dto, ra); - } else { - LOGGER.info("user login success, req:{} result:{}.", dto, ra); - } - return ra; - } - - @Deprecated - @ApiOperation(value = "登出", notes = "") - @RequestMapping(value = "xiaojukeji/logout", method = RequestMethod.DELETE) - @ResponseBody - public Result logout(HttpServletRequest request, HttpServletResponse response) { - return logoff(request, response); - } } diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdAccountController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdAccountController.java index 1df3dce6..5efbbfce 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdAccountController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdAccountController.java @@ -35,7 +35,7 @@ public class RdAccountController { @RequestMapping(value = "accounts", method = RequestMethod.POST) @ResponseBody public Result addAccount(@RequestBody AccountDTO dto) { - if (!dto.legal() || ValidateUtils.isNull(dto.getPassword())) { + if (!dto.legal() || ValidateUtils.isBlank(dto.getPassword())) { return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); } ResultStatus rs = accountService.createAccount(AccountConverter.convert2AccountDO(dto)); diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/config/SwaggerConfig.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/config/SwaggerConfig.java index 209d15b5..91d0080c 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/config/SwaggerConfig.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/config/SwaggerConfig.java @@ -39,10 +39,10 @@ public class SwaggerConfig implements WebMvcConfigurer { private ApiInfo apiInfo() { return new ApiInfoBuilder() - .title("Kafka云平台-接口文档") - .description("欢迎使用滴滴出行开源kafka-manager") + .title("Logi-KafkaManager 接口文档") + .description("欢迎使用滴滴Logi-KafkaManager") .contact("huangyiminghappy@163.com") - .version("2.0") + .version("2.2.0") .build(); } From 73e6afcbc64a4a710ec4f2fbd56ef9daadefcd7f Mon Sep 17 00:00:00 2001 From: zengqiao Date: Wed, 27 Jan 2021 16:01:18 +0800 Subject: [PATCH 06/48] add connect jmx failed desc --- .../connect_jmx_failed/check_jmx_opened.jpg | Bin 0 -> 390896 bytes docs/dev_guide/connect_jmx_failed.md | 101 ++++++++++++++++++ docs/user_guide/faq.md | 12 ++- 3 files changed, 111 insertions(+), 2 deletions(-) create mode 100644 docs/dev_guide/assets/connect_jmx_failed/check_jmx_opened.jpg create mode 100644 docs/dev_guide/connect_jmx_failed.md diff --git a/docs/dev_guide/assets/connect_jmx_failed/check_jmx_opened.jpg b/docs/dev_guide/assets/connect_jmx_failed/check_jmx_opened.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1890983c9048f149fd901328e7131c8030043e2a GIT binary patch literal 390896 zcmeFa2UHZ#6EHZi4bT>0)UYbAPN8g89+q90T6=_NCK!6aQ+4B5{LkhA9z9lNbmrNe$iY2 zug3{2?MI%USHh=+zbUBRKZX2;Npz1%@#}!nMR(sI-#~X?KVDf$X+Y_Wff3PhiD3Ex z3;qDtYOYX<7er}479cFFPa+b8l2bpp$IL;!O!m+AsqmC`ve7; z>Yd@Ww6f+UT>zz_0jL34K)}H%&`;~)#q-By{=WVw|F6^D$Pd|p&l1OF{e}J?0~nlL z0-ZqRuYlx^&Vf$eAlwW9M30^P0)ha5||r7-IG-FVW?ofJ?`C zP);IOzo3i9bqLBy6yfP`?ji_-@(`r~=K*ctEWir{gNGyF3wQz^eQULA;N8zBx_|=^ z0Js4zfW$A%?;I9Cp7?-gGav$32Yf)9z`ydH`SH{R2m$d&e_?;-l>l6SJPrAg!wXmh zId}txz%}qb7=&HGJiobJ2IfJG$6xoqxjTSmI)Usfeh~z*%T0|NkXL%5-{Y%5+ zTKU}~|J3O(4S>H};};#dG&vzTE4e1Q$baUf5v7s;t?!Sz{%1}8l-2RC`u;7!|DONf zPdor;P)@_YTH}`lklT<-NEf69(gSIL)B?N^1mrE`1Eld7{>5MSN9(%%#m)4GJYHbC zc>G24Ti@drKjwMdKLVx8q*tV|KT8R62@3-IGobD37ari@<{reW1nd60_?#4>JIkv03Z~I z1Y&`BAQ_yE?*lnN9#9CB0_DIPpcZHVT7XWV7x)AW0~28HSpZf66tD*z5)crO5>OK` z60j3M2?Pnm2xJJ92-FF52+k9j5?B#jC2%9~AqXajB)CD4Oprm4Ly%AKoZvOVJAxL1 z9)baaF#;sP3c(h^0U?Btijawrn^1^QicpDAi_nnp5}_@j8=*g81mR7>6v79D1%xjN zYY1BidkKdLX9!mbcOd|T62byG0g-?xL9`*p5Nn7lBmfc(NrGfS3Lq7bIR)+aJ2aw764iYB^4ltWZXR72EG^qB}rgd)NbQxkI$ixHnDHXybn zb|VfYjwj9{enwnP+yTBz3&eXQBqS^(!X%2|yJ$t?NphX!4#^V|I7u_f0LdK5E-5J~ zJE<6{8mTd<18ERxJn2Kym!t^NLDB_M3>hUEluU+9m&}^Xhb)dPi|hqi6WJiy64@a+ z9l0R+X>wz7XYz3JRPrM7I`V$<1@c1*dJ16*HHu3Vo)obZ4=5@qIw-zUY*SKF@=+>N znoxRB#!x<>d_~z!iKP5a#Xu!WrA>8(DwryTs)VYUYK&@|nwnaOT9ewEI*2-j`Z;wQ z^%OORhLJ{+#(>6|21fIUriNyaW`mZTR*+VU){ZuUHjB2Bwx4#5j+{=2PMgkwE}HHU z-8;Hbx?Ork`cw4A^xpJ$=wHzH&@VHPG6*r~FgP>ZWGG~4W0+%vF!D2MGdeNeU@T(n zU|e7#VG?FCVDe;2W-4duV?r@AFv~GtW)5S1#N5a{!vbLuVliO3#*)hNhGm51fR&q7 zi`9iSk+p(#kaeGplTDM&g)NB<&Nj?;z|PCA!|uhN&R)wt$w9;+%3;D0%8|>_!Li24 z#HqsR#F@nThI5>YkV}-yl>pB#e0qS0dG4m>IByb{S(0_@=x@gIOG%NGv|xrgY!-DQ}8SCyYk=T zZ{#s$d*l?2@dvjw{Z_l1OoEQAt-YK4}C*@O**BZSL@zluFBldP58kP?uxmP(iElEO*LOJ9>NlAbulaO&KtxKnkfwq!(QoMax!49QZ< z>dL}o-^!xp#N=G$a^=3rGs+vuC&;(TA1Np*1SnJ}tSAa7UR8XoII6^?bW!P!Qnxa( z@)>2Aa)a{s(+a19PQN+5sUo4`rSd{$SyfooMYTwEPK{5^K`mcxMx9svs`^v)8I2Pf z4jKg-vzq*x&YI6Om$Xi5d1}4X+BhS9Cg4oB;L|*K5`%);H8o*B>?DHgGa{Zh$(ccrNN(yCIdKnPHCM?0M1i0q5(C z2#wAeWg30GAb7#&Lai}iY+#&eJb6+0qW{Hu6B3h)CXY-OO;4Fdns%8nn%SGZFx$Iy z=2GgV33CziVDr|?w3n}3etvo1;;co6#f+ttWt3&F6^E6F)mv*)>&w>9taoj6Z0_4E zT#>&Le`Um0*fz|z$Bx79nq8wkt-XVNU-vS?t2+~m3ZN=SzLpA zlX+kDe&@sB&!MDcZ^>rU5OBTq!eMk1rMqVl5&q8+1KVf?V0 zu!R`Cn9^8^Sg+WRanf-aaXU9GZq(i6z8Q0K?v~!IvUr;KfcVh_m4v+8M7KR|_a(|E zK1{?VIVZhOmQKz}#@=zd^ZxFsyAST-Q(RN}QWa8j(@4^M(niuX(n~YwGa@qPGL158 z?(yDBy0>%R{(euETvlE-MRsuZ%!Bg}-aZs~nD!8xNgGG~H~%BO(yH&3?^m zEp9Dyt@f=GZI*3A?I!Jg9flpOO_OntsLpx1W?h)eWc)G!1GDwtPPOxpT;1sCW3n@W6=q$d}P8qcdNezbubk8$*wW zj2}+Kd?o&xG)Xs^HN`bmFnw|wKBF+xh&+q@Fl#nDG3PY5Iv+TXUAVbOy_mHGU3$JO zv)r(vyYlIq&9{YBztzLF_;vdA#~UIWRhycdA5fO41#|!!zjbGueY<2wZl`tk;_lR* z_uk=t5{4a9`d#UJ*MY^s(qSl;6#L-l`~=z$Ha~sA9~1;X{Z|ks_;nnk{{#N%FCIStZ3v(Oyd0bH+RXs)3Os~jz_P*P z*o42N2@uN4{&j$u;}qyBEAs;&pb7v@6AT`|%?$vgbpUV_fX5#`!Q+pLK!0Kk0Gj=O z`k=?uBy<4qRPz`bW^;}?zWy`)^iM&|Zyo>h3TiGZD|ejbUsrrHKu<=ZOZ6T?zy}c0 z6F}$*@a+H;)R`DGXu$NF2>~I5h?s>V@@eg} zI=XuL2ItH!nP0X5O*toL7gslT56{4$;E>R;@Q52XZ^b9vPE5+kymvn<`@zGUg2JNW zXCw9Ft-YhOtGnm@;OC*?k}C9sC*jWMavf&ZOtR zZXxHFHAOKy1`JTJ2*@D?(Z{O&(CmLqvAF+Bn*F8N-+E1eW;fxF1R*4Z5JMmkViIC7 zk&uB_8VLy*1=){8@hegNNHoWZ_OFBo3n2i@AR;0n1^>}el2g+CPbd5&7@+!y9|x!) z1Yl=^&;uI4(HI`MY1oDbwpZ{#Ius8i72@cnXz@UQ2~HgkV9kRrRc*9(DdPdM>;ycp z^cfF8VK~vuUqo=+S@5pzoXDbs)8qg1l5B6K1pd2tVJx2=$TiO%d;15sdnO0TfqB6!t;Q`Ex<>&78lw3>yMjB(zHh{G1i0|~rG%F&75C6&SSkBa6Bzc%aJb*SI zFdYbCQSSd2@=_iuF${)_f^G31lMI^Z$^Mhm4pK3o^1|C`1ZkC{CVqCm;u$Q73b+!KR^4!f88KCwig8 zy%P5}eNO~)7CM%cZYaYO5#T~L^oZC8v5C!_vuDrqzbP$$l>BTe`|DvJ=S=vb63mw) z>Gb%>yMrJyAFb|U_=j#)``JgKv@GSp>0ds~N1q*i>Ym3H>05N)pv0zI57k{Lj3d4? znir2|r55&l<&QNsW<~l)itfBP84X>GTG9ziz0sr;7TA71D<=dQ#S-YwAhotT$9q1xX^nKh*^OApRHE zhuC()Ufj`ZRRbi9`I{XC6G}w3M>}s2IrlM81S+kgA<{A@EWfz;u$qfo!^3I?Q@N_7 z68HN1#z~|fy-{(<#2Z7eTAYR3@_r*bGsYPYaKk)=o%p>X5FY~DeMr^wB)~;%%Kp8y z&GK(}V81;NX@3gWH~>x?riZDch}kRtcwmQJZxc2jy*zJ{ZhvbU)qwDzJ)r(cjWvRz z8t?#!pz-{X9Ym~7Lci}yy@jDAE%Cqsb>Ti@OCu;iq#NG4iLrxKB^;6L!VYJRQH40x zy!8{)Hp6&eGf|^8b$25bdyxHA3X?4kJ0cl4oc<22Q)Y6uK!#$aq{g*zHzE*6Xkk3S zsE3u(IKI#MeSfg8hl?`YfMN}^G;lZEk2bNXlUzwMVyOBbEbxF`dwAv_6ddsa25aQxW;unz`w7@cP9xe`I8;&ldlCHXcE8!6dK5I+#vVvU((nu zgPSp)N44UC#DFe5@W~t62rl6t7N+a!M6<$Lw~mT5mKDqJz%&C4EeC7eKE7A}>mD8i zTN-Kt_YkzdbHW453aL}zR)V7eaA0U7!>Qp0Mp9~x%D+8wR7rivd2jBpC7bPF6kLd{ z+*}VY51VMG!zgxLMimbYypI1SmH8oP$xHZrdS>V8po*`gY{;_VOOLPEjIRbRVX~WF zPDr&Hb5f+0k%{%Df6G{Py^pj04lQ6ZrxaU;^V1|Km+kH*%*N_4T_n&ElmM7abO0t( z(@z9{5dUx0hrT{UxR`lnnmJnNE{VdxPQu3tLhc0A=>5k_On!1aeDwp->iRnYFDoi! z-W2M9?=GYY?bhB1X>BRYGLdLrzJb*V<9Ur3tOiig}lK7gKxc-c#C5E!M#GeWy_m)zG6=g!B(rYarfKomF|9F>tE1> z;s<^j3JgisA`r=K>p{8is*hH?pJrB!UZoK&!3y$lfy2r@=swD#6T$QBVf2ZfdqC7FL=&n^|uRfY4D@~?-6bFP)e zp6V1iVw7(yxNQx{T5hxR+(+wN7jDrn98z`RE=O%6gRT|M--unYTbVOv3NveqC|KsW z98;HDa7k9cBkk$IY{QihZr3#2r!sk?NQKIX?>u|>1j7*UKm2U3*S!DrgG!%Dt+1SiIQf&70K)q;WKChAILL&u<-U;6s?^F$?#oa=snNpY07 zJ;M26!>PBy)=>GeypLD3GA{L^C2twk8rOkMCN`?7d2Ih2x89G5{}1s0cx^yrt>0#S z)@`bbSr5p5dQG|<40{`S5L*v z=_~I-11=av*&J$mN_iEn?49$I#9~uzbL}ys-3)P#!QA?Mh}=k%kAfD`DGazZiTy?x z|K28Tz^*Z|xKZPZ{f2e4+f7Wy_swc$8x0Xv+H=hnGhvh+p`A7l#H~It1YX(2-Fo4X z!ryeW_2VZ+q9Zl0Bc_>^8Igr5Y0T+#|2w9aJ$5vbFAJG!i>fGV!I2C{+6SR5C1+yhQz9r1&g&}N6;U3_FyN8kk~o)f@utnScGT|n zmv1KewC^vF!3%coo}0T+A9pbJ{xn^Hnpm5UD&=gH!h-sMYqz3bl%LlZK4M25HBA6# zj+NiZ%cZc2XJx+moYnN>xsSHiAMK`I;wn%qY{fU)9nf^1tVXu(o7X2cG<31t6(zSD zG`yalSQsV!rd08)DdH%vnze2)m{LfYrAe3c86J?uiY;63hB?WEH4t-YPnJhrPDSe_ zx3e+FcbY$~F-AqeKb$-14i7`Og5Ea(f=>y51GEyqA`$)Ay-wEwZRsmg- z1djW~_&?c&Jd#0H+2vSqhAtgOHehV?RT^Sun6V!Tl?=b_3{~e2m{~+8$Bq8X69+io05_$Nm?P8Zr z8eXR*s86o0$z0H1up92rGRgE`4fQS`S!zR*R%Q9GT~f|h5|qrcm^u=7#+=+#4Md+d z=C-kF%z8vcA}FqqEv%#(th#MiHVaS8Wk=m_e$$v<@=oeOIBfOUOif%uKlcbRQ3VOJ&Pa{P6>YE)WPYTvM)5{afv=QcDe+@y#DE zx-SBs3(ZgKjT$$9$LboXUf?TQ9mu#PQp{F94}aEpy>d|1!~qGrW5=C?2hR8(6}ytN zv-zhYeYd=3SMsx_EaF^F@^MM4X)*62+RWTuL>dk6rc#}895^pXLqgYmZmEQ8Cf!aC zU4O<1+QrJyn(x?XqR6dyN*VrO_L|~|^g!2GplwHWRe4qV?pNXDgBnpQ?`g55duCIL zQ{r1?oIO>C-M-#mUZ$O{%L`V952li@`iCXAjhwD>^Usl=#$nieM-Z}J>#1X_rd|j# zW5)|R_u6T_zk4ERPxY}qzqlfZfn!)@&>B)^EnRfA$yg|sljl%}$zrVw`NNwDPv}fd z48a4W>dctz*;|u0JpC{}0~OyP!QC~PMn z0yB^pWi?Xy@3)X}jHu6zIXK%G=6drq#qOk;VIv~G-IJQH^o|j)mOy$JSH2(3EY%a0 z{g-fzh*Sq27&kKlf8)?@oWLR6W?qN!P4EXr)V)6E}l=ns(cy3x&3Je&U}=vaScX}8_99I?KUVE9;xyi z6XJf^>*SKv*vwl~r-xSNO5!O+PIsvC9+<*fG!gTCI6*uxdcPKzrDdN0echE*4IhKe z*0#cvtv?*9vZK#&PD*ZRZ*_6#MU1>56_`8XIU5&pEvl0@^l6Aj=>Z0@*Kky&Dtst7 zfeDeY(8+F(D7l>z$o-g=(q}*mupO+IK@dL>y%V^775l8Ie_tL8$Bo*Z908+$VE78b ztghq{n2mC48+kpj^Id(*fGb;wjF6`_WP3yQ3mw_~MKWAwGS$uRZZx+t(Q&VW7*51 zLs_2^{!~0VcfkG*9-!0kPMw%Wjy#@bY%oJ9wCSNJWz;8bf!Ema7wE$ zs?lVNu@ENRDVd?|f>A_&(jb>ZB-`_l*Q;<%6QG_h#S-i7L>=?Im**xXu}Ov|8OvhD&RPw8Y_b}aO# ze4kQ=G+tjpJLzJ^im*gS<lPkzz%fC6MAuftBu@ zeQJ4hsi4X0s1)IWAdc>}r`5X~X-1WEcYWvCgwf}G7XzOSg{&6WzV0-t9wC~qF$AvW z8q^ryJ}qtPE(>aFqM8_F5oWarm=8*YE{eY#hiv>s`icyxn_ z{X@i?{`KwW(VwAJJdLP+qfZiRkrHktSH3AIdM`?B7s<46h<971DF~|6pwnCUYGEG6 z6OS%o!qEz&Go;P-WQcZXA|vym4&sA%d1%)nkpnx`23-Q|A%omPUMXOC#9V;j1%tLe z@NvY9Zhp}eZX}OneJ78~Gn9~IC@568XF3a#oLu^_HSVmpz_n(sAo)G}b+tqNUXBp#Db{a)JP;1i4bn*s#=JgDz|+&~_~HMy#zCr#iu z*J>Q<4(->$)@48pz?@*D^!8!8?u)byNwDqoGMukTQ{F<6{;nB zKcy{MhM&U3qOUh2sN}h6FQCi!_d>A()B!bHb+`qcqUdYoVmq2lyJ`^@_ids_VH8G3 z_pBRhs-LbzJWk|(27kU1IJS~ml^5#W9&;7CDQ%Ks&}jrj>FGp%JTwPKFxp+;_{$z> zR_kFoBf(%BVZ*!JuT?H|WXY*Yi-a;h_G_`JzD}CjbRtXscr+CD{I?sHJDcPY;q zI|FCl^%QybaDi)F0QpR2vrvpm&Ne(Lk4aSw720Caq>8?iA^F64AYb3y&cpeBtEleF z_w0$vow|VVQ~CJ=#dRmtARe&!yki?`JgR!~=(R|E>#EIXp*K}^>2J+bT;F3Slf8M4 z#QG5)VyTp0BkfTn_h+AwTBBRryrZsrAt%_ppS{TmtAUS8vbddDly|zNlD)D`3LIz~ zV}?-)riU^%VWVedC$Evy?%jWWuYQia+FAM9u0$#f$V(;kA{&io5O)O8;&m~@C8LX#pDU`# zr8w*rv;;EF6#Dku+2272`wHEZBI?e>C7wrcA%FeSHH^5r=hSHCUrGS%o6pn z$xTm;18KQ%n~n6-sB|7Qn)uu*7mQx@^x8Z?Qtoab{1n;X~^4@5dS6hvy= zXh~nG!~?FYAr>JlAq9@Fnb#WYO!%n?7ETR`CLP<2iBBXr+OKg zg9ROV({z;tOrA!MKr2U+f_rJHm(^wBHcf|xQ^v=c;}*_myl*kla*tsb=1LQr{ak^) z_zLB=F7_C?N&2&_6l5JuW?j1UQE8FGW-8;Eg!u;bo6DPW?`A4ILr!k6q zo}X1skYcv{Z8hVYw{UHx9i`>%wOZciI-0)fKGTpufM~ z6CEbtUx>@XiIF-*VR~%`sY&vOv0l$sE^l4=st=1-x>pGejBWmAOjxtJ4d2_(oCOWS zIQYw*?x&w435s=`f=g`;M5Ic;8i%FndA*KyPT@OSVNAWX-6;b3Mu`}wZLUF(b#-cS z4~<(@8E(GjO*qu<4j|bSET(LIvb1#AaA@(&11FD4DJz-q%;M-Msu@ie7*KqCBS1g@ z-pu1IGB~&r#;JoE3X`>0Fp1=2)fn5iv)>Eaf3^?1Hxd1TJ>+2}4zB9c=?MioP+u{e zZJju&oAL82drclgON};1IMa~-tv=k=t{Cc@ zrC3sGS+Q4uwYf%r_}+yTLM^d(jrknFrgL@>#4CDdF&fXtBIT+F)+;y-Sy|{O9_ps} zR9yVPPH{tOY|26+O_5o-(`#nZ95jBsE#@@Zjm}s`@{M;UBFW^A44vx|#u(l&JbR}_ zezKuY(@`6E(A5Y;Azwy%V6GQn?AvnX-y*_;q?m2T$F1!2C?C|?xxEiJBv{b(?^R-( ztqx92wBs6xJ`n~(-fhnH_H75hDsu6qK95p<6;RnXMhsyvry&z3o0-#~!7w6yJNuLI zz?;#V4P4_RvBk@*;}M-#uN!RSdP(zLcMEmZ=34%?&`?>skrtSfkD_da@-zg`MH$ag zhP9nHY~gKL1)O$jCE>kL`U1pGf#R@G|}=g-kU zjx5R0R9~$+D!|bj&p{c(_(1oCrOs&omTNp^qCDlJ>y|EA=Hi!0GBo=fd0*y&x zpn~Hc!4$GzezCJ0n-J^u=4i-`(5_Rs#Bg;}_3GYYj0#3w6-!f>tK#K*+m0v8;{hL^ zXU&}tAN&Bq^BKl~1@lWBXk}Nz6Lyo=NiEUEjn%kEsx_nZY?1~k?v{o5V)R61gh~Pt z7X1i{21V2b-|>Xmg~vG-33=dWY-pZ{$`a?tE87h{RDb_=oUJEr%3iQ;+fGfP9(|@C z$=Y=!rir>+QH*?u)tgPN{+8h>Ml^ExfLvjM?MqV!K|GsJpHc@9HGzbWm+isO@r_Q% zRBB8s<+_>aJ#AmY7Qbf(oCR?M#Lz_e)77o@;OWGJ`(0}bPII*6*2@v{O~ucmlJ>ZD ze2VG_yI=U;)Qwl`+2(rPGB<@V0ar}^54Vpj?!s9yUTt+*=|x_l=y5x*&(+m;j34*Q zRLmyFgj4n_RireXKgx&Azr<4Ff!9f3Fy6ojxE`I1R@5Ag=EtNWZ#`x``2yoOHMqE_ zca~)%`-Sx>PEv7w$l`lR6-JXtHB1SzKQY@*s0KA}aY9w>g>m86k20bi5+9pX`vvb$ z1l&o{H|sx#Ic&F68&c=M24gm7CpphQvK*G!fzfKaco7+i8HD=fo+r4kJhpf`Yi}k% z$8RsMavzL`-8=}5se;|1h3mZxn{qSKGp`yds{QYge&r;gw^1?EafV?n+B_R*aD^s<(w> zG#XHY ztT*jjaB8TO+7kPsz*WUs>FKa2VWP>2hw~!HnDLcLkuRo!n$VJLMTNbPt;xymS1p8< z-5Y0K@ZHH0KmlBtcDi|74YYx%xXrn!gz*imtQXNJyCsFOxS#UfB)ya87w*joKt`3| z%14FJj$G+%BaBAAXN?{Arv@D^#Kb|>=*8l87O^V%D(QL>DL=MSM~Yk2oAxqTM-1nT z6a-6!<_mM1qfM-)j1o5T_bxJo+w?l|JtJ%#8ECK1Ji6ZjL}$BOH^Ohr8EM$Rv9O6c zHzoF7 z7%3!YKZ!eQ05%+bH@UxLyn6(N$swD)S#|Ebdpw`H#Z$Xx$EKI46&`j>uzwMT(=xkj z{8^&cso2e3wxzoIC$&8cSFV&&P%3t_l@e&~d<4Sf@IXy!vq&&#s^Gr7^)IoO7=2um z@!c$I^04#`CXwx>Ytx4akxVARy6_hAGdp3*H z!(K>amiKOdi@%B&(|}gW*Zq>Yku7TaC6oR*uN5nrtclmz7gRZ*)uF^zfSB zHK0n~ny(e!+553M@4t>i5XN@ImgKj*-Bm?gj2EhM29CXdTVpEkV00rdQDfeASYvg> z_Xrq8`nK4A7o&qUYV5*q&F1ZYg<=qwV7g%{;Ko2)I3BRW1AAk6;6fRV#@v8cU{O`tISGNDed;!z2ba zW1l3iB(az=WgrnL<|`vGz@>W4^bF)V^4^w85^$J$W;Do`afPK0jBCOjhk{mzwt3&i z-ss|UW53Kr-w`m9#}KI)g$DgyqflW}ly~Ul{zOZ#<44o!4bN4wSm`VP#X-vMze`tKF^c{kn3ke;(=6 z{Y7A_z021W_dxjhQEsFZnrGDxy<2l1oiBHLUDe?_7pmgn)wxTL=-DMNojMxJi>*DP8O7+10tUyXS{Cuq6T@A~p)Og222;Y_{v zUddIt-+HMDiUlynG>u59ICW*zbxd|AyyS`?_!~6cHhMztvTgsiq`Y8t*zsU7JRGQA|G`5EiU}eYpl(95g%o*oFyqU7`#0LmB={ z#LA*uqbl@H6XDly3em)vdXh@j5iMUwj%$iYy&QHDm#St}$W~_8m5ZeHnEu)L*qKyD zj9%;M$E=DR33oOYs@~WH>5@5s(FDVHL$`!tP*+dR2OFmw~ zL?wWxD7W=pKgLLv8{F|QL5rmT{jDT8F-GkLRtk-1qrQ$DZ9P$H?Xjn@J>g~+zhVo$ z$dER%(G(7Nx6eGLqEUiB35Ld4OSRh5x*t&GL4r1KBgV#qd`rF7Us!v*u5NatVV8U$ z-FnNheQvSKNfYY4Y|n+`@oJJsLu2`eSis;=o0sR7fxq}k-+*j=Tf1>B{_t4;gl=Mk zPO(oX(4n^^T~nr}t>0u>S&H&~?fmee3jjC;GCx@?*vD>0gWF>3hssq+4<*J{oeW^2 zv)7|shs#+m(6rZy@}|GiYE|Ll+JSoxXt>#`bh0*a4?AES98foGQ2n=qCanU)N%AH0 zom@MX?o!uB<|(IUvGs{S*79!KGe<)sPrj)diaz0G;$Aa4$d(^&{zawqtLB&TPk|o; zn%IsC)hWUTsU4SEaiX36to`>m|wDvAX_q=G% z+NZ8wQopJ{+1XYPEGd&F0SBo#PX0YNa5-_~GY^TB zy==_nlCAjWyh%|;P}hgDd*J^Z@T6?}T%`ne84|Mb<$~;uJG&j; z7Jbl4i)I8#Br7Tsj_mysTyEG-EGbWY0Z68913fZA-E#t`Hm@c%73FE|ME(C@|F6Ah zWDq8A4hDo}^^F>!;Wr{rmDt&kraG0-#ctm}feezyDFY;{fE87JlPb(`6eF7_R%q-px;S#Nm!jucT? z-sJ%aahgQmV<*5R_)yj3M3CV8Hp{8B2p?hg&iz)z4Gl&d1x8qV1nY$6*F|;2eeDQ` zc?B2R=nwRVi-b$yrnVuC4;x;+m!_TU?)1c*8QFkBB3)2>aMboibYtFa9A8+HteX#i z;!U4dRc0GcGCh6lGcNUw04eT}RpSIj1Va!WxWQuG-@Y>U4ju8uC_K1EFws<(THIeo zuR4%}S+C2KcBIMbQ?xL+&WQ(FSTS=X#YmBz_Q8!^GtUu=Tv)dI8(E>V6QNM?xyOO_ zT39hKE`|x+3#uMa7ro%4YUoisS={15)K>~R>;m@<7*2!hc(L;-CC{F2B5&%XLkl>5_&sbuCRu+=DhZ?q$fTR0^z0oCOS{6`gLZO_q?; zxScbSP~ho5VSVK#YwRY^l)-s=Ul}4%=iTpGJ*)O6VP12gt+b3&WA4_ZcdMd|FEtQ2 z*3>q|TNU}$-@bHNTp!3xJqLCUy<3qI;fFLBL$gf1H<|6HQxcJelwKn>cj2tCvFNk+ z;1AR_+khS6q0v&TDM~R8+;?|4a}kvlTe93ASo&?s%gVaLXHY!Eir|B1aZFFAJ7g+a z2wWm0i>CR;5@FvS73scjeN)$+ZsJORle~A)B3Th6S6W{ly}3?#=!_K@jbwCiLsfQ# z(tqnI`(k*qDjwHo{JQAfV|FT&g^;6#p07$Ra7XmU^Wqg~ja00!{Pnlj%Ddv_1-FIM zos2piV&C0nmrp))3PZG>&Tc&tqE@tdU3VW094qTrIEIi_E$ zS=ykLKZCdkejG94K&4e(0=1ulRdkr$q_91zHyE1R_Fnpe{+^ieZi25YMe7@}|C9`R zDOL~_|Bfk|@3ZYx=R7g1Uxq#((_@ttBtt>SYRJlTTOLNd!!KfL#A~O`*f8UbEmB3;xcd37j!H0~0H% z`xEOT_f{7Kbj7sPKKPv=1C(_7=6Z;nbB@@D8sw4dPNtuO@7fsEHZ%=P&cDfZzdv6S z&gxZlUQ5K%PyZ?P`|TceQ49t2b`L6N&P+P2!ppZt$4#8EQ|Lxs?#Y}}R8Kfha6K-g za-HtchA$=NkuEwrVNKNxxndV3Yj)enS0JqyqUybG)BDh*Sxxtn^VJkG zd4x#^)5WuCt#L|o1m>3<%=G}^G@x?n9`M)NMdath3t^jGxul;OSbb3&IBLa9Xyc@y zb*isdG$k37;2BqK96CeZJfB$tQg(N$BkvyCMD^c5?3rNI@Idu4q%RoG8F>jcRTh|! zxv_T}<@%&_tfr@YLtJ7uOQF-R`*R!(t^cLm|y?g1Xv-_+xue&&`CS+CK zwZ4c|Hvog#cB$wkvw@w=SrtKyY~ZYw+vmmf-LmVP!najg$3il685Y%F`lqLef$JtN zzKj@a@Qcs1Sk5R^hQTgnvI*};-MgM_qf>PmHxOqvEkelyX!WcaM|?s<*L}e`okwUml0W+3@j-mD za%~+;op(p8z*9HQIaBJZSkNHPe0KB{*TjqmK1be*?o*AtfLS&^qFTiR1;jvD_8piP zf_w@agt=boK03Zz8(%fyZC-7o^QJy|T}tkRMDN7a@D^y=xwM2_u}Rjw0gUj{M2m{& z-n2)S68*Em3P)oZ-SMZDybyuW{)oKxO%_imPo(ytA;t#$Nyp6uusC8^=qTT^!t1^U}$g3hOf;sIVAK z)0(*vN5&hY^^~@{v>*u(DJp(StBMlt0C(>hKC-MqxjystiPQ)fiMYw2rB=1~`8jW4 zhd-B(GLf5)3|XHR^Kvk%f1Mo34Fk6@-dzVHp@?_|xbhpFgpM3%Rmvl!tDJYJa9eaF zi!IF*O9ar+&oET2DlxdD8~oWAbT0?iDzPV38&!zN{_Hx{npM@e(`?^v?vx`;+)ublVaDhgTQpG%{pkI^TZPuda11nxzl;v3Ph&RS@- zar>bYJwluH=1xzO@7lVG06DsOTZr_;>u$j=n)>KDa66~S&n=xIzx4eV;(OlSox~|_ z3LP%t@k-2h^KI8eFY3h-;)W%%53=@dSm#fVEKrsG3>*I&d+#0A)VA&m2T?(3D!oPl z1*y_ON<^fI2qIF2polaf(gOrS?+^h2K>-z!CWhW2(nSQMNTi0)r6$w>A%4@f_9}ay zz3z9O?>Xn*^F4R{H_I4fjyA{Je{U+*yPvYhNx4JVuXv(YdlRd%cN*H0b^e|e&%|&> zT~h2p67bU6(L3&D-Ad>AOYS%e4<$DyA5fSN9y#=Bae~NUZyPj0?tYW?r`$ zS5i|~0=+Wryo60Xmqn|wwK1c|LLIgBFSXY+&#`~2?VYIoPQu0`PLs|-T9mxJYrbMC zZ{G@7e5=}IDmVj)r=H>cj=h<9JZxQAZNS|vZhH$Iz%24XDDA|?nv$v_+B!=nQ#M^G zLEDlRznbIfQgz7a+*YTSUSM9qZYa_6&c}w{=3$daoo2$ku|`WNH9>9#cPjAQ#JE*Y zuA}?(_+y=Q>x-K@ly{wb*r^x(FAUr7vp5vndg45`C78OM?=33b@zb;Ww*P#`BYJ?> zTMI0fZP$sP#}2a2B9Cuf7*G*Q{#0*Q-)w{YCXQOLu7%b;)?zf4E@YW&e10&7EFi73 zP3Krj6&opAxV@vU-QvdM`pKc@sCY4LH7;){(6M zPuk-@K$LoO~6pT7jV@b{8P{nUJ{kPaZ3WSJjrx;yurFLXJ&!?R1dYk z8w!Z4Xm<31guo9F5={}>%N`n+1VDXPASBaSzx8IM4CPG6MicN63Eca^m>pbj*W3DK zt*vukDFc%>NK9Py72kbq0-1K9({SM+o*eIQ&~6Y}XIGi}YQ{=r!%BXKw!5rt>{_1c z9ym7u#b8uGFDUf{rBLo(H>Q%oi`T-Ov{JsMR-%w~fd0p2pOxbQoJ_CTKZ#t1uAKTI)K(kJrEN zlgRVRzsBuR`}x7nQ67p{Gu)uL%K8HFVbM$HQNZEKZlLU3^sLg^Y>zRym6l?MJ6`rz zCC5fTE$d0td0AvJT$dFwGQJm;v|oql5%Tfb@mk#4QbYGYlGUR-AE}-oSh+g;#B`Ih z2T^pO?TZ|{9EjVFkjc(-T2bSco#Y`!7s91GR?(gnu{}mNr{WVosEzOgf?Y&SMrVRh z1RDcuQWTuBk(|*QU9MyNDPwL9F<$lEtFa*=fw^lzPf1@d-F*{UWMl#TOdQ=`-*K8a zOnLVM5OSHn@Jmi_X8e+gJItv|x>}U~o zSM>>`u`B!~#P?CC3#j}{AI5#19Y1nj`lMZ})fz|sG^H`RrQ&te|bg%|fUbiq6X-|D1nGS3{-8a|sZMy(?70bD86$rKB?dqh?I z0DV)K%8RT(og5k8^YN=BOO1+u4hme;GJ8;|e(oj$gS%XCtb_p(eBfan`1L3E7@mf# zc<0BOJL{w10swR02WMXGc6umd_iReOPZAdpz)Fy5!BwxXm@?K9(9Jk{F%^IO#8ryk znE%Il!+7P6MBk#b8S>X2L@Nk>q!kE}N$#P10hh6_b`i1W1WY@Q&)i~(B9JlnI$3>i zt@v!kmkN?O-zC8;yoq*7dbh93xt91|cUJYBZR(xx00*E=%Kibe$pON2j2h}GCx9d2 zf(PDU|KKZRtIA>*H;VZ%d6ATMaGA9JA?rjLWdJLesnYBSo7ZMazp$l@=rTVIr%AOD z4LuACWP@)`^{rq5q7KAE4?;?}54dCZE>vyeYevf_bOr4{SNjSmnb1TiE~4&G4RDL~@ko*?#YvW4o%N{26+WE>!b zTS#`Y&({XkSva?G#GH5~xN@}m*?^@67wX(YnYgk`dpW#HGpv%U{Rf=z)@h-rE#xT8 zj+;R#*`VJ(sE0>J(*av_`pCs$b8`Xa=AaYaR5N?Jp9)K4mZ787)157Sp2OHG_S^O)6@OXq8b)RR{wRICR=S7c_8Bw;W)9oL50->d?nUq6a&!dj8k7`!L4 z`J$}v))-RRn&8q~Tx_<=>0{|XhN`?K)rF(F&l0d;jQ$E6qXV{9Y|}+bPnIHqCTImx zvAueKly=pn;oHkiPKo=8k?AsToWqR*AM&a?ryPb;SV=PgXSdRW?~6n-%f8BWuDb2S z;O6u&Vpim?RX4xgl&^rx#}89d9glrKzLY@7=EEEg$K8zM`hTnIv?)W;EmO^KK7r^WdHE$^*&g3u}UOCNSa0boQ5lseEHCioPqvG8h#ZI_OSiLvD7j|u`NamBF#QIb4vnNynElq4>-@}?FNw|r) z<<0{V1P`S~C`(_L9rTTAWs-`EkkfVP4^DP_sArQKy%*i%uZdfEHG_%*6AXHoc6_i^ zaQ_YquQqA0MCktb3M^0WXS*mjVOPS(s+oY= z#}dE3;(Txm4%-p+OWS2W!3qgAiG>M@H+02Uf3r^=Y%=8+>+|rHz3r_DVC2R32-n zQU2aBLlPBH5csx&a z>_+`e!houLuX(Hlqp`%a7NhSp=0>2zq6IoejRii~YQX|_9I6apzEx2f>z*q-i(M5deh;oDxqE0}rgL44j9s4}kvWd~j^DTQ19q*i~NqHC-_3f;(-L=OaA9+k@ z0R0+Z=^iCj6KOsmxf+lzE@*hjG>KQ^dTDKCbp?Tv?IB7Q%AR*`_(4rKS zCvX&8j%vk>YJ6a`<|bO#yWj(mH&gZExo>6Wa0`mCnWbAjZ7@PSZ+Q`Ny55HT3Xcv! z5{#o{YXaGqz${yqU?xp2OZl=lcX7q<InE{ zi<8=&@j4o0{ z3h|+O0vZ91r|r*ztTN4BxHY4Zq=^Gz1d^nGaCL$*lwCSt0i9fq7jW8VXnmt6+N*Il zd$Q|{E`9H7?OXghW$x)S4)X3$P6VKHIi^5bCd`@%wDE}Ld^mA$u#8laC+F}XqG zq-OM6q+|Aovla4N2GdC2l*!Z4uai$l{l?k_36@=u!Hw73Y><&&MyI2|k z8|hBL&sgYybZZ%c5T2cU(cqZ=)cPuHHCvvtbkMh<)`zMnae1!NrMCWlEdbEJpgI;` zVj)hb5H$`W#~BB8FK5!LCzK`U1GvI9Gd?=4t7Qu+FMO1CAfuLAU%dK)0#z!BJZ_Ee zxK!spaY}96wQL)>vYb7AMr4N9fOq-!414ng^UU!`J9}SWx141zxt7WA7P;wT9=4vL zbDog4y!fufdg>=v1Uj~%BMZ}=ZDuxvg$`7V_KFQ50!7A^aHMF`JAoIP~r$5 zrxFgO0flfJ0ja@>PTDg8qC48)Q#7LyIbtqu3z@)yeUG6u_H*ClrjGu|a?OI=E~?W? z;M#B#Jsf91JnFC`q}`af8+4W9mE#%ptZ+_^iz`>q=@=(8?PAthQVKz!x%!q|({r`F z0N0{N9W>!aw1{%%3nyhC90~J0>t|{|Ejh9aaMLIk_GUn67t_lpNyX4Tceaw?R$g9w zvhXQujwgum_;f+!+Up=SA5wh5QXOVRfG~Mr@i1xieZ?KI1+gxkcZsD!NjIF{Hg?b4 zxaFK(>C-I9;5?<9qm|J}zEpcSR6R^!i%a}cVRt8Oe5Mu+C1D5<15zeo>?R5DQIL#$ z5Hia*Jgo1>rH}vo{p%qq8d|u?XD4?vfu#a+;5D!&*nPrP|tYZu_- zQnjl_mk{cN%*uOjwegY>e%hgEmr8Es$RX2?ScDO+9RvTKG%G``*5yM{DBiSrod-BP znPf%9p*!w?t;m<5#@uyVc~Knw(4})e5gmTL$9?=+cZ@>}js!t8WV0hF$4evI&V2Xtd$*}a^;$#<>Z zF=t~WVcv#Xh~oymH#$T`iO{(dNT^=booN(p%g{>9{m!MC8ZGghw_EI1yYHpmdy}ow z%C?{ffNgwCjh@iHz0k}{-Mk;Ro58!11uid3we*(XO-(vX5qKD1a$S$x^P}RukMD)9 z9Huuh!zCQacVPG(A}oeqLj>xaCXVz~A-=agTy1_3Uj|~#uLq(80G%&860hm7uiY+B zz;sO9?7oc!!jfyh*wjS3xXN+Pc=`Jnl&^`byyjO}fN`#Cx11)3nh&V4R>!ExJNeYT z4I7o4s|r_T6t2+P#D*Lh?xifKmsFH1M7D9=g~^Pz zmF|7p_*QVgzO?3v!R_H7wY}Fxqq-`?CEZ@^BlDgn@Lig3Z4ch#o113@ip^dgeVzKN z2KL`vpc5g^P!0rt9pTPG3sV%IJgRv#qMkQ*Rz~&dZoO@FowP)VWjF78d#REYTJxhF!z%AiKQ=3zdtM~9y10u2;sohq{cp2)SL=k+$~x>}bWqL{GfqGhSd36?-0ii$m<)3~;QI9DCNQjw!#x}W5@n$ya{ zXT8Z8H6^UmC&6TJ!*ss7MU@6`4@7Ko>(Vp_c(fBTHSNnRl}BFcSzVY``Bt=-CiQVu zL{zu7`oZZ0(QP2;7Zy(uB(Yl(P@U`a-^{pQ?-;$!hHqNpEX$5OM1?1vGJ8_kgAvVA z>0ce%USJ0$0kucnNQDOef!EchlfE|F);@qW1BPOWc|%P2MLOKhXR< z5wlV{!xR=sTTQH71$h1EUiJEtHx;m#`gpvPD{~@~CZ5$WfVrP#0A#q{^e|OL<~*=O zWb>JeTZd46;`x<*gbNbRpE{t#GNvo2_cR&4bk`0O)Aao?jZB@t2t8V%&pyo;$=X!u z;!)60(s#1d;PSq&@q2=fi3xpEn+a^Ci?F&SNe?e$VuO1(_UpY*jG#u!htu^#v zbXS@Ic|hOP*|(yozBy(I3|1UU2-wbCTyx#l>24^U)bk6z@NoPyC=qm2f}QtRpf}>(!_b0 z$CSR57AE0B{%jdxa|0zY7@Txd5v@q72h1d*+5}YFQ-XcRgg(rx)=O{CllHv;TN*o7 zGww-QzzZo8#T&3*&_ZKC&nrp~?j!{qi(y}E;sodny1j~6*=Fk3-fcBGK5;cYD&X~O z-L=_#!=<8Xv=adp%|txtoIFmX2|Ih3xw2Is@80Ww4_-$}6KEN{2)!g6Pj~8OAfc}q zDEOp|PWdxOZLy5uy@A5WZ(`kY$ zng}@iaDUlSKTsMOA730!9R@5zeCGyceECM@3=|G6S;b6!CI$HxiUWqj(^)gUr9g=< zruGe~^K<_J(DD(C@qe8S76aA9>570|=Y2U1Na6Ka5%h~c#n-}=RI+_fGA{T#eS!Ms$Wv_5khS()f67} z9B$_uoR|}@z0UG@#X#{$({qw!0onMA8hbo*r}YsRuI1)^&D_eThE68C15U+`uD3#H zgHDxm41qqYOJYNudjna_$%b{LSfc%m3odxAB64^|mgE_KfilhE3KJ@+_7YyBdv|VJ zn7)FqT#yAE}4p>4FZ{rnKC&4O1T7 zY(kZTa)4hhvx@x`BuecpNt89_`-WiE=sW8Rk)Nx}F?YZ0-%$Eg< zIO8fIZMaB3AZ)^N>W#%?tc&&7Ds@|x^qwW42zxj*u{Ew%IRJN_rdhp($1yrugTd7N zHI&a4Ay^>PJuItTVNWV-qPknLS0?TSz8%Z7Wu33Z*Od&)A4|#_u4sK{NYo{EF~7{?256e2u_+qmjL?%Gq}Gs(SBufhKY#; zGkAXctK`}0Q)8B|lFUzzw|r(bO%6Xw{APOYtuwglPSbP8Bk@v9m z7oj4!t_7Zgv5d3}CXIsZv>cwb{Qxyg=DyxM!Fkj^pT7x8nqyz}2c&_p$@7HC0z4Cw zzBBTXK%#7YQBmwL_s}#)%)RFckyXxXOf;4T_IO^#-X-}6xR^`QwR;gJW=}5(lpeMD zLeqj|fvMO|S@}UvEJ2tn^|n$ctSDa#NEU5%*J(w*SZniy>u_{g!PEIu~u|u`5pF-Rxj+b~F@33(A38WTx5g#!bCI!x1&hue5CMd1psc8fC; zGud>=E1L z*4M4|Gv*{MC}WqBi#vm2k&~zo*GtQI2`NTI@tEyH-0pMk$IfdOzu3+H4cGRQp=%=w zkz?!f4*dWg>m?UioCF8~=kGJ^=20pSa;FXU*u4z)x1aw2U6CVM5=<%AKZDl|4xRDv zyu)1@isV;te-`5pP?u^J5{o&kvR^^AW|Ow8w}TIKfQ>PVZtep+*S$sA`4m{dJ&ZRb z-c~2*PH(K{dX5NOv>RlL2cS$$Y6RGqGyVuWHx7=vl&NekveY0&p5)Vd^4^ziW)By8e;0>4 zEE;YukB{gqA?s*5`>U;FEGLu2zBI z6@697ubw@kHwh#~w}qb1NxiyB#_AgPdEw|SW=&k(t@(9bVb>ZvHtCDxKra!U!eRUtx}cr(+H+91Fu2dBv+b>#C#m+Mk~Xuc-EQ_yF=={50NJ^?0xPDGRM(YZ4fjTfG6YM@FB9Bnr8X(ks+p%sq+uto; zC@$F$VpsiCwscRzn78#s0{jCHcJW0PN92br9-*ZZHet_)ty^wDm2-V+`=~R+6T$z%nZD<~HYq^C2av&>76)zdxByw2P z;8lpw#hPk<^@Pjnb&r9W>T^?YYthvarq4LJWN#g`^C&a-f{Fu_+rg|5dnDlI)&7M{ z7c2jYx6`4cFl>SH6C}Q6-2m5C zgGikL*xI>>=?#B6AEP)R4w(^eEJM#QvT(da?I)Sk2FPUKSppU5B3p*sm}wQDEf)NP zOrrE#m#=V*S{D)Rr|sj&G(?&<@Ui=)`fArw$4p||zU-y$m@XBGHb}L_OVf@alRA^6 z#urxWNZqa0ki$Y1Wqgll>&(;xQ}9UY6N|lULh?5Ni|vA({+Kt9J!i*FRp*uFBr1WU zUqF7Qc+-wRh@-d%rPcNaNGs;>tEwoWXa+)lky`x&bnjO*L^?X#{i*I{Tf`9zazT+azRoCe8+xz zE>V$iomrRqJ#iKLMAs5J+vh%h!izKi5kVfUC}It|b8j(~8C+&%xb zv9gJd77=L{|KcQ7?-vE;isMs;G?U&*R)--co$&^Pgx{+ z5xJqYH3Zk_X$%UmnK~uDyxiV4JjqoOus~~J7r`&U$dzBz1<^#+MQj1 z2c3;q+w9~!N!qrbLW0Ow`#l@|r;i_4xifHIH?N34Gd;>X?DiqfMB!PX%7a>liNQ7O zAh;|$Y>UB2-?XDi-nke$-5c!h@y1!fBBk}Nt~0+Bl?(gHM9XeY`tVZ^*sR)4&XHB| z$^dEs9E-1to-zpEk8DLBA+b@cES9WHgk9`1yuvz9zR?v!36z7gwC}rhsd%gfDw5=; znMmgQ&<>`s{dX2@^_CLdcniyHLtU{-kOP7)z4#=h(xKAXnDFK%bE06Mwkvr@Ir zD3cfkvbjm4NK*{gD#(K`Pe(=tijg%VoBcW?S6~Qg5BveQ)lHU!oi$?E#$FkXKyVt|AsIlven;v*wa{(s&XF%-@WMY%{Q83 zR?F?n$pgra3n8$eFtEqMJ7v0P^*Sf{&asL9s?o{4iQ+a>`WwMXXTo*Y$9PP8 z6>!vnl7U|)841u<1GewFQ;?Hzu;yUDq{M68ZSJ0Hj>K0d_|#*L+D5ZR3BG6gECt49 zpJ>n^CIH5`-bA8(3o+iZmA1geBUi;*tDGx`RlZ;5Y&69%_wMVpd+|AEL5SElaBBQQ zM5Q;T4hYUOozA>^g7&}_Eo%{+=J?@$@;FD7s`gsD9-)55G#cTR2XAq)#osKQfgN|s z$mz^A&ux4$Y~nqrqy#q%JF{J3L*j3tPtul*d;RVjD4ao z8PBSwXE<}N8ZmSD>PdjDabxThQy4-O5012^8X{}HvFH?}V@u-qsoo%r^C2`6M0{r+fYOL^JF~%xH@pZjx8KX)A;98aqAl46>VjAR2 z!@6$?y#PR70Q?Yy9pOTx>4frgK4w{BFX|tSvWqrTlri-P3E=-#%D;vyg3L zFzopYddLY)ahCr}E}#Mc>R-O21yfihgx>Hb#BVob-`#m5uLl4 zV}LJ^8`R2#CQ3ydk7I3hgiWhn=G9WB%SYRor#()XKXSwUy`S{#)Xqz$UesvLRCZK@ z5W#QLyor=O4Lfx$ZPfGO00nM+T-r+O)km|Zb0@|dwvSX%)JWP^BxS<7B~cK}i_r2~ z7PZUj?btM|GN}>g&pRD8ti_XE{~hW?HYVAcfZO?oXvO6^!|mKD6Ll^1&=D?*z;~fv!D!!+qrPmjzcBM9FW?> zxvHa8?gYG^G?Ramare?ltDAdSp$>L1g;Rg&1L`JidtkZ2QFf_kuD0fePp+5HOXr=P z+CQDRe%p{{J|Ws=W}Ra>n+Edm2Z-}~YDNGqNI$E#sMGneM3{+%YQtl*;#SFz=WCvo zIy9d%eswIk#~UyXW^sOVcf)~1m3Qt2W`>B+d(l7~mB$3v~VUn79H@kne3 zLvFK*kJ{x7$4ccKm5A?gA8$YMNN$pgW1b5Nyy{-_4ibqh$F?FPviNI=5%CQ3uh8SI zJ0AH?KFQYOVoFC}%f7oB8k}_8t;4MyBs0yvvP%GLFA1L6-0-C@OSlm>_mNK9OD2_W zqOeU4TkmbvOCS7AKVd3iD?dO4XfuXUw&!-sXpZhyoE<0~KYhQcP?R4;knO{dfdB|2R%#bG2ISmA+6#pm9V6r ze7)__-8b&a3^^+F^w=Sm3MvAo6GiWcWFWH>Xj+Ch#QczvD$e-shv}3%bVuEbbY=+( zr_7_b<+l6c5O>~?oLesUMZHJA4iT5{^$(fX1o^t9@+^$SAmb5qcyLtR(MfhW zxA#uQiQta8gLiLEeQGT|dV1NKj%nrg!6kK(8(GK0%1&KzuJ5!~y_0tqbzhh|hyV)- z6eMeq+z3L`4VPo?k~*)XNUTf1Uc9OusARq8!7Y99{HUblL-mE^KDk|Slk)P)!PT=R zCE?=5#fkT0gopUGxj==5IYA&0Nb$(KFEq`7H-zNM7?IA3SVLU+U}Z@;eE?WvuE`>q zMe5$Tn|C$WgQn6nx$mBv)Eao^GS^f^av^NCB2P9j=fasW}DmI(U%*}JeXx=Sz% z#Jjvay0IREqXi%rpX&^4fq7cRJF;_~44s_mT~FJk9`igQp)SrX7RRY|Vnq`Khs4Q2 zMj=*KFfAb7g0QB_Zg`;Ipyq)KC~&bGk8XIEtMVc2L2$K?dJGZDh!7zy;QbAbH0Qzd z@WgEVk^x($`z9`WQZ!st%=8#9+qFlb)edv&+kJpf4WSEMjy$Bj>@z0>%!4*rT6<*z zfTU&2+|vbcIKR-)5hT`>*GFwbxO@~7|wfH(zG@@5OahSiJ7oGwNpMV4#giP ze=nMbl?A;13Y8}w##`O)GE$IOmr5_|NrHD?Uu@tdjI~bE43lr67tzXhNp&PA_7GG0 z5S!-^?;{~a!C#WMUosdRBY|6fDv4~TFtp#!MU*mKy)mmnG=q;}D~xWbMW zNy8TXjTExtRQE2!ZoqoX66fT@Jf`i&?Hb>vS>nwXG;13|3qZ~RocS*R5l1e*ikN4w zu8Fscxg)apLAtD@`6wUYohiB*jkJZbFhv8C9mZ>+K@fxj{PbbUJenNnd2k#u>}$RN z@#&sXgY`k*7#kjS(_}d;)gqTKqC25AQ}+W=o=ue;V<+vKSLgVd4=|X@qVoz z`=lTmLc5P`0sQzH7`*T<=5z5UDxM|9C#Wv3?YCho7?j)OC2jMs@p8B=iOwo^hQCV3 z@0lbg^lj~B8?=x$#hR*RhMBzfv!C~WBGe?wi*$b!h}ni5LqKaU_f&^3)aa$pe>4`O zx!y(UBw*Xr==x#X0cY46BIK04w}FHaq#lK6vd3#uLBln)n+uXY?oPTHRo^T0GeUU_ zqLb6QV(E_OPq#Q`a`AisO_a5OP03J!R;JvYJ}3dbxdC}Y8xA`(<@4Rp9g}G2$p79`vmy6FU~JU$%5U>S`5UC85&+Nr87psOZjcknb?o z{={8Kw>uVPV&lUHM-Ok}j&IW6WOGu?(iL1u8{P0XBQJ;$^-gG?rV-)kYJ?3AdTg6N zs~ztY#O5L72yy^4o5O4(ZADnfYJzG3jy{mXSxus>{HvGn=j?UE6{;Fd@`~-~It&z((AnT0j)6``3IZ`XmFnt2zm&#Y|47!Yn)n9b+uu zsu?A3CI-PjE-zc(B3xY>9qcGI@DXX{%CUP9eyh{n&3bRf-~@o>a=DNcsX=6IN+}3p zePeDILH+g$WVosIT#iWk{g|&8CpvcORuBrOvGHP~Mrn29;+z)b_Xp3cPhO4;Q9EB9 zG~M7oA@4w+|ITA>MiKO2CQohxAcYbs)A~1-O-$V#)B0Mw*p=(usd$TC5K@z;`lzi8 z(9V44LT`ONe^j=~DTxLl;n8CUr6vC< zzXNP%8gsXo^7zg6SpX-)S1_Z0xU$EfjeWz(;@!OO8>OyA)yR@}G30LLp41CYvN_#1 zl_kIKm2bZXciDx7W;%KprvXZA&DmHJ?{cVBt37B!a4kP)B0+R3yM>D!q}f1kE|R+On>Lc!x3^78%$Mth1r!`M-e^_H`EBV;N& zg_M%5Rq24gsGJX523)a$NTI`1fTxyLu zH(j^thYh4<6Vo0gUe8J9iH%!TqGzpbzP-Vk7lN63S7#Cl4k~Uiz!$~B?;XhcbvGD1 z7PwVvR#V4zu;$Ju6U&kE%HwY2`4cVkTxNxB=lGFN@T3D~1%c9+Y*UG0& zvm1L8Fu@>EX`A3A&~nE2?-w2ZEj-YFahkXPy082%aEm6(UCys1`rETn_t7W5_p^H% zoIwVYd{qJ&Ne$jJ*upf@x+o8;RZkYmp!6)*7fP_T_phmD1l4y(}WWa&EZr%_QGoTY<)vk*41RJ7( z6m7Wi-i(-eBwm&PWQJQo5-vzmM3O1Y1~h;v#cG3(%dtoIp{I0;bG%BS3xPh-cbo0Q^*^Za~R*_(plZ1YE_C50D<0okY`r>oNCl zJvIO!KLBHmdN-JSA{LOUbH+64nDR}5+<34xdjm}mFwk8f-`sEA)%!V~Fd$*uZ^Q9- z@KN7B`2)1MdieQ!{(Jj>blCN`4i`Xv84!)wuLD8>^P~0(N(sQ!W~#D&Mz%Ntveh5G zl>~-!>QBSDwfbs;W=IrBAXmLBll!|Kvi3JUWZ>7Hne1cD%sujrHc>&T7v|4`zyuM1 z-nOq+Cm{o9jeYRqZbX6hX%yN- z;*zn|n29A0nYf=v=q#kLZrwlZhbkkawdkort_m*im{ggXWlF|r5{`mU8 zh=yFA=}0WlpQ)APuYMR|#((m|lX>7hz2!(+N;3w|K$XI&UnY61{_1S4~-VgnqbLDfVn64Umz+|pE!t0>wgo~|MoF7QEu|JRwzHaKZDMo4MTpCPj z@PF)lSIs>7-RjNf$P4$PdrB%;mxf~Ya=J=%Kg>5`@u(KMb><$v;^HDp$9(mZa7VXq zeoPiSXd3cK!cGWra%shjJ9mLziUYDX8%n~~YV)}9x1R~qE`bVUV-Bf8bz0B?Hx z)K9qJ|BDoU|L0Yk!<!^hfmYmo6a>6tHaTOT>*X?-7x-np~p%#+9H+(%h1;; z*Vj5kD@10L-qUxA<;3Q#EO#vK-(;H}57dv|pM>5{H7W0x#Xd|Y-IiQAAR3K)cA>Y0 z@!W7D7eYveI2Po>3*;{OXRe+BD4eTfuKN+ETpHlbwbXr3xd~q4qiX;nf=M*X7^1Y& z?#69^dINh#Fi-)Yp5dgNA0U;PA0W)aFS%41h}slifSMuuNTw^1WYHqXTK~_M`T)CD zK3rns0K3OTxuB;8P)twY7-0u|1;FvZ#j7S^fNTN$!#Z%f07+3b5Vw8+2pj-{*d~Sb z;M}iGR3KaG$|-X|kC+;owkhg>RCzud*;j`o(E;cps1Bf$hL}G_1OAs*51#--^s+x3 zh2X8se}LRk+f2tMp@6T=Ss+_QQXghv0zwAPnGNk3Bv}|11KI3_98i!gsDGZKkH2(c z6-;;!MC#UR??;BNOEw~(Altg^ahq$|6hLy@6Ch$JERyZuy#??gAjsjh|J)wt!LQ%< zMv+WSkmEUr8qGdwlbDZ?=?CTOd%FfdKvYO_A_)hKnR^;V-b7J=$pTX2vMBt~Ahhh) z@7HVpGR3zjuci*V*P*juqO|!g`5+JQAHq;{$S`2QbbqV}Fr|NP5^A-utdrv%qG8DA&5 znue~kP?RHVh5Vb3S4#m2EWkpHS`gWziA+}MNvgn)8t}RRsFZU-V4N5 z)t*ZO%|lP`oetzH>|pkjzt5ci z=?5=WD;(gr6~dZ09SYvVffa36>4L#n90m>CRI=TL@5izGz^?39MC5?#Q z^{TUVcJsxY{sBrZ{7fp{)n_FVYKFfY9N#@BTrBE7r1 zy=@-1(tVVpuAl^#St@RgE+j_?bJUP#&{~Q#F@>Wc#UprUoi496@SD$-_OIk(vL@LC z&fF-aF5#Iy;;wzxU1m1$2$Ax98a*o0ez_wtU(YQ^8}F}+c)Q8mm8u-gb_Wh-;3+gN zDiXHQVsN7L>C;=Qkh<&(pQva6?Ekg0kKpK=F9>S3_!v$7W}I05@MDyH+A zR7Ett$hc8z2JB==Z4Yi^wo#j*$pCE~JuITIj5`qFC8EX4}~s0*4#x=MGwXhJ06u`}2p z6@}>lgJx3(fB$LTOP0xbBj(*+9*|L6X>>A=P1?yEiE$CP8UTYS#E}mg1}^8;X^+BI zuy$=(I$i+>aiFb9{`Ss7tL8*!L-^D2);tF(!Do9Z=YwPO)#7gH?wx5>w5Sg;)ME)cT|*rrttgN$_dR7}Ei4*#042S;M|BJvwqln? z%{{C4R?~LrYFvQmlE^=2%lqBQ;x~qqf?TLfL+<;>GzbcJ3hkNJ{}cAc-8=YmK_Kul z0K75$hyLy4#s4~?{eP@B;eSZSNPxph2RN#UjTB$Bc$pEsW62E_=tiv&)Fud8tD7p1 zI>p*Hkk^SaEBgsnnx^lc>yPPq!-}j>{*g6)RrcmzUJf`yEl06>uLJsO7STOmk^|t4 zzQqS{B$iN$oHkjOsU5e^gq$q~)D2wdBp{yQ6~Gh;QWk%*2qVb03!jk-vubD*Fb8ObvvY?` z=Oh2Q$2tF@z0(?!6y3vq;De!*bMk;n0&;E_=usj>@Bel9ITZc~C^`86VD`Fb$X6eA zQUW#Bf!W{>OuGfm0297I*pZ8>!04(lWGB?W&ZH(iW>08W8+gq`3L8O@$&olo%C$qu z*BDtO{$(Jb*Z$%Uc$vB&Nnig%Q!$*#4TCilF!5mGiE{AX9#a#P9KCO)8R&p)z4G&) ze7Q@xKKcVhEQI`PTSOLVV6fQ}V2Tc8n)xAQa|4XP>@jaO#gKtn_}At6*Vd+m0jaVJ zQU@Ue%-!FM{ok7EUH3Tx@+1{kfSX&q!Sog!#SioGtvKDBTiRq!8aD)3g7juA!|tI7VQ8sV4Y{og`p z{axk%tCiqC%qbIu6imQ0Lz&;LimTkSakVsf+T*NZ)CF^cotvt-eeKio3;LkPkEIn^ z`@Z9-npnRlk3cnYWU<5SB}-BheO?}_gI1PBf-u32>jOG0%J+C<=##4&15<-k@;ZQA zbG!hHX%^Y$x05O8*C4gWzw>FyUo;|8X=75)KCW*6c(3yPVz}+pZY%P*RZjpuo>fe! zri=>_m-N|Z4CZ*f#Qtol&qGJ1-nNa7M(G&PEEzHdc&J*oT!J&JmmNri!|293Ve>i% z_n#znH;%kmaGR|PSR6nw;a!-TOUaOdcMX|GL`};rVbWS{j3>){<2r7ttE}}kdU;k* zEo2i48;*J+=^el$$VEPenvmt|sJ`ciT+Vi)%&xdP{ld2US3m3?ui9Ea4tLfiYL(8Y zs`Y&umfNaM*g;BbZJP97zbY@oV)Zg{Bfk%Uy`>3qCy-=X4dE>_o&Dyk*!S-STJ*A| zHR?tcq(yw~8cHJsXC>AVrvH?|>33K}AjcD*BhjC74G@ff)sDHDhKCEKzbrSEg`q`kQ+4^GCKE{+w7mWz{!qAx5Wrc zbgovD)l7}o3DrM9KS|xEeF%O7h!{A7Bfpmf9xW3u#2opx5TGh}ZTSQAlm5*GNdBz# z=Ldm;x2~8SR{ipcObQ!N#s#?t)&5hl_Mi0v1^a(5_Djcp_T=Amj1F9dBkWn-#+vu0VNtn`AKF|wlF`d{C>MlO4OvX-5H~RMGJjMzjqz{ zTOm_+pw2ca`L{v^01CP|Fa-ep*=S1pSqu5cJ?4xskoa*7**fQS695qXbqaI-C^Y@E z66TD!(x!9jeO4j|o+z?=oN&Uy-=>1X= z^7}nBn#GU};)40P0g&Op_8uUuK;yrbaRU|<8ZG-*ThExxE5NW9j2XKV2KBjm2AtO4#eMKp-X|CY^#$dxF)F= zn{nU;r>1cLsm24@1-SkG0M%4eGTtv<=|8+4kY@xiX=uP3za?$;avJ#%ITK4^85LQv zbHh0fVHTEwkY^|%=TEPMOYZuNdP(l>{{VHelSRw~hu)^x9#~I|EZpB=J!V-7SlHf> zk%_Nf-l*Tv*P|eTJ#?o3_p9Mdadj=|h@2##MFaRkJ?%d(EuI=4|BE-k`IYv26Mt$f zm*w9-&lCsQ0jSf!$N;R9u!?}+FDnZ)|LRSi-W5*d17OHMJ9bVS{Kuu!t-pHXIPm4K zy8QQG{_TqWy)u7qv%mkDe}8KIeVYBnq5UsMvu}1302?ORez~!u5p8)`NLhxZU)a0t z-A;=U(J8!CNOPnyBxb(dCLfDB55FkBGJs6~8rEsj+MN|PZjIH?gC$Pk2)#%K$RZd} zE&%MvOa-!4i7X39>PU)a4RBw%&QjS-c|QmEf-o_Wk3(ktAj=YfK0;jvFgeUo>_h*h z{C})3d+X2D!GBd-3m{Ml06#*%Kp3P11BMy48Q=l7!KnW~RsEOF{{8VkmhJCp|8>9q z58iOtw{T=jBHU7^`imzgrQ6oIz8mFwSpTga(QBSy9zBaS*RxW*TSRyD?$$*uN#{3d zv+mQI2y1?ol;!Js{z~%b&4+)%B|bIvUHA(Y?r%ozZx;G@A>eO$;BVpPZ?W?qqWSRO zT<3p|>-_tl`TL*w`=9x#Py26BqKOff4BH0&ANJlms>!a+7Y@>-C?dT`R8W*ET>*)x zG!a3RCPGj;2#B;Gfgnh4(glSeMMO%ZBO;+AO`3qzkkESq5&|in+vjrBflYImgmvn*M=g`OJ$Dz=M~+3$64{;l+Q zj(iI!vO}OGpiCX69PP`~`L|+bLe(mCXBRk2$pX?~xy@c-q&HqqXw0AW7G~H-14Dk) z#|)SyG4jv<1WD|AL}9kiSR=+pB6r0@WbBcfoO7MT%57~>x z(gV1WrsMZ$ILv{|CsgFxMn6ehg^~?z#gJnVEAKZmxgbTV=WkjIIC}0^VC(u-qXl<2kcWyfrn-U!xSCX|EIr zktPM_ARF@W3W-SE)Pul^jX4viG2?G@6MK0wPB4^x!kPBG6ALZ` zB?4ZRnbG@&vk4ow@wIa*t$_-iou=jZ`Mr+2uWo&A40EhW5)fdm!DTRjx_x7dS&4D7 zoiv6q*}P#z=yB)zu=&ZFYaagW6*U9q8`mFpf{s5{WglR+(gHeX9sThL4z%MI%Oq?V zXV5!ZZ#6yd%UN|yanmvB(itO@OC8@|Aql87GBHZ3?NkbDO& zTSG-+h{=_F2NBONEU3qrs>m2GlpfxG{qFYCd8@D8IX20mM%J`%L39yB=VapR3bVR_ zj%=BvZ}s^d3$L$A3pCnPu!Szj34pfcRf7X%wfvczP_e2yoyhQ~(DozD`k#j$Dcw02 zFSMYQ@={DrO*U;)K&6<`ou%Wkid509e>3X_sKVkKR#@=(WLx7=d}oxR>&7jFK#!Q|mh-}+$WF1_$>J|p z{pCYDo(di)v}v5hW1d%yj>64~?>W`5cE@=JsQV6tyYuLOF?kZezH>z=#Vi@oLM8zX zBQ2p;1WBdxSK(s^MNuhi;UGE5l5RH!qQBR;0}Cjbe07X0PE)6iB&Y;UE$u-Awg^|i zo`co~K-Xw%7E0yzI0EofX8M2CE&{Ls>J{eEUhlG|!81~-RLtz4>1nU-cP!0X;97^p z6SY_Z@VAZ4x@q#%q90&(+F+v~^_Ajh)+Nia>gBxbfXFk~!#h-ts|jc_M(NthzmVHb z-E^W~&6EVnF)@f5=4Or%D5s)fcs69juJYS%%8vEj$j_fs+&#IbFJ970d`9o|$kuD) zzS2{(=tfnz0A4Ze0;#j(KsojxtA2VSrg-_`&PKkNSo!9Ik3!7s@*Jh0r`0@ol}%nesIEF@;30lKs`Bi@z9DvsB|g_q-`CELc7 zX@{)%+oTsqP#bN2&Eq4zH}l26m>3?N3_Wy|E{6mC4kd`kY;fX5J5;Ap;SJ{r^w&mq zT^A)8OG_!o`y?gOPI2B(x*7sI!5AR@zq_LvNWH)Ekk0m5_L4y7!j+@{yGPWYAS{XV zZ^LJlGyTl-Zt2T`IEoY}1BzYiC~JC2PF)@IHa&@(=MFvn7ff0sgqjQR`jB+Aui0{V z^t0Vk`8BH%xGvjEsr)Frny}YeTy+_VhMDA$g%o(K9=$+1F_QWL&W0Cn_NB=UpROgm z%Up2F#@zbmR@-8wFZqSe_xp_vsrQd{`)^+XTMb%6up9{x7Pu|e3f%4+Br&w{W>os* zC-cJ3&(22Pd`8rboh>eV+!PyfxNJv@kp5gWmS2Xz6Z zME-ARyrl}shXNRvNVd4|EvspIWT7*=DnpjnhPsX7tslgVL3$HfhSO&VSQf;X- zmJFL0Ptu1*1Py?zWuIx#QDg>b5;JWFv@9H3jCqM|WunRE>5s8}iyhFA;^S#cprkxe zz*zh3a+zauws;Mp_PIBde|+M;x#e2gW9xRt35okUCt6r|?6n+OXD@tV2auPUe?Hy* zWfqdse!uZ2h5r9rB+CB@u*X9Mdz7bWET!FRWB`NcET(~b%`Tg8UdWA>i29X7UHm0G z@b_fvl<38^EkFegLc9K{|6s%M51LeJEI^ZzNHd1~9Q?nOg7y6$Q?T!}{N>!}%40wV z2rBl45Pl#Nwv~)azXM(Gp&-bYfj@Jw-Zy^<>mEA46h0v!BXitbh&?hj?8K$6sTfoCn82T2qo&Di#l15^0HYvWQUV|?Nae7a_fg;CEf>f0H}$u zM#hgMk6AZ`78Tm*ZxqV_2jq(2Th!w*KEFFEGVA6qVzPPo!tNivWqxoZ$ObU){s~&0 zX*`RVP5%k1L;(mEM??YyKcK<;4Q>da5DX*Lk5G|MAJKYnLWbr2%A$Je-^ZjsY6O1V zWeUDbi@tXb^nNUz>Fd{ka`tql!{d~?U}vz?*KZ8L=0E5~Gt2d_fO}*+0cfeUDz!jE z&1vQg0U1^;@I&F9%&UA-5C}h|?{T7~WHj-j&e>H{H9LFlQ(uhgOm0uZ^03edsRo5& zYb~-2Y)?ChO+SkFV9Dr{lk^SkHbaS;*TMM+|7Z3L^k3GXfJ>4w`hzzr4$S&?nMxqA7vQzq&=Y4%cAWVZ!0_mbu3Y$us}8)7v{ zfd7$nv!qaR^W}KS?F1}yv<9nFBY*Z7PBs$mQ{dv}yO{{H-{Aeya{Ex_{*LyHvrY2{ zxhmPqu0PC(($qI-M+`H?G@?a>^IJn8$|dL`Oz}IQdQ4_d8{KO7fSA6|dw+=`%w5fh zc^X5IRkyY3D&Kh(7~LJydzm2hW59(JsGh2n#^ z-tK5wy7qF~2*q-3`KoxRQBEr5c641sV%oHksEDj!IOcqH~JEd55f!8L=1y3gUx zSaiiV`;Qqj$54-swTo6=FYel5rxZr-OVDH|lzUov5#`rN2J0TON~cN@j^|P^(+2Yj zpvfht>sOU9<(za9{PVli7x;)^gbN}VT^{iqPKVFasraTLy23Zc=JjZ3vI|u8v7x@s zfkQD-`_@nQ zbVSEO=*V>Bqk#LYC@H{m79C4tt;JgvhCTRDKKL+%FRZXuciPUMtxtKcyU0Q4iFwjd z80iy@6)}qnfv^XOzyfXp#v6)p;P#+%Bi7i>Qa90fY^ijf?IoF<3mB>LKz|g_R2(lh zr@pD?h)|6K440(yTHnInN?-N#@NjVZemT08Gd7{JN5WlRK%0%e=?gsrO%PD`4ok-& zHZBze4PyA=eDAF(^7zfSifaL&7eZ(i)m2YN_C8SmPdE zVehGD>oYsPs`=y6a9UNh;r4gUw5^6J^N15uv4XpXB#F1L9P{qMIR<|Kd2*VH;PYcS z%jIoSsb+Y3ZaNhT4?XP$rYYfoTn|{iy;7yhkN{?1aTA8WQNYETn-pDZn5!AHZ`!TN zJwHKzlC}5n#=!3GFXX)hGbI)M47|JN13aLVefA(5w{eIGzt*P?K+~3e1REgBb>FJ% zNqw%h)T8n?9`zCy@zAZ~vvYp8zR{7A0hSFjg-f3nhK$7Q{o>EfXW~6Jz~eDAzVu0S z1qA@Dv8H=ao^ICCCZ>t^eRkAe2No}qf!&r$LJgq6@cYz{L3}WWr4HyZjbkK*YlEe% zQ8F@8CBajjtkK0!EvASjj0q2*yjE~s(ugfV?FzLRMG-2vhiJJiHTu*kv+LoYj9AF@ zBfB=)ldL@EC)Tlk;Wk00Ao>AdHvkSFP5{8Yk|0E*IRo{bWGEU90@V0~X17|URa%fo z(^eGq_MmOG6)cWS>nw*IjF^K$3yV-auK>LRMDx|EVu5M{!&zi#$$IHPm(o`Y6T;T8tXN@XS2yCqUot4+;nr0s$^Oh=7hQ- zczukZa=)^M(Dp$id1Y1R13|QJbV&9OKhySl#{;qp<{v4fQqRpA;~B=b-%Q*)|Zk$e_C z9$2W5xz6I*4?5`#gKhGrWOtR5x7*M`7nsjz4-@t%+|ZWvAPy2A-mpcm=CdcR>j#+_ zVs!&wtnW`w-T#g<(rlTpbn94j=sCvm0^uNp`R)#*+$o?9*Ta4Hj#)=3z9OrP#x)T8 zQ=QV(e4TlWa=e}IUg8M9bl+4be1RJ4gP4dg3w*-=LpEg8^GjNk3bDOyFYY*lPF#*d zU0lJ73{aT>wF9mK+Ks!C<(`*}Ly)_bB(L`XtLW^LRT`2PSi?j0Ax$ z=CX72MDZp+Ak7$S0yeVM{-tV z?^j}V){6lLvb%&<+8~leNj$lAVkB-P|3DcjIbo^e=_e39t6QFu$=)`vgl1)7*SJsr z1JK9A%CeKz0DUb#tRcVi3zq}!JZzS-S`2W66GDv-moIBB=r%Jm9J``4hpy~jfAD~; z28R>CQ51nW|KXNB;tf2^ulLCLAmK0aw^8tdyOw`R+UTSge7~4=KfRk#Az~(rOOeYxr=t3 zRs{gQ!qyF(mMmhUFD&wuR~$Tjd)QKqjLu2#T(~H4#5Jg&Ciu;VKS1)%Tf!UwMg1!{W;}0+p`7UZXM<9MqK1V z{*Mp`-#7U0nL?OzSx~ zfs8=R=2c39yevZ>Jz5(7S{j z0Nbk_4DoczFVpX&$yAaMvrtahmQiev8+KZC>vqxw-*kQ5Oyiu_vo%vkRR9SMQEg+WtOm(XVi$_`GSBsKacJhy3-`<^5(O zzZ0!a%v+cJ8;b}rSdpkwfTXTa3d3CcFw(yGUBFpZ@e@7IQ5 zu9D@aSh`Xz+p;ApVvK#GS7!C^HfTyYJ=5u3ja8|7_3Ytexo8m8r z?9oMiC!i+sR(HmliJPY-xQ>1XGFt%I_J%N_*RoKw*G}}rMQ$gY?sRYLdpg_L@)KV# zTq=@`B_y4y=(Ak7LUTN19puhN~jEg2{OY{W5 z{KZ&9iikPDzFGy09x1xiGGLXC(O56z!&@eZFt>t__(oEaw)v#*yV(WJ<}b5Lr9mhs zqzH`(_R6$+0Dg(U*IHjz_>^{^wm>DW*+Iwz_zhu=4cY zMT@dU`l7W8?l1Cs@l2o|o;!HI^=h&j8YNIT0RoLDy%8~c$__hiV$)4@_n?>=5+ z&07Yc&L9CiT2qYG&E+u&XM+lFPRZTL8k9ptxHW5v{Jb!6&H57A5q^sFiBOAuZOufo z#kq2@TNp_8l;{O24zR`88Kxb_cb+{hmX>^x*(LOaE-FNb2nELNG0d+8jE{pQ0c9)43@&Pw3a$75>Y6A3lSCLMHB zo@q)u$j<(8M=Y`xI?09IYC;|D3Yq~dkC%IVhrcE~VWh52_EcyJKHEMwnR-!u=L*=~ z6$)xl!K(q!lx4UYK?<&IqMLggn+UxA*1nP@n9Sw^ zIS?FEAp{T~0uGUiLBKJXzX}s!4DI6mWX~`LcF%H9%Skoy<%zp+q4ToqY=0=C<~f=H zVt-iytI~S7agqSG`i8phe#iSB-0Zl7&RL;_BuB{Va4OiJ)KbU1wa}jcKVn~kXu0f< zlU6-q_Ed|gCwodiLH_0==(!JpeTmOvU&oq`qDq_vnX;5oD5&P!?~_M{rtWutXyxB^ ze8SD~#C2zfs7j5>CF#hK(1iHgIB>LJxobp{Bl+q|A4G=t8d83t0^U{One@){BQl#> z4sr0{gFhl=ZY(nW-(~}tmOy;!yCEd;*Q@?$qLv)vn>GsY( zBec%eM(-*Os>{u7(3^cb5h7jvw#Zezw=?H%{M9xpqZ7rHFieprdEy|EoGU7Vb56X* z(=n2o84lYWk1uok_%=`Eyf}IR!48-MC4>MLml5F_+^d3}P5mO4=s52?>}mMc_te@A z%x9BCT>+zJ79XeXSkz4sh%w>;M$Xorl4w$v}h$Uu!o+%$#@4L#3G?MUbM3Ey0Q zV$o3g?B#srA;Yu55W0MVVQiy1ZQwYm6IU2gjSvA0nWDW5cv>(!E#zdL#| z=+YnJtUWhno+cH*5raPJEzOMGEP6jq>lcy7iw*EAuc=mV^p2WNzSYuj(X(YmUI0sb zoyNZ8Om5yqO&V`Ci-4(hyBX^CekD!^M;eiZ9njY78&I8?!=p-(HwHVnF0#vOSf}oc zwW0YabR%%ScjhqBHVmiF370z@iA)Vdom+twZx9!+si6<^zvZT2y*ixe>qxfvu`8nu z%z3Nnh{_1SxkI|`W?!*$?bvOLY0A1vThs%IV7V&n8u z;^Db3b)nh;oP~MrVuu+ji#IwHQiT`MCWu)i2CTt0<8lzu42h_JF>jDsAd^+Ewg zSQ~g8-HKrMp1gcYo!)=J)z?U0{n&J}S3OoxM-(P@Bgh!Wf8rf|11S{ftrpI8t`E;* z!e@?=)QBk7spT5q9es5LJ^vG5U(@cZC~sG#VHwJ`NfW&(f>+Z?|;<}9%Ep!#yvxLOtE8qr1rC+qh1sEC|Sc4*Twtj#?0kKG@ z?6c*yQE%d;=T2U47O~L%@)P8W=h^ZBI(3Yjw6hq>g#j6wyhVE<>8tMjRikSQFXz&G zZQk6JJssFrxL|Aj=C@eWZ^f$rck=u^vVTHJmhSI*t6&JLKxb};r{ARQCIGas3j-*r z!pvRi*F%|-vH)_q$r9BU=#dY-EA9>jfgq!AwM2go{pwF_ zP^9sD?IJR5nI>h@m7(epk8FiSo+6t}`C|=KZ!Z;#rDv?#XPAl$Sv}hOwc<_0d{A%$FAi~V2my!e zi!R-eTt<@|-E3(g1Az7vuoDSFuvtC{2W-GT7Boo#Dmj+&Tl)u%OEln(Na=R)4+a_u zv90qp#cU9P|2ol0WqbpOVY$&15v{6g;2*pZG%AviM|}ho_m@`5$bDvtru#X73IP~@ z19}J=-nor2z>e=b3R#xspprcZc{G7BAfL{ug6wUeI}&y)0d<5w;sg^I>+)#9NDK!} zcYi4QK$a#j`L_#6j#mE&x)S)?r5Okc73%eewAFty%39JOt;Qa+vm4k?38kH^?>SpCCYAfftwXpPGXH zKcWP*_x_7vV&-%X#?uk~BYO})-zsG4HsD}pxD^4&O2AjN0s)W)`^G<32XG}tp{yKW zqc|b9#(yn<(O&d_InIBzR5Ss#4$ElBG7A;RiRTlt&Y^%lJT|NP@5?IO=O0S|@<*hA zHpqW5)Ja4fc+COO!+@9pTvR|!jLlPrN(X5KQxbOycz!@B3N`=uP`|Fkf35$=Qg!@u zQ3K?dU#t567^=&8;4mKObJ`*FPKX|8|8Cwn@wMcH?o3?6=bxaSUooGxX7^MzJ4k5+ z&g$Db{fcIKIK#uF&=#)}!G*jl!Y>l`5(&#XKS5<5>-U^S!*q*={S4nj)H-b>vG2RX zPaoy7e4FVy-x7VU^yrme?Lky6WcD?B+aJM!*pvp&w8izL_9p*WU-0hSUm_43320Zu_pK&mwN4n;wTL64!ShXm!gT`U z2T3nyiLB)$o>Tb|2(>4y$PCsRuN{tc4A}v;hegHbP*c$E{7j*9Fy+=fSlU%4WNCX= zdDPjKcc}+r-`P&>i*feK$*xjiDjUpXW%ya@TZ&*K8>zV9Rh`WX16M!#!zeegIcbLP zZl8i%ix|y)7=o`bHw;<_;%l)RwJm7+mFzf(xtFzxZfXxpXj>UQ z{`BnBV})SQ55Zq5&w!6#ZZPCzgGT|P`BsB`ePQITVN~{s!3Kz{SXt!^P#M0)eZgH# zrRz)@b5DGs627sPtV^4O9*2w0#lR>}4*J8?<=8!nUGDj0738zVsfs<6e79lq%Ik~v zK$t~}+yb4_!KI>~pk`ILCP4+~P=G@uK)I`-+$0ytal2u~L8-V4)ecjMT~ZNt=3vRg zwn7o7QeJc9X{gcq(~^R^HO`a3c=6VnQCWYFLl)+3U5C_4dyUo9D?Usu7^V61S8{d% zsXkW~$Ak{?JCHQ5HLH}vM%@&egU*u8h}H#xj;;t1+fQkiMqQ)a%EYIVBu|uBgz!u# z&vMjjfF}^mH`Se)QgK;qIKK!b%+aYHp(-MD{Em*8X2i=kdF9xedCnJ_v$JF0A(duL zOoM1UG~ks;TEVVaezeiwZTygt_c79cZ;z|vT1W4v5Z#iJxQ~Wc`OW$PW^=PLb4bwX zl^Hn_3ju73cS!Mg5J0``kZPy=tU2wXOs72wqVuAZm0p*OW~U47g-4DGuh-RJKBsB3%TdOV(jXD|8Q_S2 zAFlbTMX;EnL$L1;t4>r58SS~5AzqUWIq%yLFW{R7FXD%sV+y{A89xPa^`&M2rM_^J z0Pk0{<9$%FWj~o?ntU{a2oJ2{9P9ns-&qa&+K8-yQj|5K>w5vZKfaz4Mi%1u;BRd< zex}1W0YEyw!|a74gw58W>pXaHC#JH$dD^TQ!kJf-aHnBRMu~y9(tl-M&&}=lLa^{= zRNcYTu`E&^(Ti049?`4`S0i7sSiz%171!+JU6Z|zC7PQXFfp8|MP_|_e0iB3O-&gl zjzT$I3yB3u<3ErUomAvJ!f|Oshz6%dGIjKCd9L(51#j>WWM>ggvd=TyW;BMq$#E)o z$@*G3`$kJ9^>toi(Wg#^V?;gDuI9_=3%{oSu@Pi82~6fCl*UQQV*+1W{{*DwT)ndr)_{z!G7qF;@b0oy_E>j7c- zh0HBE7Doq*GZB3bUfhRo-mW}uUVf?Dp)vJWrHa;%;iake;0I~EPPX?%z@N}*WEIoV z8Dj&YTLksA`JQ8s$EVk}uk9Rv_}v2hoWX`QL*B2P*4ImLx;7!)EW)?7m2*$WGMaz@ z3kb7xxbIM-lq-a-`W58aLDf^)IK<57O)bo`nAdPZOn1J9^nk2y-6BIQP0uoy-%iVLPprqRl_Ml#Cs$B7yq`su; zLh7}%S8MyWGfD5qhzitl4MmDIK0OZY+|RR8`xF{3b1G&32sraWv`K1ixR5I>_sDr8 zfk}p=L5~#LRd(6;4J^16mo9T}R_h zbj`a?+Oh6)5TmHk2xpHtXch4dL7|l@#aKwq?3UHu5&wWA)<4&fvf-ywL!R_%+}eS9Ka`n*C^v^-Ye%oCHyGYcm} zy9byT{le9+5k3)P3EI!d!th6gbrH}|gJexhKtPJ!$8TpV1It@BvMRswIYp{R2{D=- z(z{@Jz=a2gDgr(`?1K$Qat*vZAH139bY@8RQfgaIj6JliB1UFECwz_-1ilaifI-Tk zt*8ly5hee80P*S7q3m3PF{_Qelz10je!nwy#|XhPbpjGro+=;IgJwfJK|;Z76sC$C`BWI zD%pZOe2Q$fOdhQ6Wlz>m9A2z*g`F_8bD@Tyf&nq`gz?%=B;y9$V-69^#zva!s87tq z;!+(CO?$~~tTj11q-oozNzlMSfEyEr!aX;453Wk$0lKK<8+F^eXz&d;<)ZyD!w3%V zpCFxXt$w48_*8=Uh9SOeZFXrr6;I#%G@J1Lh_+?V!i%KAsTu9Fu#YPX?wqrp+e<~L z>L7`rPAI2_4DI{O2~zW1;H^$$l7GJc5uT*V68xE@{qiQl1&KAKE~$0?1^q)HHY@1H z4p{?!gPNm$c{WQ8`?-Ygj?>fpbhE4eL!febMh3psC#tL4FJi!h4`OR#2%n5PqkzSRR|fS_5C`N$Uh9Nmq&^`3Lp7J1=X5O4p)T)7F5x{WOlxfF*QN6vD@!!`YJC_WOK-bi(vW@?#C zne@m)O73&x-ly2R966|7R5ZGLY(uMbRYZ3p*$ z#%rOtdq&f}CrR7C4-}M0>#k^LUT?*B_`lW>4iXx+$cSWpFFlZ?Hw#i5TZ~xWDzc`H zg7HQi$0;817T}gf#;DPzB75zqYxl;*-|ZN_dUBUgcMOI@Uu$s0U+b778bO1>N0cT5 zj<_6Q9n-S9x?*LUbTLo2jAL_8G3W`C(G|BhbqvqUk>x7u3tnUu_zA3y}8GI4JkODPh2*kTpXqhjt$Z$0+fdB-e1nnd5gB zzP>}My>@(^?Yb*YG@&L|V-6!@4pcf5IKI2wLXT_p^O%eaJfS=`Pc&9eEYo*t0L!-9 zv=K;JzcV6!yt;{EqQ0l-zk#XISnteYxJlUrMXI>I+i~0~?&f;5m{_Iop~uWQO1tRw zS7dpLAK;4xUUv+=z^f0mKr}T(DJy`@vX11C|=ezLMOCUiIr4e{c zc~TI74H=sUKdm1ySKGqjeTzJbd;HlmlS_{6)9zW`pX`#vih5r-Z`H=sV>9n%3-ofx z*I=S^XH&6;!C!Qw6f?XEc;T3{_S}r^G}dnLNNGHHCGu$9be@; z(R>X&xoMxaIe&h3-8rMpGUCWW*q7OPBjyfBjmml-E(+KMq4Xrn)=~6?Af{z4fW;jb zteBv9d*Y=m`$_g1vD4N_PeVBCFn|)6%|%pBBbz;rIw81}KEl;-vPYdqfk!BZqu1kF zuwC3kiw7{#M8lWd$4l;pf9V+Dr`D3SDB1*6i{bP7{x;|#SfILLVD90i%&zfo)n)4j zr`H)4i-eay#}kgfd_95faTK~1ZM6hUxpnGwd1#jzwAXnzenzj#N^HiIsnDSi&t zY9Feh_oZKqetv@uSA`J*8nlfZq?Amzujy}HCbE!3J2PF|)RG6m?d2{RkA&7zA< z;sPj7V5(Apv-bc+5I89Lq7OVvprI;+pb;qEh(Pdbdiv-ENvN5SS5l#~Aff5(9sxica5y zg6uW2F6JE8xD@mi%m#6KC4IIP7nrj5VL3@(`a=j#|4Hcu6L^Z~C05n3uW0-_YFvR9 z{4|2bUIrn(r-BM{IAUmES`)g`uT@rHMMDFhmKeZ<%DpKgovpuLp!MRA{Ox$5&>1uY z@u)}5K<8IqFxl|iN&Q!r84YsW;@u&}T^S$s&7!6uqIgkmQ|tWV-CJJH9h z5HU0<{MKZHRgO~exHYwGQ}%pGfkG4fQi-k7y6Li!O zA78`UZ&o?2ocwO1XMAd|@sgZga7CeK$c66wAbVOTxT-$};?NJC3hKgCJ#$m-7@D7S z9`lplHov)aUPu?FoII~+>}}9Q?KlH@yw*gMq4i)6X{foR-NUpSvTBvO2znbZs2svA z4&CNDF)2`LA6Xxo^k%14++9UDIOqwGc34n+aFd7O^!V+GZ8w#c32gmGG;F70QCH-Q zR$#-2F!RRV*))a_6VGvL_+?<4ZQ-X$HreMs26DAO1bphi8={DJtH;BzrVOtZ{M-+7 z=AI%?UQycHi-9;|o?EMuylnA#?FWZPC@KZHXI`6`@o^b?EEL^!+RRTZqnF5f)6l!I zAGF1TqtQ`=0YFGZ5P;h^O~sm`ze&v>pUk?t>iX`@<0mDjeYd|C&GVU_oQ((Cfc+jM zvFF(yZOAC&{nMDhu%hjhW1@YnlpK-As$Q1R>Lp5k@$4AY2j5T2I)fVV2>%5gX$CTx zpfh6)5Ab_eXk8 zeh-*a?9QV{9zkP%d`XWM6q?C@%xSFU;{mCU|F?h zA{3+(tHbE(9EB`oz+*Rq>b%5BoEV#;#vVpP)QsHiL%U zxkIz9m<)SM47rF%t9=fdi}>=GqDa~E zr)oY}^@L3xU~yaHlEgqlXPXiUg#)v05?s32TaBt48!OVk)^?_!m3EBsD;wO|n0hRK z3wW9dqU~j$A;FuayO1ai5x#o`B|&%nMz_1%yhR003E&=l))WiI28+!JDAMf*knNX& zRvoex@?3=`K)RN{T%QnMZ73mmcGw+hl=M|8(b{=2#o(mjbg@LZT9nNd3I2q)0O1HZ zKzh4G6!=t&S6p$$=~>>llD9aN62D)|=I6HB6PE0(mJ;j3;Ast9iuxV^^xj1xN|x`b zJm<9|FalrLelIUi>E5)VK+=%M1@%+tnC^3iPh3agqQCEwg!{I+zW4En>3gH(GM|l5`SFY<;s5i zON^if{#MhCO`-CHVE_YzH!!dEI4&Cxagi0ars#~AMDaFyqYF~GNo?m%R)!C)%D&JY%%LmLtn&Km`E7uC zVV_!na7WU+28oaYa0!v7G@cma;gU_o$-aBtt?S7a{l}}0y7#>q~RGfOacgXzE4OOBzQ|)4@^`GPd3^ z22M{JWs1N@r7 zpj{>2v32^m;c){$@q6Ll ztFQn2p?0Fx0Q7Q>z$BW{%yS9I|F?q%HJHXU#3;uIwa?(P!cSZdHZzn8KBTre4PD&7 zc4=91`$;E_#e+cC$R^<4VCl&mN6GNamHOh1R_Isb?&X+v!q0DDqqyl%_-2U5SpcqA zMe9wvR~QEQVEFnhtxuY`RXe?pB#_u&Zc`eOvW1sW$&GA<8!r*g$Vh#BnZ6GxpO;KK ze&{F2X1kkOCR??!6Ol+mJE%8KYuq2(f~?o#*V>RQL3A((b}VL8Y*f+G`C;8L$SZ!w zY(1v2Ifx|degM&r`kE#IU<)fWBqv%G9 z|9<25c>H0p%?R|+{)@}uubv!0?=A}`(=J2tw1*#8-$eoKxVyT*u+laC;+7;z?9e`0 z`~fE zZzHkRmsts>zR?Ge-2i&P2hMg+bi1DvHFfnTXi=k(#?%k=#KLw69JBzSzZPWnhbhh9 zUP^Wmqm@}9BNPtGe!^75PY|bCBx3pRHx?o}sQZ8>CylSa4YI!lyfDP0#J``L0J?T& zc*xEo+`2Tys0!I$k?ZA+@+Mu!$zQ6Mc z-##b)I|2@IcmJXhD$3=(0qD||=Wd*L0;J7v-1`rVKK{G@i{a!2iPn>NE%+AT%>}JA zjH)&p-9?5UNYz$AUT&rpANIR!F)IDOZSTt^^~{6QX~CBg4wEFCX>@~m_^oF@EH5+P zjEgC)j%D#U=0NVN1~Dc)@xQ$G_8&gebbm1*fByrZQ2!o;|AB+>7b|(~?eu6HSkmqRDxv2Ap<+_wsFPhB(ynlaOMc&OAJt2K|#rG*RU6#vR0bpEKBqS4pNr6Z)?%BN|xevLaV{Tq!4Ll zL+?TI}NdSZVL&5m^wrNQMqygZRsgyrC#fJFyNfU68$*^PB%UmQI#hOqkB zMciwWz}j{I9e5ky7lQsPKY?TK5nU%=(V9a6016NOCeL0CkOqi_K*>xTRFGNo1+x~s zPAin6^TTY2kMz-x>JQEMwMEuLvi`Y60%fMZ361~zdu0FWt>|;ba(^i6)Y<~cm>vMf zkSH=;N6f82!1K<3Zjw1Uzy$qIV7C9(0{A@*|F@Mf{@SPhyVMg#{@SK6|Is!D0N(%2 zHih~Rwkb7}%u;4eQ`gOerE4Co*(XLC%u4T(5LbhztY?(J-3-3S@T(U{Cw5>qAi_z~ znBmFQ8u_MH(VW$jfF6ya+W8E(5_jI&ezClsyD8$j`#oI4pdU=>*uBUGPTVCWG&_vB z)wad@)JW9|wz6KOVtPLobQAKt_}dc}Wv3ZnCYTPvL6; z!Yl2#8_Lpk%tekT6W*!~9fBNQJAihu#bD@MvIT||UwvA07AtQUeng1~$8j!lC_S@X z_`smDFlGDIXDf6@22YFeLUj}UYJ4r#cbuOjS3UST&|Cafp#$;Ob(F%0f=RYt0FY}) z4$4J!aoh>ZTWM+*ee1Ojfpz{TnT*scmN`V%zB{U5BSIT)J2;Qhzgzsur;M=-^{&E9TO4UTi5okNGpaV9xNv zebSo^#Wl+#8s~^wv}X!^PQCu}EW$}T7sYeh6`OGHouoHq^0!O#oS_UGSIn{6dQI!h zXB!uW-VzoHTYHuef+YXVx%!%rA-sW;8!qm4Ok4l_hD_5T`a_Rd`W}*UyN6rR!T=^x zs-B?ns(>+i;u`1KYp4C?I;D)oT(|vWl0L2;exU!-SL0$$`R4|`?5{I=qvPxqDOXz* z8IJTn+b+`;Q1>!%U7ze{fr++?@Qg`6f}7YEAX?l`8@P!|l@-0sOWS@C#<0+6tSfLE zs!Guyctkg-yjM=fLe4CWI)t$6Gk9%2ZolJ>_w0E+hr$}jiTG;;Qs*WS@dVg=BA9;J zw?DUYq2%bGg*`!V%j0#pK;U-NiKP|ot-F(j) zg)=-lF|&+h_x@~pIOWQi{Qbxoi_;(l`G)Q%hT^ea?P`(x=wJAjb;tzLA${H2F?ng- zL$a@9;}xOS_fm&fyh}mQGenC54ni_TjAQU+-doiOSAX<4(giBsv#m@mL}bP7@5_BE zytrj8H)kblhF^+sNBN+`RjpGQ-rHEd+`OK^ofN{8YU*%_IkDs7BJdgDU0U2GhyQ>a z0XB%(F|p=Thw;+j}boumUV=& z_iZhU$Y0gJe}QopnM&K~mT^wa0u&?({=uQ!cWKkERDfU)lzn6;OA+V;F#cV+ne=TF zjeqlgZu66A9>a}MG=|DSGN#s#k$-~T03{D8zTcPs9+}^Z;P=<#_fGJ8kNo{O!2ezZ zzZb#pMesW@1pi(HzZb#pMezHG2pp>a|Ctl8ZIN~nt@~q_E&2R>w!rXUbO- zrGR3`!@q0lI?@6x_I`p20e<>b_9q5UYumQ=k8eTNs*$u*E$h4dAUayL{CV)t(Z8y~ z|Lx7IfX*f#&3B{_w{w!Px0mH@^Cf@C&+dmoR^A!bsRphSEFp|#4Q2tj%U3b&$EOUi zZ-+M#)s0g_{ArU9_Mbh%w%YP93G9`~K1&;zTov4lk)Gqr?2PbUaW9cp>pIUUcoT6f zQaE+>iQJd6RxBccVowmY{EXL$leHUBv@-6-x?6>akMr<7nR2J|tPU0?d?~UQ1ar92 zgj){Q0S(5bZ|-mlkyno&nHig>9DUX+V!mkfae`yJ&kMsO(_j!-;zFcJr{O%z*sMjeKxCI@+*eB{=7@vEdGb}L+65_^6ZDF8ETyFfx&4E)&Nly*BEqI*M5h`m>g zyc*ppaf#x2o1#d1hTDp&k1w1>oUm@p%XLxadKHyno3I{aG*c^J)F27E0P7M-39g+L zLPUJ9gvBGCC$I8}NEs+YD~@PAH0C>bW5EAf#??T8C@nR186Ps&X67eyGNNPXeh>EA z+pj(fzC*{}Gug@k49>Jqw9U(8T#Y(C7AR9|Tn^}H4(Cw?qF@|)?9P^1N~>D}l>mAIE6CWfefUuFiR0O^hAT>hs)S#|$+=A;Az3$dgj{j&78!H|=rpA+ZhUpVF0fvlYu<&gZ6(&5wFYFF4x42f+^~dsyghWD=epdNA;zv9 zE-AiX=8q^LLK(_gye;OlD-IgwUV>|=j_CPdnILn0d+@Z*4r^=?XRXjvq|1*_efsxF zNc?vf!kVu&fbfc%$DOJFL>88tENE~Q=6rF%H@@lU;s=1a+t~);sQ!FNT4HgCXaQGy z+bOjkoP?h?D+sfgR5R{@Y|Tbv~}7iQMNv~#5))p6+iIOC_u`Lo*~MEcUH zkNv`))?RpzyLgo_*(E|@jQi_p=gmZmd+q#5hVnL=b*&F{BM*75#gmwa8xRDK_6eN` zxIln|6lL1bK*6AKh);;pqG4plD)-&fnhz_>w2I)YcGIR=esYuV{{HF}xog}unlUx% z%gxv%uWD`PhgwP>M8>d4md;uII1k*)XwI18Cs)acVU(@Mj2^;^TxDSkk=IqpYFZNb z`t;e7weT;TZlZcJq7b3{9>S?^pF6cew5G$W@>7)Zl?jqZDy*jx!|RgO55i7F6w*C` zi>t)!B9E+zFyT8=e9oa}*or9mju{NhtXG(Y^d1R^UWrHIZb7jBi@o=bYog!!MMDvg z-jNy*5Tr`)1Vow$2uK%D0Ra(^-U&r|2LS;E6#*%PDNWlwe`y%7WPPG-i6H~5>%L_*T*EerH{u(4v$AhoMQIIe?60B>6z-WGOJX>lX z#2?zb7q8)2dMRoh`u@8nI73|Z+EVT#4rQBH5lM2&`t}Z}4ues*CUuA9!AH6>x-%kt z=K+K_SNNIv#r>HHcqsK5o-eYtV9Zc{Z~SuglRHgl3)CJubJb_1N1K}~-(uD7PxB>D zI$CcLh}%P2$2)nVa7R}euV-Ur8Wf<{)WMRqoA{-lX8HJ5nR|lY;_dgf@e#z`HZd{b z?;xinIeA|~{k!rNDAPQ#{#_>E_V+S@#kpc^+GXhW704l;4Pl!NSsR!FiUyC`XxSis zEFJv_v2Wmi*RqcD{#^m^pPq~JXQ=<*{{fVRUq}o8e*JIHgJoqt02n31|0l?*6qpzC zNnro;`vm0CPtca>r{7i3BLAp@wv}be2OxVYjIO5soc`0I`+q&p4{gU?n`{D?TVUeV zUa0#zc9v`Wc%VvNssOaZF&q*{ga}$-YF#wjl)1l*Vdb0=WZJ?eXWic|uB<8+=gcSB zK9c@?vVxR4xI~}BeB|2!i=GC6Z1!qIV;XATI($%jW3DSOzj1QaCsUhgz&M2;p{)HV zz*Y&b5aW-`#AGO!p;p&4#;c{Lw+oX5%S5KPx6^JZwq6s^dnC&R6T$lNg*G|)F6&cY zt0E-xcjIxpG+6SAx05zO@#(Vwlxo`wC6(HOKH8|g;c@cE84PjT0DNG_guq#NZGN@U zJ1j=z1CK%V=PSLC@*6qKGky~78>o=YlOEjFDarGq&o!9}mI?|r+2!TeSQ*$&i3gYm zf+gmf4(?;RDz;b{)}nX3nng8gC-BQUoTkDTwGAk5N)XB2KLSVJ^jvvi^ck?0?)=W9 z?-;fz9#{2vx^SyW3bC_aHZd_uQDqCK;*5)n1LYtPh+Th?-5*Y?+3}5yjJ}WMcw<-6 z0@4i(4OAE@CP!;6xg~PFJrLqO4?J#Iy4^u0jOlxNdjGg6a>(jeWpR5nZxFygtfGL| zrK%3H_}bFkm~_RpoF_-YewMZ|lcwCWMis(;%y3`glE9V7r*=NFNAz>QMp{@z;$Cy* z>epvZX|U?t`f(-cE3cO9@RN_~AYG--6C%HFpOmieI>7PZ>e?unLh@WPvFs*a(0gPu7M| zt@5+*Ma>=mAS_bFuj6$2?!Grxh#PDKV5?x*C`flrYb(eQ@$SbJz`UG>9sn*>N)KlA z;zW9 z<6qca%iqOB06v%B!-W718~_JcAXVi+lfd3j5LYs~ERO%H**}w={|DIwgJ)tuW9L5( zFZe5+nRoG#{|jCr*a)AN1L)btZqfvru__Q^BwG zeg>)fp_~geRtJ+}8vsaQsMJYZ^&ZH)k%#5p&A?D`86DY6sz-QY$sa5D6b7fr$hT^I zzgW#H&vz`6e#~D@8Gwu28~4bla4fGq`f{3Y>K7=y97hHeCAb1?2f@w-Fw>eBFI{%M8Z8s`%~IX?)P0lqyC=R&)bYvnlsy&Q ze)~j2qXhVFAyX|*wpFttj$?89XS*Sl%3#!Hyw@jNfjV|p?OB-Uv$Fvl%ic2Vf@l|j z=mD0H+2A64 zp_og6Yyyt|r)|?dfWv*qutSEg0HB|owzhPz z3z_}~sl>_vylH>|_rT@B?Apf$qP9cA}$B@6=`~Nh-tv?p)|An9?w(HleA3bV1 z#|8JCokkx+fClhGCevLgHtZ-FE49=HJ);1G_A;=B>^1*o+Xk?@fHea=4JJt3MH$~e z*3y5LAoMr=|A5|ypP-k&my&W_K6DtkUp6;zJ*XvI_~ykhpl={*L146L>!N%OlQk{+ zQcKaYec6n^42Tle==KshLt~v(ccV!;pw@`FqQi~FPsb8-9jU8qsZ+(1y4_g!g5vph zNCMu`eXzxaA;uZmi#3Lmv8(G{n$W^1h1d=T%o6z<(a66LqxtcXVicXng9(i6Ux!z* zl~AnSG}I1Qr64r%NBU}5nAQ?55a85`GLDof#EOfwdSjl^Ys3GE2pQY?l}vb98_}U5D5A@U}7v5z08qB{LeW5 z>;{PbYoYtg|Nq%1|79!86wtY|AtSd^E4!D)B6bDelrGqSXZQ1vZn)=wfl(}3bOXP9 z%`=jtsL)FJC{)yg`i!s_J9v}Go9xa{P#qxLrf}D5dH%(C`@01wRjDqR^na#F_+MuE zf6DM>!^V3)-V`B8la~EXM52s%{p*H^{JtUOPnMw${lU^m+!@0i&kq*KCx9epaf<6K zc^J^j^pzwSA0J|*bCK)&5A!_El=**K6a4=heqZ@tP+PimACNnl(bLdYDY3>=A4zP4@Hw|Nts{n^d-@x=mjT{~d(jkJ<5dz~IsmtZigd zz2Qx9`iN7O^8&=B(nUecLk~$_8DURy!_JaEZ}PI976sGxj9m^q%%~?^Sec#7xa!>M zh1|^gOa`7@k0P}KrQi?Q0--X~S<{Y^{@iB3Suue;MMcDWV40>pzK;dHsJ!uGRl8Bi zROc{#YW}_7wl#SA#g2>k3e9{U6jcJAk>9%@D2MJ10Hx=_KFW$%B~C^eP+m6;Fy_J# z7&~-|@x9neKHmqhvX*~>%q75QgwW(uFpw^!E{=q)`%^VQu&Mh@$CSX8Rkrfafu=^d z&P4>^evinn;jl1_>2yA-C4>VSfW%>waRR?O{HY+#?tq)93CxDmJnI8&mJwDg6aags zN5L+rxK4o2)0EY4ZPUn(m)SVt&=o0cbP<3%6;B@|*jsIrjU!KE%uSP&J{1+Z-1|eluG(~3# zp}hTo!YjNLm=Pd;z<(7#?{blQp;u$yKfkZF{Old4ct|1esGA)yy=#a3e!6W)%j{ow zFQx*b9H!>hE#3p)dwwE)7CX0Lmx*Ctc|eb6L!@e5jOIpkzeQpY;{`R0KGd+6bnXt1 zyYXyWk+qlnpI;BN&L{n0{A_|}YvZ~?&CIDNvuw}h+*SI5P~U>vq?fBF&zrsXPw7V0 z84lN0euw{UT%m1p(3O20$4}6A%by@!Q*Si;f6!tye$(NI59nfg`MU?{cko&h3wc?R zp?~*paqR121@8d_dD7n*Q$Z>#v`7T}<@S&1y@D@RH#Y?Zp*NNXJmosw`8UmzRdoUI zyL?sPPcDvnuatf__iyu zd)=Wi?mGRA-u^~>aT4w%b&xl`shDVD5Sa3{OQ~|rR+a|6=l4=Qa3GL zdFr^}4Q&|CyXAD$G6k&V9c3{k2azczlXGy7+oehQ*jx5$8z<0qhJL>UN(;mr1bJ7R ziakWS5k09(-8i#ue(3KleN&xc!ceOdUys2oJyfE#%sJ6Ur#djETm+%*!X-mngtFpd zzJRM9xGWzeP2d%%yZZv=0Sr!X9euX@n{haTx&v-?D7cF#oxXma{~+; zQ3zPXfTFnxV}?DY43XagAGMGF1l{5d`38(Q*{90F5ddvuq}az7pCKy^&ddN15M%xs zmmtFL{GtmQ8*&F1c_s<%Q#Hah>-+@W4m;WFcr7ig>T;(8(x?YhwYjYZw}K3S8`+fv z*Y+a89`m^R;(dmrdyviP4I2l2xaP8KK0;^m)im~M0~C7z&Jg|cjkl!nOSZZ{x4@{l z4PY?FH&X*06}E~$KmE(WcZr38G2-Pw^i#3thvpv#FiaSZ5DWg}W8fS9d4!cNJ>CGc zU9cEPuZW!*{JEpco8k4RCugp)&c_QTaN!3cse7JbEgGZ+Xr6mRPpy?}7?DntMRX8;(!_Okq471xy4K%&Xot#G*Y*&wa>2HDxwh6J z#}|mw-0$wid_I}o`v1YtH>UPj`WuTv?)~|@tki`8Ybs=sQWJ!YEcDEs4~J_8 z=F3<{$G4sd5cJFxYV z4fkPeO13^GAGa71X(8rFpMSf`SO_*DI#xFQJ%8xo?=|h9S?VP5q{`9Vy8SG%$w{)d zU0s65kd|gv;;SIF3eN*X)e)Ex<8XUK1Zx!hu{B3GG-cSUoP!@*G;?}A&p3?GoAAMb z3OfZu&e>2pc&2H-*H%82>xM z6@9drEPj^3^r7%o^>~wsveG=&dK3S&s~trukHq;2tmC@Jv6}E53s0BACq8xQmxK(N z(=_H}`AD^UxN{t0f^^a2p9Q6isp!h zD{&w@Ie40q^~cM6{Hyw(#WshF=r`T~C%T-E;Hfi&IU^GBPdZH(>8hKwy8Qv zZCR|HgwMX}=IJ@n3BPU!d_!=|JJhSJ%JNF3Dr??K+0?SpP8Uv&u$KfXtX>8NgOVnw z=FVO2BwnF!J$U!X)AS!)0%@y1^7HHr5RI?afzbN-tXOZ&`p-0UhRZ#)}_*id`N{MptSLw7>n)d+*y^xJ7-;tQp{F5esqV)5qdmSo>h z1PCSoCV3+21Q!)7`V&O(05J2nJhg!v93sa%a>VMQewE9rtVlaNy_fKxL zL!Q5DNj!>o_G-+WVe3uN>Y|zdOc+iaa=}mF6W4~?i#-H0&a@Q6=R2Egy`ktAq`_*w)kN?& z@$qgum+C*Ajs-Lv%K{s>7V$IY(6R;)|A*BaLBBlz@0x5+%x9DEKP9ATZ(p(l){BK` zyqChS^|JoA^-{v`H6%^|a_@2fwbcIbwjck}R+N9!Rz)jj#Flob|Jw&U zcb46mE1~A0LpLP)%HtP9Nd-ksrVg!$7Tl!f&x7TO-C6oP1#U+6^6)!w(uL|NB?1mB z>PrYa;3JL~LYKY3SSygv3sVNbz2t*WUr@-K;)nr*t7}>#r#n?7r{SCFh*E?I{28y& z<@-pkgF0rU+#3o3!B>E;>1c->vQ`35$4eOI69j$(m32Y14MklO#R-JU%L|Y>mpISR zZVuhcVgt531vU0> zU0Ivw_ z7>6Nu_i(d-4zZ-a0a%zRml$$CZOLmyyBsgLo>3@&|Ew>LFpibsi117icOR>~iarT* zh;xon)GX>__)27A*?aqqZ8am;XFMLfyy7^}mSedDj!~v#>5TahhNX!335qYf&<7;G zrP*FhJVwZ6HBC0n{D;}-`xlXk1Y)2nTKurS9Tk=r2KP^*gN)z!)y{41bxg!7l;zn7QwOaQF<%|msTWNh#pbY6djza-`* zAdLHdo96uQLjV2$KhFbMs@PwUp4NYd^t{e3djUP0+{~u~Ts9pb>hd=rF0&zGK0vi> z{l?-N#Xfk?$x&T>*YV~}kJ58HRfI*uP8ffJ#*G&w`6@58 z0mtz%*DsZSZ|^4vIi}xn8dv|1x4-Zt)UTBG|5{!UDPV%9uv%9ZFe+H_Mn3h<;etdv zb>Byk^h>y6_ebg4PHa4j1MZJ11SGOmB8fS#lM^BIGseCNLBw)0B-a9oc1Ng`klGb{k8I=oe5l8xDAM^|$+^Jxb?GONVjB=<>w zYZbg>C;N;@Eb|RjDFBI&2@(vh*lb8jbuYSqf6nq9w6m^LzP23y&iB(wn@<|qGtyte z7c>bf=+N`G&?XgVx3*)xc5C{^%mb4gXQy&|H|2d+h3k|9`z}c{?I|jkx|bu^d%RIq z)@YtZ;c?yun;73(nYdQvDz`!kNx`>*JjqXPy~J(YPe|<+>{8~L*;rJ*D9UJ3TGkcp zOx3xx`eJM|X==pkiO*&FEO92Y6^C<0>-%IGtu8Z)cZupcmhiELm4mk2ORaHX!v;^-hXZ>NjbaKFdR zbx{a1KYIxYuCOe>`Um1So;gQfWSPQOQ$MJFG{?%KK~wV<6T)vMY5O17)I>Qg@@l^t zs0{ir|FquFlsHYpkzlmR?GyH<{#;|5Je_lZklV5DZD;&Buz4w{UFK z!pO%Flr_HoZU_Y^wPlZk_lH}xCN2Is#QI-OAF0x#nVG)PKF|W;xKub6P;~9qj9Cc% zSSciYL3{|;qm7zXbFnACy12PI=2UJ${YkNkFNeUTjT7W)1xxT^K7_=y2w}p?tSp?) zt`)=mykf4^*C&CdON2Y~Z1zaQQjmmsP}0+b}JJ(E>F4 zX0KiWEdj(BD>#X_lec9)xw+JCEN37ERD0su*KxPelcIHGVD=r4BGLg?SI|Byp~-!V ziuT?X#Z7C%{C0Wup%|8q+jaYrCDO)|#c_ezY6I15JYu1(b|us#%oVpTvMDlSQSC~~ zYXhGTyayk#`sLHOLY`)4a2q9HZolz#>{Ou;`vH}VfIHn+ue z!+)CqLAvNII6Vg$<{<*czHWU3ea9l>IfW;Q%afJ%@*&xoD-;Eal#|DUepEYvV}9)% znS6$VoQXN&!#bA2b4*@HiZbTY`(++)a78V5_?F(+f4YkfSL<9U5#@`p0Pw+fE-kw- zS;0^{k>w=_!Dg=7C&ZfLt1WST_5H&<&NXJX8HA}L2@%P9sIMs)H7)98?PC(@wW7W2 z?)gurLvcOBk70zRPv?J3mAQG796g5~ZG8wX(w7+CYbsxC+UWuXRAQQ!i81bwu0SO% zYmDn0on(4z>F%du=j+LM5g*|%LN(p*>+bD{p{9Ck;K|1MYO&aQ@0VWlv0fkYpBb`j zm_8)^E+KM{CSm%U{FbUaYWg^{d4xonH6I8!s5|}yP1MZwTxquB{vnsn%pGC#2y^qK zbqV!evZNJ7MJf`_l>N&8=BP_+s%0GkSJ;{yaSo^l1N*qa#Nrn2X4+LZcd53pVx!Vx zurLJewz%e-L6}fXbXk+P-a4B&ZnG&EZP^Z?eE<2&)FNW<-lPthl6*UHWAoP;@ow2i zmuf$3_7E(#@QfiQ-(9?dIJ}>Vh#gL-Hc>fUIQFTpm%a$}=M|g3(!;QKMyE!#@k2H< zbnK>6blNp`)5*@W}>c*8~;%P^*>=IQQ^P%^bb2X;}OyKVmj(WyCuJlf3e z#N*qAjj%6x_S`IlJ~z?#A@WIE4e+Q~MaN;x~0m(4c$`$fLXR(mVpPZ%yMbttpF z2c;+*PEe!_5`{$W1u6MHaebR>mSw(p;XT)ldsV zP?0TRkatGC^(kc~I)dTO{7nO(ALXw@XM=+0}W0BHW|ANmiQ;=CIe>h`~kGjYYMUzS&WOheUbfZCs_2aJAvu3 zf9%900Y#qfHVB(^$lH)a@c!L6{V907EH=`Eq2tu0$cswf^KARZa*!MmWf3nL@DBqPw|F>c>p( zH?d8LPuO&Ma*FTI-ZhF6=ziKzmY;57z9>R$8{LWLScP($uNt=iY~SHXaJzCcVDD@KJgJIce^C6wnwVc=!}i zDqzxWknlZc^^3c<#@PC}+pW@SQ!H4g7;A@mTp|2iUakS=e5`&kSoJkj;pN1T`*Xsi zHQBW*oKr047S>}tl6S*{8pKpNsXvqT~~l<3^36v z!V0wjPh}i}`-&K9y;uKXuE)$COi2}zQAHegm`sKNYfO5dr@eD_zNdnhW?twwO&TLU z)OifHK)<#x$Y>G!?(|aLy*lzr#aWflXPMV^Y_4o>C*4o#qSH-LNtN&lW~|1IrH#7d zXLEByVNK0kvznPCijRz2{l!vdndhg6akHOFJm*d7@3-_<|KM;a+unJ1zL4%vcoD5W zveFWJz<*I3;GQMmQ!{x4^>BF~44@{C-$G3$7A}_BYrFMY2HuN(-;mMUXB;cunQ$=U zD@7a~==4D9o4T5` zMPqNm$VZ>_BqCbd7^>jxGUl*}9B+g-q z7iRVOk}r{Te?Dp+AUS0m@FKd&jt1h%IzE4V)&tSo5rant0Z=%=qvLj{2$d#A1o z^?S82ik*>W^mmnG4wksBZJgR>FPqgjm!1Ao@t>fwRDa_WhE)P>)PqOuOKop+nIZGz zE6C}UiieoOi>yz5M0s=h$H6DjkAl5nqahP5w@A^iKHA?;)5B9l76+_EwtQ{KOnwN7 z5q=YI9cEuuA54iyp49Q|dA@8$O2s!k5JzZwm*PCdaQsK*d&e8ZV@pm&H6yQb>G~py zDIFLqrkqQl_L7GaH7IrAt7xW#2cH>l&Qj)AdYxxB)-WgC^truE>v{5ZdBvyVonW^j zvBN|7FtamD@b2fFq>p87ZXQK~#x-GS^Fep6&g_;B2{EQY#z^Y z5xsV1^>iw_AFX6;#JH*XxS+gY?z+;L+r6WQ>b$~%(Zl)aKs4;G=qb2K4uH}J(jNtR zjrjl+KhJvp(H{7qoE1k3q@DgHAyG!RxCmLZp#aY9U8CE;X&yST0p%OSFMu9qz#3dz zSI@!*7LS!p>WE@a^b0M!g8Q(mzXIGrgNRiWI5tFLBY>z9h`>D$awvScE175k5#cJa zC}%-T$%S}l5Z!JPr|8(@@Ah0?RGM_zmE22!QiU-4S#~yjp4zouG%MSF6D&S%JX3_w z`auUk!jdXfWOaA|NT44v*@z0jO1R=j)h@4`>+o@FuI1f0S3~?aMic4Lbbqhs)P^dF zKe|1{hm$l^Pq}rP#>-l+2I=VxdUiKh=F@(s0Y{bb+!(b zTqH)DWFu@6Ihd2X^1x`y)K9bPX>A2_o3(f6=TuOUOm!q%?%Yjj*R|Saq{}tY?o>Mh zS>k?mIyqY%(slB@nc0dbIn6!MSEqwAX_H0R`bT44@cY`r2)L7+Q&3WqiNibW%N_P5 zekI0ag`20!e0707cVgU+gHfs}&}7!i$c?4Si%-g6bp(Y`>$JgU*4@E!OjM7y<26t3 zVolbrXRG?32VSzDTwVFhxx?n&OWZDF&HPnA!Z+tIhboJx;6veHa~~?fk!2Bap;!R0 zKKCWkoBOFip_cO9r_#>bHWBi!vCDgj^4^PY9Xt!4C|@0St!`9s#0unrYf?H*_O+P{ zUUz&cH9N0gAwL|#)x*JHzxeK0l!7rPQ5dUR*i+J9tTwLRBxd>jol2w%vG2>bDU=|K z1&kUzcLx}fnk7%P3*Yg1Tmt z*`l@I?N#&Y0Sb95ElYjgO-cXglLT^iY|@2H8WA3Tvn^sM9$nE5rmLQj%qKTn@Pl*+ zv;Qc~Ity=e@&2$)p8j2vrB5trCXMz+frv~dH>n)EnmHyfL=IzVh&r_3i&In+eZJQ< zpytV2{>m0Ns&Yp(cIE|_5%I_Gdh$S=DRMkWDfjs07hobAALRK?G+<(`JB)*M#QTm1 zf@C#~7ePp0xMe;y*6BU=&P72GJL>VArVFGa{r;1zam{||LT6X&MNX|bi=}{GWPbJw zY7!~m_7k9ntKui<3A?y{On`b)sz(cb3w2@Q_(Dm~@qAF`<0M5kbOOsdkZ4{%quOBr zd_|Ta1+idooEzW%G?8U2vet?_>~J`I99&MV(?DaJs^r z*~Y=_cTE8zF1B~HM9=i_$SLI?HvrxNI8G`tVE7Jh5tI0S-f6vxYA4>3HBgS0$Y4d{ zokUPa0y!<-3d<^1z36_B4*Dd1PZAR48vq}zksfyyneLjFf21u*qv2887pYpAwTsg8 zA9D7EM^<5o5mS-y1snLqbd;N-j#G&6t{qyb`*W_)lpHV7W$`y@y#&uR^b|&jdUir< z(;RX55qHloS7&v)3k`f+kjhBsn{}1V^SV@^Z-`d`0zfc?O`RAA;Lm)!5sJ3{=}Fla z)3O!CP)8e#W|Nv!UgEVDFBh9O#(hlN0q|+}(;e>@rFGB)ZA!Yyx^=+(ymMVP zCmmZl#}*66y0ItHq!yRs{Y_~>-?WF&Nvzy8!HqUTLEv#OC;`?0Egk>KFHhL5lS8Qb zOG`pq@wI#>9up3i#lMO!MhMpPS%d6Q$zew?gTxd~=cXDJt^LNU zbG1dwr^u1tykdf4^Y9)?%uCfT>&J4?W8!Unec=PKgmYdkxAUzki%5L&vnO5G zTCsa@%ts97!>|k^UM;aHi*&$UY_-O{B|gkGef(su@2QxnL3L=7nC1ubV&cBSDHEdd z0dV$^tN^UHIbRn`NEwp33Cx=@^txc?{=7?e>fDevk3Wx^oQ9n$%!(5BH@p9g=N8SpS-g6&SK7|}yw8{x5IrAYzJClhp)60)xNDA&Q zi{xm@K!wP<^n2q4554Kyyi#u@;9miTBiv5SkQyzFbs8~`X^vk;*$yzvU7tuFah0*#jl#O?J+t!K zaeiLWv*+lhd2|nt`-Wl2h?|>CQV5l~6Azdc+HOEtN%#|FAvqC?Tl8BSn62}*U3&Y5 zvd8G+Z3uYdtfdUzD0?LAU^!aOvKS1}t<2fo;(wdnu0gfiy)08nmLBS9#T2D1j)kCY zB5ELPGf#+?bVtbtK9GG_yj;3cXEnw%Dob8U{FLpGS?Y%ksC35&;ntm~YHQ#r8p9p? zzUP~vEJKFpI++;uNmi&LAQvNn-XYY|N!D3X@}x zj??Dka%KyY`<{yn^^$35$&wdve^~u0s2|zF*-{;TytI6@rT#4bDjjmZGQ&N^Jzq@) zdj|i-3AY!OQ^O%ebUe*Azwjc4yUAJ}Ek|y{0I(5M0Pi(50I{mQv z;7A7=cFtRhI%UI!)GS>x{$#YDQ|J;`ki;A{N6_t!lDQ>}rrDUwA#;!{j$_L8aCYbM z#QRCh;YeHmEBE_lsCAYpReFeX&P+*{K9~2*IW18|t;IG47dfA)uO&(DupH=SA1-KgAG9Ao zvr;**eYMp%8G`zk>%MAl-&4D) zizoCbg`w}J9v)kY>KiI6KuD@w`lk%^*k4N+ROqL1H>LAYkPD)^5<+ON#yAd$e7u=D zzFx`sF77({(BzS>=&iBcqhMErg0AuqUnasy%WRB?`SBw^5M>SeXe}a$1}O@3CDM68 zLRk(izOn3l`m{b(N5jghGpobsS7+OIP??q+Zm&&{np{;FcOB{Ipq?gk#r|Q6>L!Vj z^GY*VWuitu4#FY{CfVX{uj&nwr}$2-$*smTYc^16Nm|~Q!nWq5@Y!7jEaYsV*usT& zNWyZz$MTN}9ht=6vIRAbGk7gkX;~YrKD4FsC?Jn(s~o@=+}wMfM>qAYU^*QyX9amP1mXdS3YxPp}uhHlF(aO{)jzqKxZj&LW zdsoV`G1oGa%N{q^kn*)d&MBz1^+-29qh|s~hH-&|BVdH0SYgB|95C+YaW z)2Ddn673CAjSoJYcS(%d2vor0Sn`o3<5H_0I~aA%4!1e_b=h#d9nG9swfJ0f|6J$3 zLbuIeniwmCF$o@$ostvn5H*|tjQjQrJXbK)wYlfqXJm?cTmtoW0zA%B-qC_N=?@PI zJrC#>>v!ZrE<@XQKkG+ZxW!`i3xL5DCwDiJKQd>oDpb!#eNCek&LE;1T-oLHa30HK z_t1}r(hX%1C-SP6s(r;g4!lx!a4ZX%iZ3=14@?qEI>cKF8EUy&`56@r6i2|x68xgg zU2Y#3pEH!_x)+$oM@Px3zp`=ee@jJ4vUqzf)ka`rnzkY_$i*N1_(VlnIM`^QA#DrD zcBQn@lEkUe`-pu}6tjCL!Tz0Q1V5zxBCAHV2rG~FN>dN?4RkbmyvTAydF zx(Ug6C97E!iOt&{DJ1S1T9Jcl!W+hvYZIGCQ;X(!Bl0+k%!>2oN&2UoB`p2>3KE2O z>1p-&30i{)f|oJnL56j{4TO%~xlzyc5rZD1cb=xc9=*bS&9QIjS{AKXFE_|^1Jb@F zE8IdY+!KMUY|c3o%zmf8BRF`o-F&~7X~*=*`01?=RQo|NY5Eh41bjLvlk7rGueu47 zXkY3VVFatcFWCX<*hZt=lK)lvLkX!Rv$>=2R zitwU!o8Rg3P%u-`lRfrnNQ~x+@|6X>LgAr`lMkt=%j&x3k5SRjw~?Ram4MnwuEAF^ zAFn-yj80!u6^Kpl8wN`YZh(^vg1k^!8EB+$)Q*Uvu$}PKm9%~HSvTy5$8p*+-RW2F zEZUi?cjIx(Rpeud;m#$Zm;I1kbuf}9Ie&1}?w;uG_}#C5HsL=eV%5iE0<-#SOs<9^od0A(LNWf`S#$&k0kj6 z6|hkd7!Xt~#6dF6<1M_K0otR7{CPh_O4Gbj!pC$yg~#so zMnkR!J+7Om$)|kco716AAMmKtO)tN2?s{FdaW=cJ_8Q}Z--@L<8m=6V>M&T^L1H)C;lu!Ay0qy!Y8=_p9BemzT&v7CJ*VTi z>g-<8E?`r`-%N)MYPg8~551=lKe{{mFea zJmErc6Bd3Z{WVhp6K^uDsP9v!(q5~~lQhTtkbh~5fm1bcA=Wl^uH|tR#u7ocr6uZu zqg<>uCHcaotklSC%FO04){=PfS}G7=9my7pZcBtrG`M4Ka4}b@bnZn?iT_Bc>$V6l zUd+HBY6Wx(LGUI=9*NG8ArwRSlH03dl2WeP&~AA;-6E>gUA);@%0v8zw)*z}pi!QM zY##FAHdhnkAWRyoh}f6+0U96kE(0ig#Go>foe& z+3)fSZ+5k?Y??n$uGf}zrL{VW&k(h<)()fEXklqiJEI_)QxY(eyfz2tt27{wl_ac; zQ!(YeEKBI2O4RHFl#CS6;)uPbFU&cLt{ZA01Us^}oBGV++{L{+p`c%60ZKgf?FtU`EwJQWu4WtKSQi6*OQ@P&GodFj%Dql2oxfT2VW!sZl8XFGDj6A9v#>@*W|f{=KWEd zT(~&!@S&{>{{sHb^Qbhd_Yw+hD@ZoGlNJJ0MQ3ufvQl~nv0*b>Gqhrd#W}D{!!GAQ zw<$4tmqkO6r&8;E1`q9fywpAyph$U9W;DnbRnak*lp$Vy?DNdRTD3K8ZgWwLty1gt z-6*3_mHre>qVoJWX8U0UFDEtAKV$DV{dnFeoiBJ~9)&0&|n>2}oA2C8AV8x@AoadEiEf~Y&&tIN&e z>7|kr+ip{euJPlGpIbzB*wkFw4OR2=F@KuLn0%r0uEUqiN4&AuW=2oTKiz!y8pG{&*ZC8AHLJMoT*P_KPI|qzc9G^QO*e6W zi*c+Skh`<{!2R7cIp|iJHtg}D8~2QdX8p{qPFmA zv_t8jJ2~Ios?6ERvXnlqRGz#2(jVvC54@OpjA2wk?kMSI_@HywG||DW(Q4r`rJ)jM z-ZVv5Wz85Z0{J@i);=DPxJrfO#aqcThy^AQ<)A+Sw~Y6h{*ls+6zJwBk5BRA_DG`8 zKfiZsu&zwhFxi7Os$CQwvzr`n=(p4zlF^;-r=?%W!@Qx))xLNi!m%kI_1YflQsQWG z))~(bx%;tb*umasS3I6=pZ|UxYIiw-J&#&59okJm4H}lQDH99-w8#h7P;^Q%~Vdiy;XYEQRkmP)lf@u$L zUQ`*TVd10+m2#RrEVuA#gjgG;W9eA4mmrg~fVNbU=$z&Y?#yqj3s>-)t@nJc&dm3Q zEoVI9_!Y)kG$U9@zNR)pFrbG zrD_6MRenlh*uAu8AU^z1rH-EbD=lEGMB|uCko|{?7-s{kK^IPqG-(|kbDke~a$FNv zLvC|wBl;h zMU#TPXcAC~Bg|*m$bx0G@Tm}z5xn0fI)&rKsI}q5#-u0&#;r$0_bLvf zr}ji9`J((XImfbzv@}j%1l7x~fu`J|TbMSS-(!}{YDc`G3?1-%CYz0-sd>xh@J(TX zIsTWyuL(o-uQCozJ@_U|_{!AnSw1cHI&#)4IUYhU;&m+}M~Ti#-Xv3Kw`^(khUA_b zE?Jg)HE~98nSn3N6vr$BRADe+Z-zsoadM3l*vk%H)AF^&${EFT^P9eSp?)qwC0=QU z=RSSUNI=13TK7W(c8h+3C`F+TmdP|2=0&fL)U3dTb&{NW2$<7fPdw|ZSMQ+qfwlmp_Y6Mr>RI`%})8`_G65_Ymnf@hZ9C+ zwsX=A8IyqZ>;*$Pk{mr50VZ)mfezU=SrEH*bBUirhrD`uF-1i?n7Zn|dF#{a3wb$F zcGqiKFW<#S^{I3v6Nfr)ip~Yz9y`>Z&F?zXi+7;Rw|8-1>AKY9Om9$;&)j|$^hqhS zT%mJ`Fhm&Bp&hL<34xQ3?=Y^8`R3}4yS{C}pR&un%zb;=bv7ck_gdrdTyYbn_p9-L()3MoC3kB;C zexUBe&<#Ue8A>l~=Qha;obTGVz1*#>;+wAmyS<7N@Kex4F>P0sJL1m~h$O?S?AJ)9 zg|Dh`ExmFO`o31K3-W={?g}f?pvXFXmngpl7`J2>+}AIbdP$N>CDb6P@{CxH;UK@O zA`-_Pe;hKcX!;>Y6U|ZFsA>68X!lyJ^jMbqqa?;lF7-;e%11}r)>pnv;h5Xt6xNd> zJLT0Mc6h^0ytMJ2bD7w6fC6Znk|s~9kWiu^arw&_UC(776s*fd?|4|RCQ)RM?@Q+O zRo1<-_nC%?#4jpRkRD>B8mf|byEb%KCZt<5giy4Fb3LD~Nr!he+tx+$u8ve?#7QEH z3)cgaR&w_P(?zL+?2B}W!%2)9Uu08fE1}fR1~Es$a91$%AE0Z3U?7j4+^ByJWXqqL zC^VlEl}rEKp%Qqas2Xg<)l|Ko>NX? zlW(SPh{OmY=W>cRTV+#eX;NZJe`|{B74EoGqwYmoRM%dZGFQ+oRAyMQ`9?!ljO1%3 zo$9)9L1*)w>iKnK#*9YT?eF)Q$Zx0Dn0{b5D&Aq)V$bjBV}qM^&(T0s1x@>u<)@ki z5ekr43*vA-UCY)pAko{ngK|CRF+ItO$*SZ==gU0lZPUZ!D{>?VM4E)o)B}r z^|v;r=@HT^H;?6cOIkk|TpwKV9m5K@>WRT|k(qoQJ?zf85GEjd>{l?LNu5%~V7p(w zot__bm$(Pa4u%guZ<2sRC^5c0Iq&7WtDGrnvjWa`I(<@Rh#xy|MJ0~%kdzujVtb82 zk$|nvJAngX#M=P~BKS#M%@R#^MVghP+2&l%ppa1R<3^Jhk{sjqDz^uu;dmQ18s^R% zob}TRT}+~KT_LJ^uI8s80QwYgbUyO-Tt%Z=KWs1@x$VLaif z6W-dckXo!|iPQAk_Ee?!*HAnnV&R`?G?XGi0gx_8Tnjr!5GBBF+rf0;OlMVR|%KgV4LysSr1dTYO^MR1iWQH4l?p^hb$SiCOv07Ybrp~{c~ zB2=+LXUzLGnrlHPb3|6SB54Dl+F)qJTZZ{T2Oltmb$Ph zQSZK~>-QI)aM;XQ`Ux>$3)N3O!@}mvf}{{&(32LX5h+nRXE5;6oRQNQ!6Zi!uWPkU@jS0;fS(THsyc z)&IfXdqzdIZQY`UB$bThsDJ_@AXy|729iiri2_OxkR-W)f>My21Oy}_S#r)f2gw;E zRFQKPv4EnyOZVRA?DKv5ym$6(_ulq`KWMF7%@yWYbB#I27`^x5(#p#SKS~37*x##} z;B8=iZcui4Pc$D9l&iE24-=9pjtV({SCFF*Zef6hG_WYayXxrid(l~sDc;F=w2TyfoP0dW`=GEyvY=e zUZa21(f-NIg$|T}Tb#E>^WY(}vYnp-`k-j6PAuJU{d9wbzjd%#sGX`=vQt3CMBzg< zWkl91QZ05sz&D?oy1u>s8->1ZSLp*mzmP#+O-*{@^f&jINq#a30zv;I56Cja`~trJ zF9Z4i0et_nf`70*Eb8A%_zz=V0Bws{l8Robo9rFPJ>3?U%fG2ty3CSy}ZRJYJ5w_~y18jV|G-iL+V5A*)_ONu0|_d?zG1PqkFcy(wz`mUt#7e@bQ#6nnvVGrjw=RM9}sw???x#=a`4* zOKb+&zQ79z=moLHI*`J_czl6W%Aok$l9@UE^XtSUW1OQkr=L4h#K#1{DHRYFIu$&L zDaLW9r2iCyUHlGOxq^k&>-*RN9ALn^gXaob;_(1%$JNVCC{>>_eg?GLSxdu>inCWS zU*wmcKd4`vizQ@SG_~tuzL2pY{~RIhG=nMdyzk&{_pk7RT6YLmWbiR9EzM&U03H#BH8Y z#l#J9keBYzTV;K<*Spc+oBCE9Opa!3Y2dCL+7{`PdgU!sUomQ>&WzCJ%NJUzq7YoV zp+dE+`o@yK6Gl`=hPojkfY=t>7Fypj7+>Kwsi>)ZMJN3nS)!0~%vc2Jx>G0vO!obz zJD7 z=xD3Qo0aPo2eC=qwlpo2Z4}GAX&^XS2vu|`s0_Sb79o+FAL7nBwT(&W+6ZDK_guMx zBZGG(!lNY+bTXoGp0s@hzUo^?3s<(+=T}2kd|@fK{i1q#wp(N`mZ;l~-h^z0UOV}d zaqt@+*0y9kX>Q1_YSo~mEsAD*Q(+X(&LAVnhdKZ25vnnEDahOInk?s#>XQx2jk{d9 z0p&=7cP|%f3;mrhC|RpuJ0yrchP2EKF!9!KM%)&U5Qx(1zt3FHQ<3`HO#2O$`q#kI zze1%tjthMUN%DdZ?rXK7j?V(WgD5ev=R^kpvOB^n>)b5{8-;ry|0fLU6WY^^Q>~uH z%hJo0=MJh%JR8}tvBKeo{^XXhCOdFjOzw3+q2VhTXAsaJ`3^gIb4D+d<&fsl7Eba@ z5oZ<#q@hn8GjS2xQYExaCZ17+$y3B5 zHf3A#Efl3gl?&THof3Gbqm30R2g|sm`;1@H$+N6@)P5>HNhoECP`yz->jH0lFZm$5 zq7Y_|GU)ou5jX8>og~YgE^v2eG1T6!!?Gr|{EJuG-Pa#e5;S{ydS=5zBt0NconDHj zAG^4?%!$dYdZv}Os%$KRrOPPp>Bt(-v(-QRP-B+>>?-MNL=n5s}m9hydrK}w_v)Pq>Df5gOYg7Q?+~Bm1ZIn z!(#)Nl$)Pa1Z0_J_KBcVuLbAQ*Cb3tDvKV@3V#O?Kn_@moT$di^OYslvn{%F=IV!A zjfOhj3g%#DhPrKIA}#_z`&X^-@^inSvM|a%1kbFd)Ln^>0`r36EN(g8^bck3LZ|v6 z9X#V)1$0ZFOhy#fc5CO3r;onvM0*6fs3<+NjvlW#YUm_#Sl|`iQN8l~`Ew->ET{KY zN$rbIFDd9+!+_-s%|(U@n*-o{MHb&dLj(E)O@$|vWvZvgfEX{laUsQU4-9d@HfMbY z$xFF_fu?!wBUbsAK zw2BHsvTilBo@aP1g$xfl-?Gar))vI?4dbw)%05L9;qLOXYR0yv^kP(}V5Hoh&L{ojrH@-w33^4Skbt zBVB@MHA+zL;~E0q)bgc_@v%BoBBQ9QO0jv~SZSxl-uP@qC z=vyWUkBV5o9)?FnK8nLW8)2LN{H9`v3Xc+yHYriuZhup0SejW+7%U$IWnbJ(Ch>@# z)+1unlM?OiDlLvy=dKKS^rGO9&LuDdFVsv(b3(*AhxF6cAVwq_^w(}G_1F$`Xk?|# zEGMiMSdN$jP3H5#X7%>`6zE(7KLkN}syu>OQ~w@sS&T2;M+N`nI?8r#3+cx+c*Mq` zq>jS2@9y@8p!i!2Bx_I&Ul4a3@7N;DMP3DJ66^`fyfioV=bt?}Cg`W7YaSRXQzQH^ z4`muGr^k4>ySv&+&4+Dao9%A-D3+Jgtl$TNK$lZ$!IIIEk--y}GBG#M@C@@)XCDic zXw$TXfILaABD^a-TEs`P>_x{WV+*R5rJ<@Y6L@42UpRT6_{P%;iMlcTY+0bl0^eAQq@<|$T=+%YQ)?I&>qtgNZvSWsfyjNU>`FuA@YqYz& zAMnH zPKATi4?-J_qtV`--$57nU!lWndFnzk)_JAl9qdCNJG9$Xf5vIh9Ps)niN+y=R zJOgaRf(`w^)K(hXhuv8XW4y*uLk}ltZ!F1i_>46=-@ovz=uwh_hKT;q0lBk1#A{zHciix8Kl7AIKX1Db@NxSh$vyimJ#6 zuxFG|LMo}p02`>bc>-pYYy4qOQjf6obrn1|mE8KYDMnx%G{9NX*MiJ*$MmDZf3bL{YF zcjxn2;3aBJ;+eqcr@IzCN5^zoc0B+P++~B@>VlnN(efI&6`s~9i{hMRzt85M8>>GU zJsCPRe^MQK%N=%d5lCGDMW_RYxjc%W0u5)t8jv!6D0&g-OCzH;_M)+7gm1g7Hr&)z zSdin&M@s(;(`y`D3M6F<+Z<+eg`cv{KT6(&3Na_e=gtC^=%h<*qvbDXoX3F=`tp=W+o~qz;TUL(IQ-JRFwfL;+wptH^XsENyv!XS)2|3mzzg`~_7K zjO^e_J&Xm?0jBD_n^LK8&~<>q(Qt{-P$b&v>aYuT8DI&M1-a@Ux7G&D2a%x2=Up`i z;OmYLh}|QcTx~RAA{>OvP0vXe_Mht~Z`C3*xorxZuI0Yop9ja=U0*4LuDD+Cndegc zAYlzMeYb!!-QW*+V?sE%DUlVf5{uAw6tD(xHi*KYQx*i__ieyK zd$QucmL^8kscpW|-#DJmQ~8`4K~R&J`G6|$VR%<;$H5EODouh|Xp}Z7--P20YMl~k1d>u^QK&KBGS@;HMURW0n0~<`M?e^Z!rUc^( z2^CEa`>q~B9hQ^kDHj@?BNw96_*(&7e*-ag#9wJ~R#l_X*OoVMCVx*Zr$8v0r!>K- z&*KU(bK%BFvNoD%&7($Sd7XB{WAjg;h{3DVpcZc{1tz=5;flZdY8rohHF}diOX_X( z@iwi3Tf9|V^pZFR+rR}63owLx2aPy07>NlmoW21KEtP*M86D)#n9;`aaL!705kJ8+ z$mXmquD1>i%%AqVzJTTw5pHMnbY_%=hXqV3KPiYga<B$3PrfLD_p zWU`SadyIgeY#Vmjwc&v;m zh+2(yx~_nA%6;LZ*x)Seg=EF}UM!+0VsAxRT3qp)jy21Zi>qko?E~G@3xS~JLw*8? zr8XeLgxHoF=o_mO<hno zQgvVa4|=ccSbD;I4cJivNagu9W;b4y-4?fxH6MGeEsr34D^J6D^Kh4H1A_mX4l3899}(5tA4 zHuv5{#y0F7L-c){9SsY|Tn`bpByD!5aO=6HbafUVd!5Gv+**j4dzox{K6iJ}Es;V*Ru~MoI+2ZAl>>{GI#BD}jjA)vtUU3g zt;G*TCEI({u=lcM?>ba|niM+A+SEvoHm8$jz^IK2D_w=TSY*o*6yrTO3y=SB{VB6w zY-heZ?EMy0J`?RZ+}mE0;MSi{ZYT9kjp%6%-=lEyS42Kdk_q8SheN-K6XO5R3j45F zpoE%Sq$Pt|1!nX!vW`gWvnv zPphR9m*ns$c3*cPx0iMIp~6|7=4^ddjE>2Ns*F2vj)@RWvKNmmnmi3tEq*T1PKUQ+ zalKb4NujBeQ2G_jEdPlr(#+41p9KBc>M)Gh(#35oW2@r6c5K14{g5P!dDjIaF~R}* zPDu|5z%LraBAs_1p_%hAoOhcVM@8b5HN?y5ukA(cILSrLJ)tbMRvSJabi3S(f;E#o zY1f32=50e2rTsX))T5Ph$!V6m%g#h!nrS`l-mF&bQP}MBpa52&T142?NZZ|G-*Rgb zPi}OQarU&T4SP+}w35qy8h6DrC8t-xtHih$I9QXT9dv5I@_vFF&s^= zD(M~W--45~%dJ2Hy}ZM{2i#(s8}ZAP!R@pLyl8L4MM-r#zK^H3Xa?7dCv{p)Z+R&` z>DG#|vj=e`B^Xohj;axIF2D#al0e9Uvf2qi=nw#l87<``(lc zb8g=6*|uLoNPl1C=s&61{8113dqPMfe<}){3l2BF8t|csbE>cSoFQ`l)jU;kZpD!g zy|f)Fs~$Od8Pivo-oOKWh7L-_$WD~y^B7cDlvPx7GnvbcJ;#05{`kYtp&v%5uzBE= z7TBrSYy$WJK=Oik8|i@c0qQ>SHGn!%`JOvQ6YVce)tVRLwz}PyuViD|HM>k?@+R@F z4aYdAmnT0|X%uRfVsYGXttM`613S)5@#$sw@-tIO$E%3UuP*XaFl7HcA$ZLYV1d>a zVkHbYJ%wr7v^wTn7I4aK)qEFr@UXtR8Me%pA28<`Mk6ByS z$vQFJp6&Pl>`SeAAH?KLl}rwOkPk_QPk0?Fdv5O*Os{G_;CN4SGjkrd@{z@Dvp_&$ z$;9V}e5!?LNZ$1WH$CnC%2MkooPhU*jZxE|zB$a`#vOhKd9jk_VO}CGI$3){QiiPf zUWSZK+EiD4SmB~}OPuV5m5`0P8`OHd%!c&n+Z>TyQp#?(uYDD%8O!;E2tRC@_(F*f z6HYTVuTNMYr5)lygINyuVnU>w9T0wHBl%Xs=(H)?Q@jC@G=Zfq4tqtWg(PpP z5!}EpDV0?7PJgTG^2OvXLve|ZO^O1(fg7{%9alle1fXoap>|Wt}w3>a* zhwtSi8Zq5*gu3A_;mWCJBG{u&ba9YeOq#H#`l<=4Po}swSMbXV?^`lmxK~ZE9GA~- z?zb3RM0WZ(_3E)w>sS~f;}s(H6nc4bEV7sD(y!eUxBVDF@Kmc$`XZ_!ZNXYYFUUNt zzPQ%##@?_g3CUObWo_~|9%RNFf<%wyDP-L`qOPx@JU=7Ie3BTdMjhL(8+)w`&ihB- zOSrApWKa4v!tPtb1OQ*V1nyux7QV6X`gzB)5y|qo!>Q zeeqirQbMSf{^BP|9qEkoN<_$|1I-#7YT0<5mO0(G&fIE3!Dg(whoi`j)VV9j-4-d{ zVUj0?ug1$2Il7b}7d+vnFC#$r>ffzR9;Plp*GUp*+n%W6k#T4)(Ca@fN#O()Gl5j| zdB;Mw143-Amnwy>hU59Gm59mF`fM-2r4D8cmQ}VTC%NXO!jfF zw9F)NR+g!?cu$s^qnF|FCecZFE_r^i4G3vBBf>23L(%xZ{r!ay^+cP~f0Zj!zO)6? z0CXC4{DJf<=$Qmy*n>zU)~Mj0KYfKAKdQ^|2zmjELKgzL+Ce{P+f?duTtDSNf6{Ay zyZ>*Mn!iYo6|_=K{vgx*#%27!zs!FwL2{yaW&`2#5bBKf6!xd798b~ycBEt7^xTuX z64eK_Wmf-KL>oA**x2rwwQDHP{$%mozY$$?U|}bR z(+++e7Ttjcx8;;gjHVyD<%%>atJZQA0uB}4;7J37f9y}bgBsWY*ZMITIS(d+txLR7KnARtgp zJAcvr^cT!h46-g7S z0F?h$D09zw~`JE(P`3}MdDk$M+t;t6u;8XF< zYBX?vHkE+yAOqBQ(A^Vb;QMM{1b%j&ddvl7)hE^oT#qWVCm$9!<8*lO!lY8=4bN7x zj~mypuo5$$ptf#X_|oyTodF@~(-3Iy75|JpVJ&Pu*$DJW%V;lJ^=1#sGP=aN>PUCj z7RA0}`I|aJ&UjD-{^_#>tvS}d-*s4xeh0;*Q2}4^kH6m}#{ShI{6kIsAA)1%kGHr| zgEi>>{W(C+9B?E6NAC|O!Xu^y@FN_5s={hU{bcU_p>z)Vvv_R1Hv2!Ad&SBD!1+JO z(ErhM{&CNrBI^J&82A9!?tcNYox0yaGpgqVf0e|s1|Kk(lWhC|RsPnJJNOT!_`h|_ zpTjiXF#Oxft@nVjefWow{_P{+gk=MBV>au&40}INgdcqduuLkFyVSKPfa(Ny#BaX) zH(B0azyF>c{(iHd(Le3nPn8grZH*M`tQ1b$qQfLopDU|xX6j3iYq8_*N_6OiRg3If zdt66pW4Hmu>!3oIHD8%+!!UHdG~SlSnef}3nDM6K4i0DA00o)P?blej6RQ(XgV`ytJAEg8yX-WJo9t zIKDy4Tca8cR4y-P5*L)8C!Uw{iC63cO01?LtomUhfyuJ--QH67On8t-xOO zlFSZjcC1#pR~t#RAoYzyMFz4S<34JYs#w(5mlLilLE#5$7}j3o9EFPEmnXJmaT2|G z81K5sC)Hgjiq6e>?P9=y+zCg}EmVw`)z+)<xCU+yBu1mmJotOyw~T0*`4dSP6T zIsL#Kgm;HSK|2Xee{aj{{oDOOuGDPclTjnIMlR|U4@x?G-Z;(cAYzoL%8V`gO09M{ zoe~-9cENHDg=i$*sF_p-cep(*bhYz0Vxc#S3J%-L+~v6*Dl?#A*@>m-M$t1qktP_m z7S4UPr+bP(&Rk4Wuaf&}ru9PHwo1A_cLoronW%6(3V<{6T0@mQVA<2MPOu{d-tE+o z%x948F=I{priHF=#vcJ4++YAn&Ir-nZFl?l1+jg%mD0-6y^yqSzXSC)xRAZQ>O<4v z`basndJ&$kR3LH`p4XZmR8Dp)`bgQB$wpe=>&E4~Ap10?)0KvlacQA%-3V23h?vG$ zr=QK16Jz$)A$6HAf<`tfimf_i@f8T?9h<}KyJpS~Pp;>Xb-n|o0hZS^((EIeiX3GT z-6<3*Z?od6-%)hPs40<3IK-(FxZhlh7KHL5&kLfEbF0tF##SOVqURXb-v-L66Wa^F zvxm0z;xFLrSax76bEg$iY`ePX7`R^UokHH1ds{S%z2TB&3gMWRw3`pDJLa;c>-qLI zfch~;l%dXTHU=O{BV6wU*c4zpiJjMN89MPyh?&!haI5pc0W1Q5Lff{jOwgn1vifL4 z()HqA2{!#sZvXE6jvdkmlnO6LUktu&M6qk4&6B8+@9GBmuj?FCh~Bd~I=NK$mUa20 z%f_LTNy`sH+abn6UoEO`;pUtgGxCsbUN^s$i;(XAyo>ls{VGuNqyY+K5SQkd3ZsF( z(Ss4;neA(KjbGW9@!zB|`%xnR^xg=%Q+HHSHGh^bKHY-%X#4)!)s`J-o?S{4KfB4z zFeHBdyF|l~8z{LLl(#NGecP-JVc$M3Ze^~2UuaElltaryq5dwi{|X-<4b}>Cl^Z>HYK6YZO6n@67jB*3CKFFmoNFUveAob=yGIE&qOKILtfD_-c7_$&U9qmWt|v}@*CiF5RH3r!5l)!=cQ48)~PvCcXj zlDgR1z&*})s3;s8@NUN}!t~~(Nfd50uG_Yx2hX}h;)6wbe`#hVOR2hvn$Dm%&Kwjo z?Pgio%@!OuRFdZ)XU<;c+)huPNywQFjBG<%WN=1#jN{(R>)%S`a$RohsRv%gxt#kl zOf~C54YRx4*v?A|=u>pE70@8SQbIAkF>-m0SioAwV_ zW^*Tvq&!!e$K3$l&qXIXX%@@I$&Dn=n4aqDY8ut+MdfNaUrEKpdfM-8slHyXdqCJG zF;56FRvyMUS+L~3s`OTmJkx*LWAag0{LPfdmrkj>Pv4<Au`-^~z#mLF8!u&`JI8K;XX(rsa;1i});0|3o$QE%&+C2-X#wg)u+F&%*4V ztD?txxQcpUFMuUF2?oRi4ARXO0BY?!=m}QDK2VeBBlaKv7WVl4+}F!gTlnB2UDyD4 z^gAeo^`9qK%ktp=+lx70NS@>cuO@H6I>P>O^7GUvujPMpEeRaeEt=&0fkW`3{2yl) zs6T49|I6znzRfx!QaxEcO-7~taheua#*6B|x`;~ClRpeF^v7AbA2o`e|J60JUi_8W zxV8EI>KadqsQ%hyd9;6dmC4Khr;T3?ra=qcL-ED(CFV>%aK-cf7>nngQVs^-PychDQpr;TI5gqRZ` z25ftdP(3A0o@?yF0H^sHB3Cg7z@DLD0;mS3Vd-J5$@|0m*i%F7jYg%$A}d%G&;zg- zyO4p+GX=20%Y+!&{vUzd`Z=I5N7l!R29A=#29yTQwqfWvFgyk${v9O658f>Y775FP z+B1SqtZP_L*cKz}4p~p~Y4MLhnG1~Iv*SD`RNXaP@-zn;eE-|Q0CD2)gZW1F+fV=& zm8KvdrL^abWn29bEb{|^hE0TvAVSL>Yf0j30=$#^dfFw2?uUKTbF2*-QK&_M}` z02yWEY~qA94*aiAF8t3|4TS7%6YDNNo*$nTc)#DMfVbL+g{A;$hiV}0zzlB0;+&-Y z*U2FNua@zQ`Dw@>U6}xroHw5UX${TWtiQclj-Rh~6BG7-@n$pr@n+Awet)kqr^SGM zezRuG4{HJ?b!ir)ZF9(#mYtCF_1+_(62iO8V$$d>rrJt<0AOM1NzyK@hOOABst>>o zKC^_GQS_u>a^>zsTzgMfs7LlbLr(HzYQ&y2zi_{R_C|k$U|yEkxN;>rDn_O38E!A& zc}E)l;aUM#yH>pV|8&Rk%WMC!WODzX_u9XV|I7G4H*EjE+pqkZ`M+lVubKZVO!{Y- z`71{KZ*lJb$70l9KL3}`|Brn>kGzHLl>qj~x7WJ?`p!>G0QnClR})kfC}ZB-$JXk6 z2dzJSw)|3&zH{?CXuJ?e6#^Aa{nc~lQlL3Vc5Y9{8*wlY0UBh=vVR}@bH#+GLjc18 zbbV4>#91U5v?;%?$Y-@OvctKzav66U;yZkae)n({cU6}g=irG&<7LKX3iJak4W9er zsKHr3_G?`;+2!_9o4FZ>1T6KyT=#-9t9<34d;l1Jt@KLSV4t;xNd4IRbo;K-w-Ie< z#u2xKxA&M<+s#v(+-b@YQde}mrlnl;Eqf(i%vk3MuWfTg@(mlwpQsD&DBk42Ef}`! z$H*4+A&5|pDBd!1xet0xvE0N0!8iF_rFvQN+KQLrno|>hFBS%Zq;j-5lg1%C*6HT2 ze7w^>-|XqJzsUaK-V%kny37wwp#H%1*>CxhBLXfiM*Ulz9L16msv56vKH|F2TvH?3 zYx2s$rr^1p_79E%DNfIfbj{9AA>NxyV=*3m>NbxosR70SO?q5Ng9|99By?^lw? z|Ku0{sxI+AbL?-|GH$j5m9Q4};4cGvIfpi#Sm{Us^TD5TVI{lyhtNB`yB*8b`OIl6y&w_gvu^~=KlI=6pK ziC3@cczZQ-k zQS6T?A-I!oy;$i=al4gi>2zGmQEVQy0f3YCsRy31X#<(nwjW8JKN1K)1Lbkp=`(6q zZ4EiQ)9;|e+%aiRpao|P0Or!q19V$*ZtfK)kg6_!2TgnlSNJ~hzbTE-_Z`F;gFMC} z=1*S(ntq$x187b$Op;;i{8@Ej6%|{0H?S*BOjDNDkW*(Z~k?W}U;H z;I6@rP+vfB?CWQ)3;=b>&25hJ>&Gu6{F(`Wd<7RWjxlbHaLi^>f$tes$`GJvR&P`V z_)w`o{s4SZxNm0F(hCtA5sKp#Gw@1Iqedv8Ikn@`xnzYqQw zPr#E_21wJD6PfSc5|-GEca_sn$j@+mxk1NGh|C2e-$7QfKC=Lb5VQgy_{^)A5~*F( zMnrgTEKO}xluUgCT?%zH|Asrb{en#7(SL_c|DE*Y-%m@ZjKyJU-tH#zs} zJBa_4*o|*H-5p%Gli7v+yYE@cDgzE!-+Ph|@kxs1p!eHYkzU&9_lkJiP988P2iGGi zpRuucMt@gMGwa+4wZ-HFNeNWz;_rH!ofD)sGJA4iJkZB56f4|0*z+n>FkoJzwob<}#OA=Fb;~)gLrPP5 z{uU)cnzxOCq86gQ7ojeu$-0Ak_C4hBSCCUsSGFTt?kx4pn4HeHWkbtt$3Ar zil^gJ3R#AEVGz)7qPA^L{5%~)h*X6inEl6rf0n~%;vaTfjs-Hi>khj7GNKjc{1KxSgF^Q ziyd>^#mIw9Wp-s%Hi@>V;9mdG6+?cXJA_iNVbip&$z^^`g+6h9ZM~|Yrv>FV;+?YE zj}*%iMLEK4cCS@h)wC%zeMpkx!ae8+JQ+BOLHjMje6U0%D8u(oiMaPG^(OOoZR+k> zdN^4Hyn$8?oL(ZKo0D7TxJKo47140}JY7=$%-}it%3~z&vA-k*42B}znC_MLZVkwJ z@a6H>P5x=?l{1x5Un&-phzjFNttO%u2{&e`Px?$zhDTq*u#~-*>Ku?`ovrPGQucd@ zRviW2C4pTwrFU#H!*9Wm@PsrbY7Ln}AZu?1ql4@Mjb#{F86kW7j~ZiioU4lC70T+1 z-{t8%l`~-6UnS&Y+JWm_j_MM>%CamAbw%+YU_p`|sK^KCOGwqHmJ%T}EAvlLzQq?h zZ(58Ch%Oc3w`NV-OuqPnmt*qbo^?Ihwp1=u9(f}MP#^Ndi{3a>K}zj^+dSp1UQ{1i z3GRFYhlT2?pG`Jjebcsw5Au+eb?_ud!F&Nx{zQomY4TCFF<}o~>ZEDJm1<_jLp&zm zCti6Muae6`!%;*>;pZt0OcrjtfgDdfRruC+uN31V* z2zI_MUA>h?eNf?t@;*vw94|X#Haqf&R2tc_VGCW^LgzmIq}Q@Ty}b9q#v@S4+CYzv zX^?RIsa6~8N;zu~mj68G7M2Xch@hT$S7w5IIgu_}L8BGI+w&T1y1K0{4oV9R3HxZ* zT^O5;7-%y_iM1Kvk2HuuYW0SpqT#L5rD^C#1J5e0?^Q<(Y4&ueNv2;dEe(smNww$% z@~jy${OEQZjO8_eUPMiFg!#^w5!B}Ldxf-7&KRQ2RExk?6&Fo>#x0+Iu-*q50Udp_ z*&0>r_+0_zb~A-he%7y5)uolua!rhhiyED{KRO%`98!HO`;FqO__I3zK+OGh;3s|g zKeUI|a&iFB{+d=5?SlxzF*l@;=0t~{wd^-D@0(8(ggIFg>EExUxaxd)-mdc*q4z{S z$TL&jFkv1aY6|ou_K&Mb&OAsy&KmC8DVycz#I^?p4h* z8XQkw=Rf7m65|z zq_&i6xU#70nHhP_(#b9__AQi{n#au`K9nVV9UzmfNFSR<=6@M0x|6@?Sc! zLAQzo-$)Jz@U7^_c3hGKdEm-I1Ca9VaUZ{f7^S5q(Lp-V$`Xp>WmQ(GHC4tWCEZzR zCHD(vjESd=Xz3*n3&@^NI2F=jM*vC%llfa%OVL6^7n#3^M7CK?+32z$_4}I&gj4+#2zVs3 zKm_<<1Jy<{OF8}FHB|Dw!2@%3qce)3-5WI)bkX~GsoEpvxHjL+#D#IT4zyMYeGb9F z^W-+3eCQD^^rF*(Dk+4ueY!uK>A~aS<;u$9A_|4zeN|E{UahB*V$)Kj0W+K|bPhZL zz3#MVNP#gyjeBQs#8BRQ10}F1XOuk1yT4ojSBt&M@GG&BZr0P-!4 z>~-GXq+2hPU;OH@>jq1gVT(I0%ITM4xDbA zeFtTzYeo5Rn6U!XE#3Mj2pA^7CHZiA;5+D1Y9SAO(-PM3+%1+W?EBC^H~hi}O4_zg z@kBgtA8XN4$Sp8Y7A&w1H$n2z@=i^#asuCsk$<`K}u7Pn`5E?y=c0Lj*cZ52^ZopgHk1 zKiT?Vvsf(t>~MP3E5lo2WD&RL6YZ0cVb~!lF#JvlK=&B~gi)N98E|=NZZ9yc9;d6Cq2zlQI z)^vrG{FDBK>RM-&ee2u`^B6Hj4$?|y%q4HGR)H9z(dSXo^ z-gb8}-zk`HH{7#rxcD7Zc(!{^cQB0GWS$!M`KR0h^%{)WX;x1jrCgpF?qq3lntMH0 z+4b@OCE-i22e_ej11mD!h1SE;>}c!=A~EbOMv>Z^YZOtMz#Gg{&mfcjh3Esl%Dn@& z$QRILSr5f*j0)P@6?OBtS(-JlHBrNo$4T^d#i&j!Rq;&1&EUv2Ap<3pmhPAnm}b^u zI)Ao&--7fgNGiW(Chfg(WI1fQYe2d!kdH8KEH|EUhM#9UdQb0Utwet1n(|ufwV11> zsz!H2HVp8Qnu++IP{(bc@i~Svt9A;y81+x~MJ-wMPcYVl#KDI=eUQpF12%LJg8pzO z-X%P}7q9MJ zl%#mVEPZaJ^~BNwKfcRICyn(zY)IZM-|*83r-v5lrKSs|9q6$}?1NGRbbi|0#^7Kewkm5MH}M-9+#8pMl* zTBV^?Z5Q7y?2^LFm2%798E%d4)qN(6O)!%voxjuh+J#~-g!-7k-}74Kdr3lIUzS)O z(xx)ed$mkss!Eb8fu`yCyUG(pEr|-hKWDoqZ{=uT8syn6{*baqypm&VtRFsj_b;p# zE>6eX-tu$-^v&-7TT=4>t_<7>>*72n2K>(O@EBoxF7SL}{BUn~n-IB)=nRrHL~eGl zUcMq9x7#AdkUPLqEQ!3|o2^|Q_hC?;hdEWwNT8djUr2^E8Af^lrn7W&Y28KNcT#py zZ74;nWQCM zz-Z@Ma||tb=s7#+3ps$g9)qNJx%~A|s&l(MHyGd_*o%S-z8%We!daH!XXRJq{ zs=(tGKqjF;Sp2{>+K|qG(bZ9#f#h01X~p#TVDzn`)zqDSiHWb^OAX={3}h|47tLJ^ z%Y+SB<5h=mSBfwsKb!yYQ z{&k9opjplS#WO)fv+Xv`ILPLqr*CIVa8lIubSbgW_R zNo+`A-Tq3~I?! z+!$^}@Pv`}M~CN~dW+Qgp0wl?MmIljT*671SleEyO@kO8t)lq-p|T#N@tMH7L%jW} zs=CUKNnI{3&nI@a2*i@va1|ZtkOO@%icv)N9%*AI(Ba51{rZZrI%Nx6Twz_uVgq?6 z2hu24M^pgAriFuz7-)*?%~vYi!8!qWvR_YJul_utLc2OXin#H<}KJYKAzB9$k(hw+oUehGUWNg7i~rTY)xy81}3 z??`BsqaBVW&lAhz(}$cI$rTsQ9dC!~^R&^FT2y{efLug8+uO%(79AIu>3FRolDA7g z>$V&9rDEuZYzp{nOf}d&RNDmd>>j=imYy-;uX;l&k7ti_0!Ot>U@sv6NH!@LuKjIN zk_1tUQ|PLt8@VVq1+?xyDR@+{9n0;<9Hv`+_5i@}HA|lv3WkI4N0-{HOhhU!^{ow)>$af zP7B+N?em13WhlAi6ui;8d!O}Q)4GZII)>eKHMmo3x2)>?E+Jg#{oKsdv|wuE6KNid zILfSz%W)FJySS~@ly5W~tM^!e>07{sZA#ZQ^i@Z(- z5f&g)tHeurYGGybvP9cP{hE={hxD7x+Hagc*bNR6e!_t7CKbY^YmvY!(PYJr$(UXR4pWP%&K4MT(h{GN!qE(vkdlJJKf#|Buu;npF`v}HPN=& zuZN`46t8CkO^zN{RmSvGg=jpx{OF^3Tfm`4-kp<8xZ&15>WK#WC7eWVWU(>e0L@qC zA+5cg>ebeHL8?Zu!{;+^InK18V$(`P8rorD+W~ItS1yO@409r*16*Rj1T7@?~pD$|Rh@v2wy>Eo&7Icl9Kh&r5aDg2hS> z!kw=Zd#Y{{4BnRDmG1yoM#mtrs|bQzQ{>9@_=u8+hPxI+=QQP=1);jfwH2;!FQnUa zxG%;vkJl+VotZ--Rf-00t(Ks#z$Lm4m7i$V`YOo#@7&U^bFL`9O+4cp6Y$yl9)yq4?^0)8*ZBEZbvT-r^NfbRsxAvv-n$pYK{r%nFTtgb z+TCVfgoS|1mN8=POj#c@00|jNf;RsMMg%p zc;-U|k#$LgXj`}{e$PD*T*cy%8D=5N3lHtWjxD@!azVoSQoU>LOJWcguQIi$U;STvr= z3dbVT&R38OzD8n+9WvZ|4mL|ZqdO!!7wvs|P)Ld~M+coLL5vY%A$1h2UKptb2@<2> zOL|W$M>$5*M<3hea=ZZ<$%OBouaMmVQnbG4N@J%S&xyM`Q5LDs(V=>~?_)&2gQmt^ zyj82Jb;{G_6n1nzJe*OK2qKNzw+*esFMtTO={_>hpY-e*7mHI`A3t`xX|SQL&qEnL zvr+RAW>y^fjH5=OJ(HfZultFiJVq6rwE*au!YX;g{Oc@vM>Vy;q`G4y8Bu-vCxv;g zZ|Sy;!&|oHPW-1y3GC&drR}WLSe9-?+|q2Ry15bs#pbR?vI!dewoEod5V&$FRI`Pgm)QM3yp#+TRQ;N+Gg z`aqRzQ=tScVSVwmtL#0Khu*4NTAQt(ov0ZGkY zKmOMkp|BIo0=k{RS&_3r&kqcvUZ*&{tx!vJFKaG z&lioNB7z{j6P2o=BTY(Fq=|qa9U-qGU7ARdl28Ps3kWDJ0s_Zz;XB^s3x9HHDdP zu+Cp@?~Hkiu&Gl=C2S*EYglKIuVEK~J>fi2{jE9P`C!Ilqt!6DJ?0!EmEQ=4=2>79 z&p9be`j>>OKfSY?Zsvv733?Nnm8Dq)*h|(6jvi|j^6Z>$5&e=ABs9j~Nwa)8Fi0Y0 z&Ciq|k7{E}6-jR2)HNK_h>Qtw_gVrR#3H*o2K~~X;sU2s+gsGDtNuZ;! z1FwEE9eH3{4387dvj#`{UGbf}DB%0h^ZO|&v!5>^vfZUUt}U8``em-so@p*TKh_8_ zpx^Vl*HiqDz1mtRtC8xmy`pkxCLdqZTw+kRd_79(EmP59qlB50Q(6?>g* z`I~d)7UE6M9k4~a2OgG%{OD2dB#V;X)`=3Ims;o^1mn}0>x!Ql`7>(tISs#1fc$(N zCy>JVq1Qi1{BFQwP0%cEZCr5k>|8WrRyV3f-38;@gcGap(|w%3B7SSqlD`8qb{>Fke-ssUFsSEe(o)#9w<*XxG!K!cmBD()@#Dg{Jbzqcb3?skrx~|m%i4Ox(N54skdQy0~#>b ztOfv(&MO*iyUimOuBe5h*eG6|W{uUZ_D;2Ii$6SnPXOL0Q&N!F{wS0$ zK)DDHnWf_)Uc(p9Oa-srUU#h#`f?GK-yS1tu8 zn`4t-ZTne2#wpw{!#`8z&q1})U7Gff@i)EEdEPpd`Y}^-1R%#opY?`Ix83;zW7pV-*>I4S9UY)hD|Re1jGwH4sI3KT`7b=_RgC> z46YL={z1yPv3XT1bY#P$GH-~!WP$*(PApk9Y?icapxvK&gKjB569~&20_g!=8Y)#0 zK%w^cFaM7`1ZFYxJW!vdTYj|vS1eldeE?GNr`$dlC4fXYVn9g&+Ff4=C!oP0!^JCV z^3aZ2^Et1-R->=efIvWz`d2Y};9rZ;GDL|J5U)VO2?*wjSZP5$z%PTU@q>lqC6VV- ze4k3nH(s{0;(T{Nk&hC?_7bB~bV>dVfTh`4A9WxJI)Y4J1we3b5G$`&Jt$nrOfj)Q z0LI#cz;hty)rr@*!Q=?BFep|U+FEn2$i8oE(t+ix10yMEL{rZ?)gB=#SueH8m7bkO zTVg`H-8v2WhV{=W9Y%%k)p}3LtMDM@-p_+<-B0y-{+klTA@!$8HufE4s-;;B@lmfFi`?w5gUAXHNQj$)Va*z*HzK z#kf_jeg!h$u?=Si%oXlo%So>a5qk~;c69y-nkhVNPB2_i_oH`P6U$+F@k|zVK{?|% zXE>)Y=)Q1%8rK4?y7Vrf9ZqD)V2z*-!LcM4Nq2sQkpQ-m#dEe+afdz zqEB4|C?mXr&OiLndq4RBK6sYILuiJJk8ad>V5&=kW;<8f;%sfoVY&T8w}Vn5ibl2m&$M2 z#{1h$tI8CAS)+WbMr9cmlejB=L%@Gxu9xc3O4WW(YNq$S`G?;lJ9oCg&9TnCmCUIU zHPy*98p}meeM6S)*siLiN+;_%=!Nc&_5<6y&SBvxRy>yyN#orKNvFK`yDjkPm?^*k zto1m0Dlhnkwwd6i&B~f;dR>7lx4Z<$896n^mG$Z=rz=QO4L&WcIrc6HETQS!gr=|~ zgdb~bG8XXUg9X={n>64YP4yn~Row7sxFQr&OM6Vgi}!mJtQh~EV}6q%T=@?*V>?ct zwAg!x>#^M4-hM1)Bf7yQyAI>?^}@x1@kJt?FSFApzU}O{LK+kixpv3U=0e+h5sWUm zW-~SLN6?p7j2oz`6+>1tNREAc_)?4rMN>ast6`d*wan;H`z6=-gh#c?NT*~m8fr{QBy8^ERSu^YX z*7trHhTR`yY4YEAwsSH+j(g*({=m)fdi(#hQr`KWVpXB}H-)mkH2=bkUH`v~Ez9|E zx_Cx&U}0!}3J(V{e{-tr{S-KBL!s7@;wc3)wTm{8Xgo6>~-JNdS612b9!3) zrdvUkBQr%GBzEP2tOSTAE#vzB-#VsN7C>|Qa1>zjS6LLcbT57@&M>{A{?bX4uW{qH z2s>YV*x~}tOlG8P#0WQT+W6-7r3-PbnR>TYPDg>16O}|j)@wcj(S@yXjxsEVtDNTy zE5i9N)Gu6O_hb6hP30gy>9(+NTlro3@% zj}!X?Y0l3Eod;C%Ktbc<;~nD=1-W=?Z+fd3xuNSp=3 zYwoCJx3PIeLj-dxoI}XKKri5Pb^vJhl&K643$`cGRdlcRYEO^rc?K01F6UEgve$#n zhyK%XEcnfxzb0O-2wQzIC;JJNzWSLcE;r+qtNXGV^GG4uAcRC|8&;Gdd?YL*Y6Z2wD<7Pa2+|%fx zgQw4elwKD|v~lTu(G$9Ri`h^OL=gbu2IcktM!NhLfj$og_X?#nV@zHY$UV!>Fiueo zm5x&U&Q<;Ofn?W98^weXRR1j|{(+MAeQJL*U%97srN$bzc0-*Un$c@9YKs>GD=2!- zIVd=>s(r6XeenHj5OqP+d+QiJQ?Oh6Wc}&qFXfdS?p6<|7 zyeRB=CDf3O;mRMLU(aAdFaDZm0BGq{I&DIZxrMgBi#3fgt0;exLA2q5hehD~fc8J~ z>;%)?21@L*0@%J~u~w1G?6H`aJLDgRGK#m>l3S^QwY;MpVt}VF8UuhjqlAZ+~=*W z$xO%=mt&S9G@y#h zu>{2^;(AFmX0hb6KsUEV4{$qLjzO$E8A4!1UC7s?Z~gPf$=7SC=VU?(@Gi56;1~X$ z!yDUI>T1Lo=bvxcJWlfoPQkh0b^Y8=Kq@SNtZSe<0%w?-kB@BT7~nJO$@756rDaXt z-w6@SKh@rl{XpVVR>U8_s3pwOwJj|laZ_gZ`m`C(sjFS@XnJ#-D~RsC!HoxJigl&C z1|Cgn40J+Ry`G!Cf47h%7_YgI5)mPEdcuKq`)P{RWQP;4`_)E^nw;n2CIYThT(<0= zf%(HS`T(sZIH?a;*tMd;84u^U{F-x>EOW_hxglSA5NGmzH9@gqMwy z7Gt}>hkx;~`!x{$qZj1ga#QMfQRUFtw3(fk2s*?TV0n{UP-UlUb)1kDalPx#ui^L) zmdfzGa;p;%SQ99y^Qv&%j`}z;D4MDKrf5^^Tmw(zP;by z-tWQrd+z;STIPSRoPSvees2u_Cv5A?-~N+2`_tdC#NXq#-!tO>gcY@WJ4c%GW4%i%m1+F^}nLM@b|y{Z`5G;UE%&u zE8M?(0{?&Qk^JYqiCt(Ect^Jse7tTAa5r5?dml?m#nkQZ3AWN53695-JODoAKt;iF zJtqZw;p(%yz5gVM|M&U%U;X)Oe*bqd#(s-8{Z_F0t=PI^0ORoa?OpJeXST=;=Lkz)%#s+c7Pp)q)-q;e1`MNvK%A2z37mdDV`^WL6+4)A`6v*6WN_pd&rbG@zv zJ9vvP@cq>5p6g(rH(s5JgS&BdU2mzxxH^JB;|&NuAvA5V3-XEYDEGR;pmH zg;7M+ymVuokoJ_H@=-rz-Y7p_(U9AY;>gHWk|lFM=D{Qy@XX2B%J z*1uU3M`WTd%c1ags3^pqIAS3O1%NG3=6yBBpNKYi^?5B9PGMuOY4$)Dk*!yboXbyR z?Ak4O=UyOjy| zgSMWQJ?(Ffcx-&-0y^G{#wsmsG=&)nu}=w!-U@NzT5}d5P_ z@Kr*gHGWgf?OUDkS-{?2m6bb|vcSvCpY$5w-)cFFTA4nPyrL^9v$Fn1_S%N}xw>Lp zM&4Yw-xVBy{}n=q891@uuno1_d{V}{so%!y#zF9;+V#P>Cs0kiucr}#{@CYs<- z&}>ZN9>ETAPCy0c^Aebj-#JYP3MOri9GR)M<1$W?GFN#~-5Vfoz#f~&ewqQd6gP*6 zxG94|c)YZCd&U>B#x{3L6#V46lZ}F&8fBkH7RGAXOepK!pZX-N)v^Tm63lPX7J{fKUE@2)`e~-@vE(f0JqT=>025@zF1kVy*@-rA{rO zSrH4!HFf~6Rb~NLaEHjNbx72g=`1t!3ALFQ*VGly-oe(#z`so$~=q9m4w@66y4M%^UjEIfLJfLR2TGb z|6UnyuG{aS4e!*&v1F1G^X@NbKflzz81OOntxp=wL63vaw{%ocHvaDT^cO`Z(GMwq zSdlWGP`uRcCRf`*Wu|K7di)Cp;k^V1qPM5u2uLItEv;u!)P6TdN^8wJTX=+ST102l z+ls%6Eh(Clbx%hMQQ9vft$uCP7usf7NlXAkypHt*6rLH_=Dh|ESj8N1)+acK6>RGY z-=|9~hboggpkZ=t@@>yXEwB)>W?Kt_a27>=T~(ysW_cd3n~8^O0q62=UK@|EI#VV= z!nR%91&nG`c-afEDhmeHy`|$%p zX-U(NerIV5XZvSawPi2+)~PSsC8>&Dc-iJ@3>BsIc~WzT5lg^yQ??-KMHlI*IRytd zS$W;3Eu-@TM=zWboDlqmQpS54!Y_LRQQ1YEAMyT*d-+z%kvR0LI=Lx)n|Wn_X@2I{ zq#e(4)!~uL-&px?#rANzD*W-J<^*&Q8gW3!WcR>9^l5dh$~V(@=yztfYvjcess-zG zd`4gqiu7}_Ttr=*pEA?8o52$fvKKEKN4ugRAh_qF7zMa=Ca$c<9Lcd_$^N~iC(}B| z{@5?BSq1SiKt1XFY}(gMikm{ENU9a^*_z9W=9pf*hS9;cUi=xtqp}QG@@1oEt+X3h z`Ct4TK``YBXyyG0XwhaJ_>OXk))i%gs2jRr2a>}5-a740xz_SVHE)lS&-glD_PwO) z-Et!^1LKBMY4EJ$7}=w{;0+dWrqzvtx-5G~??dpr`c3Hfxr|wl;4p8GAQ?wbm=8J<7 zw7E9{lF=(CXO^oJZ`EFFFlA8uaY<^rtkj8_RW}LitCc#3b${UunH_3lABw|VMP-C<-F^+4!K zy8R5E9*Q5Fq{~sBnn&Y}co0MZ9xn0#`RBwzujJr{rTWLbHhD>=5_MHsjl z+8Ud;)@yzWEA>~Y$Uln!>bZE|IsIrI!yqM{0j(Qea(cWsH9lmFjRkJ0suz&E5zNm@ zIU@n_BJDfFT(6h4-d(!69Au=fM#-%Psdp?Y!w1e!2pNs{Hm9V~UvB*9m2f?91>|}b zLbHv)q{DyZ_h=v;@kA4SV)3>vK$b2B1T<4Xn$BGWA+s1ayBu?rx)5oR0BiN*2`D5P z$4L$?G(G`Q+JR|+J)>*^57`g9u*-=qi@*MEOS^GwVbH&i&qiRrpw0g5vt( z5@PQo%|atU&#OOJ8(rsm{MGgR4>{=Tb01UY=4LZ9jNY_nvbr;d=mlgefi|vl2%VZp zwY#7GA)fLX5?7zwuL^oZ?jKTaASE2Uhqo*pk<|`%YNo2aHhQKeyr-h(Bl3V8?#~(h zAN(}_cMGnc`oFj8ebJZEwlAp4WcUskVYklyLuvnW;=dY!zPO>UKVtoxegEIDJYXz6 z52l~Mt29=XM~FV`iq$HMpUw5$7OJGqn20&&W~8V!$F0!lbMY`-`gx~q-d&rwSzCV; zj8fG4QQ+neO7OPxu#l?J5Jg_;35T00d|FE?i=VVH@3tm=X^az6ZH8Qj7M5@1*bHp> zm!EYtl9g@IH?Zq4sGQ5=OOJQ5+|Erw-Xr(UaDT+Fesu6b9nkmB589YWEgv+JI_%EqV)+J|ph6VDYhq_tEcsGarL|J?ZQrS$+iy^KxHKuX69{wklO$!5x%|vV zZ2SDKh;$_z;n>r(>5{5XwLQvsSws`5m}3+oH~cwWeNbzr?-)v7qtr6HOJn$mht{>R zVP#X`%NLZFKj*0Xln|=bLP`x^i*uQ04JYzq#F%xT93)J3DH1BcX-f_0C+LkVTt z*{}Q8`dVyCF!~N6s;$O{Woz&+dN5jeW5$(HKb2YNrCyW+E61xhYq#n1;yzxlyT^69 zdG_g2-2y7BQ=*gc4)Z{{tjf-`C}zxBKKfae`_hZ4qLR9Ba$axp38+-PUP&uTkA%V>2rFD_^{`VZn2IeJ#0-kq5jY&0m8iesZz>WZaoA^jDn& zQ;?gmD;#N6s#9@jE&G&7YC_iiOse~*@lY8#X*SU-ZKFAxZ}Ua=obvLzW|Xn$Fmbk- ze4PwQ7hNCv;6JYhg|ga&fr!R<1Wp-}Uqf9W`Z-C}=*c%Nmd450{ZH?SQkLPcG#FO5 zKC7t(qr8ozRZi80$BYg?H94C5`W2GodHT`{8^t($0=C-b&wZz*zM zwGLSnHf^}m8-uo=pgZMf{uOWjd4=IsEs&-8>M)<4v~s-uO#aks$|W{b+9Ii%XcK>v z?(~%l8ibvL6Hvft7n%z$?l{9CT?lDr@U}1Uof3tLJdNynUN5uXW8gn%DdX14ny&2{A-y17F52N{a--K_RanzSBlFd1OlwyCjVP1AZ@wvqLN*>&mKiKH z#)=6}dAVWBV`1lK*R1hhW<(3btaRL784N7>wL6S^8u<(R7$8gFiQv{1GF3W32=Ns~Fdh-A_t3{VQ{Kr z#4`YGo^lzaGvP|K{zWqEUC+!i6(0i_WgS3^Z5+p{qM{#a`3oqN$LX{4F~sva zRR^E7q~daerJ_r=H&rpQKyvyOn-^S&a>~*|Dlbf3z3deEx^cs+mv31P1;e`$p89cM zSp!R8=T&ppHc81&T*94a|cGS;f1%NMfwGU~lh@02f+2i_22xUz2;PBFULw3`~9vKiiS zk06_ma$7E!(cyR!M*-GwqBRB)l!A&DnQV3W(r8ABiAvTgRVUOlATAIWNy*B9;u2oM zwrJA3Y=pdQFr0H=>5E>~k%r_cv8!BLe0xP{6G{edZ|!|m*{UmjUMLn(VVAs#vEb z5u8W0DGAPc#^tQ}ghV>%I~emk2;rmu8m(s0aCspridJgfavk<|hSfuml!>tK7Q~R> zO?yUXb%;!&uIuyGVelKe9drYg-eD3MJV6F<`5W15y|5-)mdy7y3`z2c;(@5Vhq>W) zMOEd;$UHa;?qYeQqI{lr`~a2H?9d0z0r?@}&qb0HAPq`fq0*hr7X<3mLw0k!j5|_M zuk;Z)ehN6PS=P2~dhdbVhgjCA*4WJNtw|$jr^>KSgIg729Esct#?ju@v*1m643fqn zg;CqwJl^z;1MAbOQyl>hC^Ftjcfu5!2lRF61f8o)C-OI}r@_{8l@HV0@3}3P zei%wiBzO9oO$;3$0_VAe4iQk7Ze<+lf&n{B-rM~l-|WVUO>`PLHlXD6&EGeWqU_Q z>ascC`Cf2vPRoJE8QT#Nmoc%MT=%hk&4anwUfueS;ygY3$JP$ZtpKuqqpO%Wl*cr;FG-Zp%10vt4RNh7&g zA6C#6N9~qAD=Yyn_NzP-@7}Aphl*~%Ma|!NUPvWxF`*?UH01&H>Q%guZ7kl@Uq706 z!TFN=J?DoL)1MLuV%b%e>T52Mb-?b76+TEJLvUwngJ)Ei8{Ta3Me;f8N7P5fnk^tO zd36+sJ`9jQ!hwd^yvNZZL6xZR9qWn47S}T*#orj54aIy{QRsZ$sFE?pH#$(KNO}uD z?JZVshK}6&vXx9w?p``G)gCM`d3k;62lEuE^qo$Q$-pay5R@kYcKq|`u%1gQtm%)n zC+j0`ztP@Pj9~FhzTUrv%1yQ%R;Iz%VrS-l; zcYxPh(j_SK;U**WS+7}xpc}*u|KmWs@v4PyC9QH1gqmYtUwg*6ZJCD`JIyH6y|### zuWV%*F{&NcE@Uu!wDYUF%2mfn6sj#5ta18On%=TuW0LszrDQ;2kHIB*X5gl=V^Bbp zYeim+e7YNO%o^&W3}O|~*T zCT|mC`{}~KEWqw+IkL6eARGOXIr8M0ebf> z@Nnay1(Ve|*RQCDUK2w^$7V~e%(u(ZJ47kxOAe#MYY8LmUK@bB$!L+E##;kp)=Or$ z`MZZAX(X=MdR;Lzc&;fJK$(x~1;?C#%5v(GcJbyI3X$RQ`0s1aGPCd8d~FZ~R6FdV zd?-e0CVOQvU*&B=?oA~dulU=Z#~N9s&ncq<^5C1RY(<+VAniT%l^kX)<%Sb3VNSN0 zdpX29KH(!)p=^%C&tLg<+NNTB{%CfsB^{6@B#vBSfiE zawD4&VuLd*+Jv1hH8kJ{9B~-p2X{%ak$YKWa=TSu&wR$B2)@|B#oc(6%VRlEYi*P+ zs}F!s#-XetgDxG*D~H4zhxIPUTq5Z0$r++^EyLlQY|x8sD%JVUDKnux_F-;OYzsSV z>kUYxcK|Ji0A$+7P#AP0EKJWkwK4KVIm(xbvgh58YHpJZI`~;1${6TE%bxD>-gmOc zrCy0Q=?>nnTd`r1r9BbT+zTcVY+OdBW(6S*9SO^e+FlNw2=imGHlj(_?;Ie~(KtaS z0h6M2%>-(X2=tO_bE1nZG}AP>8l6B>%ylaM-8xJF-i!P`+K7BTLwy6qf{&kG+y^B7 z-?X{@K=Zy4&kk(yri)N!!mFNu>@5^9E=`|u%ps1Scq{DrB+KyRmz7EqLCU3_=E`09 z19@f-Lh_!L*X5N4VJAW)GPX|3QrznuVgbz`>#P$`5jjTTqS*te{i^LI_9pU**Gz_VKqvkdGr-BtNu*0 zryp)t-a)!r6|MD?3dl0%L^15$DxPFhaJwRP&tVxm;Jyn-esEhO?{RNMNNH*6bZ2=lF?JO1{>s(FFPJf7 z30sw1sV3{NLw4eD6025U@F%Ihlx>cUM$*BVX6!wAZqzxNO6yNsHcLJ;oc9ZO&Z_v7 z!ZJD6!3SQNH?cNuuO}a-R*Z%{dG> zq-}Q!q^Fk`k0q~sEaIGlg_Z(-cC04Yo?w5{d&DP|#g^yPbi!L_(u(MAsWW@n%(Ds= zlnz#g(nei33b~oE7-=taEU=Fd=~;>(_5qo%93DuTRWBiCyud_5Ft!cM30=veBW%qB z3NENL@>naddI4Rh`nY4%ao`(7-xe4zYCFI~P0A_sdyGqXh`)1#vLr#rF@#_{t`bI& zry#+SDtZt#Zm{zLy2R5a2!Wfb6S?m zmStg_Hx)>2^OJ^6NAR-`y}4evagCydt$EDNCbkiMc}0%Lf}t-Chig>)Y13`lPvxdJ z+fl7hbJ04!0!pznSOhst1Ol{vfXBm8jnl&9#^P)nrMwj^Dl-NKUNYP{XgL#*cc0am zn*>>m#d`q(J^Gl=5q7u(Jmn}O`4B*1`I)p_hqCi{Mi`Ctq`WchV(OF65A*%AX|0`O zNQcTP|L)&FF%RMk`UM)&j@;Z zvHS$YRzz0_Y#jP2T?R|7?RclS+>YG$Ro?0~G=LM`t%}#=eD<*Wj5P=T3JyM#N|-XJ zROdJOB=)wX=&jNvPh-!42`@X69stFyE#B=HLPa2+fn%zGuXq!x-lxdye<0%cz)CUx ztnszeuIJe3cV&D%3xVM|=MoJlEo)f}`MG>bSDWiOdJ-OS)k%e+O!<~V3eL!1bzV6O z)s1&@-=o62#fILk2y(uj;HhP4ixSy%G$Y&od~3W25TL{&ktK9M{v6(ZaironEUbv1 zmE|+`E`y1zU%%9uGm?8sgwYijAhPCMnW6XN&-1Rn^G2zZ`1o6f9`GT~zWmwYKcqez zuImKpNX4v@?V7^nC|HwbzaG8K<9O>R!hddDx46m(u|VKXWbVRuwp7Um`bmBAF0g#7 zVw>0e)Y;V}CZcY`oB3!AYYPZ{)-YdEhZursQY{OANwfDz+4-r-3m}aea zIpd@#7IbVh_7-=Y3iHy1v_3w=8yq6ED23urt%_h79Q#!6yT7#Rm@)|VpGjz@HU4ryWhI!}J#A{Ga zXVl+pw|Xg7o@G!E1+P{>>jV+syMW9+p$SFOj~}KUdcCbL)Y zXEcwI%lGG9Pb-^d~$JMXJ04A1(n4PqYzF9)Zt~c~p3B!aS8TELc0NJ=kfe zMorT>vvOhoiwpjVO8{VoP7939`bvN}cewme7G2HZxgU2_2EN$9g|00KudBZ9zef~7 zNDcYP67KkM;^5_um|j}%6wWEN{fMUXG1j8D_yR1Yxle6dcEaM0#R6-f*yV$PK0iUs z>kJX)5zIYEWn7@It>DtLjMC$I^9A|DXLlWZU%bs0#N4MfHoma4+GDW( z(2!LLwJkfw|6MT^Sm(Kv*@)spPJ2ksb@14zvEEUCUV?CH0>Asa{xH2qV50Q$#u0GC zw}2ZkN0Oysm&uc|9R7K&P|B$_+{**;@#aJN0Ja(}SFIu{(BgA(ZFj^axG=fHtT(9C z0@5%|nXEgqb!EcQ6_AU3z3^ky-jS*!8@?ht4F0 z4cs}osC?20DGd$vserLPVV2X)NMCePS}!;p&D?Xv%0j$T_ISVyiP8c&KA!1idWT-g zTF5*kb`)8>Ou9(%t5}V|5Bv6p64kTui#M&@iXwNXr4N0 zq6R6g#&8zBfex9bPq;f$H^@lJ+`RJY<#kSCF&6l{%dAJLe!BIEW@EE`C?-F`gpz}O6GTNAPynAL!Yga}Y;%9@^ZI}|B z(Z{{muG(x=Idg%>mb`nG?_$AZ!d_8Rqp}2cCT33oLGNvJtU%xlOnjjjJZ0ix#NF@( z2IOos0J!zxt%Rm&(PCD5u6H?HTGYt7=&Imjp8cbSEIfGLWupz}*{O+r#^`t~Q!cJC ze0xXKs`si+|BvAGsj3~hqAzWd%^1gg9j>ADq}06Snd2k;q*&v79hYRCL=JKItdS4(iyVUYz)$!h14T3MNnJxF(
%s9)yc_-S5<_xxK)+&#m0@v<*KSvR~Q$Yiz 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
YwKy0P^syl0$x+` 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 literal 0 HcmV?d00001 diff --git a/docs/dev_guide/connect_jmx_failed.md b/docs/dev_guide/connect_jmx_failed.md new file mode 100644 index 00000000..92f0a37e --- /dev/null +++ b/docs/dev_guide/connect_jmx_failed.md @@ -0,0 +1,101 @@ + +--- + +![kafka-manager-logo](../assets/images/common/logo_name.png) + +**一站式`Apache Kafka`集群指标监控与运维管控平台** + +--- + +## JMX-连接失败问题解决 + +集群正常接入Logi-KafkaManager之后,即可以看到集群的Broker列表,此时如果查看不了Topic的实时流量,或者是Broker的实时流量信息时,那么大概率就是JMX连接的问题了。 + +下面我们按照步骤来一步一步的检查。 + +### 1、问题&说明 + +**类型一:JMX配置未开启** + +未开启时,直接到`2、解决方法`查看如何开启即可。 + +![check_jmx_opened](./assets/connect_jmx_failed/check_jmx_opened.jpg) + + +**类型二:配置错误** + +`JMX`端口已经开启的情况下,有的时候开启的配置不正确,此时也会导致出现连接失败的问题。这里大概列举几种原因: + +- `JMX`配置错误:见`2、解决方法`。 +- 存在防火墙或者网络限制:网络通的另外一台机器`telnet`试一下看是否可以连接上。 +- 需要进行用户名及密码的认证:见`3、解决方法 —— 认证的JMX`。 + + +错误日志例子: +``` +# 错误一: 错误提示的是真实的IP,这样的话基本就是JMX配置的有问题了。 +2021-01-27 10:06:20.730 ERROR 50901 --- [ics-Thread-1-62] c.x.k.m.c.utils.jmx.JmxConnectorWrap : JMX connect exception, host:192.168.0.1 port:9999. +java.rmi.ConnectException: Connection refused to host: 192.168.0.1; nested exception is: + + +# 错误二:错误提示的是127.0.0.1这个IP,这个是机器的hostname配置的可能有问题。 +2021-01-27 10:06:20.730 ERROR 50901 --- [ics-Thread-1-62] c.x.k.m.c.utils.jmx.JmxConnectorWrap : JMX connect exception, host:127.0.0.1 port:9999. +java.rmi.ConnectException: Connection refused to host: 127.0.0.1;; nested exception is: +``` + +### 2、解决方法 + +这里仅介绍一下比较通用的解决方式,如若有更好的方式,欢迎大家指导告知一下。 + +修改`kafka-server-start.sh`文件: +``` +# 在这个下面增加JMX端口的配置 +if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then + export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G" + export JMX_PORT=9999 # 增加这个配置, 这里的数值并不一定是要9999 +fi +``` + +  + +修改`kafka-run-class.sh`文件 +``` +# JMX settings +if [ -z "$KAFKA_JMX_OPTS" ]; then + KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=${当前机器的IP}" +fi + +# JMX port to use +if [ $JMX_PORT ]; then + KAFKA_JMX_OPTS="$KAFKA_JMX_OPTS -Dcom.sun.management.jmxremote.port=$JMX_PORT -Dcom.sun.management.jmxremote.rmi.port=$JMX_PORT" +fi +``` + + +### 3、解决方法 —— 认证的JMX + +如果您是直接看的这个部分,建议先看一下上一节:`2、解决方法`以确保`JMX`的配置没有问题了。 + +在JMX的配置等都没有问题的情况下,如果是因为认证的原因导致连接不了的,此时可以使用下面介绍的方法进行解决。 + +**当前这块后端刚刚开发完成,可能还不够完善,有问题随时沟通。** + +`Logi-KafkaManager 2.2.0+`之后的版本后端已经支持`JMX`认证方式的连接,但是还没有界面,此时我们可以往`cluster`表的`jmx_properties`字段写入`JMX`的认证信息。 + +这个数据是`json`格式的字符串,例子如下所示: + +```json +{ + "maxConn": 10, # KM对单台Broker的最大JMX连接数 + "username": "xxxxx", # 用户名 + "password": "xxxx", # 密码 + "openSSL": true, # 开启SSL, true表示开启ssl, false表示关闭 +} +``` + +  + +SQL的例子: +```sql +UPDATE cluster SET jmx_properties='{ "maxConn": 10, "username": "xxxxx", "password": "xxxx", "openSSL": false }' where id={xxx}; +``` \ No newline at end of file diff --git a/docs/user_guide/faq.md b/docs/user_guide/faq.md index 3980a96b..bb6298ee 100644 --- a/docs/user_guide/faq.md +++ b/docs/user_guide/faq.md @@ -15,6 +15,8 @@ - 4、页面流量信息等无数据? - 5、如何对接夜莺的监控告警功能? - 6、如何使用`MySQL 8`? +- 7、`Jmx`连接失败如何解决? + --- @@ -29,7 +31,7 @@ 主要用途是进行大集群的管理 & 集群细节的屏蔽。 - 逻辑集群:通过逻辑集群概念,将集群Broker按业务进行归类,方便管理; -- Region:通过引入Region,同时Topic按Region维度创建,减少Broker间的连接; +- Region:通过引入Region,同时Topic按Region纬度创建,减少Broker间的连接; --- @@ -43,7 +45,7 @@ - 1、检查`Broker JMX`是否正确开启。 -如若还未开启,具体可百度一下看如何开启。 +如若还未开启,具体可百度一下看如何开启,或者参看:[Jmx连接配置&问题解决说明文档](../dev_guide/connect_jmx_failed.md) ![helpcenter](./assets/faq/jmx_check.jpg) @@ -66,3 +68,9 @@ ### 6、如何使用`MySQL 8`? - 参看 [kafka-manager 使用`MySQL 8`](../dev_guide/use_mysql_8.md) 说明。 + +--- + +### 7、`Jmx`连接失败如何解决? + +- 参看 [Jmx连接配置&问题解决](../dev_guide/connect_jmx_failed.md) 说明。 From f648aa1f9106848847a3773ee8405e990d974768 Mon Sep 17 00:00:00 2001 From: ZhaoXinlong <449791515@qq.com> Date: Wed, 27 Jan 2021 16:31:42 +0800 Subject: [PATCH 07/48] correcting some typo MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改文字错误 --- docs/dev_guide/use_mysql_8.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/dev_guide/use_mysql_8.md b/docs/dev_guide/use_mysql_8.md index d4a33b2a..6c8f6b38 100644 --- a/docs/dev_guide/use_mysql_8.md +++ b/docs/dev_guide/use_mysql_8.md @@ -15,7 +15,7 @@ 当前因为无法同时兼容`MySQL 8`与`MySQL 5.7`,因此代码中默认的版本还是`MySQL 5.7`。 -当前如需使用`MySQL 8`,则续按照下述流程进行简单修改代码。 +当前如需使用`MySQL 8`,则需按照下述流程进行简单修改代码。 - Step1. 修改application.yml中的MySQL驱动类 From 4c429ad60487ebec2b9636aed6f7d1e128f0a98b Mon Sep 17 00:00:00 2001 From: zengqiao Date: Thu, 28 Jan 2021 12:06:06 +0800 Subject: [PATCH 08/48] optimize result code --- .../manager/common/entity/ResultStatus.java | 168 ++++++++---------- .../service/impl/ClusterServiceImpl.java | 5 +- .../service/impl/ZookeeperServiceImpl.java | 4 +- .../bpm/order/impl/ApplyAuthorityOrder.java | 2 +- .../kcm/component/storage/local/Local.java | 2 +- .../kcm/impl/KafkaFileServiceImpl.java | 6 +- 6 files changed, 79 insertions(+), 108 deletions(-) diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java index d59ade76..76e3aca8 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java @@ -12,125 +12,97 @@ public enum ResultStatus { SUCCESS(Constant.SUCCESS, "success"), - LOGIN_FAILED(1, "login failed, please check username and password"), - - /** - * 内部依赖错误, [1000, 1200) + * 操作错误[1000, 2000) * ------------------------------------------------------------------------------------------ */ - MYSQL_ERROR(1000, "operate database failed"), - - CONNECT_ZOOKEEPER_FAILED(1000, "connect zookeeper failed"), - READ_ZOOKEEPER_FAILED(1000, "read zookeeper failed"), - READ_JMX_FAILED(1000, "read jmx failed"), - - - // 内部依赖错误 —— Kafka特定错误, [1000, 1100) - BROKER_NUM_NOT_ENOUGH(1000, "broker not enough"), - CONTROLLER_NOT_ALIVE(1000, "controller not alive"), - CLUSTER_METADATA_ERROR(1000, "cluster metadata error"), - TOPIC_CONFIG_ERROR(1000, "topic config error"), - - - /** - * 外部依赖错误, [1200, 1400) - * ------------------------------------------------------------------------------------------ - */ - CALL_CLUSTER_TASK_AGENT_FAILED(1000, " call cluster task agent failed"), - CALL_MONITOR_SYSTEM_ERROR(1000, " call monitor-system failed"), - - - - /** - * 外部用户操作错误, [1400, 1600) - * ------------------------------------------------------------------------------------------ - */ - PARAM_ILLEGAL(1400, "param illegal"), OPERATION_FAILED(1401, "operation failed"), OPERATION_FORBIDDEN(1402, "operation forbidden"), API_CALL_EXCEED_LIMIT(1403, "api call exceed limit"), + USER_WITHOUT_AUTHORITY(1404, "user without authority"), + CHANGE_ZOOKEEPER_FORBIDDEN(1405, "change zookeeper forbidden"), - // 资源不存在 - CLUSTER_NOT_EXIST(10000, "cluster not exist"), - BROKER_NOT_EXIST(10000, "broker not exist"), - TOPIC_NOT_EXIST(10000, "topic not exist"), - PARTITION_NOT_EXIST(10000, "partition not exist"), - ACCOUNT_NOT_EXIST(10000, "account not exist"), - APP_NOT_EXIST(1000, "app not exist"), - ORDER_NOT_EXIST(1000, "order not exist"), - CONFIG_NOT_EXIST(1000, "config not exist"), - IDC_NOT_EXIST(1000, "idc not exist"), - TASK_NOT_EXIST(1110, "task not exist"), + TOPIC_OPERATION_PARAM_NULL_POINTER(1450, "参数错误"), + TOPIC_OPERATION_PARTITION_NUM_ILLEGAL(1451, "分区数错误"), + TOPIC_OPERATION_BROKER_NUM_NOT_ENOUGH(1452, "Broker数不足错误"), + TOPIC_OPERATION_TOPIC_NAME_ILLEGAL(1453, "Topic名称非法"), + TOPIC_OPERATION_TOPIC_EXISTED(1454, "Topic已存在"), + TOPIC_OPERATION_UNKNOWN_TOPIC_PARTITION(1455, "Topic未知"), + TOPIC_OPERATION_TOPIC_CONFIG_ILLEGAL(1456, "Topic配置错误"), + TOPIC_OPERATION_TOPIC_IN_DELETING(1457, "Topic正在删除"), + TOPIC_OPERATION_UNKNOWN_ERROR(1458, "未知错误"), - AUTHORITY_NOT_EXIST(1000, "authority not exist"), + /** + * 参数错误[2000, 3000) + * ------------------------------------------------------------------------------------------ + */ + PARAM_ILLEGAL(2000, "param illegal"), + CG_LOCATION_ILLEGAL(2001, "consumer group location illegal"), + ORDER_ALREADY_HANDLED(2002, "order already handled"), + APP_ID_OR_PASSWORD_ILLEGAL(2003, "app or password illegal"), + SYSTEM_CODE_ILLEGAL(2004, "system code illegal"), + CLUSTER_TASK_HOST_LIST_ILLEGAL(2005, "主机列表错误,请检查主机列表"), + JSON_PARSER_ERROR(2006, "json parser error"), - MONITOR_NOT_EXIST(1110, "monitor not exist"), + BROKER_NUM_NOT_ENOUGH(2050, "broker not enough"), + CONTROLLER_NOT_ALIVE(2051, "controller not alive"), + CLUSTER_METADATA_ERROR(2052, "cluster metadata error"), + TOPIC_CONFIG_ERROR(2053, "topic config error"), - QUOTA_NOT_EXIST(1000, "quota not exist, please check clusterId, topicName and appId"), + /** + * 参数错误 - 资源检查错误 + * 因为外部系统的问题, 操作时引起的错误, [7000, 8000) + * ------------------------------------------------------------------------------------------ + */ + RESOURCE_NOT_EXIST(7100, "资源不存在"), + CLUSTER_NOT_EXIST(7101, "cluster not exist"), + BROKER_NOT_EXIST(7102, "broker not exist"), + TOPIC_NOT_EXIST(7103, "topic not exist"), + PARTITION_NOT_EXIST(7104, "partition not exist"), + ACCOUNT_NOT_EXIST(7105, "account not exist"), + APP_NOT_EXIST(7106, "app not exist"), + ORDER_NOT_EXIST(7107, "order not exist"), + CONFIG_NOT_EXIST(7108, "config not exist"), + IDC_NOT_EXIST(7109, "idc not exist"), + TASK_NOT_EXIST(7110, "task not exist"), + AUTHORITY_NOT_EXIST(7111, "authority not exist"), + MONITOR_NOT_EXIST(7112, "monitor not exist"), + QUOTA_NOT_EXIST(7113, "quota not exist, please check clusterId, topicName and appId"), + CONSUMER_GROUP_NOT_EXIST(7114, "consumerGroup not exist"), + TOPIC_BIZ_DATA_NOT_EXIST(7115, "topic biz data not exist, please sync topic to db"), - // 资源不存在, 已存在, 已被使用 - RESOURCE_NOT_EXIST(1200, "资源不存在"), - RESOURCE_ALREADY_EXISTED(1200, "资源已经存在"), - RESOURCE_NAME_DUPLICATED(1200, "资源名称重复"), - RESOURCE_ALREADY_USED(1000, "资源早已被使用"), + // 资源已存在 + RESOURCE_ALREADY_EXISTED(7200, "资源已经存在"), + TOPIC_ALREADY_EXIST(7201, "topic already existed"), + + // 资源重名 + RESOURCE_NAME_DUPLICATED(7300, "资源名称重复"), + + // 资源已被使用 + RESOURCE_ALREADY_USED(7400, "资源早已被使用"), /** - * 资源参数错误 + * 因为外部系统的问题, 操作时引起的错误, [8000, 9000) + * ------------------------------------------------------------------------------------------ */ - CG_LOCATION_ILLEGAL(10000, "consumer group location illegal"), - ORDER_ALREADY_HANDLED(1000, "order already handled"), + MYSQL_ERROR(8010, "operate database failed"), - APP_ID_OR_PASSWORD_ILLEGAL(1000, "app or password illegal"), - SYSTEM_CODE_ILLEGAL(1000, "system code illegal"), + ZOOKEEPER_CONNECT_FAILED(8020, "zookeeper connect failed"), + ZOOKEEPER_READ_FAILED(8021, "zookeeper read failed"), - CLUSTER_TASK_HOST_LIST_ILLEGAL(1000, "主机列表错误,请检查主机列表"), + // 调用集群任务里面的agent失败 + CALL_CLUSTER_TASK_AGENT_FAILED(8030, " call cluster task agent failed"), + // 调用监控系统失败 + CALL_MONITOR_SYSTEM_ERROR(8040, " call monitor-system failed"), + // 存储相关的调用失败 + STORAGE_UPLOAD_FILE_FAILED(8050, "upload file failed"), + STORAGE_FILE_TYPE_NOT_SUPPORT(8051, "File type not support"), + STORAGE_DOWNLOAD_FILE_FAILED(8052, "download file failed"), - - - - - - - /////////////////////////////////////////////////////////////// - - USER_WITHOUT_AUTHORITY(1000, "user without authority"), - - - - JSON_PARSER_ERROR(1000, "json parser error"), - - - TOPIC_OPERATION_PARAM_NULL_POINTER(2, "参数错误"), - TOPIC_OPERATION_PARTITION_NUM_ILLEGAL(3, "分区数错误"), - TOPIC_OPERATION_BROKER_NUM_NOT_ENOUGH(4, "Broker数不足错误"), - TOPIC_OPERATION_TOPIC_NAME_ILLEGAL(5, "Topic名称非法"), - TOPIC_OPERATION_TOPIC_EXISTED(6, "Topic已存在"), - TOPIC_OPERATION_UNKNOWN_TOPIC_PARTITION(7, "Topic未知"), - TOPIC_OPERATION_TOPIC_CONFIG_ILLEGAL(8, "Topic配置错误"), - TOPIC_OPERATION_TOPIC_IN_DELETING(9, "Topic正在删除"), - TOPIC_OPERATION_UNKNOWN_ERROR(10, "未知错误"), - TOPIC_EXIST_CONNECT_CANNOT_DELETE(10, "topic exist connect cannot delete"), - EXIST_TOPIC_CANNOT_DELETE(10, "exist topic cannot delete"), - - - /** - * 工单 - */ - CHANGE_ZOOKEEPER_FORBIDEN(100, "change zookeeper forbiden"), -// APP_EXIST_TOPIC_AUTHORITY_CANNOT_DELETE(1000, "app exist topic authority cannot delete"), - - UPLOAD_FILE_FAIL(1000, "upload file fail"), - FILE_TYPE_NOT_SUPPORT(1000, "File type not support"), - DOWNLOAD_FILE_FAIL(1000, "download file fail"), - - - TOPIC_ALREADY_EXIST(17400, "topic already existed"), - CONSUMER_GROUP_NOT_EXIST(17411, "consumerGroup not exist"), ; private int code; diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java index 93b90d2f..fd28308d 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java @@ -1,7 +1,6 @@ package com.xiaojukeji.kafka.manager.service.service.impl; import com.xiaojukeji.kafka.manager.common.bizenum.DBStatusEnum; -import com.xiaojukeji.kafka.manager.common.constant.Constant; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.ao.ClusterDetailDTO; @@ -72,7 +71,7 @@ public class ClusterServiceImpl implements ClusterService { return ResultStatus.PARAM_ILLEGAL; } if (!isZookeeperLegal(clusterDO.getZookeeper())) { - return ResultStatus.CONNECT_ZOOKEEPER_FAILED; + return ResultStatus.ZOOKEEPER_CONNECT_FAILED; } try { if (clusterDao.insert(clusterDO) <= 0) { @@ -102,7 +101,7 @@ public class ClusterServiceImpl implements ClusterService { if (!originClusterDO.getZookeeper().equals(clusterDO.getZookeeper())) { // 不允许修改zk地址 - return ResultStatus.CHANGE_ZOOKEEPER_FORBIDEN; + return ResultStatus.CHANGE_ZOOKEEPER_FORBIDDEN; } clusterDO.setStatus(originClusterDO.getStatus()); return updateById(clusterDO); diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ZookeeperServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ZookeeperServiceImpl.java index 796410da..aa31ed33 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ZookeeperServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ZookeeperServiceImpl.java @@ -53,7 +53,7 @@ public class ZookeeperServiceImpl implements ZookeeperService { } ZkConfigImpl zkConfig = PhysicalClusterMetadataManager.getZKConfig(clusterId); if (ValidateUtils.isNull(zkConfig)) { - return Result.buildFrom(ResultStatus.CONNECT_ZOOKEEPER_FAILED); + return Result.buildFrom(ResultStatus.ZOOKEEPER_CONNECT_FAILED); } try { @@ -68,6 +68,6 @@ public class ZookeeperServiceImpl implements ZookeeperService { } catch (Exception e) { LOGGER.error("class=ZookeeperServiceImpl||method=getControllerPreferredCandidates||clusterId={}||errMsg={}", clusterId, e.getMessage()); } - return Result.buildFrom(ResultStatus.READ_ZOOKEEPER_FAILED); + return Result.buildFrom(ResultStatus.ZOOKEEPER_READ_FAILED); } } \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/order/impl/ApplyAuthorityOrder.java b/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/order/impl/ApplyAuthorityOrder.java index e2f57b28..60119352 100644 --- a/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/order/impl/ApplyAuthorityOrder.java +++ b/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/order/impl/ApplyAuthorityOrder.java @@ -95,7 +95,7 @@ public class ApplyAuthorityOrder extends AbstractAuthorityOrder { } TopicDO topicDO = topicManagerService.getByTopicName(physicalClusterId, orderExtensionDTO.getTopicName()); if (ValidateUtils.isNull(topicDO)) { - return ResultStatus.TOPIC_NOT_EXIST; + return ResultStatus.TOPIC_BIZ_DATA_NOT_EXIST; } AppDO appDO = appService.getByAppId(topicDO.getAppId()); if (!appDO.getPrincipals().contains(userName)) { diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/local/Local.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/local/Local.java index 40841de4..992c09e4 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/local/Local.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/local/Local.java @@ -23,7 +23,7 @@ public class Local extends AbstractStorageService { @Override public Result download(String fileName, String fileMd5) { - return Result.buildFrom(ResultStatus.DOWNLOAD_FILE_FAIL); + return Result.buildFrom(ResultStatus.STORAGE_DOWNLOAD_FILE_FAILED); } @Override diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java index f97510fd..307c486c 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java @@ -52,7 +52,7 @@ public class KafkaFileServiceImpl implements KafkaFileService { kafkaFileDTO.getUploadFile()) ) { kafkaFileDao.deleteById(kafkaFileDO.getId()); - return ResultStatus.UPLOAD_FILE_FAIL; + return ResultStatus.STORAGE_UPLOAD_FILE_FAILED; } return ResultStatus.SUCCESS; } catch (DuplicateKeyException e) { @@ -113,7 +113,7 @@ public class KafkaFileServiceImpl implements KafkaFileService { if (kafkaFileDao.updateById(kafkaFileDO) <= 0) { return ResultStatus.MYSQL_ERROR; } - return ResultStatus.UPLOAD_FILE_FAIL; + return ResultStatus.STORAGE_UPLOAD_FILE_FAILED; } catch (Exception e) { LOGGER.error("rollback modify kafka file failed, kafkaFileDTO:{}.", kafkaFileDTO, e); } @@ -169,7 +169,7 @@ public class KafkaFileServiceImpl implements KafkaFileService { return Result.buildFrom(ResultStatus.RESOURCE_NOT_EXIST); } if (KafkaFileEnum.PACKAGE.getCode().equals(kafkaFileDO.getFileType())) { - return Result.buildFrom(ResultStatus.FILE_TYPE_NOT_SUPPORT); + return Result.buildFrom(ResultStatus.STORAGE_FILE_TYPE_NOT_SUPPORT); } return storageService.download(kafkaFileDO.getFileName(), kafkaFileDO.getFileMd5()); From d8c9f403778930a5e9a31c15b26eb14c4f47845f Mon Sep 17 00:00:00 2001 From: zengqiao Date: Thu, 28 Jan 2021 15:50:31 +0800 Subject: [PATCH 09/48] faq add how to resolve topic biz data not exist error desc --- docs/user_guide/faq.md | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/docs/user_guide/faq.md b/docs/user_guide/faq.md index bb6298ee..28138a3a 100644 --- a/docs/user_guide/faq.md +++ b/docs/user_guide/faq.md @@ -9,6 +9,7 @@ # FAQ +- 0、Github图裂问题解决 - 1、Topic申请时没有可选择的集群? - 2、逻辑集群 & Region的用途? - 3、登录失败? @@ -16,7 +17,23 @@ - 5、如何对接夜莺的监控告警功能? - 6、如何使用`MySQL 8`? - 7、`Jmx`连接失败如何解决? +- 8、`topic biz data not exist`错误及处理方式 +--- + +### 0、Github图裂问题解决 + +可以在本地机器`ping github.com`这个地址,获取到`github.com`地址的IP地址。 + +然后将IP绑定到`/etc/hosts`文件中。 + +例如 + +```shell +# 在 /etc/hosts文件中增加如下信息 + +140.82.113.3 github.com +``` --- @@ -55,7 +72,7 @@ - 3、数据库时区问题。 -检查MySQL的topic_metrics、broker_metrics表,查看是否有数据,如果有数据,那么再检查设置的时区是否正确。 +检查MySQL的topic表,查看是否有数据,如果有数据,那么再检查设置的时区是否正确。 --- @@ -74,3 +91,17 @@ ### 7、`Jmx`连接失败如何解决? - 参看 [Jmx连接配置&问题解决](../dev_guide/connect_jmx_failed.md) 说明。 + +--- + +### 8、`topic biz data not exist`错误及处理方式 + +**错误原因** + +在进行权限审批的时候,可能会出现这个错误,出现这个错误的原因是因为Topic相关的业务信息没有在DB中存储,或者更具体的说就是该Topic不属于任何应用导致的,只需要将这些无主的Topic挂在某个应用下面即可。 + +**解决方式** + +可以在`运维管控->集群列表->Topic信息`下面,编辑申请权限的Topic,为Topic选择一个应用即可。 + +以上仅仅只是针对单个Topic的场景,如果你有非常多的Topic需要进行初始化的,那么此时可以在配置管理中增加一个配置,来定时的对无主的Topic进行同步,具体见:[动态配置管理 - 1、Topic定时同步任务](../dev_guide/dynamic_config_manager.md) From 07d0c8e8fa821e2197b96eae34b5506ea257121f Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Thu, 28 Jan 2021 22:02:49 +0800 Subject: [PATCH 10/48] Update README.md --- README.md | 82 ++++++++++++++++++++++++++++++++----------------------- 1 file changed, 48 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index 628d5555..d0887cac 100644 --- a/README.md +++ b/README.md @@ -5,66 +5,80 @@ **一站式`Apache Kafka`集群指标监控与运维管控平台** ---- - -## 主要功能特性 - -### 快速体验 -- 体验地址 http://117.51.146.109:8080 账号密码 admin/admin - -### 集群监控维度 - -- 多版本集群管控,支持从`0.10.2`到`2.x`版本; -- 集群Topic、Broker等多维度历史与实时关键指标查看; -### 集群管控维度 - -- 集群运维,包括逻辑Region方式管理集群 -- Broker运维,包括优先副本选举 -- Topic运维,包括创建、查询、扩容、修改属性、数据采样及迁移等; -- 消费组运维,包括指定时间或指定偏移两种方式进行重置消费偏移 +阅读本README文档,您可以了解到滴滴Logi-KafkaManager的用户群体、产品定位等信息,并通过体验地址,快速体验Kafka集群指标监控与运维管控的全流程。
若滴滴Logi-KafkaManager已在贵司的生产环境进行使用,并想要获得官方更好地支持和指导,可以通过[`OCE认证`](http://obsuite.didiyun.com/open/openAuth),加入官方交流平台。 -### 用户使用维度 +## 1 产品简介 +滴滴Logi-KafkaManager脱胎于滴滴内部多年的Kafka运营实践经验,是面向Kafka用户、Kafka运维人员打造的共享多租户Kafka云平台。专注于Kafka运维管控、监控告警、资源治理等核心场景,经历过大规模集群、海量大数据的考验。内部满意度高达90%的同时,还与多家知名企业达成商业化合作。 -- Kafka用户、Kafka研发、Kafka运维 视角区分 -- Kafka用户、Kafka研发、Kafka运维 权限区分 +### 1.1 快速体验地址 +- 体验地址 http://117.51.146.109:8080 账号密码 admin/admin + +### 1.2 体验地图 +相比较于同类产品的用户视角单一(大多为管理员视角),滴滴Logi-KafkaManager建立了基于分角色、多场景视角的体验地图。分别是:**用户体验地图、运维体验地图、运营体验地图** + +#### 1.2.1 用户体验地图 +- 平台租户申请  :申请应用(App)作为Kafka中的用户名,并用 AppID+password作为身份验证 +- 集群资源申请  :按需申请、按需使用。可使用平台提供的共享集群,也可为应用申请独立的集群 +- Topic   申   请  :可根据应用(App)创建Topic,或者申请其他topic的读写权限 +- Topic   运   维  :Topic数据采样、调整配额、申请分区等操作 +- 指   标  监   控  :基于Topic生产消费各环节耗时统计,监控不同分位数性能指标 +- 消 费 组 运 维 :支持将消费偏移重置至指定时间或指定位置 + +#### 1.2.2 运维体验地图 +- 多版本集群管控  :支持从`0.10.2`到`2.x`版本 +- 集    群    监   控  :集群Topic、Broker等多维度历史与实时关键指标查看,建立健康分体系 +- 集    群    运   维  :划分部分Broker作为Region,使用Region定义资源划分单位,并按照业务、保障能力区分逻辑集群 +- Broker    运    维  :包括优先副本选举等操作 +- Topic      运    维  :包括创建、查询、扩容、修改属性、迁移、下线等 -## kafka-manager架构图 +#### 1.2.3 运营体验地图 +- 资  源  治  理  :沉淀资源治理方法。针对Topic分区热点、分区不足等高频常见问题,沉淀资源治理方法,实现资源治理专家化 +- 资  源  审  批  :工单体系。Topic创建、调整配额、申请分区等操作,由专业运维人员审批,规范资源使用,保障平台平稳运行 +- 账  单  体  系  :成本控制。Topic资源、集群资源按需申请、按需使用。根据流量核算费用,帮助企业建设大数据成本核算体系 + +### 1.3 核心优势 +- 高 效 的 问 题 定 位  :监控多项核心指标,统计不同分位数据,提供种类丰富的指标监控报表,帮助用户、运维人员快速高效定位问题 +- 便 捷 的 集 群 运 维  :按照Region定义集群资源划分单位,将逻辑集群根据保障等级划分。在方便资源隔离、提高扩展能力的同时,实现对服务端的强管控 +- 专 业 的 资 源 治 理  :基于滴滴内部多年运营实践,沉淀资源治理方法,建立健康分体系。针对Topic分区热点、分区不足等高频常见问题,实现资源治理专家化 +- 友 好 的 运 维 生 态  :与滴滴夜莺监控告警系统打通,集成监控告警、集群部署、集群升级等能力。形成运维生态,凝练专家服务,使运维更高效 + +### 1.4 滴滴Logi-KafkaManager架构图 ![kafka-manager-arch](https://img-ys011.didistatic.com/static/dicloudpub/do1_xgDHNDLj2ChKxctSuf72) -## 相关文档 +## 2 相关文档 -- [kafka-manager 安装手册](docs/install_guide/install_guide_cn.md) -- [kafka-manager 接入集群](docs/user_guide/add_cluster/add_cluster.md) -- [kafka-manager 用户使用手册](docs/user_guide/user_guide_cn.md) -- [kafka-manager FAQ](docs/user_guide/faq.md) +- [滴滴Logi-KafkaManager 安装手册](docs/install_guide/install_guide_cn.md) +- [滴滴Logi-KafkaManager 接入集群](docs/user_guide/add_cluster/add_cluster.md) +- [滴滴Logi-KafkaManager 用户使用手册](docs/user_guide/user_guide_cn.md) +- [滴滴Logi-KafkaManager FAQ](docs/user_guide/faq.md) -## 钉钉交流群 +## 3 滴滴Logi开源用户钉钉交流群 -![dingding_group](./docs/assets/images/common/dingding_group.jpg) +![dingding_group](./docs/assets/images/common/dingding_group.jpg) 钉钉群ID:32821440 -## OCE认证 -OCE是一个认证机制和交流平台,为Logi-KafkaManager生产用户量身打造,我们会为OCE企业提供更好的技术支持,比如专属的技术沙龙、企业一对一的交流机会、专属的答疑群等,如果贵司Logi-KafkaManager上了生产,[快来加入吧](http://obsuite.didiyun.com/open/openAuth) +## 4 OCE认证 +OCE是一个认证机制和交流平台,为滴滴Logi-KafkaManager生产用户量身打造,我们会为OCE企业提供更好的技术支持,比如专属的技术沙龙、企业一对一的交流机会、专属的答疑群等,如果贵司Logi-KafkaManager上了生产,[快来加入吧](http://obsuite.didiyun.com/open/openAuth) -## 项目成员 +## 5 项目成员 -### 内部核心人员 +### 5.1 内部核心人员 `iceyuhui`、`liuyaguang`、`limengmonty`、`zhangliangmike`、`nullhuangyiming`、`zengqiao`、`eilenexuzhe`、`huangjiaweihjw`、`zhaoyinrui`、`marzkonglingxu`、`joysunchao` -### 外部贡献者 +### 5.2 外部贡献者 `fangjunyu`、`zhoutaiyang` -## 协议 +## 6 协议 `kafka-manager`基于`Apache-2.0`协议进行分发和使用,更多信息参见[协议文件](./LICENSE) From 59256c2e80460439b00fa3649cb802555ae389da Mon Sep 17 00:00:00 2001 From: EricZeng Date: Fri, 29 Jan 2021 10:53:35 +0800 Subject: [PATCH 11/48] modify jdbc url modify jdbc url, add useSSL=false --- kafka-manager-web/src/main/resources/application.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kafka-manager-web/src/main/resources/application.yml b/kafka-manager-web/src/main/resources/application.yml index 73773981..8c137da8 100644 --- a/kafka-manager-web/src/main/resources/application.yml +++ b/kafka-manager-web/src/main/resources/application.yml @@ -11,7 +11,7 @@ spring: name: kafkamanager datasource: kafka-manager: - jdbc-url: jdbc:mysql://127.0.0.1:3306/logi_kafka_manager?characterEncoding=UTF-8&serverTimezone=GMT%2B8 + jdbc-url: jdbc:mysql://127.0.0.1:3306/logi_kafka_manager?characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8 username: admin password: admin driver-class-name: com.mysql.jdbc.Driver From d483f25b9634b15eac245c22512044ed61b8dc95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=85=89?= Date: Sun, 31 Jan 2021 15:28:59 +0800 Subject: [PATCH 12/48] Add files via upload add jmx prometheus --- .../jmx_prometheus_javaagent-0.14.0.jar | Bin 0 -> 413862 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docker-depends/jmx_prometheus_javaagent-0.14.0.jar diff --git a/docker-depends/jmx_prometheus_javaagent-0.14.0.jar b/docker-depends/jmx_prometheus_javaagent-0.14.0.jar new file mode 100644 index 0000000000000000000000000000000000000000..54b633bfb78d09b4bb70255195be47e8bc770c76 GIT binary patch literal 413862 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

Z4yy9Sc8T?N38RV4)YjSxI zg>iHdMFe09X)En)9M8|j{RnYGr88uVhz>@s0HE_F&hEhzW#?;8+M|l9YQ^CWBM34_ zi|%+v+Jsdc9-N7Z5__GQ7j9Y5jVH4RcJ?-?Cm#Dhfpv7Fy(q zk`8I>cY!kRXPAM<@025!hZ<1KcmjHE^VlZ3nCYE0u8!lyviXvMOo)~x7zc^ z>R=0h>|RS5EhlRmg&FNo7a0)zi=%mjfTbaF_jF*(g?3hpt ztIB)x`?AyH&ruBsXP;q>Fiwu}?_o2~X9_5%N6rYoG^I4%1CaW5d=HR4+!%l2=AJMV zN7?A88=~i_p_Fjd-5uT!z)9Q;YtD(fltwh3rfk=3tL%u|Vk5cAdVTMKH=vDrNhA2& zAh5Re7YOKI2}>+7K!4rjcwRu1x}v;c@A%+YL9;05?gXr~ERfgp_J2!#mPQF~@+00sCl45_M>DRwS(}Mrs z9;SakMMJ*e1}ds($DB{S?97?nE?^QsNM0Erz(9(YNJ7wL0U>%JgqWiO5=Kx#sHip& zk4YK=0>*-(Qr{HMcRSsdTQ2IxJFB}|b={X$qu!h^edht&zdk;z?Ki#Ka=c%7kJizj zTJ-Z)fxo@)>xBpgo_1%go(_GyK=}*nZUTm+?@p`jBNnCiM1Q!r~eB zNv_YAmLcgvekFfrbh3n_RBZd2=cTYH<~>%M43!y#G)p|E=^13j0yTNRo;y(o6cXNnY~QgTZb%~7#Dp!~w@v4RsitcMZ6aKDv~ zub{KmIIpkD*U*)HojQT26mKO?$>|IgQ%mJ8q!$`ToPyYs-(V_z=+z>s;1|-0feVo= zm$0f`;zllfpYuYDlJlE$Tzo(+IhDhRNI+P0kt$Kq(m#8mZH>f4N>UPG28`}$nu!eT zV)W!2b?kxIK82wOe0X3{D;+;;>2& z5lRl%z@cz}FUO<3AHoRXSg5Wx@(U0INqi)O!&%r~;9xQ~>X;Em(lqAfXfzwXVf5Wp{uU z)jIhLGUR(uhNgs`&)}#cXmT|9RHh1p*K|lEu{f$Mwqyh>2N%|3RHLKA0%dAph1wG` zb@>t)hWX-A_0zHsWdSbDm;Cr_%4 z7mEuoXJ_d*da{}6^+}h>mO`$ag03@n%Zup0K}hG2Kq`7W*;bH7Hk5%69#HpJ|8N4V z+s~}1fU5#IaywVrnpq?y8~d!j&qUNe(Pk)|<>PCN3nM|sV(HiRbr)29B`2pH;#iik zkaJii#kazz*N>}r)X)jci{~UTS=;Lv2+y?^^4uNo0l6>G1{09QP-3tbdF}1>^3mfAG1FHtU6r!-1wmnLc$88npDI=J;)l;I? zgjlZ|{A@v!3AJ=2*nZigfog7oBwr6OFhRFmv0iV$vTHWrnlxBpC)UaHWuiNJw%{v* zV~{X*t;P-m*rH7a{f=40h2R|kqO7i?vaYBlJy=qye2Zq0=cFfJKL`^mJNC&KaK38& z34Zr{q6acWlxfKM;keAP<(SQK-b{_y5eXsljG_~`|5E|{QRh+ismwddY zLT!E?K`#6PYFKOr3Hv}0xnVRmlp*z>4Pu*B$hENv+8q$9Hylgt2s|uh z`w-&R{q9+mTiOjWcjx&K7XT@F1oS@>BhRN)6gp0TzV&N+H%N3r#`yQSpy(YWzn8Hf z>4$kgXu9BuKPLsC6FX3TFQK#L6(8-!B}-y*236J`?tGZ&;sO|SJ5D)x1lsZJ;=E%m~BvhbIggpTu_(OE+^}*chYf1*!(Zj-YPbem~GQcI?U-XGcz+Y zQzso}W=`I42j4I=Gcz-Dhnbm~8Mgm#=3sZV^GiEZa;a?9fu*O)cDd~9zA-kj2xA;A z;|Ar9+8B*fDa@XOH z_|h!aGvQZ~c zlw2dGy5<`^wp+`!5lAs*#j4XfYbUJ+j&s6vRLPAyu3k6fjHi+R@_wt7d1L7kp|}vdnXaLx~40i){uHRzh7D* zmcSy4I6wk5(5(dbY>r;0Y}w3VX~4R9v{@P~{1#+Of5S~51Jri#g7PRy0O%>}wLXas zj}C^|mzCfpktZ-m_{x<{oK9v{gva-LaH_+FW=e=ghC=&|u_TC56?(({GMja&JV&Rg zf6c7edEYTAcXjF%hBP%~*B!55gRoCi00O3CcSuaR{y}66)xCgoHl|`HJY4EUslR#%54|;8(b0A6_lG((b#1i z_7Fw}gxhLNUy|rOwHZ$exdQ`=C&rzTMX0>U#i;o7bvY(ac8;iK>x+3+YS~0$$ zz`I*wz>;{H5J%%Pt+k<~p2I$!BaWwwLPXJiBQU2`1GlVPs{BjWc-K?T)Op)r7mLma zn-6*EIG2FK`jk)XmwEfm&pUcdr$+qnx}R$!1~D9F8$mI*2P0!Bfellu9{DLwnM5j?+(q|+(PMn%LsRGO|he_%dQj3lI zHq!h2^DQwNipN^bP+>Fp3HAXs%X zvAA5wkSO`)8k<OpBCClCMGgG}!-*g+bbd^tZb)q&r+)`?|7P%ydXN-K@AvR3O)ElvH&! zJyPsXt$e7CnIE$WsfDrF%9~7#kyeadjhrjE@>11Tm-rh{l4|oIikBYkStu;BO_&u2 z(HOj<;t>HT4bIWB!B*B4*7wDjiDt^aZ2fCiJr)So4O1YATOm zzWue)6MZAH8b(~|BNAaE4C*1#Op2i6CZxNY#*sDUnUDEk+8)84vvKGdyyEJJD6sU*zm-^;6qQ(#Ha+d|wcRk-O_cwniKlDDEjBnSQn=zRi!)fMSb=a?G?x(7YyzaFQF-bS z#;?H#tiLOPnMP(7*!>P1*rloDQ<5hHrCNIx@QLP05Ytu-Kh!kI0xOv=<+gS5Yx>PB z!BZZEqbCn>9#JCxdXuOvGu2F0r>k&iq0wR?-w*vb!ZU4;#=&KgF3Gb});$3ym-wif z=6D^{FK^u*7#-}*Pv_HIAg=qRBLo+#ko0EhB%`Vsk`A56qfE$XB`&%kcjgohw?Cv( zz0kTi=lTomvFiTbK!arf1v4xnty&f^I7`(NDXF8tMrUB+`4Iz8rh$v59!iTXDl^wh z{yU!Vf^UVqI`7i1R90t1as}ZYopAHbFrG)w=K7bR79B-ZvqA9E8tzXXLN#7Ckfq2B z?*00L?uixZU|kXoYP)^gUAO!?_vzRPgBT z3BRK=baeR40k@gb&fyWmQFsEkfPtbVrLeZ=@b|qzek1xqwG&(oLJWPsSTcOoFg z3o*teY~)0f)Gmzjp*@4V7YcZK%$l1s03?e|Bqt*jz@t-^^fTK<<9#_v(SvJ?H4W2k zj9j74&R;@yr@L(o`GRk9;*Lw;RY7J5SK`8P1niYI6kHa1;Qb6zkrZe?Y*#V~>|o)F zkwu`%yi*H7F5sw`yQV#^FBND->|T>4Us!(Qf<|-$ZUv5v-@n+ow=eFtZ0-|FDjz*3 z$N?EMa2#2-%zW9QD5^5J6*W;x?Mi8FAMFBJ!P0TVx=S@806P)UHK8*4=c7O+xEK<< zsT!No3aX|aM&`u~a)BMZH~Cv)>ab`o5DC6pd@?3R~6h@vwkDJ4Cla$z03 zOwG~VdGkHzkk*)Nt`ER3Z^ImRF%*ItS%AQ2l~6u@^9oDDpgNDkEAG$o_Wob=x9mBm zu(wgDFRWQ0WqxfnTauOPq?eoSV!6o$+vGZ^7u7#NQ(pX&o7@4H?kpm)d|FG1)PVH-PoO11J^fw5vc5sO2OCuqAnz;?0LB6-(9mmVgHIfRWhNRK0 zHl`zwEkx=u9rB^$VduXMp6!LAwnlYXpI~!CJA0#;&xLun2l!N3B`qE%GE&MhR24hF zSU)v^d(5jq<7`{Ll_BzV2UiN%q?;1eNO|pgtJUbnmcNylzpu2vX1WiN{CeIsQ{-AE zx4$BPoBiS=Wi^E&*qRM+UR=$-DBQq470E5X()nhQbsGk(iJD+)c_+)d@lNd|-7p*v zs#9NzJ?VuAMt}7OrSbXr0A-9PA31a6ZFu zbFP*kA)J*U$pl8Hpm*2CepKTT-KXWV21<^Fiw-TS!DZgru$xEvS>6OKCGc}3OC1t% zuh2t{6L)@?r0@Z+5g0UYdRn%itEfz>u!PCtHcT{!up4#c(&9Q8p63UQIJn#pjene- zz&7YO(TOY81q6hi<HkI}2EZ2^%q;X9`Bz3dp)XNgLsQhFRA9zTO?0GFcJ> zUh?$@jIGVmhYwc7yk(yqxO`iLW)98#Re)IhuF#{Aux9Nc>U>%CdDF<3<4j11MAGIZ zX1`60-8ftCn?Y#|2|lwXCQcD=q|NF&_%15pzROrgW|4UarUXX%Ft8w$u$HAXjOFwR zev&M4N2qQ4jVBTTByi6+IE)q>(%N5Q6)(MDGZmG=d%Kl)rb9i?F&~!%&o1SbB3qiw zDiK?rBLZd=g{io>T_U*HTo4#48U@qkU~nyO_9;9nw6}(V!1`i;x`RqA+>bib^*cll zN=X^_*{w6@F^cv{=P|F7-`DZpGU|u%=O@jBc{&C-I6-0^6(PEhy7d*L)4nnVOhWPi|L7 z@gHUSnvZ+wAj`(ShncLy&&A0b#P01wXl)SzL-)3+;7*)f$&eVTuV=Vc+|01WeQtD? zXyx}`3wu^Fuq7{6V0cUNdxT#FAmP@->~z`3HBH(miRdWTm+tPR)zY^z>lRpltpXf2 ziWU)?Ouv-FX(~b+Zu@2Qb+dX9-vU4a=k%dm0^t!&Ko40#7PNkxG9eDnzY{zP_-{=| z0CJ@EsonFB;kPhF?u&(J{Jv$T%RZ{CN_{AF8w{GQ1PPCV){f^613k*S=#0F%b$wH7 zvN31cy=(sbX=iM_j=1nD+U!~Jt*O6WeCmQ^P{F6|T^ib60jOd--na(ALffq(#%O4ysu232w(k&Qb4Q1mD#J*?^(|9-cg0{W59B>9QhsE!1$uS1;$O`hZ(3dO*lAuTts9bl z^Nk83-AJ(7p=V29h1rk<|ADC0!8@VWP6Nivx!X(lcJ~(I_T4Ap z`Yu%e%l5o`uV3?kANF?6>oLeT-d@gtB1&MPceHNgV6%guOEAI=6h}V@069dIH8KP!Z4eW`W=G;^ONzdsaJD33)fAz6 zVu|w3N>*uQ^+66Kq=rRTrhTX6&W=?h!amvRI70b)Pkw~NmO z-9!4ZB?i#2HLjRe)gP!WwkU>Ppm1X=ca_ba9<@kL&MH^kcplU0mWR z>xgSEcoqsq8{~?k-#_r@?6%+Qa$ve-O46MA*-~$9F9XBUjFQ4L1^PM0~v*U(R!Mk zOqeev4J6Jf*@~t#!vkl*TN>?ny{+zazyKOl+6YpvAyQSHtZV1_zX3TmPT;gE% zhs7+exDPqjhr98eeM|gwq5v5+>IK<}7f-V9kHhg8K;+9vI;;QO=lC2X|;{JT>ten*oV(X3tg zD==;*l&$}8eFAgNfDAfYJJ!xz+#`130AG^V?GyQdJA4gcQjFD2Pj59=55q;F@N7jz z+>Bh-&1}0qxb$3ncYa`(R&BR5LXXmPdnvZr?B$$Us&^taH$5ON+bKA^K0vb_tj02g zq2spww8L@n0UscWQ*9|6ECjc;72tl^TWmf+_h{uQO7{tW-K_bBy){6mruaOUuvA37 zLoA>RL!k#@rvob8iZXX=HQH}InxO+1c*Da5e9;K1F!-?r!s@_&dWzGEXCG8?Yo-y^ z(nryW-@Jog3wKQ-+YTi#^qwe0=U`rBntkQq;>@KGamRQ(z~1~^@k7l7h^I{^A3NGu zysK3lA?6?$@rTFWvM*}d&};3Xe^AS_oZ@%fd@?=3HKoc@AQYzvl=q*^!$4Sktx?oq zaZ_lxoG5X{8e;dIz`+Ng$E2&(_yDyi1}DU(kFs-Knm@9w)6&|cx$nM^B5LQMc?V;S-r3`Qq>7m=HJdk`3@sEup*ts*ftZUv~vn z$<7ap*#b|C>G|qj6pd>c3zOA;>3UK5z{1fN5rUukvFDdr_jpsZW43+APa>4-xCB@;Z9ecoi+Pv5PQ%t5^2xFmd^bKBS{7RG zwSk`Xfa|Uwo2Q4zU4`ts!&xt&;@xQ*!Y&i|l}{R7`-LaU_n|xSW)_5N*(k2>tMo61 z(pR)Iae7D>5P#1nH~n*zz$beVsSJpfx=v1K^lkuM#Hlrxy^7RxM}0u88#wlCeP0bE zQ4s=eM)15Wf@jPw#kqO)NTN%}JfDgts}uUK+(}o^_uCelHS8bL@t^ue_P4B~T*7>? zA~pdow^$}&BVo@OhOsL@L#LuRB-YXUnbdKlu0Mm5yWXl!Nptrwswb2{?c%-wP_2p4YC zR$JZGl9I1JC6m1%@=uaEWbm+w^8l|4KjFXv*!nkiT)mvTs#OVXEh%F3T31BJK^W9m zzFSeuV)uLp#a<{LkdQg6z4P;02uGViY^5>CP`Sxp?6=)2khH!cy9iPee?5Lb#?|E3+kbSdq!U395=1VMJI zW<0vh@s^vBo%cWg5^uQkD9cK9n3}uWzC8CrOoNLE+{X zc-X;XCgqDj%e`qPZEw)yh#rxm7Zj^O^+FpzV9}nn21B=h(w?>j%66aDEq^7dV6Vh2 zBS7Q>N^3CYrt$?w4^?nL+o%U+-V)glx?cKtRE>;`GUI)02rmepGP{egaJY+JF z3G${k$YtBnvFwMK16@{G^67FJ0AnG@j>G6AO4#8~gWn!Qdl7C{MzI2efg(;AOu(ab zj!$4N5Osod%;`C9p|?br4y8Z6*N+>HYZmJ?!2GnGAxE4QRq1N3xSS#3;T#yJ4`>M- zpeK2MkOX+;!zC$zxD?W+R13RAA;_;2JEa@y44$7(Iw*k8bWhGuzO0eFIbRXoiM9oD z$?{eVxLpxV`975vVSEi}X51254*xo86NZN;H=}Wnz3d~OCzdvgh2{~$T>aTuj|!ip z`ET=Vh;%)z4oOD>m1i$a8iM<{-VB-Zj&K?r(%*T*jEO+}dd3gEC!pd1$cx+&ZCzt9 zfIfLJ(GU>p)Sdm$bOA*@NUiE&JsIP}RhU#f~sTTI&N*flnN zAWNdn(>7`g5Vb|m;dvkmGY}>p+aWHOUxH0a&q_PG^{>`))F{TQIg!0L8l5M0+DEF&G zs17jB9sp0!MX>i9YsLFz8=rsJQ)+xN&np5N`Rtb^YAbD|yI+?G^mUj~-WoCM4qcs; zDvBCDkv?7Vim(Xf31#`on38Ii@Gj-(t=J-Xz7>hdsLBZur7$How&xgiENw|22sb|D zSeg=%xo{YtzH+)y;#a?Gfm&!7waG0Z1Wa+Ibb0(Llrs3Tm=w_4Xv&Ok3|q4KVO!S- zrk|k>-akUh&D0V^(9sg+34zUdZW6=MlGLT}^h0V+KA*Qc&*MOfQ#Kvxx`>H^6u5FH z5us5Ha(snC3oc4^Dql4*|4x+GqDp52DVg5tnJb;JwyKg_*21LvJ7SVpw~b>Zouazs zT||da6o(nIokoxKTM+v88?4JQo^mCRO-cxJh2i&XLJ%%BtnvpCVMc$W*Exx7Sj7h3 zi9k9(l5CffdIC6a0%0-+@)|78B=K7$SO-4Bgk5zEr!)z(cc>ntIsw6@) zUxSuT4QVQzF-SXUQNw0?&144(^$>a_NlTwUDzachgQB^V=3y$Md~O;v{K8z<9&5eD~pTG5_mpA zze{JC^@}W`_=+@27O7o1eFgY|A~-S??xDOKe~HIEO}eS?@maR1?{!%O6^=SgeZ3XZ zTO-(j?lWw&g)XC(@XR4NugP~**2Jc8edNI_Dam zw%iXiMJH5vX;dUH6|F%E8TU+Zn@~#f*UYA!;`Lrv18h-#7@fnzqpfoT=$@>hf%H84 zbO0aMe4(SH!imf^L51?bCQ0_e?Br`%_JYJEhD!XVwV|g|GNoyt)=hnsLp3Ei#P8~0 zUvGVP!9g#TxxwV9nWSs&%V%3$;;8HOYv7Z&{VK?q326=6?A@ywD;Ot?&JxcJOW4EN zOe5~$IB^@FG%Q$4p2j>p7*^4ahWWw@mtsB+uA&Vaz$WvkgmN{Z{?|ozMoy>rg>n$P ze?;Gk4W%3k-`KE@?IIX-u~B<^{E_thWXbFXo??2k#=}3}N1p=cm0H5LJTAxVpyifJ zN}Eq1zI$Ydbf3y1dH(*FbU1^E(j2rqsm4NLvG%@4qVy^odlO6(j+Kp!q|bS-ofgbk z5MfoOnq%Xj%*RyirGPrRhOG}N8n z)%v@$)G88t&uYB?#{n%*cm)+ET&$W&*kNKE#Hdqyxa^Rgr;`wpV;mqUJG1dpkIGk6 zkzu^!e8~C%4a#Hh$E~)f(*SmU_+388plBFX(FK(d$G`1JzoOBI1iLjJ3goDT)?K4c zNVkeh$VySWsGV_;#_}oY3O=YosQck$2fZS@PUJs(3QE{!fk&N+inc4&w^lbl;p~Vy z^bl+hO^ezxjXs&|@?ikk8aV+)oCN#DX%tzl15_M#^Z1E$La4q~+ zq2Ue#Yc&Mm+3%D~6JnIXAGj)GGsgb0O6!Ne!vmUy3v7t(TLSZQvu;{9ATkc;ZyLQJ zpGNs_NIc?OsFpk=yWt7P)pv~BFa?ro`j78gZmPWTyHo6Y1rK>0gt{Y$wneG8N1pDU zxrBWqe;rbCX@9{SkNdO=ePPocVrtNThhvU0-m1KEcB*{gtB>2?XuZ-`$8GOc-FbD& zet}&l3+@Eo>A%!|APF$|4N@K|w#t7+Dvp7@MDm4B$0_iE)zZJ+RU3vZILElPW(j#}7f1ibt}qh2Dlp%CXH2sgjCLuq&X#MJX7C&8q3x zxS*zB^A9CSG;3HMgq}z0I0nX*e4Nn7Ev#z<|K9#QY=bYZra9h zLvJ$oC8ftEx*)66%6Al!$&yiU>0;=bwIAd<5e>Y+#MT295@kmM3JlYxf?5G3fg(S? z1XdU@57yCHF+K9s==Tbi&;`}SxF;r+)8Z7}e9gqb;SxjjjO{hK-F9NC`V7v?(}iC_ zOlySM-c~JA8>>F+9!>6{@j?O&Gf~69zAx(#&Sc+vZBUdO%V1b|9lE)EaQXVhw~HSR_O_jo~wG(fX*2=`yV|;ff^c=Cb8tvnY69 zFOr5Z(df4!B;tCw2gl5K&yQ3+K51#Z_8ThtCegOwmln)sF5@N;X#V<;IcLelh5ce+ zyh8SScG|s&yTjjGKM|t|W9Xsr1pRKIzC61>ZKuae#YGK`ITkKghP92Pb_iicpJFo; z@@JlBc)==zvUHLprGa|GSz0-K z6QrUxg)~iPs;73#_fWxtN(Lp zGSPuBPmc%mE@b8jrCu2(wk{O8icAbsG+r6PQi7e>1N4FAEMQmL+&nSvi#2GO4VRHY zw^9c6J3lxOnhF6rBWF0@2Rh;&aCvl z*lD}82)NF^JSvo{E(3}8BiG6srvb!J-J1vh;4uI%5$lMT8syd^GYajAJE38T#8b|= zdZbPPJy!#Ldm9>m^tkaDnnHfMI5!a~B|WcUWS9Bxy{?Qqe|7HN5kM}cLLBdjiwn{_ zAWIpaF>W-jq(MAf!XlqJGo^ib)ot7vIhAO=6>*b zx`ZgXWUzvI(!hg%Nx^dNJ{(Y=hlEAjbt2THnqIg_h4t5T=REKITOuWO#u?v5m2_g~ z51VBi6+fae0}>H%pi;}6cO@^K3brH)9nt3N&<(?1l?3|yTfFysve}KrKXMTwM;SVS zDxvgJoJuu$r~fL}^4V?JgC){#A=N4-I!*h0RKy?q4?0|KFJoS1U=kVQV&xeO2{ zGa`Sp!;*x^lPJM2o{bP`EmcrmH2T3)Uw1yHxeZc+T`@Mb^k=y>&U<|_)_&v1K$Ny& zwj-`8R*PtpBPAX4RRFD2P(@V7F2}x}MWOez;kaWn_PIey9f2MjN3Z#?#LFB2q?HvmZH9mvsxCZDuokHJq?AvJwy&RmC;2;$IMz1t2IoV2vu7G3SfA zk20^FS_w?Snch_!hHG5|D6a}abONchoh5?6@Z?;23pb*pIi!JkJ}zSYY1G`TUNgQ9 zpWsKn4#(!?2%^uvYdj>ArRp=0kvUD5BXwJ+Enh`v}87k!wJ10XC-7nm9!<#yWMEJRsXs&VK;cKovSb zH;TwR-hF)j@^nhco$$)7m^VzMp;Md=X~4Zg)3W~hvv$*$&lv2d0XS-fCO0iSd>t8l zy`O`4z<6p_lT!(v)qrcT1j4?u&D)DaJ*|~#>#3AdT^u2S#1=L}{=tDT@+a@%sK1uY zX|w^Gczgk-6XGB+FMg;)lQvYjn}A@3*0d^^EB@otfwx07`Ag?gT|HjEOXP7d!N%jC zLF{~mlDGn#E^%Jth%k;58s36`&p}sOL3d{Kh5nelt4eJQ3-J68u)V&$#Z9wDnM)P& zbex*|C4%&@6z_)LCAr{aENrZg15d#NW0@{X15{VF2CfF_(GGSJK)QetKq8_f2I*3p zlN_{WSEBK&CWCs5xP>cZU$ss!@$d?%UA#{41Y^kEO`JvA8(%qY1Ij!uxJQJ+fw8Su zeGK9Yat*geneRb+O-CQdw=a)n+X?Y2s>QJR7BLa~S|sU~fR5D{Dg~>D67z+)l35_2 zYIx+P{#FvO{({=pp~$@Y0`G;LW9(;4h{*XBi9U=8=(@#p()AmXA5JNR(cfJk-lk@K z*CNB+4rSZtjWhfZHNpKx^NAu9>%Jwd8-0=1G5DZM#)cZa942;bxs7O@2Co|vtJ_2~ zN}(Pim`7$zF9r;_gu2U@yiB-+^`zbI;m)IMXTa>4vnscZgT{J>x`B@u@^BALWpCd7 zLKGSU)o=p|neTz>%L{i+)68m%M|#(JH?*Mzj{1q2QVRJs2`*}3(NWKvmB5Z$-svc3^C%{6ZWH8AEzyHtxJD`IXGUS05~B#jC!4a*4hm+BVof~RMi$+|kiq7mTtRqQ6eN9BVdh%hb%D2jZ4h$$LXVA0G* z=b>>Vz&h!UuGH(>vE-r!VV^a~!5uFJE|;`!ZZJTQnDwQDhR=$L%m@i=va2vk>y z$!Ot#P*fw_pF3bH67cvomeFB~+8>M5EIvXM*N&!In?z>_?^+7pT*isN1-fM>L3bEN zI+5D({f+M5XoYS+r%Vk_P#r`cQ9%;dSr_@a%(33Yb>sLiq?e?%66k;7v7#c>(9HTZ zbV~D?pb~d}90p`Ef&NW`bD~D@fq07#ar*&GgUFhkDooQgs9i;Xow#D^zW^A+LNo}0Ut9@MDP?)PFQn9Q_)@d z#tj^rcGZxkLPix=sk_+RB*2z}eIoc=$TR_X<~4fIZ*$Yeu<)@#y9n@ve7Qz4lYA%0 zG;_Pcup=wf$w~h7urSYeen%T?hL{dPbH*wg`mJX6mU?!{nWYKuxqX435w*q>bIn3<9$3!MzpZn3_ z4Wl#nhlw5x)MQfV(c%e5%@FuKj~qvh`Wn}d_(qN|5zC*~KKM*g2?2mAkLEpm`OEmV zzd=jmZdw+CSQ56G+WPyOA*{HzhqFM5;e_@Dv<{+w#=b^{dx0_W;flXBx$vOPc6A4` zoB2J~IA)o*n9X)#93i{eGQGFo{pep23yRgR%u9CH)(L-oeG1N<9~UH?c?C$bOS7k{ z`hk+Wspz7~lv5h?D5?0!OI_B$w7po{U@A9ppTj zGIrP#4tmddaHl_Tcyta(dWF=p?Z%dCrZ*op4F8UqXnA*aap4)Z>5$+0Ip$U`JC)dQ zvBJWrO1cgCY#Z{M-HDsGy%$l`^6u3sn%^T<7sJid*~|vWJ23AWHCBBzl!=HzuJ)bVh#<744#O@>EIhUa8=a-YPM2~kf%!T$Z}Y84&>f))#B zD}*l;!`eJ56Ef#{V5Es2c=b(y`&?lvPuFhkmvp7%&kkS0z>yiUAKW0OhZUGw5)+kL z#LQ*@>^xav+cENxj!d%WZcbuMN?A=hfN^s>yfbq=V zw=l`f;9+`#Bw=%+oa~mQ^Yd5N(s#S(q+q}_t+7hS)k5CpjQD+$&KJOksoGKBHT7t6R+sTQOta)M@FU zYHyyNMfNK3a^B>MVU@~|ri+qSZD4a3GR3Nua|5{qXDI}CqkQ+vLA29q1=+4vbpUKP z1blG@&u&x|0Vx=_y%bWh)iBxWguqJ5KdJmME;QM--1Ju~IjwdRAHnRLY?I9r{geKt zT~g9P@4SQHCobMU;H#x@%=V34zWE|i(H1>n?qL3Gmm(Q4L~tGG{O8+Vkq@oQ9XM;^ zWqi^CUEHT}hkaZw7^Me6jwTQlI3nfdHHz5&cnqGD!Q~DNjUo1GhtgHIuIB zDG#vvN51c1txJ9nvc!B>=#??B==(piwI;fVJ6!A_AYh*Vod}xD{~4ww4lp)#aIv(v z`yaekl~RYokADVC1G0fcp+Bt5k4X(-W#NZ!Lem!^$?Nb8>fx`hVplc6nwkiWO+_LJ zcOc_x>3{idrV#c+Lfh zZRs^)t(d-*dFo~GPw8W`P|_$h3q!t7iS+URZ0)p;g57u%W(3kL)k_hN#MYCdv$$k_ zOX-fG>=n?Bo$-fPp3VTOv#WrV_;{!arc&DP$A2Mqbnv(bVxS-(|K%J1zxEQ4_&^BC=dqviRA4zPf&v> z7{de$2HLEMu%a^VN$qN5beYli@R#Dd$a4|hgJ06wSfuFoJ)Ugip-?1pzg*Qa%SiSH zxRZJT4$uvL+vN?&kaNk+iVhfmQ4PPa8wD?r);VJ5$l7n1$X*01>G52DLDb8#V1w|t zo&@N0AU+9r%T_POO)~RHe*XtVY(sSHss9&)gMa7$I!aRin^F2@Y-nTXBy4ABX3D7q4^$zlHW+h z+DE#P#J--e122>&w3+i#oZe!6o>={Q`~0N*LvO=!G2Yt+4W>9)l8@VFz9q@Yb7(v3 z7FfHl=cL#cH$5FJ+@Ih`C(^RI7Y^hVP)~`Aq+<%XW&O(T2!F?aUK~ra7{Y+W9_OUw zd_Wc@W}zE6=u0Zc2F_jEupR`v|I}xxH4e#NR;yE;!-Ox;Dcczk@X@Db@CjiSy(rIh z&1Oaov7F^2=p9BrBgAmz28Q-k41s4!-S0RRVq*=}XWlylmyCBkNzs^554< zh2#a8mdP%}GR_(jKy{DkzZSs@oCj1Xq$yfM!X&BGa`hEKIq=kWB5%P-e66qiy*RN-}6* zBc)la8@oa56T3yMTQaMZ*I(SiO?3FVFS^#C<;Z!6bX~GWF~wx%VOX=;a2kHyAuu+j z0(sh?`Ha?u$D_`B^rUG&`Zek_%>^JP{CsY^#K;DQqTd0L_05Ug5vh8E5(b`#L*0 z**h_U{c9jl|9D*xkbf2Y=lEYY7`}h^E$tZ{oa}8)T`Wvpof)lc0gTQTh9;&ajP_3E zj2?!zHjK`8hSsM4$(jDA26;m#>;E|jsM*SCFJt>w`&?S{VnP=d7YT{Z2lWT9$Y#vK zLsN5+xf&56z*zQUw60)!_jMO97t6NCxY19xyPgZQyM4-a*r+@g%-35AHU5rk&iUlF z?4giPf2!yymQHwDr0|+*8+IAQJ!8`pIOad@ymrpM_uYK9|G4A%^L`5k!S6=geS&fK zo7$QlegFOy?$&5&LL&{(mldJUcHah=WyYkV)~wcc*e5OS$Q4$u_1W^Ch&+}vXAt0E zwJ(yz`GB=c=m^4Z(OI8Zjmco;mK7Be*3cLptoyOZe4iW;vH&>@7;DOE6Mz6+AJf1@ zqmn*5v;lhdxe&J`x>HTiO-^Z5|JWu|Y#IuvR=u{<>;!;rlR8}H<~3&yO28z&Htwv=g<+t1F=ry8Ay(#ezp;2mN(z8UKFN1 zti*e;tGhytxIW6#HR`_dQG)&wK`zagM->0Xwd%WGCkqCf&THo?$&!Yqu5eN+DGDxt z^{vTB{m3&z|L_#AKy8isEp+Aw$09nb_E}7mk%bD2BiQV>qUBQ6s9DeA^PNnc-5v6N zsx=(hjq9R&pMRr!Y$7sJGK<>h%SW^|OTBfA%~L(#rLGT7^X3|ajCgM%BniGA^pK0V znGoW#0GKnxZz@Hd`-#8a)dd8U>B=z|h3Nd%x%uIyApA|~sKji`6MZ<03Q?lLf^X&% ze#+*_la!9b%bg?>jfj+`%5)Q!*^S+xI6^htkJSewAZU%@nmKq2y}a+;pQ)Bk!}GM4 zKa^>GVX#t>^mEfiVuac7Xh1VrO`8tG8qQFq?=oW%n0%olp*nm_!WH9tM2lXMmQKOw z$O8NHTRKSFo_-+q6MpVTSh6dDSP>6;ql+qWry)-Sw_!SYm=yFqSzJSAo67Ga&hNVBBnSfHLS)1hA>GyC!<^yScN7lr)($b1Ip)hxXP54 znM7i&#} z7lFPmdKgUu8;j4{Uxj*ZtA=ifYTF*m;fzXw%aid+&CFE$!^4GI(75d|EB!V;O%ID1 z^Y8hn1ZwWILcRE!hjl;08Xvw(rpOrGsvLkO8Z&vL(RFZ2b44d@qmE`4m1Do?uDWBu(oZl<1NgTeN!;XTN86L|F`4ydBm{)mZcD4g{GQR%N{1(S} zy8y;jDnM36N3LThu%qLZd_^?TZEfQ(*R=$E79g;M{bp0BDuhD(mDg=97QaUB6OIiN z4S*c|8F~8NqD);^n&AopUsmOMni4p8ff$Ag!?C%K4wtO-nny%_&eC6aFojdA6 z0wtDV5wYoMvDmcKW0~^LU_+vcdtsw-W_MuYGhUn3U;ZEIuL+!#W#Bb~7MRc8fLLPS z0(LJVo(L*|i5%4F1u;oIT#DwiGr1k~Cms@K&E5hpx?a?lZ?L*lacYW!@R)rn>3Rh4 zfOnXe)I~b?P$jBhnt<8Y-y~-3M#`S3TyIz}@Vr1-ZE|qQ;YzKMp@K75LUmGS?SAht zqsRWm#@;{^p%Xz+K44BG!m2;?aQ0Bs`n)-vBql!l^4bDdXX#6N-QDr)0;kwh^efwe zZNnSlQ9cjS8GR}3kSXF+QJy%CWht$cW~yKfosA=y%#EuVc76WskCt$r_&Nl$m%(1Y zF8e!|=rf(Qf~r-jw3E5!n{AutK)>m^Lh(bYOMR>WV_?lL zB*PBLtkn%?e%Q|PK4T?#TqW?9);mrmme>bVf3GaW{D!PMk`jyQXL*Unu~7W`NT@?* zGd0Bow5%5zKb9z?0+T#}nP(=+nx&O|?PQLBu;fb?kF3Bk;GN7qjpU9k8yJ?t)f3I; z8wBqwGx^N*jpGa;)ckm!M##KM_E4iUKk@NyA8n4!vlZ+PuhFS8DZRQ($!dv9iE(nFeNwk%q%mL6 z7@DV!BSM(2++B^c8@`W))^HzKJ{)uv$EGHd#>TSZHna`pGIsIIE7|dWh``^`^%jr6B4W~X6n-X1_fR_9s^ddv^K^W!yXp8 zIU|Rl_3%{D`GbJpx59BRi#{r6|HVjcf43@1f9FL-ZNKkdX8*;fQ)lSqWXaw)VV_pb zUct`i9*Mh~ys7bjs9={;t$GFhldKFy{O>-GW&gKFds7olVR^a#*9>q`O(Nrr&YC0#pD1Io79S3q(&DSo6|K&cQU*55bS8nBS=NM=)rtrZO3j)N`y_M zVWyAiyy!oPENo~(*E-93R`6;VoC#W1*%=trIdU7u1_@g+`h^0G5`Ok(HzNp}N7@{s zuBw2bU+LXA*-ev$-8{VxOP}=6Sa#wOvYCHA4w~clECXD~VNPceGFV?A6Flb#j9!W# z0a!!zUnx?y_wc;m2^vTiM@w@1K2hU}FjQQ?bPyROS=-v>c#Hu+T%qI>!Q=bKER_W7 zm})?VFB?;0v&<75Xel6~y~ftgiN9|~IXB;SM3rITPe6nP8nQe*IatcL!z*%S^&%22@?+szPNd{!*bG9`?zLA zf*0cAL7P|wo8gNE15(HuuWHPh>3ZpVAG4p#e(Xn>XC@S$bS#r33LAMeS*Q%Yw35fa zvd8TNG1_m;vF_QtYR57^VnV^mxSeSw%$8d>DxmD5y2Z%~s;VL)J$GYSw{0VosHO|# zdcz5lN{YYN4|I=~)oy2C+OF>82yjsWl_n zaztb)F?&|%ye@AZY!lo=LOX_tS+D-}cckcGU**n``n45}v-*H}P*#1znz7u2UppVW^Pd3Eis5NP@w53c?NhuIrwX~GzE^b8v;BX~e{c_7ebW9(>Mj1al6vC*TRr0cM_*VJH?8nX7;U&m^jqgw zxIt5*AZ+WrQ6_|}9D=Yk(_*jz>L$WvA%3TO$Un#B)~7I?xYSXw+5=DkT7R3UsI1LO zEBEn1hO_VeWZHd&pg9Oftqh=|ipz;Z`BcbM508SfAIU`VG04^D_7_FnjfAgyp30Oa zWw)J=O^@Jdd4Z}nsz08ZPC-krHGrX#xV zyAkK({N>)eva)hzt;{tUGOb?rc($++At~?>#l~rkbWFcY{Hk+YcVydfswCg#1TL%u z)#sGMqhI!t9kWCt6n3ri3oZTiPNloMDfz{(cHsK6iXd10>bRjm2{rRX;A5|jfMa*S zc^8|*DTuzw3U;(m3rDjMa|_H^tEvWz!ex7>SQeDb#mP5k7>wvZ;ccUq9g z_vHnMt1S}LWX}!f)NxE{87(=gu?6Spo@nf%(@v^nYQFeatPM6+o0-v69dDH)xdc^d z?A0bRXtzN8<`=uoD5-_-7=zi=_OadP}i&|C2Dnc%lF*LM{D&D=lA zREnCGzfEu?6R#aht7A+vE1d@_JDRtKeik^1Y7qDgCs44tpQKW+C1CMI-0a`$5QpkRG5#ETSSK}?wBz{TU*^7ZU? z1X*)kzmB^I3`Y>Q3M0- zwKkH|Q{x>g=DK=O^;3$QH6>>u67V3-J~~9>b+J)YYwRaf;qfJrng~ z?-hR`{^Du79_eH}pO z_f6rC(a-U1vg=#|a60AJyhoDaxff=6J?#hPg#UqGj;#1#7z9B6{o+PA^zd_g0@yx z#)iM$4G7y9{fl#E%1O(DFd}*fB_^T?U+Lvxv_GJEZW{Ps2~4KsV8GpV%M?_vq%|PE zsAoxW--ABO_p5K3aPyI;c61DR&ZJ&sPtbpmK81FwOQav)M-67VasYHnd{v?>oNh6F zD7u#N$nR$nWFbXqvs$6a=bxN+l3J#0!W7ta051z_p{c%G_-Rm3B$4A#7zMuo^4ip@ z1anZHa5o&KS#~Vr!K#Ev9$HO@7?k@9q;aJArLi`NZ|>8cz*Jac<1qoa0n^bciNy*4 z3|pH^PF~BsQD6QVy*M=_!NEJ;bl2OJB>VRF5-^-vSbW5)0Dj_ki@< z2+aQ+kfi@!wD_-u`F-Z)zbws|%0H5KUG&j-y@Wtczgcm}ny4N&@pMT-KssR^#PlZT zrcOa$RtnsSwxz2y%Fkw>LT@wtW#DFMTv{`idR9B%7yJDiSd{lFY~T5E2yyLxSA_%EfZv^2}3bS(|92+gdr zvBjbx$t-a24&^)2NenEf#y8jOlxcyjEm3G|>~NfT4Nx z{-0&uI~JFN;4|c>0#Ld=Lbjgi1`1ou*BjwRc4U5uhe^sqk2AqS>O-kgNGhFFCaWDl z8Ppmh`c28eGGy4~*QY*tfgN1Z30}N9gJWRY;7cd_OH#??shTy7BHpsWChKq6*&hA$ z=2t4QNo2DMiT0&lC8F#(%l`%e5u~|CHi+;x^L?X`!Fq*kfmXfO^w+(q``8xg+Kw^u z>`Q2ToeL9c!r6Ar9!1IIr4AT$Wtc;_@L|G+-l1heOov90r~A~Z45{MTvL<^4{XHIC ztdx9=;!tBT$2fURhzp9_aLH_0-ZhvGp{%l%=snMHSHV?VsX!c}iyF-kEt_4lTr|~xEP6Lw*(peawJwqA#SA`zV znOwB82zVXS`*}K+Jfbd^QRfSvoJW{T+w__sDrD4?&W^6VXZq1v&jI%tgn6^zBirMV zC9QO>0T@69|66*&4~$a}gW+KvoD^mVWtr3>*?I|0KI@Y#`6SnTH?uR22s}p^#{s zIHH$w%a31{UbSeqjxvcO1-xRte0_9ED-opSEUVDdi|k)%nj!o0dK%TGj{OyY_!JPb zk>Q@Y8~s#wQ>W=RL(fn%|3j(8FBNZe0No5xBJf3gCi+6p{8RS%L@aMCq3jN*u4Y4G z?i~j&3T$Tp@-u$d59ZG0v@h+S>{N`M11Ieb;*kb1nCu~Shc5(F5z&;4m|hWn3s!ND zGZ;+oS+zLKp9L%NzZb0jsnPrIXGpuEv@Oc}8IoX?K-OA^N+Fj+OTa_&aZW%hwmTUB zMyap~GMu};ZBk*f@&dFfrg{ql{fvnG>Dz~|(2VOeXjED)Vp{#S{ogL!UHdnDyj~zS zKQ=(NQ=o)!N&+%VQ<0vAY8Vu;O680^WZM$OX{4wSl%n62Eh~^-te7M*;im02shknF z^r3S7wMomf=2zE~MdK%F%UW1Z7vzbRg1x)*IC&%U#f_lq1c5x^(}TQ(i}Qz4j~b>L zZLyCznn{f__$Z@3jn*-s_g@wQLkd5@vETqVxw~p-1`#1lXI`FAouJ?h3meAc4suVm zp_~(g9g%!wm%79+N-Nl0tBx$j?J$wE8kUXEUoC|eN8ir4AY223x2s|2!=5{qaeu2U z-{Twr4lj!SuurIE&uD$galBi{pmCl5YPbh_fVR53n0mo@M--bcsb*Xxn2e?Du^Db3Jxza`en0g(-ks?`pL%~Y9r>pt{r59(O<7tI zh5t8KLPkc9qaZ*+`pOsYTOJOHDNKP}t|ZJ8IPA9)FBKGI#Ln89yBTv&%?%_qPW%*u z|4jP|F_NX9OF{{QOo5%Sb{~j`y+P&ga%QMV68)CX9Rt=Atlwpt)yb7^rMC78XhHg`7lQy3@Jz6cW#i{5o@6~1 zX|wMe&2VAtxw_#GQSb>k63 zy>yaJSDH?hrb~Bb*fdiW?ci7c^4zK0^0cdEtI3FmnWO{J7}l9eY++e77uFdYbuyj% zW@F8Drk*<^Q78vOT>iLTnA4QoOQpLXnERNqBf}z{74A2}Ne0&JYccgbopR2om>kD@H`WHAQjx3b@+G)RClp zMwJumho>URw}c+LC*&q9e|oh~9N^v}T;_jfAe)MK>P_uti2v3gJLD5zF12SdN%xR@ zYZ}?13hzjsNBEVI5?dw7T%%a5G?V++mee&!1!cht)r&a(*YvjIVtU~s#vN0JlL)iy z%W7po%Ne!eyNF@xK+?JX4@99v4e_6&gF6y?e=lz2UWl*vz2}P{P=B_2`2SuQ{yj+~ z5f}Ogz67i(tcaivyq(Yw8GO{IfFrP;2C%TP0KwwrU}wRkPWt(P8YbNB8lwKoN~&`!kW zVhP0ByhVFV=-yAJp2EzlZWQ3{eF z(w635p0gdVmtwe0arWGMDpV!Hf3e8}ZUZP}oVMk&$L5N%tt2ocKatTyc&KbwGvu_~ z1woB>8LF``4l-i)XrlAS1306j73&HDAB@_7~V$fup_d`B3*TMi`$P#QT z6=@&Ycj-I5VnraI+T%sV<=qWIUN!87Gn{fxP^%Xv%u>IqUpEtlcZZ zN?-kuL(US9a(ptMzPaR-$DmOCDV_`ulRd<`EM3;R0SqJJ)@EZ03T>img_}- zocqXIgFpbMGPZIcc)<~P1LqJ(=afp4dr_*eWalI5*iG8(b{9rL&yGx)awMMb;RC~v>>xcE@3Gf3ZyN=1JvW5D}A*pvU* zkpGbEDAHb3NX~-+@1xf7{HW3eqY&tzSO!k7h3t)USfFj@YVT@!TYUfNHt3Ud0ZCfQ z{qb+A9oqaFD4-n~sT__S7a1HkW6$>wdpN%GSTV%*9MA|F==8;)8~ZMkC1#213&F&nAN_^QKW2gC|(%xw1DPDnOC*M zuE<_Sx&{1#Ci=Anb5RJ^6lmyW8L>RT0I=9IFN8ODz#iXfGiu?R0|c>a?$KqIKJl@3 zBnZ%N$6E~=2UiwJqp2P}LUs;X3J5}z?=%IoC?|&#j^s?u*C|#m>|U|L4!uAIi}M~0 zVOClmCS-k!1k06ta=S{?gxV|ILntW?XqhO~4W6Br&&iU-YZxRG zfa8!Fj9yIuN8W0G%OhqDRdv=WOdxwx61;?xdtjOiZ5xgQ%@+C$hjxQq#E3HB&7ISz zS7ps`SiwS)0_{p&>mq(nUzD@O7>-=eS4C`hBJ7!|s@iOLU0ogryWlMKiVTY&t{banQ$#ytMcv=OsdH6S*%| zqlbkWm7H;@>d>bqV&-uP0)h!n%iQKsq_6z*&iu~{ag3~?9frt3BGhd^&k*Fdr~ z4=T4Bim~Wnic(OasxWv^?EIZF6`%zMt@6Hu*Zx%d?=Lek|0t1(TiaQg8=5;QIonzN zgNa%A4~F3k!sC{}kw%4p-!{eybop=ulm#Ri2?=;4sWk9Pe_3Xka%FAIMe?@l@{`vU zKZ>6aijVKtVK-CP0KO>RdxwM3_Jb_XgY}22n-kX$mTukEgm^PQGyE<+4Om#70$lg2 z2e|SKIdvAiCO#!`)IH=v#(qI=_{!4wsgiVMdV`=jNz9K?>h1xFoz}*6tX)O7?ge!l z_K|eEben-hJ3=zuj}>dW!LSp$3T2{z_5}l#J#9=PfY3$>8=I*qNf;z87^;9NR9`}n zQ)mVjs*^kfHogAMyVqk;a#o{e?5zD`kee&lY1R5Z`kj9f@GLdrO8bC`bjIO%9lbHw zpT)cQ+;jSz2{lsU>@HS-UYSoBdZlilN~bm=aiwLOwairN%;qd z(JZ00;2{#rm{xiO4;`OE`AtJzX9vtGf8S$}I$H4iK*@og1Con5%BO{vPRu2{4U>|` z9gNe2mB@Ic#4&V?vCEtFu7$^ptSW%wXBuX86*KhULr(ozakG0y(VRm?U?^dZOPqM` zE2L%KM{kDKUpIeA0YsW%2f$iW#d}LjQ}|!O6$UVm9>Ekhl}Ti5``HA3sj^GFq)hs% zZN7p@{S$Dyh(e@_X;{}fRDWrFM<&MU2NXZNld_3yyEFmB_WAd5KA zsc12gMgI9S^l(++C%NvvO9KTtLCploaC+?Z<*f=W@^nITrGSN-H zU+y-~Hb=zt+5w%aDrOoGz&;DKf)$&8mvV75zNNJYueJ;6^rRXG&z0W}$@|7^4h}?G zPX-5blLC^^3Rvr!C;EJDsu*uKo5vn;tTm1L?z}R9l=T@}zE4qr^@3W|Y%S)O?gMsU z%Sh1J3p;n=cQ|B_k{L#l)1fwBa>}ipd6!f++d4x#w-u(XP5x@g2se3A-(>FIB5_jv zO2ZZ+E_9W!1gUQ~!3;C<8sD(sWC}8cx~oi#TCZ!blPRV&mQBbq65uc7^wpnBecL3g zk{^=v!r2kq+*=)kjtGRisT)pq7)%&60pM=I9CX*~+@5G{CSP|^PUot-ZDHJayUwqV z9Lv7e+`bSnV-Ju?>FQDw;XHRJ81Zyl@EaG(iQbzZVgKd{v^#))z&o^t`cqH%%gq4) z<_Z5DS&#iQDFM*Y7B;=3xHcj{1Pumjn#V`YNityA?`&y7uIfx{mv=oc@`t<*J+I48 z_XN+>{md&S5nA{fVfG1`e^ihk##3LePF7q$yf;+FCPyo~W~N=1E?^vl3(D1c*NW$#1?FbNcd!mO}z_u%glX> z{^Q37!Gc)RP@W`-M_H_ICi8U)Nn^@=RF8CFDLm&(Y9|zhC!BPNYimQV2~CQ}Nts%* z+qk1(d6)*FkIF}kmY*oxhqY9gm_*<++2xq_IkGCI7 zLf0gE^dOaO{CgXht?M1g(ipv-Wx4XCx0-hr{i#do*PaDm+kmZkz25RghPSrz@$)jl zQKRBlrg>_}jdolgK@FjVobutaW5WsMk;djJ0a#haoFm@5^n7+hJ+woYyH%UC2S%o|&!jw#(a@_?Qq21;|x6_0n4n++hv-ut$w>dn0LT$yo(+#)Y`q zpB$$8^JeTM4U~_8M*Ngp`&Q@f-96kx=t18+e%uBX+9!4V5>pJ=pPjuOHRDV>mmYv; zcuwU;Qe)|`s@&$L1Dm3Z+$8F=I6+pA`ysKzv}JJuT?yf?fJs`$UR}AxX^=w9g>*_V z@PP~jot;9W_I}bpzd_xrFB3G9fYcyZXf!qy3z<=n$V99cHY`QRXd8j(Mo8aJkB$Mb|MZv__bB0xFws$wdUdnoKJPfzhUd${ z#l*&ktbFonYXgo3d*DpmII=tHxA-A3_vM6|pL?cg5KLjSHREx-Q}Stp?Ta(Em~5ZH zbVj@6R8+w^QNEjs9t%OuDzo7Bspz@?fX4z3CO?(1#&rr$S)-&niEc)4;oxf>lFs+5 zbSVCEJ8xO{U|Zr)naRlN2RGT5QI=m=!ANs~}NkGp0;CYl}fO zI~=4I)98?K9m&;k^gM`~+d@4tCF~T*;mW+GV)iSx2G#Z})pXhv!6|DJ7wGG5voeTk zH037K_ZxHkWvJ4!yXIhrII%E>yQNHM=ND%@Qyurx5;EY4f3F~;ejX~w6;UF6pgf>Xy- zyT7Q>lQ67g6YOp%hfs7Sq9LiMDwOh7id~3|Uex#b8ZiQ4ya9<4lB3<>pjTI?4jGb+ zZgmL;ah|*C+n?fBbjG!fPcUT!<93$rFQ_aFek zc8B+;Ay??{xzr!cDgWYBdn(q7n!>2x*hp3p=}@6)MXbfCt>5`}dDAL7(4?sOZBQxU z^of#cJwfT7JKp@40UNk)Vc)I-T)=R-@(D8ERSrOBYdvj2gPbryX6VOBT21fH-N)U> z&$DWMUT#({KCJh`_W*5-sT-8{&pGchPDR|gPRcDUy=X0$3Qwa|*uF=XSUXT&(b}}g zxYPi#(s(E#pfP*w@GxuVu@MllF_+=_f7zO8V)yKt^Ev7?cb_$fmuVKwoCVOfa6za} z4%#)^P=Lz^?+d!Y3OdIowzb@FfRDkt9)rtGb|VfSU}9@k^iJ~95+$;-)B?1ftk-DZ z7=>^*#!8MH!?O8Sr(t6d^F5jk4u#i@n|!D)eFb^tbg!w98|~HDom~MnezW#OtR~}D z*X1b<)=NuRW9wdw9upf0Ss*=)_5Q#7k8V+woQRMFF{^-PJ(ALpTdZgp_Tplyn3cHq zUrw<4+X~a^8p#_Yw5AnejSgu-ZxU%d-{;8hi8~lclCQkTYZ*4F1r*sfa0Qn&$&~CI zx`MM~^^bdKpx!dT&SPMLw^MOG+ub7ZH(S<2nkd&1(){FLuJB9IK3XPNZN?j|qiNBwcN8fD+ga?IGZv$9D=JHN=XZ5_ zKIQUfOcXda z)Z0!{cp{B@C5xi?nSZn{L^9PBqdJqSttE4JmPd{Bib5-E=iL1A(|h%vI1}*%2p4#BG59mOB}02JX#!{|qT`#ty)Blpw5yt7)qA^ce}{BPb#{!`xjze68sSyX<+;0=v=JXcKN2RV6p z@h_M9DTs7r)Mnqyhe*mWVDC(dyWvM&-g)zWKHyqnf6!Zwmy|=Vy1yhSsj8~-D3{y~ zOxSLGwAyCP%}l*tO#6u8jo)%_XNTU}A;A$9#S=O)_c`9(h-`}5|$YY^gp}7>n5Jn+{hXDCAFPlUCY0c~ny;|6;MPRA>E{;_>GZwL0 zMl|-)Hv&1UAP`}MT6zDOHp`dXc1&vVkzON^+-+IN*YtaTgLo>#8Y@rY1!a24OGc-M zV9K#cS|{wMC#!)ty9HS5n6JjK$fO#z)(68JE{lB9fmgb4yUxf@S~gH*yPy2$>Khl_ z+|bR9KK6>KZ)V~^d$b9_lo~?hW{7+{Lw0^D3P3` zpe0vLMHQ~Wiy@36{lcg5U+AZ`IwZVV8+Rpyxo;bZpir_29LI(RrHN5*k+mKU7Y$BIosow z0QQ>gCW7$SEMnMROnhfJqnsE*{5(dZ)bY??amLGS>FxcY-omWlg;x{aiW0Z$Z}`8IcV_4{O{i{z^M&hS1? zv|I6~;4Wp&@P(-5V7UsZJX%h{M{B`H7wPh)ENR^!9s|v-gl1x8xoEoc}5O5&fIF>hJo>|2uVrp{m#x&~X)zJ?6r5Agv8|KUt>5<#wGP*APHGmdpbgvRGyya!^xq%jRe!FI% zl{>URI||J78;9KpCmUa2K3GbJM<~NhdW!9LI%3p#rpAnTKUl&&0A#8m{bin_|EMwq z2s9G(Q+SvPVTsMbya0Mp7>fwh5pYXfz@A}Q7lj`2JCgy?w2yqP>@q>urr%0HiZgzn z-2iFEo=d#b1CQ6*hU`FKf=><2r~w@e=#52S-{fB4k%Zg8a-)=6`TRcnG9nq3&W|dt zZ&4B7`pbjy><8$1@YG}w?c}YPDVuvgDp*iHO8VVK1GJUm0tlTy7`na}%I6)mstZm% z=%W}T2be%nQk00!q$%lxjQ7%yA=qNOiagT$r3lhh8!M$d^|p>e%zrv~7tNb)k2ZMd zhLr`^U@Ok$DXk4YO#e<_a#R}<2FFF z4fOCYMFg%Zwdsx-{J!FOwuS4EI`cHQeD|X{-A~%%Orkgy8ax-OJ z61L{xmBDB-Xev)l=I)>%2Eh*v%?-EUn-nssnoQe~LqQ)66a5bXT1IVzzZ_CbHuiDU z_&!EFvqi?iyCm2qr2BOD_F&AITjCX!&=(9dbxsthucb(rv{8+paAZ9GzQrAE(qui~ zSG@aASNwfm$Y1OIc5^azcps7Qmssu`f7ghCxyN5J^p`t1{`oe)88Xm!G-hKFe6QX7 zwf1?H|H<3^t5JdfdVoJ}c`H=C<+SF|-qzNFe5c^Z1gEJ5-3E7XH0oLWMDToa~9|j_hfgSf#X(`KumU0-j?X zJR#y*b_aRpXpv*Ukmlnr%@mKeW_nf!ePqxApodm+nK-(j zL1S+28UxANa?)@2wX`jkwvBZP;hP-(Ig{5eqbL1huoql-DvWXM6bK&4UpC9A^IfD# z+`DHz`g0!elGtD3V^up!*kd~$oF`X+8pI3&MpD9D(vY#l8HmQq`gkyxe-qf8LWKz5 zq{N4-VEt*8Cm&^bf$hpVL4E2jzfCoO2G<&h6Ag6|zliFj^oU60=4yD%4z}(_sY*{|%l~v+_o=e-2 zK-VxFqb_s=I5|J?Lt z?euB;rG$Qjyaj;M*Uy%k&MEx~&-D{ao#ILTprJwWVEr}M$zF4a4yni$lcSlg%3+<- zv2qj-@IJk7Y9eHf_E0$oZ~++ZGw@io5kB^THdOG@a@H%(_s*W}(AAS{q*{0Trn}mo z+O*~fdL>oKpb;JeB<^J8dZY6&66id)v4qQ`A*{pC%>Fe!Fw zKHIsPk_M*Qd{@98`~JF*0a&dzumk&5|8m}-Lk~@Ihu;gF@N3o&)zmcD%rm8*@=KW) zvZfbe7|cf<<@J&sU_?weTp}S)<#|0&XEcRR2&)-%UmV}YpUrAET6h!ctK(~~F3BA7 zMFa>aJIifZnVfJ1Gr%9v?;%Xnn-uIK+kywPdRaJ%!P!mN}F*6k9TFNN2oZ_pmDTEXdt^!vP$`jnu@{*2LR%9&~$#&g+Cc>C;kY z=3qKKX*|VKmnNgL9z38$Nz(3y8ddCN2&wB96D;%aKZ|Y`Vpk21i)(V{?25gL=-I-Y z8D|Fem=^)psyJa9GYgiFrju+@6|H4(B}>gKx2dn|0Nc{%6AMFZ_O^m;vKQLP7)^UD z8zGE*kr>&w0F+Zr=J|=zs(y=B;EyxMQvlU(g!_p zCxtQDVs%EF5C%qvdXOJoLcCYI=EN5v$S;DWFnhi;sP^Y+@#NgPay+J&&`(s7uhwIf z&^IpCewE#xTp%koWAY6b7rj|HgO5r8BSw1&n-(%!4ty8IB+pCCT>^leOdq{gD zSCL6w1gf&A=6HoRtF(o?w^6#SQoe;;f)>fPenn&PUKe~!Ia;{*8V{ZNYPK88W&)9? zBh!Oh#q-`^X<5XmADXae4Wa3=KPK>Nl;xNV2@q*Ff?9W≫D=F0>D(xOX&>vZz@`0&Z<7Q}q*ow-Nipr6`@I=4gi z>7smwqu;@6%cJ^bd_TgnTU(YGwA{mPm-V4TIpaWdQ$^(lUx+@Q%g1iWJoP|Z<5Xpa zN%rz9~zf-@?~KLcp@&SM#AoTUx@+KYf#YxS)98DZTup@kku=OkU^s z4R3}r0W)qIsJK$bo@H7NI?b-L5mJOx`Fy2uOT=uPv8 zz-e+1_h*?~y;by45IItOviRQCjN9edVxt}zBu$oI(qWS6X1ZNs@$g&ZP(*S2dF0e_ ziL^PgYuh=%#-hj-`As}!Igm_4p&z{46h>fNi|vVxXaafE*IWqUYlNg!HZE1@7u;u| zw4MnL8ELU%nQi?UGa2x`Lra;U-9uZMpgl}88R5}QMiU+*^`d7%Abeu`17(@i-RV z8U}yId6NSgBSx&t1NU~Mf5HT5e8cT$;Vrv75jOZi4Be^Ih2$l(wQ$l#@U`mlgm&E^ zhU(cPrZKO#nIipLLU%K?zFtLlvqb6_@~(J?$tXaSjcQnEHw*hb%vVO*A0W2+>E}x9 z7i3!sDf@eC>MAKkWlZjf_RE(&)F7eZh}%SwtOBoO5z{i@v`Pw%(AEZ6oIznWH5rBN z{@L5fo7KR6M)`mPVOkwj#x|nk%a$fo+pv*KQ=|d)8sv*GI>m` z(#Z{FLE~~5W_0(QkFlNxvXdcg$?Yr)A1OWP?us2BfKD;+%Yb4(Z1|Vm-!#S% zm|42xvFWo9v_3qs1vo!TSrXUm?sKLEGJ-eYCR6lcT z-2}Hd0yz;#bMj?NR?Xjj=Zav(Hx8;pfB0aB{AY;pZ>R2tw$^_sb?5uLS@ds)Ol@sV zt&IPYy}!)h`X^NQ7kj2g`cC?P$?9LOIsQkh&Q9ik4TLHDfB3+EyzuX)-#>%3t<7J0 zdDZ`wC-@CP{iVk+`rmsDVMjxKJ7b4G(3^2otIT`JOZZ}U4^e)X8qu5yoD>bbB$i^D zIO=Sw--KZPoD;fJr0dhAeCVP8QKX-lGJ*+ zNP1(^;OK2bH;kvDfOs>gjst!@p~`Noj9anM(VQ}SJFo7 zUF(KN$6kkR`_IIP4=S7XA6c_*i>HT>lw(SkB7HUnfnQM+^DJhwr4XJFsEMI`L==CO z^-JK*&D9l=Jjd;Z`g}>nl>xqP0rRL|%kkNP#NuO}qC>z}9acPfR-TkF3QAV%fcuS9 z?8)soBPH4tCaBStx#wx`VSeEpD%|%`A~sOBK_L*24G^B3jn>e=pp1S&nT$;m69B9v8;VjQ6h~0DOSx{kJAv^-ogS*@P#&h_lDrJ_j4$t6z!C6DCbJbDS zam*5++Z7=%NvSg7$xtFG^T9%YVH(zP))Z3x83`cnTSi*ge)RA=4qh?DwOS?AvoKrT z>b08vqSue>cU>smn)EOa<`ocrF=!LUM>{5)T(6(yYb`WI%$V4)%4}wf>(m_q4nH~| z;1|R`As80OSxy3Sv~?OfI%y^(eRNe|(qrJa&PRl%$dXmCgJermRDjl>Fz%LEcdU#Y z0_efAZHKL0FEf+3B}*D5%hRDP@w@}-II|>%if(&sSFuE-Z0b+pRy5{35>w-eRjv=U5Zdoiz)IEq%)pAU9-6n8N$Ix9gR01C zvuB^-w|d!$n1MHP#FvRj4fg!PIH#%0zUL&8I1Gn+s&>>%qlA_ZS(XA6(@=I|Y|_Q#?SwvG7FHmw9(7+`OGZ50iSG{8$- z2A8l+8O8Zdb|aQ(8A)=WAr?_O%Xw#Q$)`cwz?{AOqyPIbEQAx57%64X& zB8j8#J1$XTPH`J=6Mruk7huyt(WFu)Fh|i@3d{xnOqp8kH9{al?gn}dQpU|-$dDjF z%}(SnvjixR2O}lyA(LnH4rk=Tfw~Y&(kTr>PiFu}D-_7|9Hzk*b_;%-9v!op?1TX` zW?MkjIh@-F&vN2JMcbEFDY6w_3rv+=$TRDyN&p|jF7OEB8U;2Gc0yU4I{B=7V5g*w zz2uni_edrang!Rf;g~@jU=bwOcfg2CO;Qf?#KIl$;)K5Kw~JlW$768s?(Fl1JtOIB6{<$UW@^pf$5rmhdda@mO%mQo@}` z82L2D4`1MI870xqp~(W(_*Tc-=BgvPe&L<$zo49n7qAI zhvN*|II!;<;$7L!H*W$~+o4h3e66JqHq9$Dxcr2RIA> z;I1>{SGATngJ#LZrR(VpofU7W58bd%baNz7czcW4i}7*nF!ahnf?FL(@u<5Ewb&Uc z^ZJu&iCt{*AVE${gJRK3%CW`5O*7oTWIm-tPbq(rkDihR;%l6$wS?OMDh8-9F%>(u2 zW2bDb^O3ou2W;t2vMKJrim3JEJ{8NO1$gYLSd3^mMm-p$_mTW;r8V8GWNfXdux86% z5y7W+U%!mP_~60r$obyojEG3B!c>QUiyYbtLtR+y0gE0mK_OwqsZrBn2G7}`$3pH9vxy8@dzIl6IfQWBvaWUWg6(N~VTAVF^RDBOa)Z1g zXqD^;P-1U>;)+i%H0(nGPoz!`=Ck-6nLSM|P(vhP;JMOvmpZOc$T(km_OCQEvcP56 z%{ABgm&mQb?^dce4pCqf0Sv3jG84=S-{NK^tzN3+M;7E`Y^!DIPVu67%zr5t)WW z&4wo#T3cpm zJm3`dMw+d~26fSdTX7J#<_`afT9o|K*AxUndb8bO9-YdZC*eqxRtD4B2f@_H=BN97 zc@461c{*+sWv9Hh7LP$Bth%Dl-g_Hx58;jW_|C=E@dGc;)+eh#0{J`3@-hO&bMj~0 zC(4lNi7!OoWF$NFJYV8fzV#hHvnt%f;rH5d)cc5Lb`FSMeS(i$xWa1lV|>Qp@W3cSkRea2{}+o5`m64%;NYo-dfmj>*#0JoDRq7V(T zD3Bup#aWFPSN3WLy_Z9Wxg!|!t?W_a546_?YEF+L!s?8 zl)_Dg>Ziz!t5uqhD-E8MPdkSREe?1T6E1Fz`x!o#j$+VoNmuUsVZ@bt0WgLlzI?uD zz;%E(1j6P8szG}7Hu=*2!D4AoqE8%qpV}Myrz{rh|Gg|r*~Z-PH}dKqc`OOzADL{s z%8D(HG5Q;x=czsJ!FTgawlBFhY;vaY^X=7sg>|tll+NPI0?WaZw8l*Mr{)99(WXVx zxd1xUB-#;cBx*F5dg?$_^FnP}Wa;Iz@I)2=Pg#h_J|8ARO_QkdGHl5(T1kS6HNJN; zA7or;`5Z)keR|y>09_1bhZOD^S1EN-ca>~8Fp>onf0q%bJq#+>rZt%W8Z)1$9gD9O z-%_epX_ThUojNp_tq3blpu?1wneZ%JHXE-D%K)RZc&xC}v?oJwr7I5SvS^t?Cp`ps z3QeTvs7w%~GA3D7MN+Cg!no8*4psOw8Jw|@x=TH%(*ue4J820=LXq-X-uM;)SUPmW zXYC`kD53dr%qXxuROhVWh4NJz^%12b{S>lds7_nuvD78XA&8u5#Dm33wFAGj1fH%< zI6gNTec?%Ow(V&wgznx04K{A#f;wPs96Eq5_U4`~`m5~hTU z%!y(qP#e3N$_JwXo=7H^X9c$Ni)6A^7$E&qkld;=DBA1}$a{2@)Ij8hdB>Y=I7Wb( zHhmjzxtJ8$iiI(v86T$~Qe=a+7OxxY1p@tuJr(h-dmasR@IbZK7J;p=*+reLm?I&u zo_a}d0Q)NflSQFa2Yd4SPK~*IE(_vDzW}CD?;q<3)NaA96kCc24DWhmi)}76eT{zl zA<~*$xi76qU%IbXf0*bzQc*Gp-Th?Whl`M#Fv-QDyrrCvF@ijX03!jJ&o^R` z*wp{S+d0Nq8gARVyKLLGZQHhOn_X31=(62qTdQo_wr#s^oqf*vu}^Y$vU758va<5(mE2 z$SouwPy|GDjQ&Haa-r%?5z^KOLj zpn66#&FTmuppF0s&{0-&#rWPPoNTrVcf{B$y>RG7dYfFR?p$=r(Hg`;ECrMw=}+j! z+#kx$JiSWQ*zA9+XKweqOR}N<@hTN-FT;>eS!&C)LiLq?56%=#SL&E)kuvV<+X?;= zN&~lp`e}QVpgI$!{|cwnDcO6KW`|}*5oM+oqdGsaj<-JW+B-rJN@~YO>ATZezATa2 zbLhWe(r7tjgWPCv*1kfKozvzJXBoExwsl?9?O>7V2}@&th7%jFwDg7|F9nQvKwJU+ zf$FBO)Jia;3iF!*K~}7KJHWm663Z=GzfX9t9>ZpA!a$yhE9f0Y%*^q+%g3>@`CUBM z#{$gwX$<$a*g~1>`P~CeoL*vhBh5NKvem`_>n#`-ak70aS+r^HSVBy*mCpy19NZ|JAb}CB zhB$h@6NHlqR?zC~y+u6h&H?&vn(_FI9_SAaVcc0%x(dBBcci%L00BEt~{4 zC*v|$=*bY?c8KF*`++Tt=t3y%ahK*|Z-)EV(h0$4uK3N*sNE|Uh_9R>M&Z3?v7u{z zFQjk($CM?IetbxE$#47N?k1HYFuVb>y3!=F8>*oi+&@<~HhYkxSnBzqd^bZT^KjEXOWXsPh_l}Is`tWJXU z-?8UYqyDlk_)@;~^Y@?Lsmf3sh$+STCA-J5<-LQ1m6Z79q0ro^a`oCvt5fW^U)QoY zgk*p+>B!FZDga@KhI@x%-ocTl|Lg!I=8~;JzkkF3!fcUiUK2HG$j&=;wSDIisrO5Y zzPBKSL6ZK?%P-jdP*kTt{YKskxc;83>4DbnWNm$x|HW22V!4rXeWc^K8LmY$O_+Ob z3A0L?7xK^3@w*%6kYfZO1?uYj)Cd3KbJ_L#u<1%DGsoWfSwq)?(B?s@q2W4qZYr1H zGkQ}?8*hzVbfPst8Iyo+phm8jt4hC<(<*4RJKiItXLzgmta z3V^o4ANgLPZUSnHxKxhezK57{44COY+~AV*j2r{9rv3cqL>46&RAnkFG|;}86OC^` z(0xqXl^L{L`3H!#27XSEY#R0$H&jMtx$m)aYy@V57o^l>cje@u!g;=@-wosd_O~--=?_L zW8NroC=gMNgg?&0?zDlu>ir*DUg?OShr zR~Ij2;&OZ+G{2;;6MtE9mMX1aGIaRW?-n(}oy)X*h;5D+XF3tGTEL(vSJ~PyCz)K{ zkJs6vD07+eP7%wa1iHCX_XLr3})(95R)M2tZcMhh5&S_ zK}8m)l*mC`0F71R+vizx!5T~YY*9Wj3C!Vtfov1HG+Qa_Gwq8fm~@tCypxUFsA-p$ zby)6PY7}z}OTS}voPPShWj+{Y23tU26+v6*bsaE0XE7u3GP0#gp+Gd4AK8pT$N(&> zUiqw#CjJ85JhoCWe~7g#t?MyfWUi!5OpZXYNJd!Wjy<-vGnf(K1;QVNIKr(KxZoi( zI(Eg~nPlq{F!VWjQx_`D;4s)uQNWuG(l8?T*E2>!J1RodGiV#U?i09-BVHd!jhjwx z$R%8XCKI;a3(on?nc)Jdv9?E?_MJV9ChHz&-dz?#?rG@G)y6{7q`UQ;sTYoiI8veo zOQ4)E7%hm$)NN8`20Cv(zN==>W(O(q!zZw6IE_1Otu>HcE^^ zXHaFt{M5WVim6Jcd!<}LV|xx{_KPB;sX-?BE0buy@8lHEsnDtFq&B#n%_JKeqT!j- zT}}I_ki_%0sP4(vrCQEWV5Vd+^a3^IIJA+Hb;~>i9isCROtk=CrwCR3SY~AkZf+GN zHY-NSoQW41Oqwf+hCU$bBP#b!agM`vt+&2x(y*30Ruw6lU&sAKu&r5~ImST(`HFPd zL7c@b6tOn`?of3JG?aZA4z>{3j<_c|;bJ`+L6AynxqGXC$>NwsMttV?3wI zjPZq{v=n$R05An;TGFZx93c=#*vfxg^7N7h;u=Bi_vokWJX@8AG6=))YDovbb@jf^mI6qRI)wG^NWL zVqm`>hAS&!L~i-!dVM=csTZAvlxoz%I~l!Mo1BQv6t84AVEg?=?(8Xty9ct$jLF%H z--mnqF(mnZWwV5eTArG+?y3&qKGv_h+)>|e$9M+`=dSx^U*+*9aF3K^vHzTaPjWpZ zT*zSaON4_}y<)%EG3NdeGXMklxjOtwYG4YIWlHY6rv0-&O03q1EbuvSof~p&{^}!d z{f(5ZDpPkLYW*42t>Wl@@z|WmHxhYT{pQ#DTTXXHxu=&*dh9yJ)tC(rje{U=kA%K8 z)n+;^b!PZq_cIJLc6s~l8@ixem#Y$SViU#C1BpQ*;^2rC;i{2( zfduAZZP)7{Y3G5}T5iB)B*ks);tj1EPUtjM#>)-i&ao$|IwSX*8O9dm&f2pbL{#1F z1ZLK0mZA5VX*6eVhgwgOpC(tLF6oNa?3Gu(&B&rIIlaq<@yg-pXt!Ctj<#h{_IjhL zSm`6qsVmh%re_N&ey`>l+Za^AiPe!~9&1g?^6?Qtq}k}!(NQ?O^7DAmuPOPGqbI<4 zEQ&x&ob`M6_Jbr}p$B?9czixbTk8XOdq{aiYJl3N|L_;Am1%9!h;wE<8GJ)}T)xXz zx3@V>r6}MT0nP2&?Z+P%0xS=R`uLe{h)Mp)kdIWvg}eY@3;!Qp2K+3Q^pzL<4`U^4 z;}?DhUYxR`4nMgtWCgG)17c@&#+4bk7_;qtrKA*Z@2-q!atbJGj);fPWOX{yZZ?Iy zn}`C|EL_pi9COh3;36qHx*`39v%6c2k~m27=Xd7fP~L&F5x&TPdVbMYfqG$ISho*x zi(P-3j==fbfTYmI3_S{5EyoO+i2Hzy;o-xRYO3PF6HIRN2`DpFQ=$qmOE(CB5*W(I z`2=_P@b?3Jp^T7y?CZNknkJbKXaI**on)5GimD(tc*>j;v1*h3?-GS7K0nIJUCbQOWpsMzJpb_41Y6hX%SEG~ zl0cOyC~4(Dp?2SB6$7^MkB{`C=I+@w%A||;FdCJty6-CF!xM6qaWc*yN-L7a1+iT&G9fslb4VDTuu@!p;Ww;7o>maV2HIYtDZD-c@RL z){yHHT$jzs4)d`B$&Ruje)ie#Ous)E{zzPIvec zP4rzl4W=9Y5FQs_EGax1c(g0V8UCPFa^vP7FtEgil4BppA3y34|J4QSzbnVEv~zK? zcXs%WW&SsrVE?WY;Gcd-$kfnI(Ae12`M)T7mCFBVjhd^rT}l!PCW6Qdn?*Aey@wPk znFfm&gMem@lJ9e~X|i)4xlBIpijNPQvG92Ors&yV(~cUu$G13NW_n)^nfQOcz5;h+ zEn+m%s`EdrH$tT6?VVLVf^XR0ww9b#Elu;^HdemD`P26%9DrnPUN#xtobJ`@EHgxVDxAbQ0g;V3%vxu-@Kaz(sV2)U zVQJ%pg^G6ymyegQlz0%}gH#P#1(ugIUaM55JqbSuTl)L>=Q{fN53br#`g)bqRDAQ5 z45nJ&j^I#!y;U>r6pHB>nszw}S}{LUBP(e=kcqNyxfC}S?UoADus=4jfd(OqyqcdC zdVV&eV{onfZw!}Jh{*c$wOe3!I<|l{Hd$Qym^h*X15x`{!inrX{xiy@i1n{o(Z?qK!ilEjGDo1~ z+=&Ot#zx0ert{OK?$^W9mH&^_o`CLfOKjGmDyl1i1>L=x*L4SY6Uii)HA-ypIxR*W zX+G6XQ>`rHHdfVpn;{KG)x!JXTIKb1-Tsao(36v$!)Deo$B+(?gM8uV+n}<(NXOLRZ<7a1YXek zo$rXXNzynGe;{8B2p#qqD;HcFXWc4^rNSfa<`Q0IAmDo#Wmq7wRUkQ)W7a|4-q>ht zG>uUaRFSYr;88pBnTRIjXUlP9)wF^2I3nF>MnF%PD?DD_w_YIrV*m#AW$4T?;`oxA(pOg(+J5}=Nheb$)T!yAxWPx4y2DZfpI2LYjG zR^lKQx(@*QxtTUh%_R`|1 zM0Xs|2GOyo9qQ5RbJ}vNlyP6>6v;CLjEVECwouv@NgD&^fa=9cBg@Pv=uA8$9t-hMUxMro<1Slz@V+mq)OTd6O-W(5XXfLiq> zC3&VK3-mziy}d`>vy19t@4$12W@CZ6yTz2KRpa$)K|}wJ8}2wc$Q1ql(UCqp;>tL| z6U~-Nm*LXiJS|3QsH;1w^Id&H61|+> z(fNqf%q{xH@pKLh?H&rbFiC4SLhfar2^MOUy~Zgr)c>{LD|8UTjYz)f9sPMWrDhqW z6$5JF7R=}Ldn23sMDxgT8sLF(CyG{sW!H}*o}Nn|dwa}o(`9if!lVHOnFWI2bEI(Z zD}_@_Dpca?2gvbAy)uTK_bgMnDVpV={@@K#O%R##LAQdJxcp7>hLhx5{`QY9o^d&R zhW%ZTB)>cP|6L{}_rEDh;-+?{PL{_1qbz*~`Qw;k_;qgNDkm2v3TsBw^7dw>3e_6r z9-|c&Zs47(HB_doeGxiv}Y|yqh;1G57^ELY?=3 zehBLdOkgYmk^%{*;}WrG%e65l*!YH#gcFh(2Tv`{C8y-f9*kxviUll$#p1{l)=A!I@3A*SNWwk|zBM(&WT&65%=kHqQ3H*XeE{rJMFi#g9%`EPVlP@9MD{mvrr zUO&}WV}L;tlOHpIvIXRz1av9brfLh%V*plR=;A8s!Qg-Tgdzp1XeQx6~57--k$b5*|k zXkxl^!(e)79EC1abQ+=9^QF^EU&wOR#_@!(h&|3r(~mk8`VSF+$|TlfJnP+H-bFkE zCav9~*n3xhm8=UeIM2_92k*~Z6Bk_bgOTu*Y?JMnioJI(x*{SdZYoxOp0iWVN9!cf z_Wt6)y=Ryd$6(y^e%$sy8SK46KMSMBxcxj@kWxxFz_o%)U7{2+53*^3PurR4F@0>)}l&p5Xb< zA!ldWkvrUxdvtQnzw$kPf#B`IyvXjd)8%b32J@$`ps`QUWukjK2)gXW9~+xFZNlZ< zKt`7zt20t~!M{ftMlb3s_?~8$+zt3R7P1&#G5vYcDZTth!CV%3<^+5fOvis&F#lcf z$v>UqWWS-t_W$!3r}pNIt^TbXRjP}oTKkj9QJGL=Woa~0SIH8?Rx7JDAe+z-|F=J8 z`}dNT7B}`-+v(+Mt)*qaEd>gNy+lA!qPX7=vvC+zCKrl#6tidcXLhDU=cg*Y*cD;=f^gM9dst^h09273d~h{?Ril(ePz*xwO0>Cfvq`VM-e^h zTvZ`G*5`Nw&ybt6*k=7-muNb-oj~Ihm?7;s0+7j%sh&x!0K zTGWmYCPoplk`L`A+R&Cmsq{#`-{-QWzOMyk;ZT90z#Uy8B2gIw|2$Qm2N#lXy7R~! zHcTrf$0sSPLDdcGDpx6EAJCrx~$Ya9+goLA?MuFMTsz7*xjaP?c4^qDs)t z9BwXGR-BV7sB>wOYCAk%e!S!vcnA@xSw;sh3uSaHF4y3bjdmI!`1O)p)MY*^ts-}+ z?OIwu2IBOvMW%>GL&&L&SF|N9f+s#wypK{&L{Sn&Sq%ViuX~Kh-Jc@F z7Q$NFDtVl431?;iiAfPh1bGpJ!8nRW;kBNep*)KrI8JY-@UZm12oT;&GH8!Jk6#T@ znwzoK9zebiFl2{Sa~=hrqR9eO+v9DuUSKP zOz+T2T8*L&^mf`e?J5o&o6(K|f3e5%c7Ud^8e^)RQBq7ob^1xXt%Tt%QlkyTLTsOG zk~qTUN6>KkD!Q}O6nqEOiHEo6OiZ)-{uMB805%I1uFVuAuSqir+@edi+&s^hOU?p(MA`z? zO`|$V7;YWe5@P7~I9^v-%+Kqpue%@5Ev-lBQtygDn9b;uY*LO&NC+K>X7V)IuClQ{ zD86y5qSsiRlcy|23UTm_;p;@>XU|12ceH99H)$dEcjHTErW~z3zAj@*S$T5Y8HHyS z2pZcOc_)c-ejsU`G58W`e#7$dw2`dusUX%d^AUyS#)~thk?@}C$T)6^df*%)!U5t< z{lmKKX6P_2wHNJrnKQWhd6Wwcx|(xLgDEM8&tB@(xCvQV`r{{s+k8qJXjQ-05Q0#E z%5f780}Jn8 z_lYD&_*78SPWbwZfWyD~8U6qyI=q83=o?NLX8epwZrIBEjR$@a2t0JZpU!uG>qxMP`JH$Fv6c(&=`Kat~rNhQ~b`Dxo$alYCPYO ze0)IhEk0q~V_t@HRK3fs-WF51^><8+qeB{&W_OJ3qh@y`5YQh?3955)L*E+S6jQ>y ztkPT`z}DGPwSN|416-!lw^BSpE}8i1%c|XH-NMU94XEUA7j@&uwf89Yp}fc59)@(F3cV zx;7U-0C0EK{yEvS`uLB=oUFkqgZHg%5J32UHp$3ZIy-*{3jdEuM#cI&P#A@G4h;&> zJ~~FeUETnyiOLefW+BYdKQ9in6OmnHS_gBPzw(##UVn!?>d)s7|HPX~w~NLNGLk_u z=5KEBCiBsH+nRn?*B3}l6mAIc3D&o)A(#s_z&>*YJ;Z-hzW>jTSJBK)qvrpQDbm1mnK8VD}Vg}i)BbK;bkSW-z4Us^=zC~jA8BkbeN&z z5DQ$Ac<#b2W1mf=pG6j;BN{Ty0OE}AaOZ$;_Us*oI9(`A6{E>~={@Eq+o!r~S^tTH zHUmn$5k|61?kO#*!&%83n(Gvd%?^c9jRKXwl!a+3W?)^axx||gW5rY3g<5X9hzsD* z`2Imux*^HsFHLgkq#XuJ39FO|2KSMgfY@wNXBEe8>upJcrR|KP&cFk&Nu@&gE)Xeg zKA|rz0E76g%2croZqg{qP-)qAVaCyOz0V5H-7(wH>Q}O1aiWbaey?|~SZ3kE0C+3# ze4JtWs$xg0c$_owYTSyueD7i_tsSnj{B03w^u0)>m4tXZ{CUwek;$z>I-Gid_}KyC zN2TgLZ;PIMiP{trpiI|NDuD);ipV@J#H+Hi&6`y;FLi?|(UL4U)NUKlk8KHgDjMF2 z^MMWCA&}z_tYYy5Wy$rEj0!t=qwq=?_oSX1P7K(sM3fIr&O1fFtKV#Ves zEL!|VbDQI6%r*Em^m{M(-&z+jbDTE-|A-^b)P`=OBpY$`Bk)re@6-BG=3S<K1COshE-tlp|W$%S}qc%^Dl>LQ}7<7Hms*scq+FL4eevQ4smR^fHFsi(Sg z7Ep71(SeLCQlanMRf{cps#iET@dHj7W)l`HEhF%!c?z#vpULXUm}0FPqKJkPk4~7P z{C(Rm7oL{A2s56-3?!?8>y5Iq)ktpre0H-dg^wVo>vhKzE0xqHrYs+zvPoFGfewf0{l-0Orwu{ZB;iVNG zw`(+Nx6@UIn*kOOT4gU2PR4`q9+B+Fb{JLyj_NrKu&c%yHhq2a3m2$+BaN7%Dbqf& zQ^S;J?U9n&S5UZE4|U+Ff}(i}OhN69#R4ag>=Opr6M%;)JV2|ZmUYn6mvX)$*~n)O zQFW4YWeo!e)!e+K&M{!lPS6#S#>K>m+ZaV0lME}=Z?U1Owl_Gcc6hxx~n{aRC`cKFT>RHDqRVJu^t>dUsQ^l&NQ$J$LtCNl}Y8KL37-zzzEl+xNOw4 zh~(f&Wj0BSEuLCQ))y=ogrfE>xLg-DST@_2@pX~DRSZ_HrYky95=8U$+K$YG_-Kka zbUi1hub%GS^St|llG;eU(OPzi_OoHW!cdj1aN@n6d+l-nG!rKtFk`8lo$^yWzGgg*!~x=sgu2r#mIWTC2~o@3Qg$v1re)lV&_}S5#jX8^%4@v)TOB{~ zL%wm%5%8m@9jQTAe%hTtXTet8(sgV0k~+yuSOEZ=#gp-vs50eatZ78cirjBteiK>7 zeCm1;a~5)S?mmS-$ScIXRgoO1WXZB)*FgF^^B+#q8ZyP1pgQ{%gYs$IT(jqmq?WA# zs8U+var#y-Fn8Ee9Vb@+r@R5}b8aF-M-ocGc+BxR3SU@*V83(}xL9aiN ze2jI{hu{oaX*;)`MTDNGv7CbW^2H=A+OTcet!&Zb-qV&_it19 z|9y9<_`lg*{&zuBb~SQ#v2<~D`7a1YrG~eG_JQk{@8aHQ9S(UkzG9Y~5xL)>ry&wI zi6fpIOe3VDg99E(o$m!j9I1G`u#y@DOJt`dv~5aFG9B(+Yb|TAm}HJ*fFd}Bi}lJP zS}VBe2F1lOTPv)F&@1;=M>454*~&8h?1#&xJKmP(`{c|0yLU`Bc#TXjsvU%w6?k5p zA9LpvPUOPn6~7Ml8u~G#w-xbB=PGf)r-CgF4u`?1Dg#c8m=UmdbT8 zV^5U^4+ef@23Vrd9yppscdi1D-h19hfbh@Y(%TZ;NN{05WkA4e6pA2PlaSpiG%y}$ zieLFQgy<_uQB&k4K`uSUWx4InTqGNX$6kO%Hs+R_Nw-R>(FF`>v#~D)LWHAmkH%`* z=t3_#D==>*k8OcCA-}1-H;)wPdYrR13kJJ*BZsN~ELsP%)nmwUpq4c>r%rm%)MgIm zu9<(xgzT-O>Pp`Ge!4iLSus-M^MA|W4UbEqI=&-y8T6_*Gl;ca-5Fs-a!Hew} z)gA|iPAxme9*vE_=4qYvcEXiv4gOclbz-*{yDy>i%=Gt>7fuw4THp68v<>4)hF1U|yzhyfb1##i9utQ_@-$#Wy>$+f4|vJr)R(>SIFe=Sa&qGh^E^#5_+EGr>-~4G}`y!}i!-tL^jNttXFrh@WE}HZO${!%27eGG}mLTfi>w4Ph6( zZV=Z=E&WsAIjYHeldZi5E=A#81CGAPH z>ZXI_na~0PelpA4SC1$hq3%gE5@j9EJx5YB$JiC&ud=um6i3tchfeL>1p+@&Kcgj! z^pYZ8#38|VekTZrKw(xtO6NU3rQ+U%Ja3$FHOik*O?}8Kmm0`IR1Wu3Ys-|F(apTX zTl4uDx&tNrt?%{=l_eDg{nAa@7%eN-oOoe5NCw!7sypxnWC0Af+VO)il4@iqi|_VW zv6xYHcP?y=jRn81FoS0^`U0wAHIZTx@4@WMijV5 zrS*N$(Lu(uRa4y$F2J(T-TAm@eH!>+B|&P@3k8hxbaN|wcFmZq3gG?!blvX0JqIi^ z(#U!J8Is;I-L~go08^UE$T<8Fd~mRL-MC8?{b~Fz68%|+b7HFaS=XCMU4!}Ty{JMU z+G4Ct+`;=4{_0UPgT5%E%VGyrNJAN=W3=6vxYI_^_Y?9*ODc)yC%t9;FHi(9zn*CE zpV;G<3ItY<76nCDW<|xKujl7|^f%O&d|#uEKD)MHezbhVVyzQFnF&V7E(C7pU)|bz z?EzZ|a+WgI1?0m&^$wkg__62xce+Gp*Hlsr?P}ezJ=DR%HQJu5GCI22HAVFMN$Eeq zuNb)lYi(x)IM7IxUQk$cDaWFsHa5&?&`cJf_TXA&ITI74lE$P89t9V5o1W*3VNPZc z4=_)(PL^%(n1n-amE@G2*9Kh#WY*@lmHCn~DxKy@$fOy_O7N!9#%Z!+L&cR67Ep*< zN7Yj|P#{9avq)x-tz*E#>z4ECQpHgvQb~Xc9>8~v$y#Baf*{{eD{0l{Fh~!MW=baR zOEFskC22CNSq2r{PQ#JW>x*_+*%9iljA_qqN6PgJIBdGAMi1sAp4sW-wZlqxoG14& zMNy{*p`5YV@vF%gota6TO$k<`s=>dTlne*o&Y4vJ-Mt@bA2ygR(&4Hyaaw8T?BxSs z$CV>EtEoD^t<)^FZ6v)lyPlB1DEp*)j6p7x9NS3 z%7?(J^71ED9>&!$%a+WU9e<8=3#;zRzy`373IZC8hk3b}C=wFe^zpT(W5Cr6>G}_- zs*v5O=?|S)vR6rjOO9CRJs(Js!S$ufl^%^b3*u+TYI>rms@?fZ1*vqitOOmG*Wf033k{| zk}Vg%@7AI>)oa5?zDM_>{u`q`qpK4ReBEcVtfGuB>LrP_SV8T?J*&4@s*5_HOlpX7 z-X{SY=TyzFx{=Ko(duW1mW*+t9&K)mrWa`l*S(aC>*<0L)`60DGhLlK?M`mpx%=FU z9sSZA;NA3HPmWzj_>v3nR141_*p&cv`jEbUBF3rM4SPbp?2x4j69AZXI}WSdEclO) zo^1;80G<6TU3KGF?!~Q@6mZ=i?POftL>2Kd8g8yioft#ug=hNVc}D z=C!K1o8SNC04>xIgSuLqgi~S7n=abdfqKX_)JlDfA@xdquy6G)Xa%?IAd~iB0)q`B zo%Xn9O?IO@m+8P*3GG7*;kxo)0e_$wPMsr-V>{&9AxBk4ltb zb^Tl+Y<+x(7;g6!MG@WMb9^*BmF;(~Gi7$|zwzD!r}Xnv&_jGZLOb0J zyKZ-WrHA;r;)1z^s1mqulA>T+FxOn*(u}wMwgjtth)H^96fJdUV5jEqQh7N2t)ekB zg~&5FZ%RbfgF%_|cKohP1Ldj0iNP~?UVuuK4W|lJEDvYsd4|lf#)*_h&Ll$ig@eAJ z7ACjHy;W;;HdiaVJ(5uRE^i)PQFHQ|5gyFa^yBVfPUy!UVa~m4bPuts7JAM6Cr!sW z#}bnBA3>3QgtuE_{Tz`>KB-Q8BA08J0o<6OG1K+#*8E;ORKwcl1{=FPt)cAp*bIDA z`gw(N01dcwk{FOIYs^^**U(@Ucam!%XvP6;S1^7Yq5`Yy*E7ZSy6b|;M%D;~58^@1 z!XHoH;~z);GjhXILc^0X&x3h`ZNheY7!dGQ#=b4nbrW0G{S1@dk}bEth#lk}(%2{u z?jVSsCGPA)DorzppVX`b%V!nf)uirsGIJWa@-Y9dISLzpOWt%rM9Ma+WyO1vX~#k# z;YRPS59`QF*~AOhCuK`^Ln1JL_qI;};U|&5{~uAO$Tqx&pqU(aXp5|yg9tbNPM3Ede$c1LGA(OmAiZPTtmXYZ3jPqSWq z_9WL=<5OQeAyArK%14y2?{H=!YN&3 zcJ05gcIWb`=yQvZ{9CfhplG`*q)LeL3NhyV#AM}5G)*Y5#RN@FlPWZ{;^wR_DKmGg zgZq|qib2i}gaXY9<`mNu3NO5-zyfBWDdO-rVEhZ6UCLuCc=HJ;kO#@e6-|G$!0)xF z&>Cbgr7CzY2yIZ@-6UV`YwmWCY`0uES{5W|zumFWjJEM`D|)X01%y((l^0}v(^jKM zn=*5nlWUs)#J2sdY0l_gmi7v}+G{w_3p@{^nGAjQNmY1)K;jT@_71T<=H!`d_Xret zvV8|Tf^d>Q!AS+4B9(k)hY{KALjnFOnon=q@j@Tm-F2@Wk&7faOHntaW}MG(`8Dn@ zuP%8X>e!SWP*LXoqI-0<9?g|MP2rL)kg}y}K~wpp^2Q4ZkT4gjr%9PNf2*Hb%Jhf0 zB-A;pxZ^r?f^wGN3c&n4@69Y^eJ4@ba8yWsvVg1K1qfX+KELCYwJct7dd?GEjODSk zZF0K2OeT_ORwS4d8a_SBnNPehTgiGCv#c$-PBtq$iA5zBx-^>QWw}(~RCHqjk`0H& zkdsTq<@KuVl6{@>kw_xFJ7WmM%%uz1I$C;1C2FR_v ziG#Jm$xRqs^Yo7}5gj1u5Pa3k1RT}iZRMNN*SvLvbv*NNFGEA@f2|v z@%JS@GhUK=`2y23|Mcr^*(>HcU%1x$Ej;8?mTQ&R`kM+k0~TP*Sl7KT~fU=h=8ci~epE6xmAYyis28 z8JXo7_4(D($b=ppF>L50r#D7#mlX=khTzX4`Y|YT${t4#5=3OA(Em90lgT#zMhm-f4zGT!fK_LDj?J;6yUsS;RQrw*LvHoR!(_Z$ zH<`(yjrD-GatU?_XGjYwxr>*HVwE8vFS%U({t-j8vTQ=l1$~2HQk(92%b>@yu+XKG zReq`gQQ1l+$V_O111i1rMn9_}`QUZZyrnG+>sQ2kXaBi>OpXiYSRz)7F-?%Tt>Iqd zcS{_mWHN~QlYZZqsRjf6r4D65J&lwHMj8hg29Fo=)~vwJ=Yv~?Fpi6n@9Dj%Z>wozH0Wm zR&Jns9`0z6CmH9Xyqm9>0AA(Q^@ez_NW zOu~DK~Sq>71T~{V`oTD zEW96k5wbbvD|L-*yUNgEtooJ?2y)^=y`{sWUeLfpW&NF&{fG_P{;cs1=nJw{)N_osOr<7i-WQUjvama1H%3s~Abz$jU z|A<_7pn&gc|2B4t{!3%$|4NelPtVPNN|GluAU#wTFnQV2Mlxi`fFL1Z3^9dZG$9P* zeo2A=Ln6Qg#Q%yiI5R#Z^<$Fd?r5>hlkeXLx^ke_gyEeLnHJ?&cEzKns@!RXfccy>uv%j&QT$ zjT^Pq<)$M3Yb5}!64HyC)M2Gw!(>#l#(F2op0}e=pnWGUyfgZ+qtJvF{b(0?+7kvu z$l#aZ6{Ur#5*0n_s@r8OQ5iU$iJ8)i4SZciu~Go4@h@7? z10X5izR}hw*-AW>?Le9F9v%3)17)m3PX@TXgE=60G7Wij&)6WH7nOnEXK}E+Aw441 z%%_n890lOx{dzk+NIEpiinQB0E6dX=SAvy*4^oq6I9e_c)mEx$MW#BLsQ^->vSOA$ zJ!a{^b#lZ>Q8%hy!xqasORWb%fm{LShG!@h2*bCbktJo=abpd7i@JFOXo^b`L)bM; z&<`2|0@JbqyDCm2!gwr3Q92%&((V%O33fJ1K#n36uKAjIrizMV0Izv^@Cb}3BFvyX z50-GGe8mQyfcRN9cCQ*d`_bQlu;acIIMcAK7GzP(mCMIw;TkD>VkW{p8GjVHRH|Qs ztTdo2<^cx3xaDXmH!`tcL*jH;r4MvZRpf-`5xjfZ+RDtlU^su3h zFIv%}J!(`}OM9nu6VwOxQLaIpPvVkGuofs!DJ&CTP6UdvFQ(Jvd1tZq$lx2b_acLZ zOed_+)#Yg@Ws6wgVSX39UOIC=$!;0RErTa3)g!*qESonv&@mC# za(!d?krONcn!V3irn`|3rU~s`GaI$>jFMJKGSl=-iRLbw=g)1Ia^ltzgZ6;H?|0zI0SL@y<>!;9fjzOE+sI_kHwn3`0HK;_+g{s@(p<1}D9FO&9KD zMTy_OhkY39d{l@*ygmt;3I);M8XxZy^r%P6?H3 z#Bd^((q0^Eq3~E>WBc7Na__?-$LH2`2{APD3#rZfWm4$y69ih6pnL?+a~|cpp?gP# z_+Q;aw#4}#QTk&3w(bsaMssz+7rEQf6G_>=QA3xpomh|CvP)AwC}!NaPlG$lmXub% zn|+sRic*(4kB200QEH%)B^*EbJz7N$xd~Qj>2W9pdUKS?pvJqeZN)9V^p%U_?COP##Yceq|>@V*ibSC@gJBCbn-F13@C+QVqm@l~qaRbMR$wKfaU}B-I@(${e z%>@aLv4fpXvB!kTsl9asuh;@}5yZ2??jYDWKHt{hGy=Gn>{#ANnc=QO?CWHG_#=*# zEuiMa;}YNdGpuA%V{84TyidI}CzoH@=3R=&x{;9RQM|WYIm(7g9;Y{SqDN5U)kXR! z`7KypOurDUpEXeh?8`Kz;(yh+=Hv4pg#)}UINtnM;E&TU5E$LkQ!gOVdFl_U9$N>b z7!(F9G7W=QPZ>S`&|3_+#ZzKQh!Eb)<^DYD!{*lRxPx+5*!?C-TC!9=oWN)QiGEU^ z8Pcn^HEV7?rL zA0~D9nk27deWQ@84hw1d%t5{-yY*J1zO4%T#Ci|@@N~Ru+Z*V0JN3F1iYd8~$TiTv-TKL1& zEQwdWMrX@-1lF4q-dc>l&4qinnKZRu`}nOdoMoABvfc)~S+u+nnIJ9Vd=@+kiLp9` z`{eHEp0#6V6N)HG?HyG-UP2VyVK)xb(Fb06u-Tgdsm400yq9#!^857xD{Ca8kE>-! zWgH#2du5pcD_e)ok9(KF(}UbEf3|Fp3Y@HX8L*V2VlS1Uwte+T!tSuz=@rxHLjt7w zk{w|l^nFX*Lv;TevVG42kv?IouPuS9;RZOo(VN*W3EOOV|U)WeY<-SFl^7m)cu!02{9d zRI^8U1hqxsPikn`#Addn0BuCAS&x<0las#Td23}cmcn))_uoAYwT=_SoU{2E?Ik}a zO5>rM3|?*@Ro`HS|Ek&CoYGd2;hMbazk-dxBXsqmZB8_0j7Je2i{*t{``}nRwon|m zwWfZO58r=qUyx54VKJs}a^K-oXGcGzojlxzE7Q+!ozTE-Hr9c1^!iq(7@0P`X8qem zWb?)~&f|Gm%~Eztyn8J(bf_(~=*iX|zy7Jin9qd@VTEc@aw|)Z3ZCeMBl!dJmKbG! zD_z?2i{1AtE(A+w_(zmx1QXtz5g2WZEIM#Bcyd7`PpmLWjw9p~p5$kT9xE5}W&{vD zex#AzZ7Ha3GD8w-Z*Z{?Om+#wrL*Sx8Oxd_>ZXzV?JV6uN(cv5LxiZbgfrdY&&y0kJP7H;m zZF|_J0qzw8cfF|5{Q|~{N)l)ewyrU$Vn(10&D~LRX7XtXaeN<;?ENE~s@>cm*&C2ogJc)#PF<@KtTQG%Ng1JXK z&&4kVp)Xl4objy7tkNk4wAQ-HTk_W(<0``ZIY)kh)rn$AKNPf_iknQEmQK;T@8I=6 z7-QVy8NV4gXUN7%JPIZ?Nr-5ejFLA(-xPu|n+jB$@>~0k9~Lq>%TFu_7aN}j!WZ#~ zDB>2Eijuz><(1wkrnMa}6!A>H6e@%rYna5<(cSsoRQ(Gc>2C{p4Ejx?>LU7gSqp~$ zW&eiFHxAPAf5lf9_>WfLw=p!cb@+#J`oCVanF-pq^K?i6UDuPNK9--DP(Q8caxMy9 zfPX`CNDF`y71V`WpLQ;*SvN89%Y<#y+Jl9_hC+J(;Dxy12xS3MeF%z?|y`c0)%<07-DNjyWRA?!k3v*t?p1Zv@_k7e=(+}T7~z=&s3P;bbL;5K*3 zW=D4MVy52(2HWK;yDncO^{A2ht$WTW&`2K|t0H*{j6&@!o+Er3&Q@cOJ1+bj*7GYl zel1Mf(qYm0Cl7{Nt#S2hN$#c)*fLm$6;=`O8_aOaF~y@m{MK+=HLy$jJU5C(o{M&) z^STLZX$O@~hbJ@-OU>#4_BwLPQ7_E2?s&z<{j%px)=|WPH-pkFU#eWD(CZ3D*Q__% zS-{D@P&&gLheVM{i7p^^h=g{0Z(7LiaAP(-e~T~v5lA(7LWQl`rMY_tVc0mTe9OMF z{R7!DJEe3xcM`ST4usWjy`IUBxM`i^L{{WkFWJU5Zv@8EsgUxfv4Bbc30>(5qg|FOIz zpx@Ju+;{X(FrV2i^$@x?bY4$oN*(KBhA7pAbdk&Gb6qhY(l;k=${EyR7^w8wee7BW zA*0;mrfy7reEr3xO4X>#C6g>)jwBKc#O~=kQ-SRwN5jeM@e&Gv_IR70f&y%nI&oXN zi7*%~R;=2~DC@JNdir|al1|*S`w9&u19!5&iSCV_Ib1c~CC%HJlCE7K7~Mo0pTQQr zujUfHAaMGnG)I0mgIK(_t~*Q<$0S*+Q0dNjv~fGp;T-6o3^GL!!MFF?J*22I*IbZR z9f<8%^V&jSC-qSD8zZMZC|fllJ~Oma)(P#V3b&LqKKt&>AYpO$XD%#m7UULJ~A+qglgEQuiMy7@3uFUl=C-^%8h(0B5r)2^$r z_i6DUzM(_%&P*VMF>Rh!8o;CTY1-~mhbb=^Yvopq5%iAeszVS05LQoSEa7cu?hvgh zvn>bkBy}XyhMCh8xq$oR#Q?jpp&$NdqHb42(1dyVLQD}M0Qgxt@b?dVjG-Tq36E3r z5qYtXU$(H_}pe zy&}@#>I*-U#u^BZ-c}Z0#SXi&o<$maMITOj%vp;Wx;sn#mzuNP`z3kLcSbc6^55MV zg8z}%k=D1f`yN5~?+fEV?Zp*w8Tm7d+S5p!3PE!nE)Nu{&MG&Fn2JS`4sIQ7t#=5t z7$03TfLjeCH8nOMJuZo5BfZG-FVl&HW*ZT8K`&s2MS9usRq)IA@#u3sdo4c6`)U$z zHBQhVbv|hx#B8(us?)RkZNqbGeJA?M<0AP7%ia@k`-GRr`qUAW>jD|uiDE0GxvA1L zTB_3~j=1b;tJUAydwRjh3a@YYcJRZE{XE9Wp-=!E+cL8cHuj6v5}M0o2k~NqYA%1) z8Eu4VWYdNHCgO^G zBLOrtFto5Wurs1ZQ_s;HO(?y#-K169xRciHj3S8!Tm1ujKMp+uut7|`%RIxz29!r0 z#NfxP*qR>uq5BEF6{jsD&_(UnL~Ap+ndY5u&sJICHp>H>KUq?cT<`%rRqx!-1--%^ z4CJW_o5+H8$W<%b%?7Q09y^m2ISQtA{2Gk|%k_p`4=obab*J4X`!>D5A|{4#R|smc z#}p?gj@C;#w)W28ku8#XmdaX|Et+~a=MnRE(LH|_?MwBoLE)+5rdWT2TKA8dl14~@ zVseQf00X%$IDtMY#bPs7;i~9VmPdnIl{1XH8M9T{v?Db2JX*wy@-bFK6c_9moxpI| zN!Cehua=dY;XjQ`)^nj45H*9ppFDQ%ODs0fW=~_Z6;@RwGVZ@c+OMH4X%qI71!Ge}ita*o#uU!>$1Az%dA}rV z$7Dvg9xbLVR)!(Q-JNM`>OJ7#&xiefI&I@!5qq#~KY-J7sLT?BX70Y$3BA-wCDc64 zJv~t!KH^YvzU0ua^0LeH-lqPZi(SMP&4ftncy(sAWt=xjy|_OBT@BczyBri0QfaNq zjkbz7m1(vgIsi*C!-?1?``LFqOut!?gh1P!tC@O*&M`<6l@@I%cj+mVV-3U|4G;wr z*pHr)z&BKIwt!nObmIy{oH=?KB0rg-lafIDG3o{SvrTYhn<$;HF&O&YpM&cZryYLr z;eg-Twsc>;DR4II*pr-i5l&vw*kvM>CKgkjVn-#9#0@Ve!kmsZMt2t4nCRYJxJ~jol z>V$C(qrdE~BEA=Jw#i!JaR^1UL zn0#)6s+gm&7oi)DF62(R8^50TY964P@nZj={0QyIR^n`{rx^|4=1&dl{tPp$b(Q=v z9aT0a+XYAPOw&c0|M90tsa&*9@Paodd$K*?IkrO{DfwX&sDL!UXz7AW37lghVgML+LdYgJN5IkFOFuO zp$)PXzyFaq{8j6ZTf{{kE2^iBa&g_v)!^Fwnh8+nrq6fd0Xq@}vzq|bYxiVyE9TA+ zA(&1vyJ3%$6w1s;QlhK#U|vu77iB6P>wPc0%kHNPKH9`)VdP#wRJqn61&Ea8VX z7MftjXN6XON+7(?N0e)6L)&ZHEXd{K(=e@<>u0`V?w1|CT8`~ZcJ-4qN+9hRN#-br zEHE`mBwHj(irbbRE3_OdsIe=2FXnUsHKPyKCgKNE%3bMIRI#-54dLed6#!B^=scx;9K6QvsNF> zY=nCn+=kKOX?079-VH{dslQu*`nQ+!6tLq520qVLQ8GTvmjn&qZ>)8=#g&r0V~?oA zATK0WkM84;H*mp6z4NGQZP&Y<_TY{V?nE`4CoRr>;(ZzLUX~FgWWLalgscWpK8|)7 zxMY;%s6muO)YJT_{MHzz7JG!v)|jJLSy-%G^)C3bM)j_K@8=y1%qD5bsgSD$gdnvd zTC3ehb>Z$ey-}OWU;bxxQ-zc)J||>cLc~jq!Ps^`muJQS%ZPxd5V8guvn@eE?ia4s zZOvzzs6&lch3ZGRsU*Cm>)3D`i!;dC6rZ6UM6qV53XIo^4^3~USmCBH6KG50oL$2FW{}(~J%7dB*2AyOkau4#&XwlT@bh|MP`z+v zfWdtf_SHR`8&dOz!Mkq}Pp3!LeirtTgyaWZ-dsVbsmAD@%I&g@H|*_#d_+8NI_@Ei zYfAzWk|!nHGpPXviP(1fO7V`+^_5x9oTS@e^~}Z~aBDnmyyPH5IThTCN}4*1>FAqc z!aEd5S5+!<`)OfwvZ$rrtz5a2;L7HAvUYbKPII;vTt9zie!=pYVQt z-k|#GdlhXb=$j+2Q9w46l|?nlbyc$qbJO0Y8KX83cWTXHDe5B4F;sTgHJD@c%OTxU z9lJVL7Nmn+jJ^AhwCaN*Io*8PZz{mqJ^1_2pH%8H&0Pf`{;!kDMWuXxp2~?Z;deQ9OzKorRen@Nvmaxfd43sGk~Tsp?pz zp9+z{4u-!mflRH*?-Xe{)Ce74f6@?Sn0Oi1;ont8xKHd1^?0he=iFN-A;3CH&18`R z;4Io+c1ss(8rN#~4yEG$!xgJs3)xNxzDqpT2Y(4wu3xZ0g=S0pC|mI#oA?3OCT@>j(wi)<_sE6_;gB$ucMU@nD$;7H*rlkl|6E4S zu#$AupCDVYVMC9tpXjimEgjjF0Ihe+Hb~2oE>>PQ(w{PjQXN*(>H$UFppFaV=TD++ zvxEbo;5lS6wNJ;eP~3ws%$l0^jIYosn|tBXO#nGSAk;9?Z0u3%5Qa6%A^V@sY*Hux~O(ijNC^lz7OM#W~ICo?k1{zV2#216Co5|p&=+{fB{Oj;@D}? zCZcWx9h_~p&P1(h$}KM}%%HM36)Gtr4hjng!vBh!6W_G}82LMdo!G^HS?nOQfdoM@ zcUi=HS~^Dpe9&5w@vF6Zt~q(?QXpc8lj&_~Se8h&mNd0&Cvkrk`CJx9v)9jvsl`9n zNDnMH&Intaf>Mkt>05nSd^)y^oKFKQhkzQ!KD~i$R!oZMo}UDp&A1p4)B{;v7GIz1gGQ|PFXz`{(AZd_!}o7o~{B(iPD;Yw)I2h$^Hj|B!V?a=~zwBKyL@J6wyJR{{>6 z;*x3!_zG7YVH3wATC?-=t#`)E!$tBo_8X`@Eg*IB1XkEM1WV*6i&7 z3?3~J(QA0wcxEr9fX|pCARY0A>(TtS;|{!{B~bgAGL+}If+ydlt~`k6w6Yycg>lz{ zsH+oupO_9;Ji3l}M9P@}DfPaFjc$C7j@(}&`9bxSw+vsj)i|rFnC{#p=cEm{rS~V#u>bG?r0i27Dc>2fG3bBi z0eJpn4pzQ{H*AtM4+y@C>wo?0RD>gi{qa*`n67J93U16-qAqrI zPHmF^KOD|!DNL|^ag%uVyGi!D%&UymmzT3M*dNi?2|KBn8kuDG!p+oiD}V2J)$G$* zh36silOAH~@bt>o#DUdV5{Y@HZ2T%LuTnt=$kv;W z&>_8k5}z2148lCQ4P3u}G14E`x@Cv-z(b`?b7Hfa!85~VxQH$M_4+WrcmPbw{c((? zYW;IbOkmH zM(Q30tBvO5KzQl6YKD4{b5Tf@~<>*gZK?#;PlTkVTG#)-pwG8gQ$Nt-9 z_zH#QDC`%7M4xR#zPw5yVmFY`XkZiTc`<9^f{|G_m&b|JRPM9)*N+EGUs1O)IcDtq zD-Q0RtI!_CM^8~e^Dt+gA)C$ebB|}z&gwf~VAh3Gpy|TsCFmc?5C`|6D2?uEy-@B!yq1Cos5M! zVproQ1QTG)PK#m)4dth(8Z6aWrs3Z%J6)Vc;Vo8d%|X!q3?WYs+H0>)VkZh`GXzie zNUVOTT$UWO=PGm8a(T~rbSVQ7L5Nc_gp~Q1sE#wJux?WisB}Rb!4jI#xD$x42VVPZ z)Uf{Xa(G3@9J{}+dFp6Ip^tNcPGqRxc)a;jaMi&JsH8$FMa-kh(;Mh@sXZEP+|4V< z_Wl}|#Z_&H!2xCHC;6ClVQ7w|f@jJFH)Y=LRH5#no~AiEq9~Wd3%d-hNpr{YQSJC< zs#-$mez(a6VeaF`z;9?NbapfB=Cyan6jMfzb+~E~ag9tL`TYUOF}|=MEp`|3%(5TU zYH-7A2oZOW!pV2l4OdRphrkmsy0N}MZql8s5=F18!7cL1=ofb{`U8VRst0-AfiY+R_pca&&LGeu;2&54joz#pkpIZ*~IWie49Bv*$g8M!#^486n-Eq0B= zy#o*iQnhZiLa$PZAS+^_$oGHhX2)yp(mH?JxZ1xhVf<%BFhxUstM8uc|0;rQsA?)= z2_t=a*w$MCs3fb(2doTe#vN9*pwc1v!SR1f`~aFI!k9mAqO0MoPfZ;hD7kr6Z5X@d zSNut(SQxGHQZ)UE^58Vh1_@b;q*&=^Kzc=W9Y=OR?aAYltUBgCye}!BUZjj5#^K-0G7(c@ z_&{@OJVjTB+z{RV}k;b9#PwClS8An zGia_hyzeQFB0tQiNWpP^B4Y&ZvQA#1_u+Wur}oqoW*i)k*j)g@+mWo)b`}jM&u$ zl5%kQmBvz80B`n@!&^&a$TZ|Ks;6wz9eu1NlX%w|T3^n>8F0T#tKCI&kJ+QSH6*ee zaPpvD0*v4niv1a`Vm?Ez3~ReeKl1CY9TF{|e$sK~21CcTmu!fu)wGi~BlBz@rptb} z>R`12Ke8XyLZp?*3fguCJMqC{+X+}PB{yvr_t%AKglf5yHQl|H3Nx$IOUS^DwN|{? z@^a!pXsfWi6LZHNJuZ!7@Z~c08KSTYLXUJua!-4U@K!Z+0LEbl7RC{BZhl}WXc*pa zgH)=GhNHb4JwqlQ!s-o1>5FDAQw}JqF~N=nxGvNo#J=j0YiWoE&ipE(Jmp1tno$5B zI@~E%NdF=|xo1(06h8WtQ7UH9Unm3`4t5qMj;cLD^?By?eAqaB0#aTRYKeSx8%(b% zDib3?ib(V#v})zUz>B8_nf8trr$p6{C!tOThJs>?B1@%#iXAj24x_ZB@x|5L(0P?f znlMR#R$+8nQBC4?UoQ{=Zmy4|z`dYrWZf|!&lFe+h1-I+s2Ku2YPOzv8TsT=Ty$<$ z`TUt*`YZ4+kS!c%Eu`F%&3SI&T$~-g@r5vkzHuj?ijex8Inq<2AUmbt)vtuJgsWHD zw9?u7n6umW%d;2g%IKOejW<7KtXJmcJGhOL6`w!fv`}o%5X07}U^n47D9Siht`uJ* zd_47-{Fa`SL=c7f(279*v)2K9o%9${ExV$}Xg93+m~Swp-#=M=A)#xg(Qi2}gm{3b^E z4vp{}isnfrpwkWl++HH9oje@oy4H(QY zDF^iqEVV3mtN*A(ULUFSt=|4q_ZPKe`4*z$aV_g&mD*vWSERT4J`7%IML{b1G}=>5b-yQ`h_RZ0+jD`G6^ub{hJ)nn@ZbBA4Yb$vh*yr-1a0 z(nQ0M;n6|^PCc}9nB*v(;(8SEb1D^UoR{w=5*^^~rZC_>rEMxc$^-+rs2&uwwmQE& zAlI|?FY+^5--}73blE(G;Iu*vtnoa$4YUbpS?5EIO_nsy_!}%w!^@zf2py1W1S)+Q*n6Tni}v#496zD#)zFb+j^Z8Z(w!4dCJa{g0@|{29^MGACOWGKtCQTuL@(Y)~})pmyx-DN99T?ZaflViD6+p zBf?BXC^7^z%*WH1Mqj~nMu#AD3cH ztiG!`j*^`#IDSQ$06GifGqp|nE0ZjJ%`DtyuS#uAWbcub8B1ao!Yx7f)C@bN>w-Pt z5dks6BH*GViLiz7oSfMf4aufJE2eDzZm`Hz7$I!OVDy(6JMsSE?=B9$+>Yd(g|Kfq z=Iel>Qpd%ZK|}4$cl@kcHw9<6unYt)X^u`>bP-I{wQhn(Kn-L&$aVg=ppW26XEF`K zTI5Zd@IAx3!<)*-V80ym6t?~T>oJup3(aKhovL9r_;nufFaHl>l2v z76n!hz5vlYV52GrKt*{9>CfUC$mT>Nm|Za`+km6pXnlg)En=+gEEUe+0wk8rDoYW) zn~TSSFXIumj0`1*o+@_%#Iq--ZE2Mk<_-n>i#}vei5{B0^YLes5-%HzxHTF+>`vgb zjaz7t=O!_POq>gY5*m6R*()$wZ@vI+B~2sK;e)_FI`>gKKw#OK1yz%y&NAiC9;Z)=w%yFmEqd8!iqQqtzHmq zd=iS3>Sq4H^OF?fnGyrQZB^X(8GguoKO1zkYfA7Wd*Ob`NGsA!5uo=lnS@vs#8$O` zcykFeRKkX~+uDj3%P*wCP3@t}Pi0ZlZG{g^PWtGid;z2XMTq@?ob@0N?01vH>*|wR zS~wWC#Eie)PYEpE04I5nb{0Mm`0C{JriReI20oLivJgbfWQdx0b&ckT!}Z85p_ zv+{`0+?*&2%qJ;+U5t2}daP91&=$G#Nq4D);;o!f_Ad8wWz+<|>jdsU`0~{c*DZG* zt_S27zSNjlCiMJ*>UUByhc*2CGNhrsEOMLe?5N;9k`{J--bIa-DhNz%jC-#k8IvxV zrfVT~wZlv=ol*Xg!$9(RKl6;znYaUUikxZ|EAE|c;$2vcgwZULe&*$j?40PRHvdYf zqAhqKHu=hK_003v157jTL3QSu_|H*4mwIKc(KJ`0b~ESQnZbyaTu$SDKX`u#ewSAKJ~)d@X<~SVp!#PIUsYId<5aR#*YScK8~WHacC=#pTfhJLVUGNZaR)Hz&uXGRlAaZ(A(My z-&%OoOxv<pd-sj?TRK$ddVG1< zI-Hgal-d;2klC?6sQ_dsVqSwP&Cy>G(BBb>`%6YHxMVz%95X@bW6F%Y!{(jKf+9hE z@{0}U&%r~7b0_ESm#yS5Z|D~jF z`hWWLRR1x3hWu%ZkTQDR$51CEkHz04K7tn_8DgfA%Aqa>%#<^ioI1R}Gtr@c2n`mt z(a_{%enZx22>dycVwRmruXwX) z^w*<9zRWtO@D+JHx!UaBKcwtu8Ydwzs;CSkIt4ct&M>W@x|We%RiF!aie zOzz2#og_P=b>14`n<93cLn}u3(}j7V*o+Z#4r$jR^ApDNB6~k8>El%^MY~Ch7g<@C z0A$2{u-vq4SaA$`C`d=bp_7J&F?N)qnNGLqV9Bt?f zAELe2FKo~hHWc?ul}t)%tJ*QpB7oMRsPXbA08B4UD&grL(@XrUkm{K_HW8RxZNOo! zW9kj5_GafSbFup~WF;%y+KdiMWB3E=fuN>jeJLTpi@oYvA3BXW13G%WPz6YLX^GLr zC7)bS-6fvY+)On1{y_pg9-nbMrT*2(C=5}eaG*5|$|^A{c}oXns39*A$LaS3dDCVb zBjVT=4(^gZPv+9RIU(}*{E~!B``L*n?rY&UR5q(c-}OXXuwSG#XhSdj=5JCxUq8vH zR`6s+sF}c4XZj5_d3u|e{hfj^Q$7*aek+?I09#`VQw4}4c;E{XHa(lgJNB2nAI6%+ zr6qLm9UF8gBcO6ULTd;qg=03V2Z?cwRb`?AA*nvO%hrzKj{}FH6|?Ick~>5tR9Mde zEh%lJ)X-R<(KxoMCQ2_r(TdDO%3}rX+MpfQTwP&tbzM(|9WS0*i$&6U->B{aZy*Jq zQLA5u)ZTTpU@L1LaWzlL`H8Q{LI6+*ylm+P{V2v=oqx5o-4r?;((Vg{K36YTIW__< z^Q$!$p1!_Pg`sloP_K_H`>?@@WGasN9>s$*SJm@cCCx}KoPrUyE}?Me!fhC-1DaKK zW-#iaw{qaPDWL-3YA}to4seB6YSocxS2uUvA%FM?J%TwHxgm1qfssTphcF(NNw2}3}!ZqTG?3NQ=o4< z8XRU?U=w&sT1;G;lv)axHA^`S!6plzk~lS|vX|1CHmLuJKvU{~5G840rWfnt4`#G|^pSr_z5=3kN%C0TZpM8Vs z-uIEXQJqueL)H2@#h^;QO4>eTR8&LIAn;kboTfrK*sS!qUvkN~N4_y-ET-C6Mj66u zAp9`!liTogJUL}reOKtIToZsqsQoBAEupS;@Fz*`h@lddjI zbEacSg+myw8K+V6>-KG&Q+A@=oLM_jj2rezoKr5t?3ZfgL-hx-f^T2)k4FlS)%IbB zh3SUSM{bsfcfwuV!4gwH(gO(9;3~Y}AkT0_C&^G?pOd3C#|&T|dVz*|uz-DumvKU#n>Ym%O7r8^=?Z z^5tN3h1ceG+O>mK6FJt&v0p%-l%l}jh3K)zLN9jSJW{Us3#OR+D6 z>B=7!?V9t0!52RT5f7cFpfV7N6gd8|DN!H{C{LmkZUu0*zW$q^OqLW3x2F$;Vo(NU zJ$qkGxrwA4f0Xn}+Zd%8+iP@i?PdQdsQsBiLUOt6z@V+uWuk4*(Yg1?;_u{9NJRp8<=68nP-uo(L0u|sjva8JK@5QZvY`ApRw_UZ!o z3Cv~ijGFZ$jVvju2^P{0%M{S>_V0*nu`eS8 zplL(6F9PBL^@%GVR0K;Y3tj&2k0RTE)&8!aVyG77&YlNFk3CyjZ6v?~KDuJiYD;qE zG3oYYTS;N81`<{E&>C0P=af8ew#cCV|v%%Z+l>JouqrPnUO~oino@? zxa9zFLkOJ4poP;+K8rp3QW$t2MRQ6B>1c(K0VgjwEHr$*3DpWZn5J@j5zXxf4un1XHV_%kyZU4GRuV7I)+SKKUW#37SqqCY zxikspxcf^Vi=w2ugRz3QvT?6UdE;}L%23$Oujn5_Df<@XEpi+OZ%0~jBz(y=UzKc@ z!GXuLltz?owO;ePOgf;)h%_$D;BqvAXT$CswB2 zA#`GeFZK|)<&on1F3RBgNS4%xZE{Ot&br4r!7OduPkIqQhCw2@VKq4h2adS0*a3K; zXapJAUjI}nKc~_JoPTfI&G)#*|6I!x`@h*(VK+l#yMGL9{A-6N729Pr`Qf-hSnv${ z2tfsM#FNoRP{jR=kV1nA;Zw;F^vDnX;;ceGU21qPZ+nS<`q3y8K}bM&`%mZahkW1V zLVO?+u_lk_si};N<*RpR@rpliYx&ezWt=<0*&ABZOFmkPzXkgo6xp{Fc%89I2Tnnz zBJ72S~6LkVOd)YXl2$Zt&`ZqbNn;Lny52G6|PIVOm0#7_&aUUOYNu@Is~4@=Nz0_$L$9(?dy>|+m*PjLMjqI1v`lqPBe`fT zvp$E1qS?~p!GgkV>Ve-f(@{19MS#bNMTGsKmeTfeXAdtNEIeq%n#JvS&J>;s{ct+# zXCv{2k~WZFP`pQ&M@Y<5?SnQk6KTm%3RDvNLtI)ZLlm_& zr6zJAMidCRA6YW0xWs7!%Ui~tqHi1D*D~fG2;lkdA>am34o=4=dRoRoZ~a_DW38h3 zMjvwozfB3tCP(5-LsV!vK@i;qc#q25(59!Kz}1;yeZ@HP&;NXTmksc~Hhpgc+P^(L z+W*%Z_0Jnhz{=Lp^8bu7h?qM#I!PM;mt3W_;&+wYn+8lk&@apvIIIL&qC60SLIKWQ zc_=T6j?If}E}f-8nj<;EkJkGJ_5{kGmhm5g3VS+#fr4XUiM>ZIE=bpk0(|EZ@y z7xXP*WW8J=(M<53SK@xCbI@}i#zlKuLbHtK48ZlPb%{Tf6W!zM0gyXM`&Y*xZsbS+Yzko^<6`BL z5m0C(R&jHIw%dXb1keG9DV%U0v(ETiLQ#h?^vks1p}GcWX1Qf2A!RGB4ST^xZ*>bgOH678r`b_udli;!+6p{_NdByOrYv}&E;mUTnJccIQ{ zho{0(b;bBlAT%P}HPR-rPGgEJh?Vf+*F6PY=8Z4X4_ZR|BWO$K%O6*M-#{Lol#@uY z%10WbagoqGjNxJ5S>qd2BoFgKjSHMEC&{8t{u#lLuX#G3>RX$MR1d%F39;Z|j)6L>3BhIAP243=ham(CH4U)^b z1CJdofds<2fc^l>mJ~+bN$~BTohD1lxTuTYRrsjy#@YYbJE{Huf4=_fXbq}by3QM6 zeQ}>OS!tsgYmtyC*!9`Oxby@%TUlAnkNy-ps+rJC0x(;qFAxPugDPG7yWaH8CVKD~?5ZgY13pk3U%`6ANCG#+;R>u@c6yMFur`6OxcbvIA@!)2GDUw$LOF)4L1 zBO$5zp!B@KsyLw_DM8v&AxpjveU&Al;c&_!%-Ax?YXBQi*D96Ic`=@1;UP47;AD84 z!$Rm!A6S$SAC@5>A^vhbkWj=y01Wjek!zAV+HrbZgr66ue?ahnogosM1BpjahQ35a z`b$vOeJnJr#5e>QWH-fpvgSaZhY98(T&=gJSm_5mC3;}4H(>Uc)d4+m{IbvjV}<5t zMDCdQiHl)i0-F}f4I01m3EK${g{tNnsW71jhm!-arUza_k`^tLw^Y z(N5et$G9Nz&nP7=urpmqbALZd!!Ey0p1zT1) zEz_wjc{xY&79~W4rgh_AA*4iPXA~(!+IbjCNh>k;L&=yQQ_K64mNRqGla3HX15YP@ zW{`h_OA;>jirlW2{}EA`3h?yKwv}k;WcZxmIY2epl>l(88pd!3kR#_X+Zkp;e4f<0 z@z)i=NhAxQFEjJXJnvZ+~YW})%YOm={g_SaOjkJ4TuTl6Hggp>2^e@ z*_)s;hW&O!SB68L7~D{J714VsvsE>)WebdoZ_^kR!}?ouyac>ZwIs+VlK zIg93;+t0{IL7!4h&$A7`54m0Pz3-|cc6#0y3DOyc9;=vmihVbM_^yX&&avMuw6}0k zFGatzVv~?L38VK8Tv};1j3KK@$+}J*IETDZ=U^3ny#_yZ?Wxh`o=Jc7EyS74v0^=c z8hak);sdf7#>TQ;XygWhl2AyPNSAxrpJj-%1mdP=o*IuinS7Sj`6n{Yrb*+2`zAD} z$Za%#Q7SL|EUTB`T-qM8ra8WtDMH9j`OXixc)GQwVE513S8S(fLAF+LJE8Quc&l&y z^1sZ0zp>R34Jl}A3&?WIyFlIBv5xf_fo@RG-|Kn%%j`ZqTe2LV3HYXbmHq0lJIf;A zm@_no2kg}88-@I}3rPlVVn%on`IPo~QqwZw1(WJ~g3P4wH^rF&a%NvFs-I=n0?}Mn z-VUD}cRD0fz4fFnp%lD6UBq6B=DB0noibVyhMC%H>c1Mg+!;u}_C(z~C)|3$5WL0Q z9{+s)wBF56Ih!~9@gcr?z@9lm-7JJai)nO~R?JB$LIica0I}0aVl_5;fY6WX*AQj_ zdM`Z73!~c}asi%aC?O@>vv$brL<^k%Lt@=2$^%|U#BAQ`E%vbJd;7e=c@<;ov)`WQ z4gZSWP5SHXN$+}%>QHks$3JSukMY7M>dUvyEYhA*XGHHJp}Tm=gh8h8%E)jOjWa{V z99yJip@+Ze`BZ={t^YecZ}5-wyw1Ph0yK>6-2YRBIHaNNx}k>gcJ7Wg6t|vPTTCw> z4Ic-ko}H?)?=~j0#Vs8f60OTA-m@BIKSnl|V*&Kqi_C*ydxi23R!PKw_4+}@0syxs zmP(60=SR>W&$s{d{Ox*96!_-_?~ALJr51;M&B3bu9*5Y<((;BUM{B`~n0#YSM@vDg zZl>*t{N7jIjspbA&b=g)&V}&@@JXsYJNBKzNYg21_Yx)oP}E1ix5$=ZtI~GD_UFJQ z204)NEIiM2r2}NSo*HZb66JfDks*AB_6HQ^=j}Z#a2U6t%?NqJKmo$2iF3CwQmblY z5^1Jsx%-@)dm#`$v0U!cgU17Zoxs!=>@tJr%FdW?y^$8CViG>c)&sHOZ04KfE?B{C zoRrH_;zKO>iovGwBnc@u=w38ogk6)fWa1X(gQnLp*~I+GaYUmSYDsGeQgVX?#@@A@ zRFTjwNLvk|q6tLslwGAMP&!J^u;1QKk%J1jV(zUXd`(hN!mlLIJ|@HhZ+*p7<4vV- zkc`>=?LZa3&a@I^H&w1Ew{iQZr&(`T!muGF?}i+V<~;%4kvs}}V$R?8{qp~841&J~ z@l=)W=NMg)o)qJOoVF&zSY%?qnT)s=KkLufS*yksIVSUOStVYgQx}iECIJjbFexnN z4-thK4HWj^YQ+G#{82RNg=Xh&Td?4IJ8MUxYn~}1&M@mq7C=AvgLWMs)-%LJGRIHNHNMuOz)R*(ggCfh_XPxaNlRV*F zakx~Z4qgeczx!jqJ?Pam%NA?ZGMTFD97BQ3BqQ=qE81|>(vWe~8t}wh52Q6{9bm?H zN(ath-0eseF!_S8RTnV?OIioESRN--hhlT)lf&3NVl&70677#`qR!KwbY!c?iMkJD zN-0u1&N%i$={~;Pmek@*tD1NI1e$Coqc>CIf#qa9_4iC7iqAfDBlXQ&uPvMiXXSIK zglgEb^C_|^u&3a?!c)2GdL4btbcTDXaszo>z9+=JX7>oR5BxY03|;sDi6{K+Yh8wK zL=y6q&&)S&E&0!VQje(YagKW+ysu7i1sDoX1FG2LON8Dn>(3Auuv|T0Yi}#Ow1EDE zO8f=}y{$pNI-gfxX-`Lc)00yCuMQ^Wcqx|W&#Y>qILDWg*L9Al6=x`O#=r+)-h+=L z$Y+O&588GflBeP00|(%m6!hp$e+hHk1)apSC)*R__<(SJ#d?0DzIgHi@nFb|S^Q_P zg8kk1izFy3AuE;iU841JEp9G6cqzUe|KyPK``2Zu&u^h*+_-P@FqCs_hjt1lBq3@k zX$!B5iVI$Qr^I*Bfa)A1^K-N9oGB(j)`vNbE-0Z}3j();zDut?#QizH?3lREDl; zf=$LXSNnS8h%y6LD=8+vo4O&d5#UVUW~ zHrHw!G+K%64V_?=(Xyb%83%0r@ga%mWt%RO%Gs*sdV|*^94B9RNl}JwA`TX^(YO89 zT3&wWHYP;ZI(j7d9_+Nc(^2mPxkt%(i8hp#*m#Y#64W_4`TBK6_j^7{RDHbtMH z)-cHSF=`U-LqA71ZRouQ%iKWI<&8F8#urQSGzHVO$vmO@yHXC2kJ+{bL>VdGWacT; ztQk5#9~h#-3PgZ&a0X<@Tc&he@1U0&pO&oMS~j%qkD=*X&ksJBzfO-09Qc)m@V;MK zt!16```oye_vdfzv2hW5>(6&YA^5%R{ol79-GA|~_Fp5KeB#GcW*+D&T4!8DL* z_0-EjrFo6#F%IA+_|N#Iz#?&1MZOOfy z3>ZcsT%ly=sKO~a?MZO1Z&+V-AA?hX0_oXOfA}st3HY?u+Gw%l7L%mKA6#)#KZdFz&fVX-e=M<7G)Hi4D*0s zE$QuB2c@l=^_QiU^sULxewiJ|Ek|JT6&v9=Ac_nifP~ay(hlNKPMxSkbBHsHA5x`% zz}}EZ9Cq3EkmuA|y=QGbKy%^io}tG=G`LSOw~7BYK#d8MllQVO3+8B}iXhejiZG7# zlxV{0T9iQhGU=@XVfz(HSP|KrfzV4O*fN+z0}pxQNs-gedb& zJ9ZTY{){? zORryfMmjIwEsg62AS-Rp<((Q_mJi>HYrLwH18rVh?v^R3z>PJxsxM`!N*YguXsmX) zy5z^I$aSq&JVBO=SCR9RlnjQ-Ws)9PA!SQ8pM2fym#YC>P8nC@N=YD8Gb(3;oKlZNGdkKh9tCv~J3fKx-~&`OQ?{V2|tRuRsQGdGc+R zP^X`EQ~u2NmLme^H~K4$xi8!=zDy*gjdhO?bWBF}TPs#Fu+wCzZP4liROy%4jK=6- zOgo(0kvmtsB=;ZnQyXtIg(i=r9TvnC;-0vC(Z@OcXr6?M#KR~(GI?- zU-bt2UCo;&gYIYMu7UhV7Eau2FKwPXN#e(veU{9b*~3~lUZ}7^+Ts|Qib}l^mR4Ra zxJ(9&=HbK&6hn~yOo|81B=yH^yO5ldD&M!5yUw$#f*Wg(f1-xOEqLXKdFR?JEqH-3 zovN6wt5%Pv>V16dyCT_&fd!xd`ci$t1<_yFgR9@vxL-j-Q zr#;IuHzOzK`S&9Wu$-@<_~Np%q?7X-T%hK` zJf=$E_vj^?DVc{2ml=(A~F=#DG zEJdN-!K>8N*2?mj$Bd=cBpc-xLQM1{_|o~2c@lD%A&p#2>W)GxRhbf$dwgoi-;vZECQ?CfSRJI`032{fU$X-}oyhM}T8;IdXQT=+QS8uoZI+|d z|CExb&@lz5QpqcdW|ByhkjkC#e{UFI-m>A6I+4lg(IZP*MS^zec4FDp(Z%wKSfn`eC4%`(&0k$Fq!EoH|3;jh z2t&xzPIyY_fAQ6*jZun3l2V7d*g#?Ni7;hUWy zD6dE>77>gwMzD?0)xqxQ>UBi7$d8dEzv&zSgHW^!Oj$vp>anNJ6{Ssm=orIKnyLnmIdzw<7op6JHakjQX*`#ov9OXTGT zhFEb6r@ypv!)bmbqbf5FtwVtw^t74(9pk=K5(R@)6dL^sX~iuafq@u0&o=7PbDrMJ zQAW!VgFgIbO*Z&qKOt+L(bWG**Qi{4qUD7y)Xzt#dJTzS=0FV}HJcJpvgC)rM9CbJ z1_vHDA9!jsDl7BgMySETU{q~P&qZ<%-86@u(ONr$@Gh;hKXEAu4?eMD8$SyW9{K4- z7RRj;>ecV^sG`%!N^heW#(Jvj#TUm?3|}NkpX|T)#LIfdsrneua^)TQK7#YpDh$(L zsRIaPN2%J((s;^ptQgCUdT<`h;hKAoblpwI+=rm16Dza~`rVIKK9WQ?f0PnU$SWyb zFoWOEzPF*wyJ3-m_X}M*cyL|w9&r3)&6=mOAAif=Z8(CosRkV&^6)z_vP8BNd%ZzP z!3gpvuf^p$oXIM&Scu8tGxz9?{8Ru(eO4_^SG*DCb2iLtfCk5l93v7wx9zS={`LXI z2*w@Ko{mW)suvsRRVMQla{=|d6NO-9>%EB_2nvY>6d4+*vF8cIUzZP*OiLeo9 zoMO)Mks?VZ^pWTX$_6(|%lqw)AKIbMVixC;a+bfZuJ1ob8zt%HtXyJu1#7l*Jz}e3 z;U1;lEC_oAQ=3A@PLjz94rHw}0jmIK@44?d+u#frijI#(dXZ*F!I-sZ&O^Zr_oK|e|GpYx zp<}bR{iqk)V`e}D^bh;ytBXdF^PFn2k z?@Kdr9HoQP?_4_YAF%_qf2Vu@S4|Oj_|H6mq4$g88xkl13aO}Aq|RfAB>qK_8@QtJ zTgAyHQjn|G*|_1u&fI;*WH2@Z1NpcJVLukzoy+J zI=XeY1X?>=nVxVQj*b~ttX%@LTKWCU+N*pwBw|3X;>*jfsMMHh|EP(BHP3GnTVul=(g-gF zG>#}4@&R5{#$OSJ(5q2W-Fb}G;}at$YoN4c8*}nw!RHE6q9`&Ukbe2RP-lOxQY;yK z5^=H=|D8jxZwMMqN*pjrCWIhhEY-yQ?PCJgRu9-&MyG^@^NV7F@obA1P(~J{YndK- z%C+LIr$35z3e8v{Ws+#TThkTy9Zbd}-KKqr#vL>RRCCSBa`byo>s~>>Tm^yX9`v|P zq6+fxQT^tb34DIY@_tP>3$9ZX6<~KvHLm2trpZ6l`9(^P?9CRT1hazkVx{eKT-uSc z0e9miJoFh0C*W7J+^rUb%cD|WVU%i{aGH5K<$aeLqin+Ub)d3CujBWkk~wE@Brau@ z3YSfjh-c%z8MnM^HU6#;`n+>a$a2^s&qk9`<;;70%0(Bf99;LXf(BFESaoo7%oMC4D%9&%GDDW;`jq^+2X}}X%G6Wh z+-dbv<${NN02mFih8*GA1bq4V+&H-@MYtQCJ_CdQYrv(+Aem@Hr*IWrQ({DA#?_9K zKx6oQU_nZ#FS|`sc+W1BpVTd%&okuo4tv~w5lRpR3YCD7dG78Dy59@n0C03wHk(FC zTTjytPW>|&dAItlP0t_1ME(-$`uuD;@al@`EfWy;co!*adB~4pvHy+-XX{`mpY2uc zT-~ipz5M8dE7)DS+>HwkDK^28EnY@hR_eEBJzzgK$*^Eyef-o@pjqk(RIiR-A1Iav z%swDX_mZ}+aLZ$TTDY)Dl}N1CfZ4=zqh{Eu3Modtrb#0{Q0|}gz;}N&%76u;eQOv)cAJ`imIEj%YTh1n$}Jje>v8Zn8)gb z;4D9D#+aeQWf8lCvSH&+QNWKt7A9>`YB!8du zs_S6o9_bTOm}|d58qWN3NTf(^?xcBPSz!Ct*?a%A<$pancK}g4>kU*a$MC#=yA=->BULN-Ib)5k}Ge_A;aN zybKdsa)5by4nhR#>AvvR5+$hcNe3Pbv?xU+HiizV=}9fHMq$vyzI`9@pD9&wu#iZz zGL>fYg$ID3IjAXSwUU8aPJE^I~Hm|Sm=c&H8t0_F&GmuJ6} zl8}i{QkL`dS$ zu-J3~@k}Qs123DQi#ksSiNCmgMFY6RLh@6juX1WuaZI-qVI*D0hmQe7pLrZ?+N6bL z+EjPP!A{9#z%yw`ne=gDU*7hzi9t$a&)QL`hQuQeIWUJP&5WYu=-I9WfLlHK7N+!O zdXPRydn|s%#!3%99_uXK)Y_O)S$(>OZIxw5r}Im{!i)S5E43y@(70N+$bv|w>@N!V zN@X%KqT~&;p@Y2+1NN%y#a@;JCuz$-dZ;EE0v}ziJJ&=E9g<4bKG85ykw(a?O zB#aH~Xq}a_y-IZyJe=V>4V?xM)2cGT@5k-Mw=5I$OSVngJdEl{f2iT>&^MdEWRVp`T{u zZQWdf3fPaXuVGVprBdpdrPXAvzG4Qw=$?^X?YYLHrG;jz3u=S6ZeL@R+qj0tbKRKX z@yb_Jz`QV9=|QYOXCDYW^Ubdx&0{cs?ORk(mzC}g{wa(eY^Lk3T(#^a$hxYl`$|G0wA+Oj7tBP`I(n2-B&k}~J1 zg}_Va0X&WItpKa1v$DQGG3gQ@dbMv<2%o=y4p&nOD^zY86{5Ge+X0@@#7l|O`{Y+Dh7d3|Bg(V~Ym>P$uJ`y0+H6X4t~;&rK0evU26I5S&;3QqLvL`^~6 z_dP`a{SgDEb7hVI@s;*ZAEmR9PA&VdZ-yvh)*rux5SkAV%oo10G^fvLgGJBC+m!< zB!(#CzQlF7U98O{VNEw;oezu+4$y)?(x{6Z2;;_!Tom@!5snq-!bw^6giUQlZT0ya z!6p8}q*|!`mBG3Z_(83IT6e(s&SDO*V`B%^4CjRKj z1-QCkM&b`eQ_&CPx@z{OYIT?Wv7v;fnOw8f(baN6b(xEyHWy z8Rly`HSH+rk!`Ze7Qy*#Ea;*|vOFILHSpc8^9ZIIBWJn#1o;f8c%i5qF*8b}FqdwTiSAkXV>4#9dU6<(nG~47=QmFMHe_={W1yK#ZC=3j9hRGec{Ur5?p0{ z8RJ%HjD3i7g`%Q>yg^=hXl`;YyfDB=igy`;q)x`I2cd;YFvp{DE#6dkcDt)qw@ z^*n-UwJndp_WbzF($6uJPg=Mmb6OG6&SSv?|B*-S5)1{u^KPs3{zqG-!N1dDCF~qM z|5Mp1Ztvvg{ol0*>bj~6N+@p%P@$!mwAf5uqBS}?6b$*KN2F@$#?VYqAp;u){Hh`g z#Yx3*GjAjW%1V~ETSP}~R5i0#oD0Kq;n`b_JkMvIoSj)rhJt>O%u)DYSMV}joIcie zYI(<#hqtC@tCui_+Xl_4ZkV(7Au)lkMlOg?$%urp_%~4cq z>+n>iQa{jS!!P_NWoy*a!IXW%y&5$@wPw)mmk7rNPD@E)PQi0JxGrXn^cXcFN&ytK zvjZ}w)GB19B?Tz{acCim;>V-{`UGAD7l1cdH@z~;nP3pID9WY5tXUJpcFFlFIj;A6U>LB;O{0y z9*>B)9Zm_t2ajD&TV9m>1D8D1Ub5$s@~QTWY=X~{ED;m918pKWo;REC8U*=u44W-^ z!wTtvm;;@3=5K6fP!JVT%%OB5$r@*gb(u`iiXH787xLAKQsT^^S%8C@!g8QR1Xft< zzVnFgcZEpf!nJER{EfL1CTAJ4BH@qfDu=$>vBlO{U5{n%OF}e4RpKn5jfT{7=B^he z|2gK7#^%zqC9B{qQ@FFzqeSC$q!_syCQEE9<~#Z|Z--jvk=?9PtrW!9>r{a3=gL&B zFx6HoI*+BXXc$q4!sv!3SIT$RUgajts&IZ6HhSo=ujEg+2q&q+vh{lG9HW?uZ0UBP zp!XNHZ`RlYfEs09QAZ~%DDsPi1ri3C^kr9WLrE>k&OpYLP02r!ZZ)zM_`CBYwE{^U ze!ra$_#Iffz{e!#Jx?TJl_a5Z)X8v9$yNX{w=Tl(AJ#CXNiul*23f}XGn?axo9XqF z9@oiBkJZSoP%QivFW1UhG9F-isSvj~*fl}B*u%6T~d(LUu3dhv* z5Y8@qnfPF~_)rw%+JXcmMK zX@vc?y+dl7K6_rRV^mie*&wrfX2d*=+D-1!DsLu`Hx3A>0+vDZL(k0(%=)S@0@(Va zl9%Vk-_!Fn)|p)JL{|h2nAv^tQt^mLPTPfy*`PVB*HXErnA6}QIGV7;0hXk*PN^ix zND~<)o}<@&(!MZ@7Ko5FVcNW z=>)}oXn0qh$U{f5qkrWU5FN24G>~tD#1fOo$xlE7qE3loE@_=S!UBsGZ4sA{$sfsP zI~cF_$)_Xb?$#f=6`#PWRi49&dXjqjIX!7wVwl1@9DD-%&4zfXclz7|noK`O1?VYt z!hAcKb*)hbTfufP60w%*b1>KFYS!XcuTy?gvg57ejIvR$I3>3 zOB<}zIUY%Fw7V+SF~DwcVA05~oQ$q6Nj^^OsJWpy?-&>&u15@krPrb_g(Z7U68&2$ zO>7_YmsDELU&!+sqWeO6p-##+xu<}O`>Q~rwohh?__G9EjwL~X6e@-YZF~4RKOkVh z9h9viK$@{WGAeK$Ap9(A4o|fECct{}N%VG6?mY;;1hu8nMT;f9&@Jmp$jCru4pA+Z;@v+!X*OK~z^1knQ{FUPqnChdx~C@yXV zN1SNM`9;xVV^}F$8oWD^yK#R1djIFwMquw7(SSGk~KIw z5)N`(pS;i2gM|&Kny`zD^aaPD%83n?5T?|K)Ur~0WqZfYL@BX-|EwirDxj!xFKhXz zGQ~EPbsN)isWVV&XRx`~~P72RNMJ67UZmvY9e^Q)$K+1UT}CUSN`JQv zMDk6gdScfZ{C=*rb^y}Zg&{;#N)a_4Z$}MB=7}4rrFIv=H5x=X)EItyJxCvjl^N#@<~{! z&slq(2UtyPivm-0k9%lLa}&54`2M30!IkIumrS8D2>0*!F7}#iCRl&=U&dp;vvksB)&C z3apQ;kUiR!BQ{vY8e;EvNYAiHw}jhGY?h5n5$%S^sgE%)U~$ON@?J`_2I>H|4GbaZ z3M6WnzM;RweEkqy6|nEGNwgU#_a)e#Xe26Nq#|@MDJ2-#mI5iPmOl-B+nAntTGxT^ zNFi8^`gD|8&eOvBtww4-mIqk;DMJd^xMN%nlj(LJ1ti|F#jovnsuAVWcrm`5704k6 ze{a;w{3A%3&e!%QaQY8ZOHP}vWyQkKjx2Y?bEwI^Zc5No3miXuc+I94an0!pJX4p4 zIHrOkNUzHi0~vvW$fZb4%t(V_0hHObS}c^~mE1o%4LlJiEla#i#~ZoiPJvkHFs{yc zdkq#+L9jqfbk1{YvLfk7!Fq1aM>|uyjhM$%=Nk-pdwof0>!85-sqXG;sZn{8D1O$= zmrrq*zmA29I7a1Q&!9ZStOiBcq0T3i^HqYec1=h*p)Fz|kGbrXmA>#tW7BEAJ7H|e z(!{ip^Br}n#*Z9fZ+9Gi1L^KpeEuJEQWv|tddS5VkVyyJQ_+#|FZyi{eAI^*1);r) ztC;0YKrcLLVZbk`J8OD@Slki3_>LO`ar<5TQyv9oCW7QVp}^rso1ZT*$*UiK)WsG2 zG-sEu=3;&rncdXyQnt$(nj%}h#%hT*mb|Bi9BPfr_g#Z?AnMN{gPWuO92Inf!+zzA zOO`Y2$YinVxP^J_0hiEmLj^N}7QKWI&URoiFIwdb_Fq2lE*ne_aKj4k7|e#|alt~) z>j>qaHOy#vy390I#LyC2^e7%wls*uoGCPi`UNWbCy5{V{+u)=WTmu^!qAw!Vx-LZFC@fr#SUs*9`Q0n zSL>JUqQAyBXi#kD?7Q#)678SHH|>ADsr>g1NJH0kLk#0h!=-Xn`F$56KALah z=y%RSj)WB*YHDsVZEe&1L7=%|wKc!lVQ{2A`JC`=SWeQe3yR7L{$u|KD(#N5YB05jN#x9QSM zF=r-ogYcUz`y5lK{{w6V`;60F@7;S$Ld7mIc$N?nOrQZD5NONEu66j_LFhKWS;O!`N0)!glbXuK(+nY!i}p? zTFk1TD_gbD?tDu5JA(wE!yhKp<-6^SPxF7;F}50r78VXP4Ezw(z@}uX4C#$kZt?{5 z8=!5yWdc=0$7_nK0!`z!riT&*+Z?{V$$;JnrAMTZil{ATK#x&WkPe#Wl%A@m{<%r0 zLKXx+=er#HN-BS)Ue47FZpsB$eqO4OGX?JtR`|Od`^pwq`XRK3wuS`WU;x#|_I8KL zqS)}5FSzIfBww5W(O%UiKYmYm8oHp7lXy>b{Wz2rT8|JN#^*k1kPG)QqGnEIHTn7e zl+jrlH|^jC_YFTtLrimf;PF`t&SK|E-7UJs`K06c>&{5$hSr;A`!|1zMTO`c>}Y?+ z&>XVGxP7Q6e<{u_lFksqwMBE^xb!c#bfA(QW?FtR|t{r*j2kg1Lf^zrjXo{jwh<_EOslaWRPw!f6f`3d>|Cc-=e_=EK zzxr5hR}6I^|2-u)B2s8wWbh}HF_8iC4`lImW=jd7Um_#ngFPtI%o4}k7PgYYy*1_lnfC16n(i`r@tb0Q=y{t(jJ)*9k+x7ic4bT9&5a zrgsAq)W9jGG}|T@Gd`#9lEWOqa!l@J1TPA57JReeDw{rsoN=hI-kTAuSuefU3qT-HGDYDCOQM*+JKwV<8LYK z^UyiaSN$_}UOv)5+HNCVonEQ*Jq?~i@l(I_sX7vU2%_)Imr?}a?LPxj@|CqCX#5*6 z8Fb+!w~nnqo9;U0H2m4HxoX+Q3~$a_4m4~5dZX2J&UoZ#AY_siK$lHbJ_C7%b#fh> zO)fgfo%OTn-SA|WiipD`Tt{MlrAcIZa~OtZJc)*-aaORo79oUW1WA=ptzq9daYMaK zzpIx)Zr5NuL%XHbM9emTP?Yr1jSoxuN*yLFHzGnfp>EQt8=pKLM;#sBSn1Ly*f}pu zH@jY?9~a{ziV!>nNRsFLcT^5qcPN2`H3Y)==h7eyN`I{pl$hU9R=u%PO8RwtWYY+I zm|ZbZYg%75H@)f@ij9iESCp`UU+eT-4D9cidFDkhIb~%IM?dJpNy5TxWN+DkGMjR0 z0=Q}2sOnc(>4{Ebhs33}^OMn4M4zQ<<42Fd#F#7OrdJLpc?`l$CYahnfS+Q@ZsFI_H=>!S<2y-)_@^>D1%y)w zk8={zu?WHO_3A3K=~0^6538xN!De2F1c?YGtGl6=5^xr_ustWxCmXBigL=Q@jmOlt z1siW`%_4c>dP{i1D=3{{R8hoRyJRyINq&zxfG990>c(tIv)K^}e&=gm6PmWM#_}!< z`MXFdPR&&DWXSu9b8*aQt|;kqMzW^mfrTeW zP#bQ=V3`;!+wOarxgL4;SpEpU8T2dTCt>bBBpYFtlprYZhV3OMzYG!ISy+x{+!e1) z)LC_qi_`iL5sl&pI#iCPd`lBQ-(6sE`Fd-Oz_?q8ahN!Az9a5kj^k?jN(Q@-C8S7P zjgS1o9Wn6`+TlNO62)1vgN_=(P@ox~Ov&A;@v}5Iaid&($t%ldaIv<{DkX4nl5-f% zMA9W+7I;35->IGda#9<@pfev41xnYWMqRUB9#&t#pcFZDUduO;CriuwD5Mbg@+E&J zK;ii?`8F^`qo!%P(Ajt{b3;p+9n@7=y`iPw6!X^8>KG{fC)&E0Z&dPw(F{4|h$j0C zh0HE5*Expjwy@?kL6MWuj>zlO&egt?@jSP>C)y{K zX}X*nrn)}d48l?k9M3SUquM7 zS~%GK9bL_mO)%tbc@M@zjuyXV^pr!v1DA19+_y6#W0Mf!;~VBcJK%9 zuSWBJl!tilefn+t$LZJX-$wrqU&g~B4bH8i1^-%?$!`UI#rEfb0$GLs&zlfpFa}Fc7Hu8DiOtLkyb>82s zv|d0^)(u<^H{CUuriHe?J5+o0*O#^!a?yFVJg%PznK0c~_F?vB#{VJ%dT)nhD)eF= z7LE#E1?aZbL(LWai*6XL}DSKltT1Y_Sl$XaZy`f9F z4VAg+S=RwGwI?gITcDUY6?j&gg=MlewJ9`;5!4)*;Enm?U3>c$_ZJcLt->;z`HEvb|VgcG27%w8(O%W(b~%zUy8= z#11OM`XRchPUZG^A~jhjYnkMea1I~gZ$61Ozz}09gN(Ez1~TcgdEc7M{X+F0mcGaGy3&BbT~3Yivc9b5D)%WU`WH(eOXsGuPy&JVX#$-6#t2zVwqLAYxI|uqk*Gr-@a0VlGfiMlMmTdANaxr1h_j+Ua9emPu$66BFs%k-kMCIKkUwY=^)~i_gm9Kk zUHtl>z9cj~l)UfY8rm*O!p4m-g!@z_AwbBwTo z(%5oQJ9YDJ2i9ba&R;PvB?hE<1HO*m2&^6i7dh(~z7Ok*n5Bkn`sX|X7iFz6QHVdNt z{&Uru@WgM0i@|@~{ZVJ?heUKXdyq?}i*e#!R$Jv@b%{y4W})RgcSIwqt82J1ZE5*1 zpZ>QoCu+?t@5uKQe3qnP?@3kw2$d#wBHr)LPV`zW#r6RL+w3!~uD1$(GVtxmF!<(h zJkDyNcgD6Yw36K}7f_Tde8f4k^-g~*mL7M+RZTR8dcz=En_cc{z(rHw3>fBCw6;`W z(A{#-%OLy95zJn2L)Sj znkau-RH-UuVD#LW7(n6?73QCh1EcAUb5?o%dsvRc!^+8@<{3bnpor~djJ;~1{YYw zBy@auVf;X75cq`!WFvL^C&>S9koQ)HzdcT+X1g`c(-!%%Czy|$lFNSo_JUh0O|~V- z^`2$rz@Urn$5}6@^JAsn*R2uBEUgZ_Rnoi9n@L2cJkU^@SMb(U9E6lP1%BZqN509) zL{7qwsEFeP?8$k3Cx0MTMd{0l??)wY*4afP;H@14?4VX!KC{jrfD#W+d8IA;PgVUS zI$M0D`(2z=C}M>aL&6Yp$ z^|yeuEMBIJ+HT%5cV5t%)~t>`V+c!eYBOEt`urrwr?zF%T~i`vZ_vYRL!-N@6J$Pq zY`WV0m`Wxx%qe^kGWt1`tOG2e>}GtxadIKxh?Ispde`BDoK4Hm~l zyMFsCRbs?}G^ovsRg@t!J}^PFIBD|=G7r*`l@CpZxOYH)MOii&j#zRl~robrJ z)@G?p97dEoTL|(U@*<`hAaRJa6u}>Eg#RVNX=Y;Qof(5Ks^aM4KLoZ&A7>QzSsN9H znb~{%5VH>_8W_^~!AZ;T7BZ>F8w2_~P*mh$=cY5*c?W?>$-PsM_7uV3b|x+<_}z3l zGKN2)I_(GKnHAl-=#Y@jX|T6%KDBv5ux1T1Ni=ycGCqrCVw0sJbBgmx(!Yi(;uD(0 zS#VU7k8)}k%vRHC?Cec)i>)Wgona|JL49PV2LlvDpY_r<(~b}fhUo@~j;6S24rwL> zUJbKdznOhTgr>PPKer7S!$G~F; z{86e|x+#{b{bpjIbu9mGke+@;E8h(^wAnUM8g;!oTBTIz6a&1Db^cb7{9y_q0k;6Ng8&zUk12e_hq!T?89W-t>#QeDC&^df&WLcKh zvnUec-eBWypEHANQjjd3mhNC32PP;!X?C8Kgwmp=$mI9O8L|3`QLx2ZGi*(PD*s&~ zurFwnH}@${1C2Wt;c6B>cUZXaVlFUzH9??+C00}bk}pO8d2eIW9=|Qta$nGN#pD;3 zM5Ske%meUjcb74aRV`TDu+P1^1K1mu=C`frB!%y|JE*wYNnL73PSXYx#pt&k$*mkZ!7$%#rx z7W$e3a{nNT6WQZ=B)t@e{f=8qfyAES%v&VfK|zQUCxIKrw9_T^QDqHfv ztM;pI>iZVB>oo5zP zljg0l5U_8x5O?h!@Awv{Bi6VDtwe54usXgCfyZ3m0ty6!v*0Y?HErgu2W+@ZQg9PL zNjl}dquEhsNsks`V&mG~jF2u9$cfduw_@#6a+O-#&wPcAy?m3o2wS01PLkx;kj^TP zjeqF*vsOg}n9*tC;~L_9=aA}=9O|nR*n~0!6{XC0jVOGgq;kcTYDKNGzV#EWQAi0F zkIqt&{T4+J)`Urv0m7q&2#n5QcQvh3@^RxBh0J1UT>S$#r#mSrr;PXngfDj_gZ2we zX!!_6X(PZu6Z(IJ(Il~aB*6+Il7GzUT7&73_JolnP2(PnQ6AkDHwBZsO(e0vxKfWU zsQDG=?ON=X?PHC_|7KwvC61Ol5k_zbGx#xX_m6adqnOa++dzv$GB9+3& zabt(%)ojW>Fms2iAkGo?mP%UwJL~tCw+mxXoY$jkcC?=>s*-rHGeaUh1JGoqY z|MLAJ{)NA(-&%+xxy@3)DSH=CL}R9gMqNbap~yH%Y9cdbib`El+{Qd!Q9LALGK_?> z=1q18J0!m1%x!5NOf$3Qpv7tf6-8KESzRhAIz>yl5ILbuT$Q?K&FYmQTK{{kJw8!> z#@_q|Hrp_kN`N3h{Cls^<=r+zRt2s67BV&#_~x%w(To!s6V7g(a3 z)@ZcG51U!jFwL5IoVJ?qHn}DoN~}>qCs>8Z=t6kI6)v(S7=r{ejBlPTyYv}g(GD*d7CzB}1wc~-q_b%#QEutt!BCVVUJjK?jE=NVg zQ`BNG0#nTIX|ni*#F8}gW5<-m0*kcBD)KpZ*aW10ia}>YdoB4`77?LA%wA5%1`W4- zlk4?(2~4wY0%PnTot9kWVw>gzbzgFqQz6oV@(RUtMr+fAyBgvpPsoKFk;6Dnt6~;! zoCBzu_VOI`2no&nJA+=WBCOaz-8k9W8YL8+&_F1Y=AbM0$~!kQwkLcCu8^R-uB_*~oSQ#1VN-{b+leZdoziX<}at@S& zFNxTtGRQ(llzAkbIBij-qjOh=2Kfjxg6pCzH8%5OW`*E>KBepX|2joDTUe0datvxz zvsjj5Mv&l~|HRWI#)0(v{!=}-AZK+-&`2nF5A%nWBO~`rqLPxR7V@+ruCay4ZPpV) z2aa!7zrQ19+dbbFuVw`0>Eblj&R{jru6HQkCW>s8Y}!uW5GC<}w1c)&Mvv~w&B3AG z$P(uvJSI_hn5}kJk6hJy|E~?ML>M9EQinQ~VAEx(V&>>1#D%RLacjZ&@Oq0r!=~#d zIvrd*%)uh|;T;m*7w{7w8I2=*2+%6ay`g{mFt93xwO*nTfzgt~o2mvP*PQr_-fVPq0>z)YYpBGm}*q~@oHG|_eT+cDe4 zSd6A3xS>;}cJ|{a-hq?G@((h=>v&y~eYP>51j13XewiL71ibtSR`1^4PZe2$93mf> zu@VVz34G!=T;1NtfxfSQDnpUdJYSB#lbdwJe2By5ep4c68sPEP+@i}imw zuKx+(Y;S|*mL7#BL6U|PC7D3R5;u(Er`ycW{2`%DLKi+~&^$ob@ecxLQGX=w>mkCe z0Ko%{eKdbzXQ##;xkk#-SvnFVWmU#j67S^Wlef>b8{JmV-?ss|AJYcW29$OeCL?rE z^yJ@dR!z^s4o+g~`u3~J(+knE(vB1bMBf@~j%xcyE#E|{1lWAaEWkoB>6W2??=pbM$uLiLgVxBQ+cYrP znFR;9hBTj?U}kh_Z(re%&7X5yNBtgtP~GmBWJoVXvC>x`i zH8W45V&3$^y8IA=jc1iyLom)a2QVU@QPhdXRr3<#Kpkd;m_UUR@gYl76qf{kTa73? zk%VAXe>AaTQnKN z2t!iP_JVsA@ahTDF7bxL1_4s>E<%-790aRhY(fk93YCy>H=xWIXNz&Cl_7Kb34n6! zVhN-LH-ohMx>lfz~Nc$7Y3_a zO@ElIuY&FXz*drdhiHHTg@Wh=wxpKQv??Vw#qNjMRoYm?Tb?D zUAeqq)>3^CZ){c!wyqvg0Byb&)%aZ}qzt?E#WuLoFDf7wi^cIrQN)2nHmf&s?JH#< zPIQY;$cl6t!N&yE^+2JgYV!naHYzf`aTT~f1e2Ls>7<7M9$r;f1ajDnymB0f8?he? zjUTbI#-a{HskzLXT*kA;21`U_NFsYmq@lp)DIQm5%b<5rBTbh5ah%@Oag-y6>cV#) zd8nxq*PPO$LNf;=nainF3Nt{~k4g;)xFd$FA2f$F_xC&0w)F>+O?n6w_`F=6lXvvY zKyV3%82y0#@5}3P7F7qrY>V>!E$8C4h&%pk9FoIj8|^KinbB)>GWNSqc&-nmjs9qv zNt@BnZoG|FA2C-5_PaecCY%nloq`58dp;qU5baGtS6RA{P-~(Wn2e&wbhum+3I2r9 zi_mC*st;98urgry%)VMu8C{;FpM*!qoYZrDZist!hT9>NUHXCB6&!E%}WnGU;f> zBVyoz6ivC5M+Dq~iuJyEsnEVNSQp%()3GV?ItP=h?_ciCwG$s&tM93@X{~RRcSJ`h%fLiLlveFVFZ(ql*f;~0Eb`iIKGy= zof`BLN3Q)T>hm1SG_6a&%I|GHGZ?zDmc8{hH8MT9J)@`B4TL#h6@s>Jk3_K zJ}&E_SJ$#cL{C-RRMe?9K{~{?sB=9{Rc_)WrQtHB*rpiKu@GS7(4=jzJQ3fEna_Qm zQ=X)3B<0c2Ho&^y%sAPYKgJZPGBqb7Bp8?X9(!z%S0FOWj0lBieC0uaY5Et8lr}GM zZ;LOiGVLtmnkG%NX%cQE@{Tm*v*(66D9dImCN_@PLr>Hg(o&P%`Gj-8yPte{*ArAh z8=m-A1*{EJ-L*h&l?8`#VXMPYLSitvxM3`@+- z{7Nh6VH723myGaTw(B6IVV#gDgr86^m|V@R4W`$Q1s*TBgr?NhELcxJ?qoMdghH%g zDBu{~fJgzB$fJ?2AaOYEP=T;W_wy#S70Yx3$_*G68pTDB8u!e>gji4j(>N$rGgL4> z;G*f`{JPAENAO$Kqw^vLD&la)kXT>pDKoet9xpOuXM=?PLQCwHD|b)hq`h}P#_LP0 zQ5Ls5j3Z+A2s0+M9aN#&G7Q=3C}0M0yOM&tijdrfCm8 z1&jI(rtzNoa@&iG^X-;r=ceH`;r`o8owm2hmL7>(_+oTvDpCiL?drlQ!X0BN${WXQ zhQ>PFrzSrlMMcC)^upQpCa%= zvWT(m_ESP{fdu+N$r3|Pd4w-PL16jfMstbU;{QY${F!HsqL2KmoxE^IF`6#MhT?O zlCT$6xz4rVm8|^6i`y)eK_{mL8{28T_IKBf9gw@Pzkj!-GK%}+o1Mn#Z(e*yUb=mI zR!$JS-=Th#V1^O*mE7U6qma67zp^$}^A=tpF`u#`SBSfs0Au^H4a0d^0LD=HOaF?SGjlpu$w&^9s zV%hhIWN!!%x3Y0;xt$DtV#A3nPgz8hvC$(0Z3L151{EN3$x}i0 z=pb#`7=tJ#nFMGE)Qz2l>f8m5Xh>oJt2B4PK!RErfC3&&3+U-^62r{I@ko|Tjx35# zxr(r*FA*kdk@ql#FOMxhH6l$yu`lv)^P$Br_E820TnG1O&U}Mk3YOFjcQHf}yas)} zx7^g5%Z+&@%W~rP8&)yuT)h-cu2NxpYo_0u&7-O}h9)3)1WLk(f%vuYEZ{|v_w)fd z2J+-6Vt(_`hHLzH+5R2?hd}`{h>#O}`-SMYMUoi^4S_{i)IaOZrgi%>h=E=)a8XaH zO{`5V5zD46BFOg)dvcm~!>|h6zfPSE)2M>wjw$Ngf6OhC0yFMefHPLUy!IwBm19^! zlQPLq%cd}CoIr@CxrD1T%vus>Wuls{Qz)dvWbBIO(d#mb@rbIarI(V)UQqu)fq^V& zk4Q_02`hhIHfLz2$bf7T*)K?iFmgCcE1jytz6Kf|H0*CQIHE`t-U!hr(N(Cy*Ccb{ z94Ep16>c(k*&QilHa&P;I~a%-#Qh{WdB#24Ud+#d*wDv@3}yim)M7cknLc58uC_Fj zMP5muS|CSt6)xW@ST9Y=Sa&j-lyO}UrJiq`H@;20V4RC(2Q5t0mzI_52%Y@g9Km%# z8P_RuRhJflkK>Yde*#LkWele33qTSFJ!nHNYRkon1Y?WbVYNZzKY23yO5!DrRo8Oz zN}MlCvD3Bs*(`v``LOW42tBfCXb{p6hX%Tl=4f$E&K6S6iGnP2e^#_8ozn-%jN8vg zU#GL12OFMBMGi_tFx)~|MM4&lw4IImeZj!B%(o1;0WdP)5`w0M0c4}wNVG42YKF+{ zSU|NvJ4~b2yN{2Fm}^g_DR|dyNtEo8G)r?$TKb}88dNZte@}yu#jz2&1lbzA?bM|n zNVdeyH)8IAXp;F##MsC!J%uo+MWUSEIvP2100X@+q)3=#JjfQ=Dg{^#kSYq9k|EG| zP&ZM9P4%)TtiCk_>5oXNaGaFKqO;n^o^z9E0(<8|s2)n~G#8cc>+XwmQN1DC&)?)Y zw}Jml<1n)Ev9sR?uzny4dWxvu7~IL!43NRObk8XuHb!MkHXj#*Su(Y8-dC;%WLYsRgn(Z@>kPpHzO`lW<>P-0sZV#S;u zW1~jR^NB6=v73YH6O#YtTT2&U>aoyQSO|$K4%h2N0-o9hvt1;w`)&(@@6@uES z<;aC=Kw32Ut11lH=T)ky91pqOMnT9ObRhF%o6=P}7|6v|SXgC;pA4=a4dOsXc12N? zjdgY`1AE}pyVoMnBRBlPB|WybgchYO@J;7%wbAk_Y-?@P$u23ZrBEe7FQEd#=q4}v zZC@(KTMiko$e^ZoL#N;Aj>ae7|4QiKB$1Ne9BU5&pMVC?d)Y<%7-iyqSF}=BY~x~H z4BDr%{R?VGVe2aid(COKFEch+uXR@MDQ#!td57++@GJKqb&RCktb#avm+MHj2mLTl z9J%fA(UN|<&ko>@(}RYlt_dTOv94L*FKjNuQO5BO(AKV>i@+N?kfWo8ABr?G)XZNz zW~BSjg>`s)RXHex#r$=6F+^}j&W^q}gT8vF`>}-mnmJ2*f`jo%IFei3EKY!RQ2=J>{VqPhm)|(cyn(DM$Z_FCJdbOg&Xb!q62bItoTj`eP0rZhSvAJHk736qf5Y6dLSqyVlqKRv=lol>zhyh?EbX{(Km$aY!?2f!G6P)3y5k zpfwV8#ae^<9b*Cq;Xv*@LR&MzDauTobkD*_?Nh{BKaJL+HATLum>+OJBePSti4sxj z_5%}6G}uZA8`NS@vY(?S``@Oo?N@vVE3tRK#8_oJKmbplWeT0kk6s z#t|wOXJC`Dfsvh4wJ1~{?>-r7r$csj4GIEwN*9^CV$t&X7gULpDwjFErqdFR z1&wbEenx-{A>DnWwZn-jxZ=p-sgbR(<2lw$b2l3gI{`u~15qBe+8O|{_Eox&n!jp( z&Ug3HQWBZQ;mCHfE&0uvq&#}5@y#6)jx(7m4d%}Q+IG3{jy}{xT&X8*4qP+j+mpxn zU82~0HZ^#NytFG{`JpGbf(TT#GTzJWy3hB9QfgZ7#|`MH8zpp4w@gKLDxmc6Qg_Ek zXo}sVyUBx5yqE&_1<_ZyYLTBR>vNmh7kjLobYkU+!$oDyRp*`}yRebpvX(Bc5qJC9 zOz*ndO!o#sdl=5WIGRd&&Zf{T@LTH#K8AJYJ&lO&r2!oGOySl?KJ{6Hz6oxcgD$1< z={D9#Rdi z<%l@#P1^nONklqcI;kt+yF%2fJ{bi{DU}d&sPnyjvWpI9kGqU#;ksloS;sqz3e9dXRu_xVUqD)vp3c0!nEq#N>1PQUruHADl}Ef)e<< z3=2*e(qMYU%g_&-Yg{O>q2#12OsRraCyEJ$LA;ypb*`!!LPg7#-!8IoIlr4d2QDl0 zeZcg?W5f^LA97UhUrul;8&nbxp;#y*L}Llq{oU{V?yK_Oag1~6hP=E7SlFVK_zpU- zxJ4MB`@aI}bX%T4oKAM8*2@ltU3#Py=}(?gXEwzz{|fL*Oc{$zEz6~51VT+l+U*m% zVBN7pQAs!v)Idsi$;jKqdY6kbG5B5{)x25_ZS>5ya*8-O+4{Aet$@Wj_Csxv$jk!s zzArR|!U|*;_fR_eVXN%(>*g3n`_Zf!NGhp+H3hWCO`@QS#yDfaLv0}U{)Ijq3nl%SXKxmoVLfKo>eK*}zmxw0hg^M3Z|2;0Dy%thD8l6Wbu{*2>Jk?gTxsV3A zVYa!SIxYL=y;m!1cr*vfY?sU`jTX=R%V`_!?Ys?!Gi`DR|?AA&Ywd?*RCQqAzxMNxE9vF5_di=kR4V{x#6ei@hTfrO5l;si% z$^}CP3M|mjU!?u>MfL|wu){}~(bNq1YKGX~K2dGjq-}q08%Z@78nCOhd3bLRk+XtU zeT0xQF%5|BX1HP}h^!b0V}D|}Cq~M}k=={cIU!8;p9t*OVDl4!3MAx8$9j*s8M5`oG z?z>yTK8KtKhedV{S3@-&3|E}hke;$Ry3w}-N`MY`Gsq15#)f}tGoeB=L~zHQBnao_ zJJY8ox$j3I!0*`YPgV@w$9No`-TQ;L2i|M;L-pc1AIZv}tm(yaZ@uoyc0CGSMQnq= z?9Sw$iVYygvL8D5GT3h&*l!Wi!tbC8(A&IzzHNfGnFeElcVNXKtx6IdX}b*0_t!0C-=Al5s3=MSn^w8g+R_y^%7SL|xwDeVG&|8r;VNiX0jv*&^``SlDVKuul@fM|-pphXBk-HJrSG zVb9LW7KSA88BJDQRmz4oZEZw=>Tg_f<{^q>il}6~#NdoF0FYB~cW`}8j8Uy7L#TR4 z+HAdsz3malCf)0GO6gxT*?xFgbc@$JOzOH=rCY9&eOlQ8h%8x0GM=m{fy({(EGfQ| z2`$!(wqMlh1E$NCEu}*S1bs$^@!_=Zj1z+k1bLH#GcuiB1O_~~Z6*D;;>e%ihqDEocd%G${fb1D6uROEBw z;@q(-M|3uVzyJh$kuG1`NAN$KxfKO!XMtjggS0K)JhySHt5x`34CNixP3Goy-#i|6 zqbxkL{^8-3gHVfD89Q*QSHQ3MsKyI3-P%|+su^ypcdfj1)#}*tbW?SVy%4At)w0{u zDt32%*Y>KNJ2}^HkRCV6?&&>Q3sf0D;cD$WIWt`Ct>RD+2@n(=Ua$Kdr+@|vP-VD1 zDwEfjE3&~WItbTP*Qb5#ApQ9U{c&CArBEtSkafqMhUh9BSv=DP5$JO*XuIe?KF*&A z5VK3P&KTZ4Ci$+N^s|oKu8%qM^>e*~%ql_AbZ5sRg*!SF@{lQ8D2}l6ocU8pfOJyG zN+yKC!SFh@4@qJxn)`~zkn@G-BP#PcJY)iuDnF%sZ{VXI+g>z<;7fQ|)O$2wTpz$? z5@#xYZ&3u5oixjCZ%^F5DstJl;bAB0$ufC#n%+}m&!#x@>+w~TFERwiUtzdQ0Wesz3iJYRg{mLRXmN!Q}0+hSHrpchwb zO&tAd&QB1i?A$43ya8`Y!wHA{!fXuEG!+91y#&btVRF%1lWrok;kN|z@i(4U4<_)7 z9Eh8I&6)PL9|qaOi=jh5d+57>4}c}~YwjU#u~$kwC+6t9{3seW6fC1TOU5p(EJK~> zQr5dj6IdqR+Jn{?vYB6rv(eSKO72HKptQ5D&3AE_j*q#Ai9aa)$Qs3e%cS@qJ9ZdH zwZ9ZU!ggDC8ao+twA`I|OBs6QJdk|~ddjwDtvsa8Pbl?eMXS^GT-93<-@6y@ZUh;% zVI2WrQ~+A$0Eh{9I@uEs^|1#BaQfc24QrW|&to}?Ak8K)>2Xu*~jnm%+?xoP?>J!?JXxTUR{L>#P>DuOhxqn3`EEzEAdxzZuEoxfmer7-N;sz5) z6;VI=3lzJau3@kJe(qxod{>~pVkV=1fW>asOL@q6QTQZ0zVKtcpW&(2=gVsMR0md* zvo}O#ZLdxk=*<3u(N`sPLv+-ls6!T5#$lt8e$xt1#Fyl(MRW$>A-eou9X} z+Dkq346CD-#2V3H2F&!Pg%dZnGuFlchqw+ld-E1r`K$WVn14_A*Cz#O5!k7D2a%de zbwEPfz1&AbS3U4zL3vsmV*}B61EQ(*C(PHnl@s}wuX*NIJlexlX!D!S=fd`7%Z%n* zkxBN4Tk-FErGW918_#mtfj7SHRIW(wLqF2H`~t6}prK{^_Q5JhlCBpO(D5H{Kzx%# zNwM(JH6UwjI2=J!_E>`&&&RFbg4nS-_^8;Orwtpu#$gS&Skkz;eRlI7+h~@>@ZIf(#Tz$GHYI z5*Oi-R*A1O&L0L539>%&Ox(?jN^vW!OUw_8Qzxs^*;F<{TO1UQNkEo}XHwWCG%gg% zq^MHbL^N8=7fWSQ+N3m6SvVC=C9>(Qn~}oPWbL8c=miwrSEdU8-j+*!0r#j*Iyo_Y z{rsn^9G=Mr0`r>|jrrYc{m%&}|J_Ecqn)vf(fYj(B*OrJk!B zva#)j(!sbUcT4nG+GMNqYN50!B&JLHLq2G`Wx(i=dbb}VvqB5?Uz$~Q^2@u(1=Z@% z#D0B9lB*oJ-&hHy=}KD>a~cN+_5J|zruZ2o?`r@%Bc}Hc@evV)o@efN+xhJK_n&_c ziT_?>TGhnS>6^Z+Y+&Z3>|$^IA560agpCs~dBN6v-#03<);MU!YHlgKQh1jwMLRj7`qASmu-Mwv8LUZf_8K z1UD?pkSgx^YnU2pZ?&7JopamNn=rhs6g;2Y7n!Z5*J{YPfgxwaM+XXl2 zJby;%=U4m{8C#dfDOWjbFYJ6+=DkgolSjJdv)6vDivez7gbNW^x|M!BNrayP9*f}hfvM!qqvMwlAAtvq@ zur<(TKN(0WRt>|@BdS=);$;X!A}z9nxWXY#=Q(0wpmh{=T;R?v50s%lYgrbR%85G* zFjgs0XN>Q$UYTE3hs{g z3@YTDcrN!ho!t`%`~eMF7U8{D=1m3G@;O?oS5U~28-JU30b)eE@P60zczSw3@Gm9K zl>Dh->Qq6P-Oh^P-mKK~v$pJfd9l)p8;CO*6q$CVg|nIeOJt)ia02*kQ*=hrqJT~h zN&KmHN=+KpFw>tRfeaSbS`bu-OxoI%#oACR%vHXsFaHWgoBoUMW>KfJ%v*1{?9E*V zj5#ADPrDlfi3|&MrS){;C_EZSak?5g0djLTi$afpFvbUXW2JFOF6wJ)*}lfGz}926Hu52$=XHP_Fq(G+GF6F4*Fr0GtLFMZ5)1<0$4R zF=YIfg_+itkU6Ip3OnDrDM<;1W7CQON0~aEE{!92A!`p7jU#6a?~24;R(~VIXADX? z+luHK9QdXA{NtERgw}S_WFMIhr!|av-8X0aK4M;ttlEH`otF}E%nbSW6>He@nY|;K z?Y#?VODW=jE7KaNIfLo5{P9b1!VI4OoUX=~wOPhSI%E8iJG!aGjs<>ZWc2~WJQP*^ zT=7-dJ^ZbfL&al0Nf&kg6A+AlU;R~Sy6Z#uy(-Ia*2Z)BdGVI~s+5T6nH_ON_9+C9 z=j5CkC=`ju2^6`MExZ&%l@e#aSYB}81s__i)4#}GK=YqjxyfGFvWvyVQr}Q2xPE|y0c@Y`W~L5 zooZr6o+BwG#KlSm%^1(1$quWkoW#B(M43Y^<~i6GUq_sDMd{X%DOqUM0!~%!-j^dLSql2 zUR!-qd)6y#LGj2P+QY`4qPmy*81?*95QYQMf-3&)$Wi;Z0Yc=z_j>=OgZS4Q{?~xE z=o{^vw1nn6t(`a)Buy4noK6BNFAi=X%s>&RkDS01hX}h8)Oq?};5KR-RB}26ic&duOsG?%I{O@e!^3nuEkMom|pFfR1?@8y4w4nG!KizKD!?n}% z_RQKlrx(JFZqF;(ujE#eT3%!Xl7u?}9-iN3ivB)<5Flkhw3VSCcgB9Zacr1yg@)_C zI#mf=ZVCQ27Ifg;OQ9%&y$y2Qzrpe~EBR*UI^+Sr9St~~Sn{z&?ITvR+Dwa7Y||Wh#X66&A!$l>leX$o_}e4g@JhJ$RMi-MzL$qN=0x~uJ0DehpLvR?u{dd8?#u!VpVXu-Lt(*SRe4o_p+ z0sJOylGi-8jO6zX%bmKDrnwqcE!**jC}Oe7!QA)pq15q=_a^4%?d;nlwr_Qqf(EJv zu-nGj5-Qf}$+cLG{ROtNw6vr4@?^r2123dYRDD@v$$qW>WtRd85!lDm_gf$cALBUy zVQvjW4&Gv{7Kzq27%^qeFah96lPqygTjyTvrw?LRh1~n=*@z!M9I~Q0@iYDgUy^QV}Wy_A$v3IBl2kVSD-lPxS!N-V{`Fz4^0O?UBPo(K|VXPx60WQi_%M|or>b#5(MqAmi1I7>`+W_!K(Lr-b_>BTcwTAtlOwKI2y{(Qq4 zC@LafydC>JD-IfY^HvL1!K-0H01c3LO5 znWR&PI=s~44Qqw>t!y@<{qx0|>INxq+)d`9$HnPQl5C6a;*r;j2}oxq9ed^C<IZ}=Ad%%X1E}a0h#;J!KvJwzonjERG^nEK$&cMkirO#d%F?%r& zk_G_>fCI?uK|}tkdq@TSgbU7k%!c)jyB|O-R0k@>cL$4!8E~Iai+`$&)Tu&E93e*y zf_FL+Vm_89su?$_Nh|(Jjo9~SS3O~D44S-So}2BPkM5c8=6a)y@Cg5KrNjYFT0&Z} z-0zGvXG4^Oanam6NrciTRwWGcwBB!f61LIDV?(JOV?l8 zIP56*$*`Q_r9IHvvZ=%o#qYtGgDDDEf^whac7pXf-qo?_`GSR-?A0NgU%R>CgDtxO zX}w&g)du&zTF^@3z@2m$39ZG8d(904U5QZJuk=WYvP`BcgJ0eq)TQ&OVCtH*hHp|Y zmVTj7?2cNfe$%Ec3dg==Dq6Dn=m^XBD`ZRM*agpbgX7Qi%&e>Qf@@jt3uEiwalzF_ z`)uU&Ekfct31r6|g-f-xcF6LLWg%BOyEuZ0L(gvmJk>}%S4g>}+#b{`T(roV7EP)F zUGfOXeXGC;Qj)Ug!T?3m{r4Dczg8q_)BX5E#yWi_>PEr3?q_t=SV|slRcLXYNt@?8 zRQ(>|IjKS<>ax5Q%#-WE4^Q`Y1PBkJz8W!Q*9e0zP;_Lo28!;8{EE(w-Qy7LlqmBQ zY&EKJ9Sb(_r0s-^kt76e8d9ovh}Rt0j*i9PUrarAz!0(d99F9<%ma;gF%ym$bV{Vs z(oXlr%VU6}psEe$dw^b&a`g*d;K2JS=fcXSl==DiTW0UUi7m3dIxWVY1b~p;>}S~w zVOcKvAF3z!T%-QN1!9^O`nWRs`sU6cmn>32bU8Du89!zS2APR^BD&}I;XC6F!&JEh zDFvzO6iV08rHGDVUBRZjWTE<1;r-odLYFg%;Fak+)S?m%$LZSEo&au!ew|MM3({t` z7p>~>@#U90t!Sm5()!wb0+ZFV;;_{f<0LCG1&BMcEYmT!Qh-v6G8}Q1lvApD#LaQP z1xp0`YVtJW9)|KOZf%N3nnC0Tsp${I8>REzZ3t%vzON;%NSjTL`e`@Z6Q}UX7qdia zk?tG`TpXpHCtfZ0C6X9|p^r)+f{J0J2`JQ8n@eh9dtCH>r7iuchU9g1*uuU)iW?-d z%WFk*5sF@7W!bD>6o4YOw)4xf1Ca-*E4Xg1OwYNSS8C&i1lp>3r71~!s1lW-irQf6 zF20;zx$3B&GmmPku241O+kgHfKTz%49q0gTLad3MGKYzlcrPo}t&|07<9*2Qm{qVn zU;RSZmD_IR4>ZtbU(^F;`f8v18l#3+MSGR-eWy&qD(sP{9nyW?Qmq;7@^N|$n?B)e zx`QEorDp676h7cX@8D^B#8SR;CVgS(4-kyk2*xV;_FO)&)NV08unF!Tcf$YH0N&U; zWBp1==mh&%onZ{xz&otfCP1m-zkH*>QYva$Iqw>+=P?|?D1PMqnlP_P8FCtJ;SBPZ1Md!0k`zoi(8{`V3*67*e5C3Ojh+3~)ed4I}9_93UKH6AmcvxxJ$@zi#i`;(OkqK>u zGIP6Lqry~m+>Lq3q{|$gIi@42tt3?{y}W9N3GFB&sWqK*gDESYv#L8E5m-z0alY^x% zww8Ox*{w)bM|U<_i?c)V!4xp8M%G*GmmCXoX=zcja37d&Ywi4v4VAv;@(I(9Q!zM< zN1ABvbOPp9!dZiVK?e;e+YSh+T16Lw++a0d-30tEJ*U_wi+ewg9JIsW%exsnJ5ZFtNVaa!KlcRi>*~Q@A08MHMeqRIR4U z93g}azpIZMddD`9B7(ZQJfAzh%{m!j#_5XclQe<2cCh$iPPdY|a0?$Zx*2O3_LItq zZ`l1rtbn7M@YqS#-298hl4Cyyzbs+IfTe2&>gI(gyM>~c%w6k}1nD|{2)~}HKNLc!=D!pnC znvTPyn*-jcarJVbd!-*LC^|ujmGyBv6r)!K4om`Xn04v2?wDjsY8wtdy-r>$$%sWX zcbaHSf2?q2HB7-0aL>!-#vJ^Gw+vZk2vSH^;L zExbpx5F#!Jc@Gw~2XI>?$)4+22(RlQ+mEz}mT2|j+BX*A+VmEuhKgRb;(qa`JO8+9 zM7GvWD3O^~2^s_AdS9NMBgc<-kE*sh8^!j-H<$r2IlSH6t1zJ7R@}{oHQ^JWDoms* zWXu_W-6wKsNV3;s$-+IMbszcTD`19KmaAEsF=O{zRoO6sS%3x}xXGNp+b9mn(J$`V zkLdB|y%&v~ryN(BucFwoH5bS1=L^+yu@J~rtlC^UJVN7FUBsZ!qujG_L|~qsgYG#% zYY6@vH0kuvSWZ10UI8^um9R))uB@1%8WCIwFYkS|9PsQM6oHq=HH}|(&@ZH2ZnQ6* z#>(w26VcIc)!I)q-VUY`lFK-PGI$I^20N(*K|h2 z_?mycdplSeqe#COJErLGL$S_673co$i11`jc=!$+>L*OY`_@*l_i^>$?FmDAbsx-s z5~EXSgo9QKvO;BPoZ&UBw<^8_`~g)4ag&EIh%~h+Jc$&sl#ZPMb`Pci=yJ z|2D^^6%_~>eIB!l7IKo2qEOZ_;{1{WxuuPARa8BJTy9`(eKVS&RsO7`z2;ID?UGV- zglw>%8@wNeIQ+HCeiDj;k5IP7u^-f!5<^)@duG0%N>7ad^~mCR`+4Qt<#QW|=#*JJ zJ^euVvUKV{L$|k zZI`s`)nqe<(fzZqyg1=P*Gh}4D?47MAus5H)0&*kW~OXRg&ESP&@!b;W=Y-1)ipb= zl7ck5p0qIqdqJCL{Hq(0j4=QdGFab*EBo2*$A*Egl6ZqzNR`QRusS(3GXbOO>F%a4 zBHzTl_sYN@U_^CZ;63;a#^qjMDciQtroLpKM`?p&m}1>2SNozss~!7;0m4IP_FY7# zKpIE`r5ttMbd=r0+7%OdZFg+Yu^CBSMr3D>rvnryAE)JVvAGk@pXw}k6OUu&g zs(XE?IjQ_{^L@K>k_5zt%p#cn;ksj@C+q9utLx_a{j?1OD2p%)*r~rx-U_g6NRk=d zENt#Fu`ZvlVaI~~t=v~C)v*f?LRRpJ&eL=#V6`QQGM^6%H9dtga(L+gCzNm1>=8x~ zc{Eot-y2^N6;c%H?w!R~l1pp=Er$?)IEBL225$I6WNWG=Re_}UtwJ5i51(^^^AwI< zA>AMj0dMI|$`Y}-g?^nsgi=1TUAYv$RGcU`0tGx*^df>eYcb(M(avg#%|wtLTwz0l z#f)LjGN|{KiGqDtV3L7;>ocXR5Y4AA(=`|Hrpm)|#HHa>RTmGjS-ADll9gF0*3rWY zhvFFEei{4cr!P*Qdsh6MEA=-e-Sg?!MGEsbEeM5& zqSu&DHm(Yg1ha^GGP!|oQrZ7#R*r!^eSbi*5YzCN1I@_Tit9?8Ei_!{=~tPtLb%&V zdiNvrW2^RV_kgWTUG3SuPLlRXRLj{Y4^%2dmdFO6t6ivbkWk}+Z+qXy&Y($R<_O(M(;8pXtvFr2a< z4e2Jt5$V>t7Vj?;q}6C z$NVJz`B08^5?bY#+5Jk!HdL!4K*$D;tg;x21kbwu>z&1-M;&x7A^H9{oLHz^LA}{0 zru(H|21!k?C8l)Eak7hFUvKC9mqZ|`r;$jmn^wBOmWHABrYQpk1eu(2mAXU}#9`V}EPzs+PliMtsHZnS0kVc! zd9VEW0DkjqKy)+NK|lA~gLifOF_opKZKHUEPk%k!1)R)Dk_%Ro?)w6>InS456AKP$ zaI_Ps`#ri2leWU4em$glzw~Q+;EfVH1b?Kc%hYMGPbY{?KdGlLVoUnJXnP0m%DZh_ zv|`(?*tTukso1tt(TZ)`wr#Uw+jc6cmv8U8_dEBscE9#cJ9qyHYpyZ0jHWJvAY>Ds@Ag=#kD?aG@j+?h>b;?>z1Xpd|gM8 zmZ1iMp!n%{A-|Tq4Yc_1JAKy0{6Uf!k;RwP0|OWTR9kZd^a)mgY_w)Sre#s0yCF35 z*YhDdqN&LX0OQ>Rx*g7gxR*JDV4FqWX?rg(CPWNB>BC((J3su!<{r0A#g@mn)56tP zJ(q}`Ai1$=-1v9508vUT1*W5}8G0^(`3|U+)={^%iY+jtgVX+?!NrX9@yvJ z*ThnxXu8(g=wew*DHCUYA7)dh#r~(GBv2Xh*#$01;jQ3XKQt@z#N}w`XJYxJGU9~( z+2>FqZzW~N^x0l_(a7ADab|>NvHJ4cE%z(bb>B5sg01{Q&0Ko@RyJo<7c1*yYJ1^UE#RPK z>jzG+k$Fyy=pP93Idurr4CSJ;{ih*q466us%!UCbh0ind#n6gtJK|lAU>&z_GN*ZW zN(jJz_O$WEYM(VgSMaImZuaX0++?a8Ii-SoZ5g{T;c}#`I9@&%Nh@BksO)Hy0?$lZAjhYMiYQ(S<_9j*NI15do!3($$Ky?M0Jm#vk0!_K6oh z=gjGL{X6TmnAo$U4ive(QW=`vI`vk=duTIWld#$%{F)NgEl+iRqBpLZqU=~#fa6ph zH3ykdhm^^H&eM!h@np#*>%j_9qS7=8%`hs>VYmq{XA0lq!rP&a6aHaV%v9@7J{^g3 zdLeSPJx$D&fjRa$k&KL6`2I$B)=SGc<6^L@y?z8rt$}g`1_|NLJH)$T{N&RTLivOq zYL4PwotO$*rXORka(v>^+c50H3ThoFIA_vQ!I(WDISB@_H^d=3;xE8@Wmr zB(mLM0;5Y)GLPPttOhQHalZ{ehoKzf3v9+uydh(lj?pJFSG^N7_u=P*E?cY2*xGCk zZMEChmFUpgROGpfyzyHaVwi?-Sk_0jqJ`|z3Y^*5Y=s0*>8vmM$^4l{f?LzrmB_4VMfS}fp5yQ5z51PugM`Z46n(*w5k zlRCE!&EAFC5AERal%i8WqRUtek^XLqxT_xNv=-^KS9+zYf6l+AzWGpjT)7p5zCy|i z=XOn4MvfQ?eHYD8Eg18u96Qypkv=>`6l?9CvAZ}o|*2N?CF=D_inLi%HF8`K^Ep7k=iZ@bj`riGJGeITk8jb5Q=-BMnjRLmAL$U@@Xib z{iee}8CVcE)o9xw=*-}^$})F-eT_b0$bN#D~Y zc{d>(tI3{#tZ0K$4OUU-JLOY}#4VDkIfas{O|VhzK7({+vJ0EOGFc48Z{(i(a#_-@ zSdG?$Ev+RVJ_aPm)t9y#t2dIw96i?NC<>R_WA>LSQY*fkdHc5KCp=vAm5JXsEk(FCC=L zb(>Kb6el$h?NMjyycM52O5<+g~1w z^Jbl(JV<5@zgW`$yq~4~)A;T2jUjY~2)0il<@g^<&EHkgr^&uNEJum|PF5rSKWI?? z-FyGDHA#x@gYQ#76unkyk_esAH$qQVL$0%wcnJ_Eud>`uc$Ru$g(27}5TTw6&eGh- zY-4s~npyq;(hsLI@MZ9>FOFqOYS^!At(R7%VZ_O}kwxR=u8O`Rq$a19bEZsY{{b%; zWKc{O?o@=Lcg?h_ZX3a1o=o_WL3TY)&qJ(hC{+HyafbImjY{-_TI!!-YJyND2n~G_|cD`hNI>ithO% z>=Yn2kU^9B3cd6-FgKXZtgd3cj?CC?18s;)?=%sNj|M4A4YNcX8o%ic8?hGV!A?o| zDl7;LYjqVZGNWRJOOhKOOz`{q?DDH$FA^)Q`6HIfam4%26Sr;W%zk%JKy-iE4uF?q ze1-bxP?N|_5T=Az16yK#gv^v1_SNYjzbVWJl*xc1cv+Ko1$*k$!Nd`#o9?AG0J8!H zn;Ax{Oi>&J2+ZmI*pbCoT6J~eOagnUlWN7%t?AhKbluNcbm1t}cv@llI17!J%QdVv zSg^{>l}oU}z_6c7_6)P@p9Mh?Ge*wA?AbTjaSG7fgSd-D=JN$ppP<;qX5Ti>*nUoi zKTuwWK@;u9FCuMk^|$c~#qy<& zSBlYX#r9)M5bpTrVgoEN{`=%;^N1_V@v)8BHs41yF5E0`th zv(`t9b0A`D$}K_WUuYL8?zI2(YrLe;0Y3i1+R_*A_J5YR{daYoj{h(BMgMP%nK=Fv zU0qr*?uozBe0z+U{7jD!Qoi}ug@@|&lMp(FNQwx3M}$m?w}&F)A`xbaZR21L6QOKs zZr;?ba&_xq!}N+vLT%|7qLCA^gjuJ(a<#i`?y#}BY_Dos8gFjG=%AYFKK`8`d6XX` zdBP_zF`fCxd;2;2`Y!wW_rS96pNEuhG;tlEP5$;KB-rq8` zWT}5U$y{_tajAZM7XrTs7}H!Rc$jFP)*mF;L=S`L&s)iCkG{c+y1jz$0SeLom5PRC z4~0u<6A*TL73!DuNB=wOEDXm&Zl>}o7J{>i?X74z=c1u4obROb!vqQu-76O*R<3~Lvrg>qEt5661I&wL8qmq zVkqd3K8enZ?^yoxU|8IYjCjnM6#najpfb+i5w4L^iGgvL9ikrfi}j68OPg=lUKLFY zat?$1&p|~kVqtY=E=9Ta1CokX5keMAnw7M-MxMi>iCKNgi(u`2C+y> z-f&9`*KF&B6pw#pZ6B0arlfdkYBnW_*f}||HzivSaFA@sUb0)=TJ%0oPQN5WuXy;{ z-!;6mFJyl+yyRM&$keE2YPG}#hpRNUX?)$6?PgOFJUy8W>96|KAQeqx*HhuFgZ>p6 ztt8GIKv@LCG?78AzE9TV7}YEK=Umg~1EfeZVkFe`qC+D>iyX!k4=cN41s{(2$KEFQ zsTZX?QPdeUTL8s1M4z02=`bWP<>!bD;TLo`dPyLVgrts z&PuQ;y7iM22s`uPnonKTC$WRS> z%-AqB8gf8ni_-3Nrf&uQv!Z%DH$F+6xhsxCuJhoTnBSF=;lnSHfN)SD8|_zrKnZL{ zX_%PLCY-;&rT*wzYu+oX%V?fH670+Hh*@-T4aV;8Rh zoaH0;aS8k<@771MS`qxD>M^fGwW=7HKK*Qq#>r0-+5t8lvOLC@hY3_OqYSM3bdDeh z+;bJkLs_bJ!d9R&$7i#{Hr(QmpZxfFRGaBs#9X3$!SWURm&^s$@=T~$?kYRRdA3h( z6_WmLGPL1GgeZPtBbglj2?1ww=jPV8E-(3Nl0MPma^IV~1~4Gg+;QKtID&hSQ7dg$ z)H+rNe`s?)vUegNzSFrVQE{S_(0-GLOpdWZ0sl;%9BK~3NYR-bYPgmp(RqOcmjG0K z26j(JyO#^dWU7wd-LS;fontz<;2eG&WKrEjxQnUoq^xX%ee{8Rmb!jBXT+hODNLT$ z;K9X}(%*!v#x$B{`sR?tT43YA)Q}PqkuKG*$GPOa--aUj%j*)2!Zuk*$w0tGPxh4j z`2;&;16}2vfw6#ahYh}HEjWN~f^wbd#mjk^8LxU$Zkz{6C8Myu&%h*f8dh5(p;vbQ zN&*++cbz-a<1ZhR3i^|o3uK&qMd(jQ0ypFWE#> z*A0$Z{dpX#q+)x_w;-zXPB%XWt7;t`c%gDVCsj1IrHuYW5pX$x^BV$UR3rQe?#U1r z1|=-<5z=#ZOd$07<&z4QVOgcts?LS81VL(;@USynQ(p+Yhx)otj>qlq*3R&(Q1VyK zQru^Urv|kpO7Sn5Qcm9Aa`lM5 zeO+ZW(WXjU^*i^pFvk;>nt*%+b>4(|y_-(wy+myo&Q0}N;L z@{FZQu5=`?SQkN(f9gMC(!k}cgb%ulR-Qt>NMzQh(4@>c;V>!YoWA)QjvHs6GD(J4 zJ%4N3)hEF<{8e$DOsVVoqs#_0C%}M+;OyYrPRbIf&H(+ZaWIWkDxYj^39Haq zhIw*owMOKC$^!xAM>W|bX2Jx4WnOz47tEoStuL&X{MQ6DP-moIz_VsiVSB}R{PCq7 zgp?^ny&$qUHAi8^DJ?-UdDxI>deqBtty13AUEG40w242)T=13 z5v@k0te%j5rRqrxPw~<}TCGA5&85uSjlOC1!AU z9EK8N*+H7D%%Wv4Hsja1n@xxL3vc1oo9VGa`meeoKi#||nN|80&N``;rbXQ}3{5~I zMO6z|kt*b3(HSk`!!@ZgbaBjNe4d3azs>wrkSuVbISysq=Nmn#;kd!60Lcj4AgLR+H)|aFfuRt`crHxnrxJKG zVvm<$g463eQQRFEC=rx%#{flkOjeM}+~QP>1@;?O=Nzk7Wk$L6Oj75PGtlY~H_~)^ ziZ5c``@&ZUN;~CObu~PN~_bKgC-(JpnFMSJ*J4o`B75lCUfBK2&gjm zv>w#9GgK1)vr2Ivbm^Mzo6r8(aS;9ftmCT^jT(+jTqH)Ugq}2vghc;L4;zb zUhr6fPPUe)(dGxZ?m}FXg;bu!i#!|txYAI1**xv=K=Xp3u+#`w+fZflN6_;E)Bj~E3@V3fQQT%oB4O!)wy zjk=_awgw*m=bRyk`_SKd!M};1H=FrnI6}NKel-C7u4~!By|Qw}PPmW}S#!#k6WnEY6S*#vd(9(9dh@zZaWR6?2}nPCMsJIt+fhLvYmJyEP;Z@TaHm4( zcn9w=Kg1>E2ZY&zz3Kq}xC&gbal^rFyDU-edqoVlkDTU;fsu*)%F*c=P}d;zk;&>A zQOAn(GcMB`Y|vQ_=J@o_!5hyK7CbnydNEUV!u^10I+)uGd{Ot#dhH5$zP3~N0aUS% z{Fz0Jb5?qu@q#Yg4k5qCf5Z4z%0EH6xo{0yX&v0i;_BZ<|FBj|qRwyQi<(I%iEnth_vG z4_J#obF-jl{mtcpzlCeWLt%vPD=ME&Qr5#Z{!o+1Z z^fc2R22!>uf3z@FB|Q_E&5U7B#_G+u}wt%2VVrSW>R7qNo zKa8mrb4ZP4k)$s}G9B$GZ zLQgDDD2wV^FAE`GoXQTB^>Ka~BNfYXdOU=P=Q|x^8nLanLbx$7vl04!f#dY-Tn({2 zbvMnINMm831YtppzKSovo?og%PAm9~&>ekfwYy`LHjC5V&>QHI(fn!UhB!pM^E7=s% zqpaxy2XyTZL%wM)$mAQ%zlXL0?(Uh^t*%qrB9~&F9fmy8W^zgj`>h@fl!m}G7eOG* zFzQC58tOTsZO~BJkZQ7 zrM1{XXfuS9bFKz#ldO1GY&Biits}ZzZF0QiR|&R!EyCsG-SP0X>}MB$Zk!NiIIPSV zZ11!HVloI~CGm%JG^co+6n*nH24x)YYTYH4MzxMssl0V8P4MomS?M#+O+fbX25IXR z+42;s`@N^U>Du5MjG0Yjj}DNlX2Oo`DasDP0@m_9E>th(>cRB};8(@iXpG@f%xU2* z`oTSF;$yo?p1)Nox-cS0PljKw&fumMgJRP>U0Z1uMXN>gBY)0l=d8U6uy z7N-hD|5k}+X67HVrJkynOp+$!?-G{Z1j3F0Onb@XEg6svHq>L+D zog>A4wmyM_eC>IfqtyLcdZMX#jTsCN2r^d|p-!x{#s`04;SEu~l6clGB{e~;eQ|3X z?ey{H8@9@Kw>vvVaT)ZbhNumreDkRHe_Au&-p7q9e%UhXQ~w>0q5D7J&6EvH|2IvK zkxz}e1G-O<3_{$Jcilk$Wu%GX4Gx*-i-66zF$qH&fkUZo$#weYMMS+xj~BtS`n zD@+oXjF~tFVy*`mDrhhOK_5usH^QE$sn&N{QuJEPob&y6uI20*em-Addjf7)a;lv? zc++_qW8B-*3)UDiLlSYGStDO6Q~Vh3TP3pOB1TFK}J<~1a>tSMgCR) zP!hDGxdMi1J`vz}^N(}N;&%Kv1)#~)s%}F{KFY_ykhZL7Kwm`R8eDkyF<9*>KYJ}0 z`L|>?zzm|P`tGp6oh_Ej=;_ll$W`bvI7^qwp#)>llY)RsdxZDNrwoA?NtCIdEvg9; z+;hNqE)&Xb79l}6iSG=BI*2{YLoAipd5yrns_PlQ!pPuL+qff$ zQknFeZB;cKxI6b}P3exdnq7n(yFG8ku!Y%v_@$eMPXdQ^HaWFvuywsszxPbMwes2G z_`Y0#bZbUp%N;Jw!0SI2LFrKs*B8E6GUUHy$#niNqU+zRnV_Sifye)%WmPrhQ4~=> z;ZZ}DfX2%yTG4GLm|DLZB9VZ>N(P(9rM@^@)G%;ll`$(f(SMSW+TQlPOcF4h`7vg5 z2NQ`Btg)nJc4RtrH*8#Qt-gO8QvbwB{i2Mb6`ivJ9$HMsm|dZ3;Ow*yOt$PdXbWhd zlXqA5+F(tqY1-!#n(1|ksk6t#L(Vl^x_8?1EBzto@NShblWSWdo2Ky6?pYg=(Xpd6 zqH^=1X4MmVgP_G)w+lU48d11n&_yMd1G_b-P>VX$9%M(J3@4KBsm@bq%XUc&iVeQQ z;RV^FMcManvvsYI7?3U$t|`NES*;cGi;oUw0Mb`xkwo1vX-|k7hkvz0fFK3gha)PP zAZD{r>%bAV6-Spp=HG}aXweEPhqd>w%jtOzQ%M7^eLQjH25$OTDPF&9`O9vQvX9|m z=#4!23`jl^MnsNgCDV$Wbq0$d>2{b5%0F?JhmrwESDvn?ga+;YR9OBAt>NyN>ajcb zTJD|QVjATzXZ-2`{^E@2fM^FHx5w1_J5k9s&Z8GS9~z#?mzwEn2FgJ)2rH>!I26$k z|1rq^)?waB2$2g;-_Ia6MGr?IwcdCQI6~8y_sKf-#$IpU%d|XV@dX64IlqGzu7NYSX&|VuVfSDWCsBb3hn&QWU$YK1VK0rk3=R-u zgbTLqqkABXa*(uTyT$*|#qW2dzJ#9JX>McZl2bRUJ`jFhZWEJ5;J%Apuerz?3xnY}q z`y%uHd?qI6+m(LsZm=m8?SwUS3Ef)rym`0M1y@aYxuF*8A*HmEJI(TRaR%--_M=B_e!b7}}9<^F>`S07W!{ zY-Pf99TsJ0_*O`@Hsv>ocNKO{5US%@`W0wOWo?q67Lar0?-FvwLP>4I>(`H{4$sD=(gMY1tq2uYT zPTZ@FAYe>2t0Kv>E{9oT0&16Bz5*AAd9o6|nbY+eukvy@i?(wsW)^OG9aP0%7r1dG ze1LP_*M)2{RTyBZI>i_zC}3d#V4QC=@~-&L;o0 zSR~o~Wtu*mLwmC7C{gt@KfhFUJ%DDMzYekyOf~@pmXt&brNIV+qf;-Vi#pGjiZpi+ zV|dw{Vt+$0JfPcrp>Q>8b^62f=qjzF;K#P#H%#&L-7L*rRaHu9H|ZtZZr!cJ>12vA zcxr3E^v{AowTl?EkRvl>d@=; zCzdDr5>4q%aiRlYfGuXxNY61$y{0m9xD-sHV;mz5OR@pODxDosVWHJU;!H(Yl}rV zwnL?wmPU_(|2Dw>U{M5MA6_DF1Lt;(=y8;7|(@Ih(0Jh_$U1%vqC0A36|NMyT5!a2@de7!H2>=4UV+OC?<>v zRH9GZ(cGBMWL}yV$OZsM6JtiFC%jl}AFrD$chOQSjF1!yK^mrm zmmg5`IO^>@jKUPts%)ZI1BjTr%ZbE-Ej2L4QNg6EJzzHJ1{x0?t8`+|4oDI!7F86x zS$M@~)|yqYq&cFUC8B|_P5T3b2ev8~Fh;n;cBrztzuQIs{&tx+cmwo?ylwvxLBK3- z_2-r!vlp(ng$H6F$-U@5?_34nTu)bsGY^EoMc;zSek1@5nL zx2~c42&C|76_#e=HUv2G0L7mQk~@)>g;z-5MNgs>vFB+=~{-P*ejXv^uPE z#gOW1W;AC=&nFJsn2#)N4YEfozpv^1Xqj43?~otvUKww8-Bf3T?9rDQs1iVZQIt)O z-GLDLEwDyFLW1}XIt5yrJzZMPB_4lZB``(sloZ6})5Q9Mw6wy~GIFFWby zHQga}F|UR_lSf6Xhxy_t_ERi#nu+!A0Bv=+qCCl+oDg#Jud&0>lr~t{C#z#mO71$d z+VCpjNlYb{<;d>00F7f|JT0(CBvu52E_j4$H1|ZDfZZmgmRgcir3Bs>gVyX{$>w$= z;f>m_iJFm@$0;|27?lUc^>uv2R$7#SCXI1pQW5mVYWg0L(3K7N(BbW-}-USN@qqxbfNfkGj6b6Q_Gsa3bWT2 zj8&qPR?j<2K`gJg7P^@x=bAJQ5UU~)5}Np6m?|8DA#U#YtcLB8l3Sgzzj@&1 z6s2^P=Z@V-(gQM7I{gPNsZB#_Sp&TlYD9VLk)1;ts*8e>&0*orQ4+yPVc$5X>`Z)^ zKdUcRs=F&qp>0I1yWdo_Z(Q-Dwr>59+p^=DMvur$f=wBDB1|MQ0J5tj%M^U?4?jSenX7H zW_>nYB#Eu1S#XUB(Htb}#^%Wtjn!A+C4LD~%|xswe1@BLwbvU_yuNtD>d#8KNy}+x zvb*c(t`A`IMz^O7{+>!CD$Vgc&)eQ*nI=#F+P-CB+!?YO)L=^Pzx^*SR)wV8B3LAtxYb z!I#x$VF3TCB33mFpcMw-46|!Rj%q@VazYl@g{o2$sz|z7l5(#=HrTd0fqGwbWKQWR zb6;4IkSp(RE9qDCicx=lEB7ie!TilWfk{t{^BnSlv6%c_^{9;$=jn$C^|AIM&qWPR z%)4%`zIrecmGQp6{r6U096Kdp!Yy3ea%}94a^up-JbFjir&h0YtCWmi_2ZRqDr)#X7~7Qlr*0Y?kG2-Fb&0@*IeiVK3DPT3$2Yv72hiL{_l4;PRD16JDh*Vn zX~-ll@Y`l>qK5=YUEbT?p%|3vF?_GYdPIkPe6M(VWWRm}-tkQ*SPm+_qS3|9GYI+A z#NHVS`36K3dUKE}yQ9?zrZfz?XYurC9}(oGnD}C*!xo4}D_rZYkhv+J^DeqYrbjD> z2tFX~MI$qc(j>5pq{~tVIx+dHAAoMfGGHTz{ri2`JY7CXcugrOv%F%MtO7H9?6d-i?@+hx&AeBZ@-AfKN*bG z1M9Xpb2lK-ge_w)xq28trj3VB&Hr4lQ&RI5*#GNYitu-h*?*+girTu^{7YJ<`wtVh zmMS{k76l;1L4-xAo>);N#xg?2P(Y!fA=3VSBi?$|rfz))>zny+PO*Zp8mb?nLY{9 z04QO$vM;om3kidy1O--5N$Gm32pPIB#Z?iMVyV z4yvv|w5~nZ&U9~U%8?aE+|%Hu6g~{%VctPJV5yQ{!Us83T9O8t>gp@nX8gkqdK8}m z?X@vwcDrdEJkt-Z3{g%3=9HkeUd>oYx$->IJHLUFhejQ;8+sVt%U6aDeJ1&7z0EW} z6MI%fi(epMbWz(i-msCTp8JXNX=G@aOZ_=FhVl5Cu;-n)zH*Fx49@j1s|;v22%8gl z$Ui~;dOL0xj2DQ1y&aYQw%7XaMh*Y}A{ze1{r-!W`zNM_%cReV4z+J!8V$9-AdM6O ziOL|0m@f)>YhgZ8-?~}Vp^divTU-hiSvHb!4#GF_b{ai7W=}YS&)M{9GtFtbi}~60 z&vgsIH?g|j+G=gBxn}78O;l3xb*j$gOxbJ{&Z+wQH8y(8bfdfFe(lwKa~Sc|>e?n) zKhkW1RYkunvWSl4s-KJ^%`e*3SR0d86FAyL=TwjklZ#Sk2^5e_&YANJG-H_AiB4vdw*sLeuRt=Q<%Nq0Q}$;xs76;@}bB49i%y7qPxt~sy)&lHCixV#mBDWbX_nxfM5PcN=p8^-2oxx{dVlD-z_uDLV|vUdiAnxl&_H&quOpt#ds8QhJc z`$^+BX3?=sd22Kd6PzNT?rcomU9az(2@CU|NP|xB*B}8R!_W|W7^rrid1*dCOdWI` zYyWcmulh>D4S3=p1HcssD>-r|4Szu#gUUvp8Oyz)Nt!`7Rr?+E8kA4;ah+C0QA@ ztDJn4FG)N$P*JE_yoRQ2rK5I=q(&SF>z3#ys&r95pca8gm%POW1EB@LtTr|s4yKE3 zxyBNF*`>Ujn}aP&e8L(iN>qP8OHlRToFCD-U@RNADd5Dx_=1Lk;??@Fy3QaN&b}wM8YthA+Ycd5`IEBs)y<}G3$({XJPmD!G~}Kr+iC*N4ghOoxiP; zD{9h_sa8`in#}_5KSwG0@js3yzV4OX-{uPcN9u%(g_HBY@6=!H9dCaxqJRq(3mbk<2#o^G<-2(rb(GIDSo>{l;3fga7E zYhWe%Dc8yQxWDP7=cWS|NjSel&}M4iP>l9P+U1>a3=G$Tb%1?EY^PpU^iV`FcH$%9 zfuX?e;>*FV3ih&hnM$t&Cs$|}qinNP%8NetB0|$Kc4A^n2&M{N<}>OzpSPp@FdRJ; z7vUAowQ4WxIEQ^5992koClq0*GK6h_-G@3AXT%Wsrj7|54?eK2m~@^*tO)Ivz}`0D zWBPG7Ndi%BtEIYY&TS0kn@_e;*@w5skRXxm{}h;pXxK_wwq>Y+)hQ9Sj7l@R7_Qv` zTOr&i3As3^JE*$R$NLss_9L9pTQbwiRpP~TcBVSiMwcru(*k;3 zJ<7gTpaSok1q=;xT!-8rMkeGTSW)#cZF0ZJ>^_w@2)YvAy)$yRp=uk*gj7$~e;T}K-!O6-e}SFzZwUyk{{&$tYheGsu%4vrG%tV( z*tVHtN!2QB(n7OBOG2Ll)HHAKG9QvPLmjrFNE)AQo^b-AeLJStYoSGfj zfenQh6RgPH!_;y`hM`bp+LEm1Sc6nyn%ev-&nGj;;g9PclcF-C5PA= zQP}u9dDbUXE;Uybyq-!IjVa`IZDz}@n!C|`6~z=2{szVR8ip1EO>iMZfzg+6;jpb*VGo}1Sh87WYKF{8H@*F<( zAz)g8UzjCxx#N#SKsAzwD_UJgJ!OqwV>Hfi@=j8&c8B?{9%7~b40ridKHQv4Ao4AZ zjMM@~KwfY?cMDZKW;b+%0WI@KFY;ZGb+$r89M0VH{Jt5qqkC?3%$+lmt}sM3G1 z)IK+=nX<<^R2o{}G@|u^z&UO@|9**(WQM16dIAz($ECl~vbFXJUVn*BlGmIPZnpAs zs|}|XI4Xh+!hVk&Wi##oRG4XSQy7zH4r8?DICRv1!aeiL^>T7%22!z&>=0F#nmwXp zV-eQ<*lT)$`0Gu+l8TJH`86p24)%9F=KoC@#=nPuaxON8|B_);spu->sABrUTh~is zkDFO3)~S`kfv&hxRnek_AP8DYG=?pzRpIZ%(#X0xG@P#7=I_5icxuyi-5CA0Oq0T+ z$L)Gtc0W};Z|JBc+=0VlO86pfIj{Myk2(GLKRyt?9oLcAZ#G7`j8s#!6k4hpRo%5I z(vG1u8Lr69wNg`?6j+X}k1yjkU6q#C>l|Www3S!?dIrhMu2M}-ED(ltt{mf@r;x5N zKS*9$tgk3g)vwn~$%DZ|^3Uc)iu9ZYJ%Xns#AEb-;?;x_*^Jl3hl0-J!rif4m@M6Q=Peo5g!_% zohC<8HehP?&@i~(aKOYD*3>@SuLkrEkui}DxFdsb;ED6=p@p`&Zn?-*j7lg6c9dh~ zHp&{zTHPoN{912|9RQA7m9edl9W?K?5V`(<`Lle}7pbdF)sTM-_P|}Qqui$IZ&a4H zNe6<{jyn(xsy84iSNB#)HlaH6;K${|946g*Av$toQJ|R?wHtNP<>&g_s-UuS0wfZhBQ zxE^XSZhsJvLefJs5sxsb4&eoS*7$y$ceOFe#R*ZW2Ei3{m``P{#zwH~v7 zwQz$stM>bRyUCBtolVwlD{blmqsT}KUbPQ}Ms~PSrMEt+@ldzT+e@(8?i$6TIRtH7+^v4|I1L$UqcSa0l z35UQ_hn3Ea$`!EWNs3htw+S|5>WX#-e;H+*u;Ee81!t#Tf$i?+e(D3(U4LlCWf z7pdABQSYr`2x+gRYoOjgZj3{~T6?KLwr_l1qxpJ5{0T-Mh%f#6aea>-{`6lH2<;(R zTjv8tjNJp|UsU$5Db zp7TC-Gm@SXJ?z92*o3DlD}482%+K9k+wYrh+dlgf>eDmdRsw!N;m%JfY%m#VIjTsL z3W*zz2!|=M=8Fmyvm#@w8_g;7D~zzbkInBTC(lL}ng;iu8C+JkJ-1KZ^GU~?N`90s zS!$lO0uw5Di13yJ^2-^K&j`5k;mFZwkj=Z6@|cAwHE3#y%*b#K^ntz5A!P*HddGpC zfiH_-7vjQ)SS$Fm7iEbRm(f^bf)n-?W&4o*b-%oA`jmj|hBJCy#uRxKTNHCU%=`mp zWlCt<^T^#`9zZcBtv-PGsp>W&m?{x9P!q3#RNi;`q<~@u5fv~jTZJg4T8pq6;91Mo zBHJj}b$-nAz%u8P3i)&{_`HTDTgQ|`&Fc_U&N$k@WPG@j+9uAjL#Z54pj94z#yy$R z*kWhy_PXob@0(gEMsWF?IHB9@OOh>A!EW~Mbj$f4dH|sFw<2835m(f>W`1(z=Y~n6 zU3Dt!kFbga;d6w+L3-5T%P8ig$2MHep-B3-cN(;amKEZ|jp;RRMbh#WPpUaKUlE*O zoX}Vhfw>am*^R){|6UmzH9;n-+{~DdG_b9hC?fsDwL@27zgNK9(}!W&w~~|Ow-s(c z&}(dEqT{jDqABm_YSkqhMP@aSHeUHKcgf!x-Z8$lH;Ni1THO^bX}m3m8pn;`jUKAd zlAZ6zLWM}=vhA9K2ArmP@T5O!Eh@+HkQVXs5N5T;WFf!T#ThDhv;n8 zPJj6oMC@n{j+YU*5uw>(q|&r#(6P}o9kEuj4MfbwC5NTPSr#~8D@TF}T zyBNi#o~q-bvG<~cDbh@~2nN^o^5Tj?uzD(|#yq4g;FN4qpbaI2o{P zl#g;yu7uRHk;(v#ujeTO1r_HXMowkHD7Vsw2s{v*Y|bl-8rO+Q6i3^rqnBf{CuI}$vXz#p|`WE?VS9Zh#Hk# zKajFZb^lm8S?Wq({Y0*0YWXg;R2v|EXc(khLC9Xi`{n=HTEI_i?-U1=xg~efj>a=> zZ5ZTPy>{L_F!SEJDG#-wG`MT+H*%;4R$_wsY}%3Nwf*!gN^stn5-#3*b-{72bkjI^ zIqqt@47R?m?oESk7QWBbh3AF`ot{CgSz>^dHBJJje+f2t)eLlQsw~&ixsbYBHdaIVtuyibO==k!_ zNLn`gj9a2PM@mnJRO6)FqEbnQz;ty;U0VPDq3s=mBs*-CU|Ifn6Zb%Prp-QyecHbMgxc77Mk+pbM=YdcmdP_gYQC4r zsXc*IV$Bd<1Yu!jlF?rWagp9rHYK$ajVj{KKN*{KGG*dsPy3AcTZJ?Ey*9F^c`~H2 z9+)jekjCX>id)k1;dl7e_EHD|4-r=siQ^o~?y%X$yWOE|xx_x>ak??fkTdjpLfQ^< zVw5<%17Ce(EN|QrADE-<15I{lt&{TS%|4{HZ?9I9Ub4-R0laepC%^m_Vc}umU5| z?4Pa*NkJ6t0hFL*C|uM!Mo;4|b)SBf%ybKe9Z&++=|iSRkPl{vCDX=&p=WZmC<2Md zW0EBf0xw!}(XF{YBTZy<3*tJUxhzuq(02fj4u}P0+7e?x*)JuM+$7|(I5{Bn1##Ae z=oODU0q)WAUrJ_JvXjWCPKYIR?Kx$Tjd6125RGa7EJL6V1=y#Mt3u)2OfjcC@NSP=wA}5Oa4t@UA)t0PPE2q}=y0Lw(>+S{L{94aH% z3^ENz#jMa$w=X2K)@>8fd8e?oy?i@6>$qn|$aPfbLJA@|Cn0LCp+;ZDB8+Ips*b8A z5IEjK`fPv_Nm(Uf#(G4!wDPz?b=83h%22a5^OWUpS@vx<(LWo1oQjx43ca4MuZgyQc2uV;k5^D z-c@b*;}5Qwe#pEP_}|Ow-LAyyeI}U0;X#x#rPYf$IPo2xd#xsGNKkC3~TmRfZCj0AmmXo6d;_YgI`1sDZd445TfN^J(X@9LNC=3RzBG{pkyl#}sWj8Bgm7-fz(_b|0nSC+y;<-4u5Y>PC- zv|#3V@`|^d)UGg0JxA%u+QRjm@@DK==wJ}u%NN3hq>^}aVwWE@`!x?_2vctx?h_;m+U2EGe76ZgE&{$#oSz zh)SxoK71>)sGTrhw03O1o@67pHn&ePKV&@u`{VRnDL?J&7r7)lT+IXA)sWlv(9=rK z4iyfLTV%g4IM1Ee#VQ;BPfLiG^fi7IQR*1sC$B)SW=sx>@1-kf7dNH>#{V#}2MN<`7^;_gm3OB(28)To#bDZGcayE=dlY+;O$3D=%;dgToF%(Wgt=g;eXI*gh5oU2 z>6kDoR0j-pvRaKUr6F6p1RO<)shP$es-P~-b#eGhKur)-lns`PCiSG_Mi~1%d#)aC z{|%}jg_)6>s{ios8i#hmB6_JQcCJKZJ&6!NR zAiKA+T$cgm4!=m)l75pQ<_m}I06%y?d_x`0asD! zS6D_OD;fc+-sV=l`}Y8SbZF3d2ce>Av2@J2E!IRd8za;P2AnGGVTj^W??AKgNFmIq zsvZe}W0lz;ZP=C2O_+zMRykhmbxz6@^1H%3TwDgW%mh~v=PlSJqyBCqR`d06Z&mExOGRtwOw%P*xfTR3NkzRgEnN6LAv6(rY3&&v+)L{F8U_my@ z#da-R(`y|J_WCO|?zXR49`v+RY@xp?b^-HIIWSudI5rF=d&Dv?Gk9!yiuTn8N;<55W%Hak zmlx3`Gm`K_m|k3&Xe`VhzzdJfG$^*Sv&NUvp%m6B-<{B0oZyz|Z!nTgM*s@SNH3S` zoVq?eP6aW20*NO%VyM$zt;D3>31Vrj-kTlh6obW>02FEIX!NPb(8WhWk7CN>E@joM zkgnAP2^0q2GK))=bIU1Pl|qjS7lu+tG`tavjU2gRA>J;L$Q-hLsz1u7MLI>NVq0&e zIhY7id;gbl!wi+|5U$ndX%v3}rxt0v_UYEvXqnJL;{DAq8h7E zL5eJ7xz`+qqnn384EmU-?gX`lxxGj-cH{PM0P2|iIvR`1Ov;lV4v?iyl4JJg##lU> zRo?u1!&$C3?#C;~(|Z(6rsK+EI@KL>Wx52b8zLRhWwMaob5Iv#>=I$+`i%o*IQOpu z4~|aOKdRvBM$^=fPVOA|dgH)mjBX!1w4hvfY%b`tm`<=@T%XAG5H9Zcd1Q#!ud)-l z)t1(J);)~jpY3K|A^regJGlPnpIh!7i-qq2q!e6yeU4&0P~>+z+F6((V&bAMV8~Ci z4DgBqD5mxwrsUAep1@h&_0QL;49@6#VhGHZT4bW5l^;yTynXI&vys-%7_6h6Y@6GC z#^hpg17yz$HlRz1(<7t88kf6_UNS9s?*KZ8&M2L)5V}}W5LDM|)LnP2xv5^+Gvzhu z*a@ah9U{)E`E+cfe(5#6eJj_Q)%<51?%%1&FO;;tKK- z#U1$?MgOuKQT_y#9g4$t*HPS*09@G-c!#}@jey(yZc6Zn6H5>a+GH~Mc%MB5hWJJs@==-!zltbC}K zprOQHE5&~RogZkJjfqKvXt=TWLqtp7G;yW>7DNfAkxMht(|5h(N4O>hp}7TI*VH>+ zZLph8b-Mn&>c;Q>!8N2Pu;?%td*q@tqoA$Zz=;poj)Pr9s9HwBHy%doBHAvs`&&vR z`!WWZKsI(;>EUfr41Q;^Y=QAhAdhBSQeU!|LT7QU3=boPj4M0Ij!$m~N8cFWs~C@{ zGbI+~4=Ug#hP>-FQ}=$4maCSADDBUmtsaGXjv$emnri|trR9e?h?4|yhiN@*Pagyk z2M9^xXUjm{v^!B(@IvSy1IDDpwhk0ryI0n?`+xByF{DO=pj@=xDzN~Le|u~4M1(9aAX6*c_PS9~)<0m8VT z6gu}NW%UbJ5XF_v&|eddYuwxd(v)%O$>E&a$Z4z&P{@BX=4>t*eeGU1#KqmmHoKtA z8awP=`4{NPmgv0fz)kUHjaKxGIT_yf7q{e+mGUew6_t9_+LepN80XEvn9Xu|IeHSy zMBY9*T}9$;?UXCo&nj~A*qP)|e5s32!`M#v)ir(3sIOYBPfny(Luy}GL%f@oHQin) zTA*DiA_U&nnUEhJf9+9|WoszU7daJLZD9s=yMoVnYadD7&oG)jTgF|gf+y*SU`l}m zp?+!#!uYc7iDTI6adH9QaE*P9`2N$VP#DjM(|$8~K>tzq^uO`<{{Lv^|6Qn^YHz+M zs;FOE9i*vNzaSB${L@rQ(!teh;MYha1Bv4K-mAYuCfjh}?FEx@>5_IVY_d z4Ib36|EgzF!S@b7^k}BiRBPb>z>cS3+7O@CBjyibEA1Oi93c*B{8L#yrpK*U`y#dR zVe_Vir94LKEy9``SW-|C=u4hM=lGs9E2$m3+>D27(fa(GetR0U zcxRu^o;4gfy^0-AO{d%)F#j|zH)aU}Gc~E1$}NQ$IiNqOpO=zCq(;BDr}X~%{S<}T z9>|-msY-=P11WQyU0m6Y!DXGG0A25VbL?GYYwZ$ZtI!L6Iv^&tvtzGnLqa5V^qpYI zD{5?{v#1M@)=Y;u6MVEv(Y`hD=Txzh>#dYJ;41%#npLIovKz8*QCQnJNbx zW9|U3H-wXNSePd#3OVI+2Vvjw)+kctaPu7*q1TA95@ zOfJV_AEm)ahdK_{04SazwBLp6GLHH=?~$#z!Tg_WJh^-NUJ8SMaSSdUZ|5n?7?GzG zp2XkSQI**XI2vngWGsju0tXo#uRqe5FN_BBDe>Zs9on(;hgXwFY(quXWUB(t1$ewL zbz`j$%6T>d;ZEKye@ZN9|ElSrP2W_7YIE)9vZo{q4qgaWU0J(qpwm$es+Ivr z=_-P_noB=mi!YlDw#}SIl!2_pCS1z-3SCKS2sP+oQu~z)RP(kpAvB?D;0%q5?Fp;8 zp~C|EL(-f%ioryKyg+kl377M^XDz{)<_+y}H?u`kWpsK~U`=p$A@W>ty5qhl)pzR+ z;W}Q#2~2R=t2_oFV>dtpJkH^SMn?tV=4n>Y6uF4o{msUC)&O|GqWa(uJ4cE_-LLs$F3u!r)%Qo5HrJI4QrJKd zZ$eBUaU~+0M4nER%p-GDEL@cF6t`oVv!>$@!1dbaN{@w+P0>>p$>-!m5bwN;xJle< z>JP4To{RzhqaHkQ?f3hQ9z3ai{s7*X-XPu1Znzt9=%mA*BHrONu{=%fv`5V}nLJ5t zJ>GdZyN5W}(EP_7SC*MYR|whB&BFu*YYSO2hw;k;tXKRI2if~G8l1djmRH6V^7T); zZzs`}K-h_95t9w=iCn=6=FC-=ajA5}Ebcxj&x}?3D0dgc%xC(xYb?h@=kxyV8r_6E z(S?1#m8sxY8<0UZkHFF937pqKb(jz`d$ElEU*6u>va{V23!dbo$eJzPWNCD}?ZR#- z%%#0AgdHKKQ_UH!NIabsR_Yrl-C2Vj@l%>&=Ke#U88UY4PdMENEX!pB=+tVkHOF_9*YErMG;01MQk5tkTP^8_Gx*E=04NZ z4jS=$_pD`|0~qb7xH$=65~GA}JjDr;+=W`Ci1w-7-%iAe;hZHj&>a<}sU#WVu^i~q zjC77^;Uf(o_MnA(7S8NGLCK0uESz|)Po~#l2Luc{vwbZ07HyE5F>@6qABT6(oAqvo z0#R+k=)SHa348bnj$TMqIEjqJbKWGzsE1f%7Gqdr&IxA}BoC1Z4++ciHbol(FDheT zBh8+OTSGT2W9j4{36Tkt2{Z|n2|#0+30FBCfy^~$m#_bZMaAcgu6Dj*Q4x&))DbiP zk11G3TPv6UVf>Ep|LG-(%(Nhx3(hVLN%|LWb+v|WoQb+520k}vtUOj-QtAI^TfjtWIJ@kldKxL zxiq7U+YpS*eP}lW>O{bP6_4dJ#S5!(8@l7KvRMgK0TGbibIe)^y zibhT?rS=_@JG1F9Qv2jQ_5-wZY66C)9Jhrc+c2xT(zvu7`PGPY$eUSiKzj zocdDWhCm$`>CgyY&B9&Sf z4SA=j%y)ut7XnrjHZ=76QP4xDWk)TvA1=ycQA!hB&~X*@bsN zN1t#Wh5f3Kfw11RuXu%aLP69hs$ssuw&T0ga5(U)J z<+%NxPk|L2ICI? zHcJm&_%AfDKtIu_5SPAm*)(~Ic22z@elDpeM==H0Vek?Gcjd6TyrI7oTWoDwU-3bZ znhUWxlTHsW=-vJ2C+0cz<4Zegg%`WUgi?1bi%UH6i*j1(AwnChOE`Um5D}lwRY{e%Ck&T_gz5-Vluw0Q<`E)skGO@L|K*A{Hf% zW;qCnwRQzxd1a|?lh@!2m1?C<{Ss_;kb`KMhMa;0g}*kr@{vd;*d$^(dIE}O6`#4o zz87qLMy_%|oS}t>vcKj9ps4)!grO#11~WI9Gy9RkJA$*kVowbV!M@2F9&$ zG}U%{`Ws7F5{$1TML`UI<+X(0$Y`*ThWzYW$8vVB3F&l8jDkY#VN(uHxq^Sd9Rn$_ znI_P0h4t1Z(~>YLLq_)a`xR81 z+tUTR4%iMU-_A2#Ma!VD;Pj+_xq75w&Q!d_aB8T$hJn~Dv{IQTT4vq$BygvQtL_no z#_e(8CS#J=2~b6EEf}z(_AVW`B4q0d1{8}5$tETWhf0D(g@D!oqNqx$!mecGlZLrr zp4CX4RbyA35|^E0Kmp`j5ii9zsSG90)DH!7ACQW&7SA0$y_Iemv!O$7w_Lk85xNK; zP2)^nvnRfxA5nVAL3ErS)iaSNrR8ybbI!9=@|+N1nUL{d$>$DbX`Hd`dvcJ`zg-o% zD5jM_wKctIVDm+WE)iul7g!Ws0Npa{5~i@6q`KHFO{>5j42CNgQ=Ax4O{*01mj`qP z#b99PGB*v)Z{-`$EZoSlu+hYE3tDICyMOQSdv3M8WC71_P&QkqXO)#FmN(X=XO-33 z>#By~CYrj^QMHxTYukHI4_MaT3R8%;%`1wX85piBd=AD@XVs&0J0muw`9gg-HG+Gg z4R6+?^v?59$B3Lr5zm8NJ|(|sI!KNdY>$w}n;^@Lk~+tfYuUfV$DF?2p#(shyL z4Ol1h?lfT?GuHoJxeKG63qKloN;YD=5g}8iVK6yUrIS8uRZ3~uFBG~#Ih~yVy12~; z1|+?BNu-G4aJQxk?Af4;!Xu-k!luGBJiN%LgsOD$q>bn8^R<6!L8lhQ+DMzqwuEtvV`N^0+L+!ft@`#HK9ta;@ZN+dd_=`%dGv~$-U-r)|jR&o~pBMIlBEjptcA+5744|Bgj%?%hp zghAJz_la1DBAVZ!)KT7Z=B_Jq@)>=f{`dwus*ZGasw*nVR{Gm*`Epr#P zseZ$l%1}CR5$U|lAbqk=vmuv%>~>q`$26}!0@^dCP1_lX}>8O>ba<_TS z!>=C3ZkeZjeTXcOpkNMR?Ty=FkGV_E*^g;3Bk-#2x}WO!xO-B#-?9%!jiN(qqF2<{iLcYErNI^TB#V9BhBwTC_`>N< zLw%Ek(<_R4F32Z`uSm`~BX>%JI}8MtI{Ak%XTiY@Cwnbeq1r?5D_r(4=RpmT%tfky zm4b#dXnHYXUv1Ny!E1teBqbCgD>I*J`1-(~o@?;v1lWB+Yf!5+&$WwEo>7Q5Yy=v9 zDk;{L5$R~h@|mOd*39Sr=KXm0-HfriYKrpyjyO(?`_DQ6x1fvv9Yy>!{aFPl4(H>i z_!L$ElGxgWJVG|=KuGYmk7P)^Ns5qMm`dc#8r7gHZj}g_XDo?_i()_C8k2-(bzY+C zJWIOA)1G>i%#H_^L;jut8ibN^p1~-{Uu0h7pNg(DzIejOB`6Dy=wA&4%|V@o)KQI6fgBb5euuSLw_gdpG`-yiv%T{& zYHY(Fw*R26+O~eEU{F7PV50t~wo~kX+jc5B+gbgWElH;0znKBx1iEI>WeaO_)I!Rc zX!@Jplrs3mXTTDQz}zqp>GTsgY#+X z^Y!C{%+GWO=B;U%tcx|tg1p}^dWeh*Bg`MiZo2u|l-|W{Crp-M%nQ?Ps`maxKhCKy zl*myJ<}j8GZ3D4t5Z;4mRh7K}bK)zcJ*_`RrO&`^t4+dq8GFRf70@^w^H4}4OA1q7 zSz=aVwTY$wo-ZfyT1DE~psm?yVzykZek^b&l6)y=>jaCUj}qIP=TGebS|G;|Bg${e zipgMM1`cCet@QPdcm}Pm;C#QMvw*#fr|mBV7k{EWaish1LYy_1#(0lgsCW9IXmWZnp9(~8|7Q>FgM&~cZA#$|Msl)JF(G}u_;7gQ%X{Dv(5^PvIqUG+t z1k^|4q%+xD4^F*>3 zm9uf){&nT(6Z8{PrucEAU0kh@CpGo_W2*Bg>&okB!}II)shRi3ygY zd!>?+$`VV0fy|_Z`XDtmRr;xh4h7a}nMrUXANI#iHI_G9;&f5;3u}-J5d+&t7;;~a?5C0z+Z86pgmq`L*DkRohKm$^i%7p0 zLgEF<$PKZQOw<-kqLent8CuZL%?5w>ht{e^_{S=97GSqA_syVec+R!O!CdO8Dhy$g z^N1ZM&IZciYO#^!V{_wVR^yz;6&@wp<>uI+akubsYs}rb8$i&~QeR^v+pPwNxAfT^ zTNjCmPn$LdfD7`#RpfSLFy<<2_h)bMz2M#k2>c1i;)n{)sgWk!Ui>zp(Zxqso9Rd`<+eb^jhM0`l z&n49Q3FFVsrqAL;e8_@RM95B>I7_m^GEaXnZs-!p3#N7)b6;Jm^Q6Y#0Ij(_QZcMq z3u$s#8I7>%=R0F&vQUn&nG;D4QDAe&*sqCTM+MWA{*@G>yurIxot!9nDbSc%bka#b z#6MNgVr>|m)6k$wFnx!VoUD*3IWt~Q{w*08fwp*u^%}yL=lb#^DhKVpX%A7Ib|Ln{ zafM;kCm8ovd#^rgoOh2tYwYHEjphi?_cF?JS`$4_sT_H&ufs_1k}!;XSXM`_O)m@sR7mKg)zfYmtG=02YW#LMB zg$Kn9{E4-Hqd?+COvcWhd*Zrzj6YSMkRRmC{Uts!>DY^#>zAKXA`YI{67D|s&X|Uq zYw?FktYBQW3`=|xac$dQM`1-&ep)}KOCClq;4jiW7xfHhY@adp{FvdIH_o>yo6>F1 zVQ&d|Kg=`u#W|{lZtmY7_H(E;mfs?bF=4|J<>SQGt))+E9FpJH%y4rtX3kf?4qxH$ z%(3I%hReoGJWZA5#g2^yL}?iYl6~3dTH$h|6GRb7?rKnK7y0@;iPCh)*fhMQOp)d_FKp-!{#sbrby8A zpm)W~zfOv2b`ma?Z>7Wif7G_|{~zAP75{x={2MVVjOmu?=YtvIZT7bm^zR#*nxWn3 z2|xj(q%052SA341i)dO*(}{>bno>Qot<}soZD^mx!8^u z>ADmS(Fr)KRA8$wm$=)^+Zh^KNq5sEKU!gCaYE=3Wp(>*t@-%a2IR*Lr%eo3{&Ht9 z!SEv-6Lqk^{R@!vFoB1;{JwM#-=O6GKOiabzq`1?ZidEoPUg1%mC!aBKW>4-j}r97 zc#;LU3~j}9?f}`qj8yqW3yAGafhNc07XhzBq~soyBHL8XZ4((HyTR0Ig9`aZNfO*% z`-D)?At7knrnZliK6JIazn*Vld(f63+CveGmyE_D7ue8;SA`CU*yVur&*i*g)F~Zk zWR(gHN*n9)R0li7D`d0{?x{m+ToK8PD{J@o){vRmHh4mOYSRcRKH=P)sJA8i463XM z=ez3I$+o*zNM&_+UkVRG#7c0ZaGN4?p9>|Y>mKQHR6c1! zAb?%Z5W3kU8~{F`U%oD+H~_0FX2qmYHSc6;2up_sHUP3@ZB$3M75OrTrV3@_6Z3tP z-F;tojI)m)kp|00t`Sq23srRU^s>wA^uWqisi7}r;$3zfd91>MY9UCKI+686#%EG9 zjE30dAH>Qn<3V`5)P2%Sz0p6dKP~m5cqyk^D}GR@rsHTn;ahQ8d0KzL++~kvHMd-- zFl+Vxlq(aaz8MjqF%0xXJ*7M{k!T!auU1-SJKASC%Q+`WX;F`>UN#!t;u)?XoX51u z_=B%nNWqp7(EqOm%PY!r$UgmTn*#SE`=7C*Goo&E@VjtK{$md(^S>(|aces(VnH)o zYrFqfW*YY|RwQUUGIIq|W}X-zM~;v~V;*zuPXvJwOBpfeAcg{IgKe6~_8@A+iTaM> z1C*>2LoSBH=CIQjJm3%P3rcU9-c+K6pyguXvgK{^K8Ekp;SIh+x&{NE(UTGEPqtU8 zCiHj0(?Ud%2hETXg6uEjWvj`-op!7V%ab=^+6R-y)`s?(46yCxGcs(1zWdNq%ZY=p z0T0$B0M}CP_%Y=(Na^>+$8aqc6wGV&D$EP_B`t_xr)xv+$1gk3CtG?H+-s<5W$G4dNQB%om`3cQ+?Q>zuPIE3~jD#?%Y+9Uwa7~29t=O`{TA3 zoZV4EA!zEv3-KeZ;y>k8;xFZu_K0(-g!`1$| ziA{*-?R}B?h!jd3W)7Px#9=xn{{Z=?EGL|EmaxA^i^u;+viwguy8j+6{_DW_r!4<{ zXiRp3>m>-|vA(CfTd<@fAOQnFAeadPWdJjf{Dk6WxqvQWXvhLRmRvO%c@$JsRN+5? zAta`)oI)hOn(DJ$J(9jd*fQ`QJ(}wIeqH(grD#tFDR}O@8cy9@bvOCDy*_cir5nxl zj^UR(h77YmRt{cORa$kwob+<`6IfNH3LAs`F7Z_oTxGceqh(7~o&LAnq2^(;21!>L zrSD{q`jV&4;VBew1c6DRZKSPUV70|ykNLRDtE2@iIZVEczBw=!4fan{zaPE74^d_> z;uTf2TiZG;0)gUtop>^T)io}bzbpIu3-49RZV>~=!Vt;000GOxaM>aWUWQWBmsUA6 zcAKo7uHBxN@!=EJ_Ng+KyLbm~^TG6w#OsXlQ41Q4cnlQvnF~u69ZaS7#Kh1EYpZJN z(ANxg_jTLsIO$qfb{AQo2x?tcWI)b4CQnRcX7Lh`HUDa^F+&p!j===&T4b^ja+^MW z&v`sZc(L#zY1k@>nNn|LCeD*LG%s5Qi)FM{psnP-1yLOd|4r~E zgpS{L?Xf-CVQKbkPa zOc&JNN`+m$*tg7=Tk!n!lrP6iJ#hPiXhAZH*21(FSzzh`77j*|LL^x=aXHF3CBb7% zW7Ze$Pu!Ys6nZMgv40r9j+1CKgdNNcAttx5WeU1?rAiX|N5v8Z-CTwJst$2(x>+RY z9TWo}gEDypP@l5&WPMJ=lO7JK+bneFU`7V=y+!4L@vr4SqXwNQ1z`_Gzn$O~m&=qt z=P0`PFhl!$Qt_lvQHt`zF*NyJyEb$+6-;UYXceUo25EXA!%lszO%+^rc}>evykx2F z5@YWq^GMGWYZ=F+I%jnZz2+uoOY9TU*UdEzZfFTGy^z0qn0R zBZY-h!OnB5sw&ktp7MtDNxv^}N*!6#8HFf?ve3_JbRsy@ zQ3T9P-?Wir|2|4d>kTTw!*o~Ws;DHtSgE4_J%p?X}O zUg_Q(BMJG35^_~v+RE--dZj;eX<{9dV>CEkIOir?`KX%mW?gL49JVzaZ~;dUOd2QP zIdD~p=*pO}WP%8JsAJjVeUPU~N09wB>+wkzoV(X5z4oz`zgbWb$23Pvhu0wH5yElk zwz_H*xpDT~&fXQq5jWDmwDPe)GrYDLt&xxK*hZ$5@FrHDUDNg@RT{9UEgYn|Kd7kk zH4isHxD7>@)yR=e#2ugca+o0fLfPTA<#DZQnmD?MS}>*4q4&^zd_PSHri8#ir~dIx z@x+&%C53*fR(|@j5ldHJC&v4H%@dwDgS)oBNn74`XYgTU9b&qrZ^&6U9{<{38mXoo zx!KcxU;pEJt)muda2OBvDag14;Uldn0~OcytJrtFU_KoFIu{)LIu<>%a^?|IP)Uu} zV2APcw^46BK=LYOjh9$CmsVpR+6yyu`bK$0%EM@R-U+8#)t34a-8Esp5 z58F#NY4O|d`3sT6xXbUFSLdDBU?TcCb;Hk2x1g!?VkqSg8}Se`*3vd&l|?65D(d4%VsFEb7D*i;bf|yTWna%4hM$ZdfrH9HkuUTqV%Y@o!*p z$*Rl5nviX>3%U(frUsx7Dz9QLMCD+nr zFRpiumOn03;>=mk&h$6cc@+%DFbvjdW#9ps4Vvk5^+=dYCa5o6JMj;1eGBE~#-3Nw(=QC3rJ zozUGkCZd?uBT{Q3aixTL*I`*Z#U?sn9U2=H%Bq_h9~!R!NFzj(#l+LWPY|05h>Mga zOA~I(ZnnaNR-#NM6|8Va z>rX`%Xi3w;6RWBviPh3p=Eoh6AGZ{4uCY_6R3nx7lyFI0SX_u1BUOzVkY;ID{%wcT z+<=H=iI_iETAvuwOfWKDffObWSqL^ZO$w_4ct|L#AB5Rgy!(4}c$k@%NQ+9jpZ~mJ zvfqQivO>{;j)KoX8-7n6T)45G&e%Y!F4~RmY%08{t$~uV}amj~U$Wl3PvK zS4Rm{>Cu>6IYdC&x2jGkT~gLq$BBl}q&x@CO%u1~uz4G7SU|g^{BdcrL*`1%mFs zVC3g`Q{U9xWB5}m7f<)l{Cl6R64TCY!kwSoR;9+Vw_F3r@L1w1!_~0oc|BILL5keT zT8-3Btg79+gD=o5MUue<2!d2L_!)%RC-CY*Hi#O&1y@jI=49DevHbd6=lXA;9HtqB zp}na14>iLBVLHh@TJrfB5reIP-JSQ@+~?x8PTPL4%&AVrMH~2HkBiU73PjCA6gbH* zmgIdr7sl8tfdTH*3g{M1YJb9>2Rv{52++p;p) zBoi)7@5b<+!hSrd^IT&B=gObE`qiPzNQW^a^=((q`5)=bGTDHM*RPww~rM8)R zx7PV2hFy^>oOq8_d=o@k4UO)C;c@HSFJ^njSG7-p5}}(2t&u01yTu^jh<w^_n-GANVO)Kt>9KtgV1o$>MI#?=Vdvtz*u^_J3pn0#5% z$?4LnJT^IH%NjHT)7|s;cM{~gWE7gwX{w1#ws`$>aa8!Jviyz=d%WIWRI1U@I|Jlp z2>mML*zfyva{2+286Su@-fum>Q6kJehGAn@ zGR?ED`0?qdTR1Ke>ZMqXr8;{UFRiB0{fqb^=lLX0cT@j9pe%2~` z**^AB8CIc5w%EB?Wu2|e!8m{$Jd#vkw}r5EYVs2b>ORm`_zxOgS{a&wENJ6f{ZNVA z>bM2suL8x@N1^Gr8x(&j%32jASyEY|DTtaurgcyn=>)FZ(mpsmSWkDbX_Of7n29jb z4EH=2;qM zf~NY#ibvFJNh>Ume+pq*C1Dw=sQ^X{(p2bX7L2qRtHrNC@kEn?&`66jW^n$N@SAua5GCe3STXhZiVa zep^=ZIuGf>Lh*B%1l7orsybY0UM9hOVMb@i7?uE!7F~Qj#w*UBx|nrlM1nG`8g54Z z6ocxzXV#5B*30WlH_Sip8V^PSu-z*UPYZYfE9YqrbiBi9PPF}g2$%^oKTE5rD2l5r%p}faK zSB98+!&_-uot-h7^=HE!Hl+|Dy?x%l`tqVVNp3$A5v60`S6!MK&j)ys>*MP`dBm%7Rip#x@?jOp^^(j@*v0%jVaTT(;c??>Cg9wTNd}lxPFDj$1goU zA}Npv+{E-N5KQO+u%P*Wr>r-@0KE-Ej-3OCJK=9Uh`=}OWk&W9k} z)FPXgIZu)lw=M8?wq;~=%n2`9N&IY0x$UWFTSRFBTs~VY1;a=rGzP^HYe_M4Q&&TU zI4Tylv$4Eso$Ly$y7P*koCtGqgsNQCK)35JKfo5!?P{Hr(@-EQZ_X@zJ600It*6zf zkk^nRdMYF+MbF8eY{OxA#^e^ndxYnIhh~aTsg25k$>lCKi6nK5CuC4LFQ{UoXsEuF zx-v^UG>w%flckR#1Z9mHe>xNI#NA5h29oEOO2IDnTVb(CffP3VOuDfOj1v}4c4!N+ zgLWt|p(NsF%Q0$>ZA0DZ7&DVRHN@~xE0gglD)X>T{9{=2^LL`X0rHgW&3uh~fy)2G z+B?OF5=Ps)t8Lr1ZQHhO+qP}nwpQD=ZELl=Pw%sn{cv*cPWH)psZ{Evl9~Ev{WWTi zZ|JCaKtQAh_K3VdORx&PuzFhz!#g5w0^o9vNB0t z8&MjPqLd8S%N$D=?p8V_dp8b7JE(Te?QExPmc_2frD-`&K!-|w`^g7SwHdQU6^1Ah zFNj8ztN|lng`)go2U_>5Dv-laGI$1~q)hkophX1iLE$4J7 zE(}GLG=3_37fjAi-5pDcD+PKtwkncNV(IpOphKPu`Eis-q7x{S@72MaKp#O2%`4fz zLY@*9qw_lW)c6sWOb#57r)L}-1#ma&5!1}LD!j5Y?y5+Jh-p+PM+zXtF@~p5EE~>Q zhC&oPwV1^U`3@sSAQ*O)@Tp7}(!d_4sUcxU0lq4>nlV#2t<#On&q<{&c{%g{G^&FDb)g- zxoG5Uu)*D>Jujv%lA^q_>v2b;#!cpM6g)B3J9!W(ZB*I1LMzY+ZZXoHus;2zxEy<$ zWP!u7v1`O(A9?EtSGCjmMg$)RjLhuPnpE zSjHktTJvIv4P)!cbi{SrCCG(d!xkns2J62FkJt6Xcm6w--Cta(b1kKPn`ZrvYdvm% z{XqgJ(DKXGSax9{`5sqX+Tl)EI#GTF1n~P4)L#%74Nf?mzXZr1*bWU-dR4$$CI>R#&&ZJL@YaQ2Ei#_f@j~xG1zT`xkkD3<;>b zEW-1K=##zYw2Z~TKJx)SG%{`f;P{F88(y@u0?t5L^IZr%sTJ=q(nvCk{+>X(5H2ao zh+BsJkl<)OtYTPZ%nv-Ic`Et?gxG|x$F*@~M0yI)SZZ!0*=Gq?kQ?Az;tmTwfD1mx z3qFhwzSggVp$@6VP9J|~$h5jGZ0LPji!E`gd4>05ePzl1=frtC4wZ7rl&jQYH zfmdF7J(l1+&L*sMhpZF4IPVZb_*TFpfU#BU-G~bzD`CfGOvi9YG=!zqyJkylk^=Fb zS<@38!kVN(l|Y%x2!)cEK}pB3v=C8+l>rD|q7F=d4~X!H2=RP$=u^)89~$$Al<^^z z^xxI70$1E#CEU_^hGJBOhA;%HzmtW20iuBwBbHg+9>6h?KEy2~vn3{JQFW`BR{Nw3 zk)+)Ldf-JtOSY--A>~EpM;f%r1K11LYD;;FCB~(X$R&5n(tg;o^p2n1+0QF``sX9M8L9Y2S^_D=+u}9 z)kFsx)SOMS;>I~7Dxgc@bnUiJz|v<;eRF|yri z6A3USY3k}fwxxWHq@>PGXgzTGFTGE0SYOXYv!Fd?b6$QG#QNHVP>393mHh8i$pG%5 z-;L+DV((Z|hruFoMSZj9b^%Me`Uqb=GJdCXyO&RHv@w_Bx2N;FAHk0(FN>3@p4uXI ztC9bnpXtx9Mdy1faIMa+Rp)zaaH-C(Vdrg;>0ZLq_`=h44vqot8_RGzo?7La@hZp$ zZ3hkuzlz;GM7uwaeGjJYuFqtz`_`}3Eq`>ly+yjaNp*MX>)kKEhkD%o=y++@V&q=- ztwMcX0}AM!@O%*xbH!r@qm$2atW!jZ%RhpHbN>cd(+Eti4K8^SUz>S4ATb@N58 zmm1@?M&3OuddO!D$ZLXhPcqrBMh&;y$aIfG^*62>p05FeeaN&>LmSl83EgN|+UPN3 z2DOR2HQ2>iN`sn&8N!<5azwTMraJK1Fr}JJYg%zlLs*MuQr{)`gOfG7#*Aof-I|yy zFUAb5Ucwq^(j={(yEP(boYpMFnkj3fmXKTvd|=rcper|}-sZ~C6{stAd(770`3j&l z=h}d+$>-_Z!IjD@=2{=G9`ql?=D4qZo7AL~kRTHSe@wAoT}qCdWDK72rZ=Ln?2K6@T|~rg#oV z364sn`d0;qhGoNC55*G&U91d@!rv#KYX5?U5(Qyl6~uUHcj&*yi2ckM*Jz1|Q}Mzz zO%WS*Nfta=xR^BSNx~;e#jbKia9*H5Yfb30xk3b908Q&s>ixQ+C|)QnS1i>gbyBKB zLRO-L;{_N((5!`{0_Mc93pW|GPR{9!@wScBx^o;0uBowJxH5TS^F>3~#+l(evytI@ z95U6f4)^)G!9K0>uTJOZ5?T$;Q@*T)>=g5+nbRU(8fhYvkRkBETRqkyC%mna{aYV{ zf%XKV^^lCxv6@4YwGbS(j#H>8)ro*L!$r)H68d-ue!K#H|3E?;>=+__!W^!=4(8$1 z2foF+-w@L3^GNIp^GTx3ro&Bhh0+DM9R|TzlLo+7c^QHGe5x~{TE^u3Pa)7rw8x%(ww>N~@TL6ZJ8wG3lm$Xs3dTye*C#L&nJ zhdiCTU3o{GyR-EZtP*G!4mG3g1MT2|-U1}Oh(g~6(RS0lKl-9iE78Z6aZ-e4h*WR= zrEO+FwMbHL3mbAKE5QuTH%F3ssh3(ngb;h~jfehgs1An~gKM1>6>5x*$4?F|OvVcy z;Z5IpUl6E+gOYrxX@FBxpSyJbD}?n7pb_IP5J=k*;ZAy= z>Ff^LHt?a5t`r^mwidAyHAS!(S1r746Yy*U4}9L^RlE!))CfV3Va6MAPlgPboB&pZ(_1sfO9D_~xYpn*@v>v1g7*Pwn zpaUUoAqMy&c75X z#~ul0_VA2Qe~8Kb=WBrN`zCv@gQNM$CKcJK%o1kUvyTG5uEr0XBh%y}*7zuzTIi&k zR2w2L#0h#7I**MZG5Xpf8U;fU5xM(F3_kf+K9M*d@+jQD1C4#-#W{layE9IIK43{3QLL>l|mvAsx%XYD67|7rWs&uK9Hcwp##V@6YtlD>gRJVezZ@Th(gELk6*bq>`zM$|zO`BHPv5n@7z3>Bn{D-+I1MGWARU=k(6rdK)-IFkT~ zNFt(AZp#-sk5ZO^T_hW8=RY|&M(S2HJ0?vQ60k;QHc2_)p|3O|39Pxj%3`w_lGvr7hc36laS z`$SatDkn;D)V>lGzBI6*s83<0i~9T|R$nh#PEZjj>9&-D*RmFFt($_Ut#1}ECJ`}i zpy&h;aVE@vcb;i>HGN&_oOgfwP@g{g({MKoqU@L6{4^=LVe>~`clU~*ZF;bTanw;d z+RK+7Fq7cvBnv{zml~k=#3`E^bSnxQX2*z3U?c8ZE0aGeR8bFeNK()$f36i$kFu5^ zwvnr}t5u8uO;~bQE$zFQ;Or>Q^aC7gdzWU1*`@3jXmI3ZOn@j}@fa`{1ww)ro$`yl z3*I#b!$amzexZ$G&^9pr6~>4nStO^%VORZ^X6{rdr2dc0$?=%7@Do#*e6=9Rk*AY# z(|kl}6tFZGuznL_O$YeO7SI(ApexOk`w~#g8t4)ecx8x}6ScaQwff9epGUkt6MSXR zIPN1MpIeYA*UbQ?ji@mJ)yWp=quNEBRWr=^SmSKMY00yohhzkI6_IWcu`ZsQuat9D zvoQM|Wn6c4l8m*XE>`7)xRZb*!DsqgDj!?)5&mE|ptM_T2oGP>k3af5{!h;m?g@p= zRhQoAr_;bElx5Gx4q{KNRfL^I#BKPi-3Gx93LC;tpAy+Oy)q;NLS-QA(pjY?@Y%GH z)%q-1g-K8G&YuSRkdT_PK4v=?0c5Lo45wZ?er}I=t(7q1ZKv4v+yZ4ck~- zryiKQ=O;V(N$`C$}XiTm-QPa)Ic{KEe*4 zdyjD7_JoToS;GRoYW92*j~?G5a044|;K#mAZVw~7!?9tWUwD?dp`9?dGU5?lT^&%K z6=i$I&aTak!hW`n&;?F5jW&r~T6EeLHlZe$tc76VvMEAB8+E?zuWT}9yEBbJC(%smjlo(FL3X>}bBSPu zfJ?$-O(bFDY&4mAr_=1KKKwD(BPqCA%J(}`SJx%P0d_C!$HQ5b{9VpQq|pQ7v!pdI z*8?N8oP%DmBY@q9)N#?1Ua%9Uae*ga`HeuetW&OdJBsN7M=PIIFX4l(wIt>c^UhwY zlvnTONz}y_)L?2(&B|D*WSkas;2s%;M^Nw4vBQZxxU!;Qu_ZRZez0-vriOv%g zb>la5i;XB24%UN}`f1(1t;X1bRqn6_Ux~%=0_}dI=59kSyry|1{EIt_vEd20B_a+1 zEM^7vO?n|iK$$DDSyH5TQ`6r!v8&K?`@(Y7lq)YcOyOU<`)6z%3K;uYw9^~=6Db6T z*F|GkT$|H1({M%JJG8~2)6xD5&;*{RJ(ifKE5}G(6T_W?hEap36X+@oW?mH!F z`44}|J0{@8rFvO!0L+C}yReUzWIk0h5jth1oWnx{`#nA3Inbpyyu#kWM|>+fZS(M* zx4h2i%?ZbLaaI%wjx}p?iUg zG-|GF6o}bavKsoIeyR)7;X~TmmcI6XRZ(Q+{Z3~T$PHjdz*0m2|$RSXjOfCl+XCMYFYQyofTE>?Mds5|c!e<4VzG-E}Pl8 zi-r$DYM69aJNI~K0P-w!aOMfW=_8?4C3Ed4dNj~bBX8==3C1Tv{W>tP!>dE2fy3AjCg8>H?_p?Y+8JNYBK0)vpUkSDbV!IWaY&Syazy1v zLpAiZHBUR=nIrQ^e4fFd^uvhdNC|Z<6D}+huJ&0BmgI@G)&hC)4iM`Wh-;cGSZ2=xI9$Nhr{Piii%qOgL~n}HwdTZP>ph1 zmt+gp45o+#$2%f#8#jP^4UpQ`NbkA>i$1b;Bgc3NglSzPw6733Hc1-uVG^h!##Drj zK@eLcAK+EeYidRWYe>b91hdBWxhGrikh8{Y#O7D^4_2pT70!x^dDt(QM!CYP>*$jn zdau(Hg|{R)Dcxq^PG{z^MP66-3gJ(zoiduHO<_xBT7kxd0Q&xR1Q_Z7%&jCI)DaEy zVf8dSiJ#97n_qiNFVOPmwgx1B3sNu84ybGlx9e^mVLK7=G6paQjgOJ}whaAlUB#u5 z%ubpH|4kI1lqq~;kJ4EOD9|pP5(TqRv~hZJao(CSt_Gz%YhHa@G0Kmu~C(xh#a3mTcwu$YbNa20f%%du<{O^j>&Pf6$X zs!25^=4H5jTsx;il++(xT1+;zGR6r zI09q_b=4mP$ZSS1Em`w2xbwo}M40zk9Ic`^q>N)=^(X}-k>vuT^@6E2q{Gp+@oa7* zW0ZukyX2o4S^O~)kr-V>=C!U5%{=C{Y+y-cT5$%ov10rv7AlD;X`}a`tI(JXTGI>2 z1nGVQgU-yuRa1eIx+!_t1{oVqs&@eH-fxBK<7m>g@F|WTKmZQ z))Ch&oQ)io9UC9&ML2&wHp145eS)o;C& z+${7C(_V93&G(M-UW0KLeua;=} z6RFqYj+>t8vg*Ypa%Ka{LCqjV0HH-vM|A=r`*mWIGOBxrq0iEV!=r(ByiSvR?3|Al z_b4~l^F%NhVU;&xFN$N_qHEdq7p^1p#!mwgitG-)7@t2J@+QQ@D5sfX+=q4|bxOkI zu<4V7l!!G=11n(=(kh4&r(eKdCd#Ff^)Hq8FmW;Nguh%J%b9p!&HsY!6kC`lvruns z4rW_2BnJ;)AJVNoHqJK<4NNsdRlQhuH3m*CM* zeo2?Pg{t!hD+U@A%n=j>1qp&-g}|RJYM*r=JIlo#(m|G0uMiROR_b2ChZZeF&?6&o z@-oHt5%aSQBvEX?ZjGc$_b;qoY~%j6(Km&}mb{;;^o5VbWMCEoMh7}SGdjP%2tRn{ zFux)slLN?~c;!4JT$2O5`?QMDu-s20#dC0FMO8{#cQ5N-yyIur z!HtBx!&|R}8CLN^vt154l<@+-oE6;#^J31P8{OsdqJlj+yb9pSjj$zTc)~`lkTuA9 z(q0zGnO3}G7>B=AtJCR|coJxp$QfBZWn6Lh{IX2w^wTb&)=_;Jx&-tFY?sp{h;)Kr z6AJ4s3MM9y!?dULJGTNO^r6vr0(A+;nlI2osjV^131VA4Y_mF94DZ}0*i=S1*$%OT z`W~2^ab*~!K5zVSnkKHhPB^Ol<6IsPSaeZ7N^m`;?EGgvAFodMkeLV8ru`tfQkzF6 zF&hJRZ0hpz6+k#zH(iO|b?5(jAhgBf}4(ZDk+>LCIT5N(qKz*|RE)lW7pg#MvN^+e?!UuP7QIAP;vF&daT{ znPEewD5OM5tGv5YC6Ugo{yw+JKf4q^T_%((vDV}TeZPAYKb}E`XE(4Pm1r;je7bpv7V{L59mc$JyqHF^n$pZt?udiP`O^N8ua<{5qhx>A2RqRrrbifhD;m_~w(xZwTzXL1&4GK3O z(YJJtQiK)c3+5(AHMoLtmQ6POL0GuD|5fS2GKNJY+?u&f*(k2P_|tY3 z#L0T6C{>gGHKH^{woGXV^s29huXK5>n@Q-+k{2pZjtwA0p{zUy?!}Pj7)E|Wa=%xF zFYA%nCRU#3Opfr)2*DqVyDGd>R(+AXcwzCjg^@e+d)%2s7Ow><0{?>aV|@HEa_J zn*8nN9snRE+3@Dd%B0Dt&q$ z4IgT15wV$oS~pzGoZqG-8wr=gc$n;NmS0YWwXUMP?lm-r6JDe-?jUKVFdX4Dv&dLc z;+%8&D%(okkc+bTOR=*yt-328w(>%O>>YGHTy($IOq}2)(a08fnSuVdrWXdO30;F> zBWJx;^8}gIPP0aEsu9tL379r!D%SYCEtv=GsB7Vs9Pm7rxTA$}W$QvNv`t?PjTWnI z=apSFI&`HXYK-yWkk7u8&puZiJ;8d-y%FFnMU>iMR>Y8Dfgv-YP6d`HNvz%=WC!Ha z4YV)=)?5Sv_ugK0FCJYrG`Vj8Bws3x-?g&N>8wT?>71q$h)yDQQ^IY13c^XauEsd6 z%8;OV0ev|(_f?A4k}Toq7oz#^J950YZHZSs33HG<2U{SL2XS1K^&O)q!8W>I+z5~q z6NzDWte?>ckupYG+fsT2^$>aqOUXVgAA5Dr$waY@AYQuxUbJ`=UglAe3lnNfM$lR-r8sM%5-l z3PFgBBtn}0*cKtCD78tjmW_RmYLJ(-V-XGz_nIkQ zl5xK3c#_13eRU%VADG#Mxjsit278RL7ivR2C~gs~#0cgS<4OXQX59YB`ceIiNUj5J zDHfW3Yy&`44AedwEn!&;f*BUtq2M8+wyk!gRrI8Njsu4+V{N?SIlv)3jkrPUqk(bc zbnW1oT?zsYdCZ~&cF`uWZI<9+ZTqVt`Y5caW_Hx!jGC_osRe=HM^mr1v7|m6AZ&7^?C=cnP@h{ zMy&XQU}PN~Nuq@#m8@{~5`J56J~@p&*SG1CeM2z$3{*QUC>pE=1+t(HD&4f*h%7QY z{}L?-`A#4QQFYFx;;H6VPjTo9+E^~*K$1R7E4z?z9lST3wM7wov^OJBQj69o^kY8*}Vza1gipl8z#WQEZ z3)S+itcBH%44xTqOPW5g4?mHW<9k3B#gr*na|i8W%pMpXaySOe9#S6Ktyy;a+l=gv zQ|k`M9-3S+>h|j%s&Jcjhq}f19S|M5cw2Ty&_(-6%+n!hS@V#Gz-w7|y4dNNUYU!E zRi4YGvG}YJRqk~33&44F!J*v8XCAdi>(L8+w!b)|T3yOx&(pf586B}!3G~w!KVo`Gpow}_{TGr*;@Y! zZogvK#jEeK#_sJNLG!X;WXjAaD;bnlG?*{e$Ke$U`%C9He@Rb5E&4?sn;c|86oaQg z-l9_Yx&%bw&9>+~Lj6;TPu&wxpT$YXapk-)Wjd%7^Q>wjHrc<&NvqW8mtNsC+u73v zh%Aa`eT|QFjuQQyd^bse_h$-@f_!1lNibWzaoeCl==r6;&Jo5H51|a9 zk`)Zd{kx7w+_EM!nm&LHy0kdbfo~#{ZbB=Z-Z``WC(y8tCN<5RoPJ);%mhylcF64n zPD>wlAn63$nn~o)lo7)41Qt)6NRE;ar%OozRh z*t5i`KCmk|0g*PYv0-ZxF(w-Ev7Wr}V#8l|rx_?}R$8Kz+BF54>scP%*gTTT*QVre zEGd+Ql?#ujrC&mpND!uR-NC*n>mMPm#_H!}^2nyfD!0y}OPpJ8vIqgEah{kwZ7d0> zKSQuSC05+=Cub_;%z{?1vIAY?1TmU9?Eu;dV}@CZVU~K3unD_rN~N5E%Ar;xWOUk+ z+bY*&cXodG9FIiQ8a^(PC;06sK8;gxf0$5@?A*9=MFz7++I_zl#+CEEMT^~Svq~8x zhYV&7P4PWG5HCSwl10NaP&7b|BTCp=q%{dVya@S}eU0Kz6X5~T74K|a6v^C0@LD{I za?aT^uoqFRLpJ&4WGckKTWwwzzsk;ASF9KwtNMGsbu%t;`9l~DyQm>(Wb*MV=I$X_ z3H4Dv2VALRgChikD}-;Ebs~l!2gyiUBqIbswK8o{FL-uX$;9!}X#uiFQlmykpy_A$ zVhUAC)sd}hsTREnC+85O4bB1ewrod|MslOb4bqcQsAG#`OpQ>~xYgfo_^obmoaq?j z-87>0t!Up96m&yf3C?B^kCWwegPmZ)N6aaPx?w~os)^~#v70)wuHDd8iWkq-?u_ow z8skft*Zyu8zDzC+x5f9j2;%z?v>92hX!8U>aw;kqlQ#nGiwsM6vG&)#!Fsl@Z`)nx zf18jDoD8Iq1HOjQW?DiQJBrkULNvy52 z-!#cOgn&e!l+C*`A`JKlgvQ+!6HZ^Rr!WqV9{ z4Rs6(zS(1)=aS0I60e#sflqwLJdE^y*^b+~$0K0LydNpo!!i>xaC=H+B~KeMaz>!n z$G1ZiZR&hY_?+I2Mq>3w8CSoX7zHXWTR2zc2-t7KdZQR@2eW#kjw^F$*QK%8t{@!W zbqBk8A`RMi#rmQ&?E5hNQNj6s!a$r5$DzDH94X_`ul`u?^?Uw$qs}Y$u^V~M;p!q- z8QU#x|^Vc55>xdnT%3nj;cCBnnh$k7xH-e6{$syqZXv zc>JgB^_TD@hxD8M0Q6N@?H{6PS)qJXq*EM~AMOn$sR1Gr96z?XAUiSO+Gec<^fLyA z$J{{jUx=p!c|jmLx0$URr`rrBH@}~^d#Jz6JM`2Ssfw*Nh;_Jknj#$3IpiroHGiQZ zP0&)5YK+NIl(-IPC#*`xZA`T2QeeJQ^FaI2Jz-nqG7W#NeI9*&V~@-D8yKB4a3;fU zp)-{(L(^_83%qR@=@amcZw@kT9s#Xh(7xN$cSxXl1zFhy@omwXyX^Y<7ex zo2@2PT0_}oicp;uYH8@I3m3VSm2EZ2>n7%MX09a8hqmav!o3>7Jb*g&Rby3LzhN>d#`a((tK4Wo!EM+? zrwbXIS{Q|ll^?Q&2c?h720ah^pA;1=Jf`KAHflE8)QnFGeLqA8rWJ};jPrL?629h z>F;cnOCKTlH#&0JXhR?mm+igu;*5uRJDmKK&_wwxbO|#UuMb(fl$$v9;j zLheTus^%y?pAT-rec4foTg7CSgAHQFjmTkj#AI4YW#qB(rKS&itEopAkw$8+v28cp zVhlbc9P^po!VE$yEJ;Q+<5kEOk~|L#IjHMfa>jhQ0ukI6dl~k<0qbMgQARM-qNzIA zXm4q>vf$k(2gLiJx_YiOt4q9M3NEs5KY;&XE>AF5wS4?Fm-qg+0TyikQ|5t*qlJOB zh3EeeT_yd0e;WZ?BXc`PF_T|fmVvXKs2(yq`5oqe$ zzt|Em@aZgg?3UkRK>oKF6UG1ga{XsO`~PRrYLwS)7x|HSl7dTJ7HOP|J|uCHR`@j_ zDQeV{DamEeB8F_E1Gln87oN+Rx zGP-&|fz_fTO~-Kj98?BSXnQV)xPXwP5TFl*b5R)>12jDU%I~P%lU`M#(VVu!0;34Y z>QBVZGbJIt6tYvs!R^M4)UIRI5D(^!1fu!)DbMb{@-sqcL1p~BX+I3H+hky6S)2KW z?sy4(r~^z<`w%@Uc!!jW6Q*o`N+IQ^nCfz(0A$jcN;*ZTL&!cEWYUX=hGy;u6f;tQ zDF!Hb^PyJ^=eiGOc%&k8Ezz$_@|wgo66oY1}VJeAXj{~|Z;`auMw@=xJ$WO!Xm(X|&$AN4~jO*sU^ zJ9xRK^YBs{KVK+%4a<|_)chhY&*&MiesyOdcD(G>T( zCVo~_`UoOH+WB-%Jl7l2f2<5FqOaM^-+smLOHlg%2mDC<->(d%|7ugZ8hqlH)p=M;XXZch0IKQ&I1@qON z1b>78D((~#P|nZ*s1D~QgV28dw7ds4MaA(Gg;2x1_jrBpS$o#gf_XbtNTge|M0xP& z-JTxjG*oC)AgnA?a$LJ)h>81xIqub0-4YQTud4Qv{fH3AG9{#XiAJ@14kQjlXc*Z% zZ(Iwd#VSVj(2$~2ieGkXn2YvQr7q!Yx*Vw@9Jh9ch+fIQ^$-dhZtZk!EmN{4u_V-P zlBV;bgI+pXciow32ix&H!Sy+vo0o(oVFMMD;^usUB=xvk`A@LxaZ3y8Z}?ryz&jSR zUBtJ_$!gO*Q`For#en}B81gvajo;|{Vcv~e_D3QQTJOH2#SfC?tW&3evxNX#M5@z! z#zK|)FlMU4D5))??LO=c0;+vb@MOoQ*ux(x@;=A0#SFaUUXfV9)H!_W{(>fnIw=bf z!Pk`kojRFvgPVH%+i`9GThNNw|BGkqKi^No8c^=qDmg!2WN}$rTf{PeB}$T7QvS>m z5?Yd43uc+6Hjk{vQ0)6y|>xdyX;|F4N zZSmOZ%)vY_w_L9sKMzqKflHF9>QtkGW0uL(I!1(iLci^>Gt-}mY=9aC*pq9nABz+M zQzL`ZPGZJ@Xz33-Kx8(amKBY{bSA{E_2!!usLLlaCKQY;AlN~M+Qk;-5RgmrCfeEI z!$)}_^lzj}-;K5{vp6`r0r#i`28N@-fW44wUosA)tf{Tyf`wPFZE~SQKLH!!Ft8ya zjk#75F{~nApsWcg&{aH*M1$w9K#4CAPRO>=N&4B$+j1jA0bjOu1bMqzyiZ-ELh#*& zivSk%swkPQIO>H;l^ku2zm>#V?Sw|kdf_!U+>fV7>S@J z&QC?oT=0{_Yf-(LEI)PoWq#-OyqLDS2>uJv3Cykx(Sfa0up&Z>!dBj^7JQXI-Lsxj zoF3t>kw^SNUP!=}Xr^L{@+1nG)D$a4?C>s<6x`I0zeFd18LVP!W0Uq+OaibG8 zo)2NsAQ`L_STJ+O*=iT4NG4C)$ar~i_sk8{LQ}Q2jY16LO=OV7>WE4|;NSlJMqw}W+R{k*%HXaL25RWQA*a;R#$b^@1H?Y)fqbDBQT$)>$ zKiV@r2KTB@OXk|FI~ek1x~DC*zAYtS6Gt{vYmv5PQLC7GvfZ+DI`=xOTXfApcIs8L zUm41L3pn#uDuT2hCDuI z#A|bi&pRk-iAi4~3YIqr#QJzF6nMO@F)*OV*jkt?Vg0<0zSN8Y3wsE~3cGLcF1sLx z91*>!ZV8v!;>Y2Rtf$=hrs(>{zAulo|ELzYhPRs&eUI1X04$b)Dx_IJ)wB$Cn1-So zFn!giW~RPI2G8=+m>j3CjPXfzM5aZJnw$TD5m)*l6P87GuS^hocn+<_A5=nsp@b@X zHzYyQ;$=J6Zs)UNNvJiuU&Wd`yc*t2h8@`vAphiOmlt&EP&H9bSKmO&&>vDpWu;Vx z?TtiN8M7<-ab##27jg^EnvZsMCAhQW&PQ%O&bujBlL-5b>8BKYyZ@p5cMl$= z{(%|t6-ecw?X^I0d>5kfSMY!x@>KTHlE|e*Axrr^vdE=Cyu9daUhUo9!-dq}#a-PF zB<%2y!CVxT-eokWxIhLLfn3xYTll1FgE+Tebqqljr_q6sJNy1%trjzHLt3<)bD5bdo_Sf zS#%%RE4y;h@?YAkUCWIhBR2{L&K!79bBjWMolSQ|u~teBoC_>W<>9*43Gp~MeaUA%E6Q~e2}X^2;WQR~2}zTjyApH_I<`F+h>e*zOekMTRG{#;vvH_o z?u(>Gs4WKFHB7%h7K?}uC9qp=X~a(wcGr=$)=Xl?QvT-VZCJ<+$^acSUo92CaU# zslm$$z+=M15n@NU<#`laZ<>k90gMt^b*V*CluboqC-kJ)!By!s zirWH-a1FJhpzES9rg`p4STnLRvQdV1C3K&*@%cHRVJ3kiCX_VR>C@m1G{tPXR|$>O zG2=;vc{eS43$5O)C?md{pbr`&P* zn0@{DYXB8}Nr5aHwJ}gF&6F#w##3v-Cs-}clrvXm4F|?A83)HXfke8R=Yj8;D-r)Exdu!D9k^}j^>Sro#CqK`S=a#AO7od_~) ze5F|kz1QGRAzN$m!HLJLmL#cd!4mnC#}GDRbC=3&&qRj!M=h{0S9gT>8HSz`v$h)~ z-_~S&x`@|P&e$KINbXm$ck;!fo5=ETvQFV;y(9TpF`f$40dO6EBIRp+F$tAxebEoj zl=$Ay=JD{%4z+n^`aR&!m+!Q7AL;qtK4EpC6nFAws}Rx5Uj?;`M=7a~(&2LVaLw$hafgSOSq9a$b-1ESmZL=Lz0s+b+bz+p*qOQG2%p#JqeWS4u|&0=9kkbZ zBL5jUBVG}@Kht+EZ(fE)D2DEl6cJ@$4^4+#7HfzL z#1TDK*eXOY5^kzV#Co!c(3LUW*m599lV;Iu1Z@4}77rICs^o28x=O zVCW*BW63<`KFa26k_QBKiqL1PjS=nQvI51h2AizQ?mgnaKyv(XD@!k%ZnFW_n?9L2uk9%sp@&XfbKw-Lnx zdp8d30Q)DBJ=q6NdVj6{W1N`TA#~n*sx{$kTL!G{<8(zPLNv}WQyBRu1UFY;T^l*7 z)yN$T9vWRNpZ8`MlDkFL67GPt?Dkj%-fO)~Uk%RSBuD!@ee9VSL!8(>QHUq-kK=t& z@uNcyP(I9M+~B78{jyC9k$a8HJi0F0(&@X?=$)S6Kojy46~VI5v&Zr`cjd?3YaCor zh}VwtrRZJXv&T1g6Wwke-mY2|e$TCP&vBdRo!>JEc6(|4hF*U33EfhAZy9ua6%73t zcYFBTwFJV$v&T_X9O&4fmjW4wU|OL>C5asM#T7ASvA-SE9TU5vcsV@ZfOSJjxG1JT z5xb(a4`0Z#;s6ficD7{ZKjp3Ft^-px_s59UYC4fz)(_d5BA@0tU(*wbFdkL8Bt*PTe?D?u%4WU|Eb5Yqh89h(u>Dbce7BPS5N)sAq@MrvAw|kcdk} zGHur!gs*n6kQvMR(6-U=P(GgFHTtiHIOis3V6!CoX;*eyi59Qqu@Ocw$IIy}qpoU= znpm{uVkSs^rtT0GhN2WH>gnaHKcfw4WS4EV^~%?#-BY z6g5iNodW4r(LJDHfVqCkZUuZnMsoQ&wDhG%oHPs`lEDnnP{v6%8T?3$l*E$MOD;7HLQspC43{8nZH-3tqmqNRO7og6${VbCNLo2xZyR_?GS6ooiPSBbyEKN|Grpx`Oa zO$y&+|MFg7W0zE@Jp707kM%DZMq8fYmTxA`f*E>So=K-Kcun*Sx{xU!jT>4o{~Mm^ z9=G5*-Y^?P&r~^2#ONI+(TfYWtfyY8lfCrJVf&xKVh+KYXi2PI!fSM+vS(lmUI~o6 zLT9GqO=|Lx1LWkW#xUu%ERB4l zmY8cUu*>x9vJ9jtGJPF#zs9ZEs!Fh8tVyMd&h3xie~2#FfhWzyuz&s>Q~r0Ni~RqK z599xXtz09|BLyUYoQ?K4oM9eKDhee~e+TrN>VTL~uFq~$2rwzrsLi@_9ooYcf%@+| zTRAX4xzjcv1WW81cE+iskuv28WB(b%@r z*hyns=ilzN&)MhM@7pofdYUgCqoetKnAe>1x~A^fIZ6m3+*eXL%se>2fkFGuz%eAt z&ir$PN4!r7rcBNOP!(?8K7!v=O^+#VQ|PRvA(w*1C0tp-N&4EF zr>H~RO}Tpcgfg{0lDImQ)PhpYs>GY+kp4L3d|&+I@2c{;yXb`kpuWKdsGt4cYiCS< z(~Qn`RwlMibRfS!0r}IJQ1eVVgb{Vq!|noPvfA{wa6{ z_H*g;VHfW3{RoGGl9h!kia|xadXXvEO|Zo1ZIpcM1qo5D+|aXdN4QvIauqGZnwx`P zs?rsVn`C3`V2J0(iy;g8Xj29;4ft^s%5AJI3Qa$e1cf|o1ac?8wl?IVc?PLSr!lX0 z9ikDoVA2fnrE}`o3U??mU7R?7ChoU%oCy15ijI>yNjKRtE=O^96g#WMU*V=m2ZVVJ zfYaGO-r*JofXu><&fd|^#>Cm&#Knou(#DO>$=tx$#F);`(TvXBz{Z-+$=1NiIss{YYqddPAHItE-6}mM}7hl z_?HhpsD^Dggu+eCiA@n3Zu{*A4Q9SCFL!udM%Ku#D8#ZASS8lq24piL)}h&AYQh3* zyf0;=6u0VeOL0w1i|bM7obB{aV&w!8w}xS{QCw52Z-Q6vLb>AuGBv>1Rv-vV0~DXX z$aBOWsw1g#>Z;@`-uD}rqO5HYDrb{%4!c5~r_b(9xW6Pe41}r8z?<#cxIk4tzUvT= z?I_{_p%cx?SLFnd3dX=8i~ZnAKD#l$AYIfZv)Lba6F21{BUI+372bcMJVvi-Szdiw zY+Yz3{%$uIaIos+r*LJY=!Lko6c|9X+E;-sSblkXmd>6nIU8@Gwk(WabTkCfWB6(M z=+@1-{KUA($9$l%NSBN^bXk+CHCyr^p_kaF^2@u?!d2B^@t7Mv(xA)4y8YR)!f|(R zmAduX``5kbjAZ*@qq1U#d&U^zDgh47ezdczpOkrwXN`=Nq zbu&*9dkCF0xrR=LTOy^86WD{Iv|Ga~D2^9U-{1Gal~&;@?RIt0R(Iw${{u$_aWYc9{D?st6%92Enw_0s2>6<4{%%M| z7^;E%w}yw_E7Ug2%v7xj3&O$k}T_ zu%<=oNn{(|;mXzSsrJ2@&P%N{>AA}@r;KiYBd}IWZ8{8;8MbG9}K?>XLRvoZ{@2?&h9RrKylyA)Avqy z%ERx|X9ov@Ve5-LeO;GSVRctOpxlgS$;0 z4KR4)AItZD_f@dJ!p2_)cXo9DPm{-X%dP-S{w^UX9kDV6440sKlmnqCUmgads2N6} zT#M=fwAT@;)>pG5(h5&$2c}JV+XZqVuVR+@L9w6oOfxO>mFN1jYU!D;^ZdifHqREl z;#;7qQ7YVC-$UM|+y<-&xscwW)4OB@%0@m>l6z8#df@<{^c(@NER(m3DHw$C52~(I zmt?52cLFV92MWm3+^J}RL4ibhXwHD6Wb(*b@2^Wo6CeqiRHxaHc;CbCSUmA9?RAu^ zg^P`QhY&fPrn9o$)8&~`r&8O4iuC3Px??Ta1Dg&QN4EsT9~$SW4X+KJU|qARQ99l* z#(F6iEbT9Xg5B~3CEV6jKw@tKqJ;Tk%~%nS*2ok2$aXsBnEH8CPYOcfU&`sfTgvE1N^HtQl-M$J;1~J=#{n~c-fZi`x&+uhY z3jkQYJUOYi;rqcY zkXR6r!nbfM$g7;>NYLFhIX7gIxi@k8N2e-Z6s-zgqo(3j zb@lQNa$pxlkmMlyol&uRo)gXASNX%`SsQEhc64?#<2Q#$wE0(aw7dLc>{aY`Q|}z0 zU@PAkIJUMsQ}DA4zQaOzzDU_AlS6UYupm0f{S?13T59lM$ZR6o7)|Kce98s+9lqeo{_O%6Rm-}R4x11+VmVQ4eo|n_T3XnX5oY+ES1;}! zZlKlCDt@!#kBgdcbnXh^l{ZSxH`~>ZZ-BtpFM}Jg`RuO-ZRB|y{jpdBPU}&g7O0f`y%0z&`$REV| zUJ%qGwLy&ICJ-0H8&$wyTpbJ?JzNPKkcquQ8U>8%4l=QDH(}?-SN9crr9lB(DP>|A zcT7Jiy_{`O7ijdP)eBf90c(J0)QAZ+1iV&rV$YVsc;pkGDD4o3u)XQ#X_s?{cJ zg+#_;<`kmaA1cecaayarcZLN@mEOi_1E}N$=e-bT451^+1%A&*GnRK_?Mw$*sh;;|AAMh+aK31fGnGqDT0H711+?bkv3ri2$ySeA z>l|!e3Dd6$x$^`#>Jh4B4Uok|N z_@uv>?;h0pdd6ZvpK*-pE@WXebU*6e-elTiERMQ}37gCYCbVAxk}Rax;-Z+zy&1{M zF)2FXN{%Bd0Z!N~+9DmEDCrY=;vYVfxP{!ywxl~?oA$XyVe2{TyxhsR^W1w@3s&H+ zGuqMs^SmHdct8-lC@7}OJ%}muyMbXsEz(fcVGl&@tOyJSy$`fe(@^!xS>Q;fs|b&XBfvw2)A{N2$`3k|tMi#on&Sx9fP_GZ4-+H6OG!4#=Poh$P8>R{1x zpA~&}_PG)JsJ^wU+{cI-u!@kVeopj>DJ^)W5N3U3WISXCicz8YW?n#77>kw zKEf3{`+F2_FX>@eq^pzIL(QHu$L{>A%X-+s#+#>qgyWm9^Kebp7~Z^I%Spp)sT;{W zR(b9*bm!Ej00Ho7ewy4&C%a#SrBeXokq06yZ;Y-Y7%nC51O9mE4i zCOUe?XRduS-|pv|`$u@CD*BpN=;ZGR4lGWuq_wdJW~&4*$RF{xcNUwMFq-Z`rZFEf z23C+r(W@cN^YiH=6H)?1?`r~pB9ox7$dT|PyNM1ieF;g%bGrpxEttiFemhE|PUrX6Y#`SG$Teg3Bbi-$ViGSVgd zCd?~-U-FG?Jevq*km|tu?`Ob15%3zu0wO^7AKzH}yHi5{jskW@E;c5%&i{k{$4>s@ zf&eN2;DUaFqZ{ae96(NvepH}nE+ENYi`w+1iS9BirLWa|QQ$(A1|uK;=>s>a;Q|yS zp+i@B!P3$sQ|BwQ=ljJu-r7+di|edFZlzq!T9se7!A%?>U;<*L30!mTF@J~m7xlXMT*ZzD2IJe zPCTA@_$?w>w{qy)0Y?ubXFsq!@KUA#c&e=-)bn|6JHst_jwzD?<7b4)&SIgjpH#R5 z9)3|l1?e9;8|2&97B8?_Zd<7r$3pcV^yt<6gWd6slm_GIR~GQ5`OwIa%)H&Vfel(R z$=#X7C-bo=-fHkuqPWFZ2}2U%3YRbzB*SeI9t>6~{Z_dgw0D&P7=6FodpjM&cW<=m zhwdE750DgIu_DYq^vTesZ=MhJt`y+ zfae1(L&MxEQoO`N5=i+;<*p{XC8qSPTmCY>4PBzgCXgF>UpY#Qd_Q63FBX{f_&7W9 z+PlH^VdEm!9+~1jShYqP!qNJr>|uZnlb+wtBLg0^;ne%M&{{7C^9- zZT2!h-s!S}NvV^!08cMnsRzbY|4`&%ID*Ct9gRKt!C%~%E36x_BUMrqwxVjZ7GD%g z(?%eX&x;Rbl;2GY-G=*&%I~U%tJVxnKS;Of^>%fO(59y$l(|zB8Uej-Y6M^EHYmjE zIjI3;l>tcpED4wZ;~RvnZOz`H`{vzUryk1GQ_M~zGn)8!R+;J8v5T2bY;`>5JrVyh zKD_}7)h`_|@<-$U!{je&ZTDHk_J0b%VadK<0uXyJ6lJHwZnN7T2mF#Kf+|l?|0dVX zPG+ZXIKO~v=SuZR^49mU#OK}38>HHgqsJ%z1*am7v0^mo zvMT+)qa<8DsAER$&EI^WLqb@{RHGD|k>O3D{0u%`nJ;5$83>8hNuTqGwr5Cgd%2+r zEkIItU(kN@n=m;jM8J${g76`HH}%3B@Gsr>5oWD;cb+EGlf2hOL6|NlWr0|z_$~DA zcz`OPRw7XLRL||+{S^r}HNYmslXMmqKOkVOzkr*zGs*7Nn~Ti)J$%mq)yRY$^8ig% zg&eAv#f4(qDTmkrX_N^E5~P7V_EW`v;9O>uXQ}3sBECrD#aEKp7Hk-Ry*Z)1DDEh} zoZvZR>{9Y$bbhI8t9=4Kr@%?sX5X;QLwHRc>;3?)VO&Qz0iCkHx`&d&A8KHYLX3BU zo$cEA5D^Mc{EKHUDXMxSoOLhWWa&ryxTze$2Of8YyuZWzTFl31Pk_B!{%G&NJ5~Ny znEz$(zhvM4jP!p!*C!#giWz^QAg;*2JtYKFtlAGou_t7S4d^Nc7T?>nNv^WDPFK!G z`~H&sQy-^32Bx^oNQ&Rc*Cm;n=}mG!TOK^!@1cD`aFh8-#+iY|lenZlVdKWl19Ph0 z#|Ynm6?kBn7Ni;)I#wqwmtSkZHeck;kWOk@U$yOr!h^VF1hi1=894O<;rgte0V&u@ z?nZp%R*WdA5G=nWqa5c=_G5hA`^yZbO-~1Xyer_iZSMz_2i_4kadNYrK4kbak=Eza zm4MRmfZqjuq8yX(VPW~u)7$^%pK)=)0cSjCx>f*wta8h_;I!3yLd znQ)_cIV9BwkhbsV>v{wasTlR_9U4P!0h;UkIZ=bFyS1M(600YgC%LBh0|6MAO!{H7 zu4D6vfz4-|+AXNXsN+kjrhECG>^=`N5u1M9WP59M{Ci1Ax&P@R41j@&KVsnTKHB)- z82Im)-~CJa|E~RL3(Y8!!x1=a#!OM7Z+}HyCMpP{mu$*E^2Vt`{uITw?DEaKEJ=zK zp8ErW3d1odyh0d#g5@qMJ(QP~3{xvxkoMO%_3Kc;42jkYyJIBg*qO7Kc*nORv2=_t3H)EZIpkexAr&T9JY^Sg~;|BsQk2)5Wo zvhG-krhq2m<^Tx7t>Wo1qq}o>Ozl>i410UJ{9qgIimq;^j;SbUQiHOhAR=BgPGqwh z?ixS&Q<2b@mXu71cEwdc&7V0ZqW_8mD8J$W7pj}cuQ)Kk&U-+~AFJ2p-um4a?wr!< z$KHbn#SRj_86fT#U&f5Ha!`Gn_@(^)8GC<_WtCUc@Y>iNLb%etGqe{p8ZJLN7Pjr4 z)74f&WDqkQ*l+a8wfg>+{!z;Whrgu%!XH5(^Ut#WuR!o`<^Mk;fxxewvBCG*1zH^p zdBhrECL*i@YWJ5p_FZb17$K7eiIs2dY`VQqIj z{k`oz-FN@B<@FM!3!W8}mz49x@Ft*^aE}#NhE|9xfuTQ#)od#a%n~&Hx111Z`&lrM7^Hd1LCL$)-xWy1G6qte1+gvrQ7)!1*krl zJFaGoqyRP&_YIKbnubl}ILbCj4|uD(D34%`($%vJR@z#Ym*G@9Uk$*OYzCZPZv{0D zt{ZZXkPgVl+_l;6bKD_*CI8H)TKr!anE4|H{$UaDKQZv%kziDIMII0dpa^Xv{AO_A zFhap#zM-kk%M{p`2%`>Lj*x}C65=DF3>NVW9`02v+fvs2Vt;cSvicyUs76vwrf*E| z2eAiF`&ZCip5-XH!ohkG_>Subv2b)je1a=#41+nW2U~J1(n9GaKo}YT_%Bsw9-ZsF zac-9nu4$*f^c~`dT;zb-Zf6me^GdI`%Wt6OXe6~`HE_>CCIa~XDXB)>N5m6VGi(B! zJedcLRDrs3yJu#8ypCwfeaQK?Z1tX^67%;p{&@NCm5zGxIthRhpaXg|;TuOZfc*mq zAT87BDKcmqV702}EiVN~chdw9Uw4>}XNCbK%f(r)plF2Thpq=4CL4A=m5$@Ee ztO((5lw`>?5~|%{yB!%_jF!Oh43}PC*Ai!MRp0d=7x9=dtxyWD7okmL&eXyyHHH;n z4;YSUe{GeDO;zi7hj6ur} z7wKU1wMy7riN@0Hr$50cBU_~dMJUKQ^QdJ*1u1^-fDLzVYDR6I~X?qQ?@Bd5=#AjeI#RflRSFh&<0arlmFxIL^S%W*O6UM8S6v?TR$j_GZ&g?Xwh-QeJ<@8Uc=^rxkWlWvxB`rv z`$tFrhwWj&bGX(9j{jljb`={yj7Rio)b^~$@Ay`X7BCX-E#T4dEtmXTTLBb-1YD?> z)-qg1`#Q^KwOrpWy&VV^qEND@>At?s{E0K2DSnh$Nom^FIxenBZYHj}`_sX}$q%*$ zsRjd%<3R@tBGtrc9gl5qJvX1-RFq{FS6KC~T5O)+tDs21Y-Io>snR~(Q*KWX!YJkF z199z{A^R(Y_9e&09&GsO2U_N1xGf$F(4^ysJVJF2HwzfRhK?tm(BV&0_Dcx-Ugsje zs3dgf4E>NqbjgGNAYMHp#sne^GnqB`X6a>KI zrKXs=dr_Qrqv03ai%e?GYR5lpnK}g+Dyz6DE3nw3>m+_QbzQWBHH^QHpQbQoZP44p zAEFvI^?d{5N}8l!M1Pph%JYxc#twqZ=qn*1 zwV3O&$cUX$3F_W3sa~i*by;)--lFL!hD@};;|PMGoJ{qYMPSq-5)yW$xzafi^~ty#N6<$4rl zT1hDvWpMtM;;TxcQYqtDBb3)qtoUg0kco?n>@Tp~ebUI_rX@`KYo#7YI$zf}v--bV zUn;}H7O7H;m9rdc^@O{6i~v>5sk#$u7LC}>mW7Z?(MH7WK-#VEchGsQeruijskbPC zA;co8SXEBXGOIG3@j(aT$=pl047y^6`5txPx!wxp+}`2itDOaL&>*vHkRw#4RM_90t)!q@ayL*4JQ> zS_M^mNg_8XMQix6i5}xwkvR=HE1B>Bk|I8Ai}g&HA%$6L@Uq9#SnngrC?p$k(6vG( zDM(OjilqVf-G0@;4)c2NEBZjZFI&=J(Io*Rt?0lq*BD;oeAExwI3I<~Fe8b1xd`M~ zVM|&WR&0;`naVK@m{X;>n!M1ioI+L< z46r(SQS1-ZaySV zsQhrV0yUz+Cy-)39{!ZK;d1S8ErDXwf=UlDbm)ML&%)#<;0iG(C^wp~bo?dC<*Q0L z%k$+{DznSS zW*_k64tKJX*YJIP=vfic)Otw^8e z3%H@Ax7-v+R4Rz;ld!dhF8fnHK``F;IYdz*fV==NJPqtKWenCEWbH`G4bY3uFu>$t z?hwXDIwkc2AFyV3Q9}brcgl$ol~>yO3ySGSfRW{nnZ~^cRgxZ_4VPJlI24`G@8R$! z{w2H+(v8P{Rbc*HZvBUZOWDBeKN4|;^6#>XcRIU6JUh)HM2z4gBuD+>AoT556a3yT zEQIdRq%wQ#wERF?G}%ToKD1g3w=&3^khE7N2tyK7SWgWs^LePiBmqvumJYgKLZ(^q zME#xUwzjeLV3TQ)P2NzkE4lL5_paw$Azagu?-v;fo|vZGs{zKD?ABm=C!IVLF{6k4iey|ad=aka^2 zArTA+*6pka$LeaDlgbE5lJl}d-KY#k>h2Xu=574AGA?)THL|t!6l|1W@_O?soLt}r z#t6!%juWij>bYCsN7AeeaTXp5UpONd%4i-G_Dq79qah4UsmSllO5r~E`6i;$?ygOESu7ac0sAKi(uuFXY5*b;c&NGsc zjhYohXhHac`mG4+M?*AZU|w0)*>RHewQ4S{ZMutda&>6vC-R59Ij;CbBDedzBA zPG>w$bk92n2UQ>Nx4vwti=I(O6$(ZQr#0;yuF8mdkq6nLKA&;%!mX0*q8P-4kr7F+ z;@^87QX`^c_AaMnJFso$oOj?y1Qt>6VwL(bi#?^~uy1eCBf`2KC~m0Kz`h!_$jrY;I;Q)Xty+100e~PMK+K)s+_%BqcK58keVEUZH(g$zRYtyC^P}&ZEV=qZ1 zBmVj&G&kQLlXl)@9~y+|vpxDMG`EE;MVKm?Kr<-3tLUJ1%_g~Ck zP`MGV*YBS@u4xXk?#EW&4;FMjP}!>qDRHA=OBBVax=xLl2nr4R=Zt;Bsx!<{_8@Q` zk|qL(wZDHYUO7+X`)EFrYH6~Mb| zaWNWF(359y`(Cl>FXvxWrz7NJMPzHrT%M`=9UEHn^rt>$g zTtS>QgP7>{9Y2XxVI4NCMY#I2QxaZ7LQOSKR%7ncLvcY)F%Q}}DGe9ZHClAtlVgwJ&%kI+O4Oa?RDfw9)hjPZ+kOUe?N#VzfZUZK z>0$bdD7L8URJ&Yna8f~F08#0TiulB1^ zX6Y<*a?>UUs2rXw%CczKCwuClDn!qgQSK>pch+$8!|(%#Jmxo(wG?bm)2Hd|K-9Q0 z#XfDf-MZj>HpV|tp>0gfQP8q(l-A+l`ND()i?Ev1%_MIXrpVyWT3Rr}4p#%80|$<% zxkT4(qYM{YBMJF!SQu~YLA7zvsHf#~R7rGB=S=!6iWHpS})%5^x`TUclE6aN%`!i?6mkA7Uz*( zWBF_qJK3mV?uRLvgnEYNRymHj@GKtIHx?M?hs9Mk+1LOsh*vmAFJ)Kv1t#W7c#b=3 z+nZ2F^g#d~hm)Fh>Q|=xRP#VwqRnY(6A}*AHrrTHKUbD$p&`n0eR%x6r9czc>`M$4 zwJN5(dak^hdg+wBdSSJ;L12$$pbE4ZdAX{3o_%4DW?&uagetq3L1s@ga0w?A-jr1z zsRZ}OKsVU%Z(C$F?g87A=LBvbQs+5a&$(`J4*DvDl^(Pa;S2h9WK?cA_^dc!;~ zLfjC1isa5b$b*h}61s_L!JbgDSbM^`k=Cl4?#Qw%&D)|1YeI2}RE?oW*ZXHRNA?q! zfCIW1M_Mx4sO+UGTVz<$YGiLQh)`LsaVm2Trx&hNmLV!CfQ4W**ZQ+|u2gzan&9NJ zYu2smH~NCgevn(3Wz}fR(8Sq}vt`9Px8}zJ8wKZck$Nwfoy0ju=X<7Jw&fS*zk2u~ z#d~G%g0xJANbyp;3z`MdJcjH(-wF~FyUSiFtl8lvyj1Us-4N{*?+%jqY8(tW49khX zrRiF?5k5)`%KD{y;bTOw$VLe4fD;p>=+GCO1_ooT6&Q^x(|0w!R=5D(}}-D z>Y93edK4MCL6P`P3l#%rHxB71~uKZ4h2gJ%_ey27;%z1idXfqzJ4 zU(Gag;8gu-W)L?emN!%S8FGkKntuT4s~`jiFlR?FR2VKU@g}@1A}SZV1fsot+PA)L zEa0_njjxIj2T-sO7?2~l+9c$k?Nh(?bYlt>_~XQuK}N|y=4R(Z#aTdYS;v_XOE5{- zu1d$Pia6pD9UH`LQN(R>#BGqqEz)py+)H@)#yz|dZM{Z{qh@u@;?Z1 zrjph#V)I6}WSZ_`WaTlpD#&29h|`b@zZdOHEpYdDe*1egApn< z7?`)xg;#wTRSzg!0)NN+$O)$~Vuo_2?UL`RXcddFn zJ=Y92FLwKc!Dpg+;7&U3JzOi3uME`p4_0TeO^Xh?te&}ODItvN20fKg45$aBKPnSs z`Y?$S8HKdLw82?upXVH1(8UQ0=Jv#xy@d}`&)aP*a-+i4%2z^-TP?4t&6&M%KlX*M1|>%x+x>1oP#rzuzEL$i zvGArnsjht-O>#T39ISN9iYWk6lO!h=s$>4C7D-SNEUl^-ol*}pBJy2K-!ml_qB$T9`08?~ptez>j9$aV0m;Xq|4Q_&c~L1b-*-mrS5JLY9 zmZ}EUF8?_dSr7-P!|+22u47xS%P-O(Jd4*90W;ysM$g*Rmh zOyz_bRvm`*n&bMm7B`_XBG+aTpD+e{pjEHwt3~t5f@y)0(+rZIZ2$%GOA#rE7B(3= z#Kj#2u_23rHmJc`Dq5cQnhXNO+B2tufF43cXUr!Fzr(tmCRr{B3lAV8yZ2471to3y z+$JUoBlv5FbU$G9Vu>;lMGET}RtvDOA*2XvL-(+XnNlmJNpfBvrV0t$k-67q_BxRb zww+RHi@tr>()4C>@86b29$;*B2hiZsKhj`^ziDX~XAA4UwdMDBdG_xQ2sk<#xC4qj zMpl3EY$Yu_WI&KBr2g(gQ(sWrZeFH>QL1CrKKE7Th$ikEFF*a$H!OW%DU75O+Q^4= zujbf#9&pjy+>8&@n;o@7b}&>Lk5 ze`pyI!~?8-vJ5z4GNp-<5F=3`%vkb5dNEwxHD|1>-AVd_ogVz`z<>!cV?D6zI(>Z( z%8E6IV`gG+uNj|}HqBRvC*5A;B$KLSib-0wA;n18x_DZesm2vpC>|ClW$jM3W2Kxk(xJBErCWX&p1j^s{TzmE$K8h%{iSC85I%DEfL1e2`QnpC!d#fv8P+P->> zWcz7WbIFRd(bM>;cz_B#DPX#LpzNMc+d?aZF+S=Jtrrc6k)wi{&WNSRz6-ysZ6ld> z5<7@@f54BCxkI6khWXOj5+ddNLRi6aAU-LToQ$>#ZTz6YZe`$L#c#u4t3Cxy|H1Id65Zus}` z8b0LAGaivLpMD@?ua8eKza*u*dupQ>AZiNyu~4D^PkiY&)KvgpYWZ`V0 zVrye(Y+-6)U}$af``@K4oSgsV2@T3xzlIIof|6+GM5;yFzNw$vh^Td2g_9Fl##17w zpfVgy;f?CIuAJDyJ#714_G5fxRuE_I{_Gpikd;b9nmB;5(>vkyoXK=>m6`c^d3;Rv z#bMRNjYy~LteFLgIy}g(VosIDH+7|_QM<~p;!<<|3hzzQd=AohKJALT<1Qw~*KnX> zUPljnJ4eaM=27vgpmgdk_XY$c!obUrRZV-Vs##@Ewm(fv6KRit4@=RYjg;@gjYD3H z41a9@(>1J6<~VpR?CT0xhLSDpqwmk|FWvN4_oA4F+FLNN!~L1#^uib=XEap|z$i1Z z-6TR}Yu%k7iK%8G`ApYju0{k=wkHfogO$3@gciAU!k!cg)zseLx-Y&;E7;w$?O3$YEa!~N~GD0=h3tL zV%ekg5&UyNb`^QpOUab0U!+ z!60XlZmEadb6SlfqbFqKMm4 zDet|vh(*4-%<7fFK)JAV(U)vUdz@Q&Mo)F%yaw1IdPubzKGorf8&7(5>$~2-1o0xF zb<1cfN!e!)4wX8-v7Qw;j!Je)4c8aVkH%PvLxykJ7d{0$MAeWs)~0dIY2VI3+VcdAw9 zSc5Djq2RlA-K&4d^izbUZxo5{CMNrUJQ{9e4wY^1ZCr|r()4P|*xcQI8! zt^|en6Jb~TU;6kTT)RSXMHWQ?Ri}ssuXxX}nLJ>^S6aN8Qlrpx_e%$Dh)G0aeD{2i%1o7-7-j% zB{HlUL1bJpn(|Yr%TRc3F}A4$&t77!<>8Aud$FmNiOW3m;~_kum8Dn}rpPJ(&SS0p zjK+8^8huc|u?L4|--c7e*lk=(A|EmsSFB||HnaOEt9y5nTHMN^Fl9IWOmlhH;M7J2 z*QXUs%XA&Jl)shOl|eCG`vj$U1Gu=7UsfYS{gIC$z@+EUDATE5|yFT zJdFQZyquOp)ih4OY(2JASeU$Eso6{}4Yu`RfT8OfJLo9NT9cIQwWZ2Wk)S2vzWqrlLj`^}B25DkCv6Oz zsfBjzmhn5aK`ax#rtTN#q1S?kj1F$d9;q4(?|_|vD^wm-kQ%1d2pQkOO|_@1ZLmz@ zNa!HQZUMN$f~4gO6&mpdlOFGh2(=3XFdlW6PoIi8!?ey;qm>h3FYQlo!0C7iU88E+ zog&UNw`70n;>B-q;s+9e8oG=jRvNv*hVz+tx^2Pe+`f`B`j9e46}jz)C49wZp{S*x zk*Q^+k6sk#af91xt#xH@66wt+A+6klb zki)}g=f0h?K-`1eyjOQ)U3jDikJ;I7-?g<4XgELEBq49^_A}&;Hs%6u8R~NZ*z?92$=TEN{ z#5Zq=&n1Qd1`qp~LD8QH?Pb=;g^to3V@1|x+DU`t$y$-baG}r)oEZb!b=FMWR9Zl? z!GiM5va4`W@g}VkX(x;bahkj!u|$VU3X9Bfz(o!lMXpawLZIu8=2=LXk{x$`3U!8| zf@3~amhXqll*u#nO)aHWZUPAf(+5ycN2ejKYif~k@~Can!!}S_kFjmC`l?*66h{+> z;-lGM8V#+Z_hGQ)2zH}jR}inJ3E(PXRAWetBQurPj_B*Vfl)yGyj?TY#z53CVZ5RE?i?| zs8a7_6zhHo$I*5~N$oUE3Ej?Fg6M6cHb9BF=@=RVp=8NmNH2ui1Eq_8&-V-FtKZ!! zQj1UAGW)L_;9u%`YPssD!;HjihHwztP;OcGF+RCzuxR61PB0z7b9#o}$zmQ~O3-CJNlMl2Z&3fQ7@wtQP`TBm*?!(y@Z7&m63k2m&;8`fUcp0-e0NQIukg`zyWi#UR~X=ns_`hN>^&lD5V|JadWAi2~9bpdhlwvh*7dZWxZ0z<_mn~R!bzys=mEuQTJ*7V7JU}oN(ww_G;kz%?omZ zC$g(Ft+kU~I@PdNmRllZu2!<28`d*T4tT7!()HaNj1T?AsVQbzIU6RM&e(+Qi7bBZve@RK&=AzeUvxq~)Daqbqc`beCs! zkEOpJSlojtDfJ<1hoQ#ub~7rfUZHh~XOom6ya?CnVdl7hhRuuR`=yLLT<5>B128-O z$11}=3hye879zGrcE%=u-SKZw(NaTELw%ElB!Lwmg;re2MGBK>lGd^b5AuXH=hBvh zw5f;w6feZco;sW+P1$k7rlAe9+@kut{&CMS8w(jx5C(yFEQ9I!Wb}Jy-F=qt#_KKH zmsWDdd|0gtPFIm86NRc0u0)*%)qN2KWt*b>j%_rh3XPY*3s;v#`uPkaW9l_p=ue;n z_9nsaBP#J)q%H;3#LjF1tU;q}=r85nh=Nk~Q#DX^=$wkkv{_E8f+;D$ zNx8nqEJ^dFX^k=pH{`KvEHacMTWI60;6}eDwV}w3@nT}*%gFF}7Y60f2MEg?s9>2( zwTgc=TttiNmr(&^p5aERLU}2XGeo#C8Jp@)80$#}>^^A$eHIF!NY0;$zVHSed}Mn@d?MvNC;p1_^R(yF zLqbY17dRejAObfMU(4B}T4hR=ot=^;O?ABOXwN36fYge}%<#!k?h$q)T2BQeCt_U5 zx@prR9~xQ@V((91qF6->XYxq>553SGU3ioY=+J~Dm_3!JMrKXucJ4UDfV*jZm}tU& zCzu{uhWh6BUwrL-VBvaWK9N~Wl+Kr_tT>2FQ^g}_G)rX_FAb3OJQPA@{2Z#VkfH1_ zN-gMekiD5V>$!DHe3o{uNQH9X~uJM6Jkqj&X{LeYmwhAO2879<|- zTV^njAtiT7da%rruc}7CMGSa<<0zV;(mvBKB6 zW)jd~7D5h~-+>iz1!c5=6+-bLV+~(7BPBO}RTI$7)}1@iE@ zS7tlJy9^B3rmWDqadwMK-@U^2K!`k#ZA_r_Y|45;$p*W43V;C1j_-Fs*ty~1_W{ld zhOGe7Y`v#XSrya9SsHwZjpu!jk@u0XO8MX&ST#JJbfB3f6LZ7Me)^Rp+I<4&g1v^& z#UpOo?w$Xr;SOEtF&1R(ZHF+Hd5t(xlt5w;cfY+3A9|_FJJk7$#Y`4qrUvSZHhO^z z<{?=k(>fTU7~}GeH}xrDYjpOy{sqm|I@xW@ct)W@cu4Y_HF`_iFd9_Iss0Kf0x=E~&btr}D|jjEu0OOu$ z-{)X}0-6@UJ*Cb(E+3@)cvS{*gn-@`cXi#8idorR2pK?Tp;b>=~^b82%sP zP%i(r`!TV#`kLG|uyk;BaddF~|5eTu{EzP7=wSD+f8l86>}qA^0zXoN5JZIZZ91!} zxj&0YPaE}UuxI2F{uDZeNMhUabgRk1Zvzz-gR;5L`#WZpp1Y2qpCPbHUuTu{aG8&M zVItGe9rK?5-ks^GXVXwy-!Phe6w}^oRl+z6HizoFj#?!YzJ0<^RUVgqdK3yT$mDdb zc}N*@`TQ9~yZL`-8k3~4t^Qw667%)>KMS;R|HsejX=mG^uBWiZgy#2^^S!n&O99vf ziEWvtQ%3=+92f8{lXfT{^J|>bMRT3t+n$y2v?TQTz^VxnZBH&4hN7Gt6u-xOBRInmK z#DrdWry|7p#S5FqeO`B}G-brm+irW2s}V&ZI(N&Ch=hyt&l2E z!u~!`EU=5?smlcia%N;6!|ExsT@L3@MYrd_7Q?Zrw6o!gEVwYZ;FMCH^dRYd(_y%C=AQ=sA1_QQbrnB7!EZCu1m<+lE~jLptU|!*$nyFsxc+{Z}5c zeALCDu2G3ZEN_2ys_hB@ggNumPqW;&tan{+uPtF+dOd@^IY|v`4uRh`0y&OVhA>;} zT^KZ|p!COfvLG79cgW@OrC5D5OKJcpyFaf^`u%mDV0+{cdD$Ht-XXan^lN;54xETr zKsjqe!_%>uN^(O}u!cgp{A)6P)~ig&mVDm|VvhBbFWd!xr#wfJc;?q1G(roNnE6a= zK-ksCd*nU%OaTV{n-@eUBuW(Xm8y(D{nMi7_*(S;M?ty&{lkBS5yt-{jQnE~|BrVO zb~86Ob5?Y4uyqmhbaZfbb@?ywTcPRYi#mkqd-a;mTZ|~KbN{AUjM|85V*AUUiUN6 zpOtp3H8VJvaPiBvB#raR?<$p(@3V_C=X*8Cr+T$sQ*TLq(){^%`V449ir5fVP;1@D z&`3&SKxLY{XLl_t^%#P~=;M>k3Bwo*i%v{Id3~0Xh*I_IU~_{GAaB5y_CmZNP-ira z1F=*>6`a?Abd6kTLjJ6#!djUV(7IqcI!$E}9hinrfi^GdZujM6))eT4>}1bnb0)rA zjRL(P8%%23;2IgY+S#5u^Pa)Bus?|nj!WV_cvwqL4pg_WE#7Y^bBMcbsCP=^&0EQ` zRvsgy!2~w==Lw}6BWOA?WQ>|A(OVUSKAP8aA?|y|nw5#Sr7N4X@&mg?l-rWn?Pz98 zGg>zab9pqk@`;!xn>W5RvgF4$M?-Gthm5sH7wPAsS70z=s!r=$>uSCqT?dLaJu{)! zwL9j;AjOn5F=wfV2FKX9_e8!F-xJg#>%< zQMfmnlfFIZSV86%^ne7nTK!<1Q6{8bncM9{p?ff9PM*o1*OVPIl}60(!GIj&SWH=+ z4kbG6nExZxQ@_j2i4$In6YIbR2kzDrSiyZnYDoV8>1QeK36t*F204c&o2-sjOw*hn z$Pr3`QW~%Fd`(e~7SXv9YL&{ct^d^&AvEU-awC|3RXl@R^x1yuxq`dAHezZ2(y6xTW@kKGwda@2AJ%rfHF-g`h|*lf4b1`~*%wqU|e=>Y$7x#6W~&)%Rq zc%}aakl8|m#XJ^qZDwbH<2?69`iRrajg+BTv^@+4Q+FXdA-NhtRxVXr4iOwLUuE9k z93WWYeFj2sjxs1yz?R@{=?z{*!;_KQ1>QDrvjNjSo6g57eVi6qo6`c-uiz!>9cgEMFjK=;K zF((Atb4%NpqTQwI<3VoEh(q$+jdOpCIrJ_7ZjF=NjlG7jcB2 zXp|iqNLCF?hmn6`<|E3y+@qtW-9HMa+QaKtV?oWi-z5_mUEa&s0?M?a%v3+n4+~@CPT)`@baSS%r*2k(jDxTe>+pu&)!P$ial;jR>ww% zIYbMwk%*DM?~Diy5jV)^OrC1HaeJNom3}fGvr;Qc1`)ekL+uH+m3ty9#n3r*8-AAY zoUG{)bIDXg99h+E)l3voJfyWXpxPIvX)Y|D(CpjS^K}i(xyQ33a$n#Y6e?!)DOXJ( ze~&WcvhL3y4^1sa#d{e~WzT7|KZ)lSwol0m_nbFIBsrj!<#bn^o%TB?R5gF+y0cs= zYk1THY2bDSJ)nR+`mxrg>?iPGFKy4+m>M^Jl@6Fzi|rE#P-``=uX#+CvCZxJii+eB zC4@eCMmdsK-8tmU^e)tOQL!_q7mtI_XEZ!+1qSqAU1EH*sN~3dVc#|I)MtHk_y`)+3 zL$5i;e_s$qx?p}tL*p(_4yv~&xkR~oKDR}7^!ZLd3Y*1h=OQvU{@hbA+%4})=&%9S zOTA;pP3b;@Wa^17=|vrU)uOwV)&Gup8k4?2e#s_%pBuiz^%RDpOszE7z0@l1WB_wi zk@r75cQv{6T@7GVQU?3eAljTx>+$OLX@n`nrFdbmE=NW}9MZQRa0(H_GBZeP$wTQh zqI{*)-iO^@=IA)Zv`P7;@M|2wtPo+B88*x0+wPkBRQi0+f9{78 zz=vno?>#zpcitub#2ljF5s?E&EqXV=&d@x9S!l_m-f2#81k?zW*w2z@s$CNygl~Gq zTjSuKT8m$Ud9XVgMPfx|;|;33rAJV#4pN@#im~DjSxoBwz~_og}TlH+#$} zK;)Ci@st8cEVvD-!Q-z-Q*g@1yz_(nP08M0z9sy7Q|J*7^&x^Usw^FhgZ&`o{e-TI zKZrQ#juHHNCtv&-7X3;2mkoZe=%v~s!ZW1d$5>UCuey2p$+$zhtj3qYtI&HJLL2sRPq2E^Lz;n`{ZV+KasxZ$bav09Nl-FZR1K1UZ|E;)Ym?fNToF zD4P#)(Pt!|Fy5@#k|ye?$aSR43`my07&uO(8-i*o;nLh^h6{PbX10bZS)X>=bBxP` z^9nDqhQ|T=Mf@o>_^H-@;%;Xfb`M8OK?|!0;V4GwlFY;5+=4%^y9CoY`pEQA70%$5 z_)XE!jDNOCs9SVqR$t#IwVnye$H1aYX@;;j)63_-5HjISdd~Y7I-bP%r}Xw8C*S`u z@f5K&a&eJ$Ff#p8!2I8tr`m=6zqIcXQdgZCrE09G=%?xBbbbcgOUYym=8?Od#rMm9 z{|OWlp7G>w;MBg-Zabs;vWv`yAnQ()KKOwc(p=Xje@>Q*br5P{ewF2OINst?_4)c1 z+w={iW}@1BS$n8vt=A^Jvh1SqiM?q6_fK9lkLw&#a#4fr)WvdkGH1&fhTSGp`C;9A z%!Q{tTGURDr=!;zTgc^#JX!)=io9S)$Ji5B-{5C|79;c&^F4?Iu6fn?8omnBj0@Zd zDjwXC>s|OZhDa;b)WVl9R0Btor%JuwI&ok@inC2jpgP>xH3741;Ve5KgHk*hA^A(m z@!=2Glw%Eb`(7&C%KQm5Rq8+pm-#hApYZ9t(Mfus71>^Dw+|e0mD%(=XN1Kgo->Mm zIBB2^Od(RvpCAU-@f&fI;OHC(9v*DvD{nvvI{ea@6fjed+cuWnJMmg}vM!gfd*o4p{ODfjX~J( zAK+lA3c`DMEikb)t8fUah)k{;{u_=N#xy0{voIEsWyQeh0LhHuI+)6tT#Jd&0V07- zpHlqJv_r^7n&%=V_2(=#OKrMeP}y3zP54=wf#U)DEZmR#nroa$)Mb*bj*I^He&uZ) zqvx7fMu1-|YFWV5Nwvak2HqbH{#=a#)-NNN1JLil0wk2lXOKci0<8#1n-;~NzQ>&jMj+WQGq)=Hdw6q_frFl9BG z_`MFvnaH1dJOZu!t>i9mNJhVb5)`RDtiq3flO!xiz7-sQmEmgtu?#2uA7f}yGjk(1 zTi5>`UlKR|)z%&Q6oCyXkbJpDMG~Sa5X4kcvI5Wh6^F(yOyqq~&ufR-#5-}h`0GZ> z7rd%pG>S~%7or*8+@jchL~k10e%Zw>Y#^(y|=-FjJqnNw{5j zyeoo%q*aT*Jt>ZO9<|7Ng?aN>GP%n-Yr#d|5W6Tk->T>|ZIZ7(mqk$aJd(z`C#uko z1NmgkU;{%!fqde;ZD?=>PKYgPp1>S}TwWYE3OQ_Hdk%oC&bk|GJZ_=hb0~H;pQSqH}-chcJ_h2VjCtN4gvvWXH zpxbO6@JMot+%NW??*tM^7_U#1MV7Vt#wisubX-M=T@d%n=@q4*n}P{|Wlnv7wgG^b zHG-V;48ktm`eP8B=Z&ll`p~~(@Ni0+QOU6Uius=oB9;I6t&uQt zHa4;_6LGM${dZgUf4@HJb}G1PX#NaDxV^$M(n{Ki^#d3vhBh`O?8^|sCDUZf5MCvW zo-6D27*FJNZAROS&jV8*AYG?XNyZjyofWOu-{2jKsf;(j5arV;qxF7z_T z0cZT{C9V3~w1#jVIzfE>iqn%!_YnId^qmvf1fL4$zXPH8RC10QtuB(A^%}r_Uzj#e zi}p-guvHVSytD&z7eMA_Zwm=cu?X103eT=EJm4k{5xy_Si+#ztHfZ%^jr$27XL8`P zHcw3p@HF;1cAUKQ?zm@<-L=7ZV>4irSjNbjqUM`KyQ*bM7~mbn*OZBZ|$U8d~#6^u}&m*SF1RbB7!f9Zy z!tn!;0g)0fWB9Fk$*q&qdl@lC;oWYg=Gfxmu?+*WhZrm7>8ciJCQj>u5l{p_6#s1F zk={{AnSc-NVGV+bTuD`cL=&4s^zNad_jQMVXol_g?}DzM4$7?;V(?UGIEId@?f5I5 zgBeW;s5oH~x|zT{729MguK)by$7hI+Ei2QefHh0MjslK2Oy1!A`>T=4I~p8;J?>5# ziC050mmj#lo~}aKTD(hqSTIBC)e(z3;;vYuxWwRY-ZdrckJakgqU*o_SWw|Kx3@1J zIGX_)g!>@N)SBnaRPfz0?Roh&={FZSB{E40A>p33nNNtSJ>${V+Lyth(!&!&EKJ8b z_r&oA<%X5NXC4j>mb`cZ_INXM^vLHNJr(bYIeDDz(~?Cu7g`#6`4b$pjkN@@CJ*E! z&}<$HuSrI_rRp|L15RvB3Usngo#UPoK`MXhY%f41=A;i<Ut z);qtB=D;ZK(MSSb{k>DLZ0e=u_!>fGO73Cdq!J&I%yKKk756JA&F`jz5?$xyy^jl2 zy48&Rqk*Kz7FqRIe;98c)44{5?=`UW6?CO^W!gVcPWWXHRk{o<2?=KnGH?8R$FD){ zX951!pMs64*~>$CplP#*Du63XFIkx%x0h9(wXb_!KRbl2{1C@NZtevZSF3qGP+Lx* z`Xpy~q>N$>`GLg}-ye3Uvv*)gn&kt0u?vrh>Rb0|_DSn$%I7Q{1{kyRr z!1}YE^=nAv{2zCE@BcVv$(h+XIC}}%epzT3xmr2c|98wH`@heKIJnunet`{n2iGqy z^nYFTFCw&={r@lmDm30)P?yj@D(P(s9*nD@VPNvy!-#9~6hXhEW=wMduyBp$sG7;+ zfV3~8+L{-ovk|Lyb3iFVuNg>UyZAyfzuBSt&~Y*Z`yzb*Gucm|Jm9`fqc^$QF^H0N z@p8pwivKC|D)Vad>~sD3t?S$QfB`tjkV4X^zY+wvRt0bp{YWJ#ke}89>9y z&9hL!K4b}M?QsgGxZcv#it7%37URo7?rhf|?7K4kZBG{!|Ly&(bcPF6kdu+x@5I$7 znSMR;EsdNh>66(BE!~1`-SP!l3g~uI*$H9|rZ$lHAWxeVVf>>Z-QkREtf0sNdO3{z z0TVn;*4xb`sO}}7#h8hhaIP@6mN-n+Lb)QbFj4DT?L6PKE(vM5F3SVtK;D)Px&;wU zruD%%THVQui5*LOK@=10BRoY74eAaRy$fQ}a%CmOaoDVKwnDkbh8L1iv81bL$iRaS2TM`jhso1--HxIJV=%c3zypO15$TE z<&7jP&5M!Vpk+H_Bp)!8GQL;x6ZE>-N6ir9kt(hL)lN9yG^3-x#-+*+I2S_~&dIl_ zSFNs-OgJLx*SDPk9p%E=P_U*t`+gbV5)iXzTG1=~QSTIwJHG@I4Wo_{)0fG$dB+zl z@cT)v7pn#THkv~qK=&Wl2e`zJwHqYwal0SNRi~_2>@am2?<(<8R2O)yT4uuwWY=AL zP8iD)kt|Hc|L&=%EdEoL@A(H+56fXSiObY5&?Q`Z1;H1EW0B3{Pi0Zio}`B{3gvP_ z*$}*J!UK343;7Y~L~9YfFS>&JE*VRCjzmL<%5nvo?EuppHv=Y}uU-jVracd_HE(19 zYg80~wNWPtBfBI`fOfjcc=ekzC?7;;kE3-5Us+#TeVo{2F#H35k>YBSrBH(Ud-hOf zU}ZO!jcs{_>+F+WKpSdVQ~!um!%1eJS3(Aq-MDdIaQ4DuKWW*UprEYt&&E6NtMj;q zx?RuKf$w#X^6NMl9h?qU2hrYRHmfGypHmopvs6sA?w7tU@@~tTt`e+A-LGNA-oVKY zI~%6hB8M9EjF`=lmIerI{sA>$nH^mIX8GajWIuhm-3&tMTW4&FDrft6yDl%S9svy^ z*FzG`pP4`qd3qabckH*@>Hq3 zYDC1RToYhYt&$5&$vpamB1GD@v6IM8a=B#VtD>t3n|ze3b_^xVXVr|wWVs!voaQmG z#84KM@?nj-$(66z=DE(ficlCL);T|1h4=GR^3g}i?^^t|=BCVXOf<3S-AfY~lvXnh z;f&$flw5}QeJU=4JlML;-UPJ0Ou#}NApLwY#Fg-uI6+(GhOw3M4`d|&4CtK8+3t*W z`ssXaa{gCQ;hjIHCLP&*=ewZHXj(TR)stlk;w|^D=;i3PYRD(z9>$Jf&$J!ancbHj zv9H2ko()#|YDd`b9YwzSu$di%2Obu@7!SIg)NYhQPkz?jL6mG1PspLfd-i~{Y5?iY zFiN)i?aEGZe2z+O2NbvIVBgI#N@imQ3@vu-;CO07*zUrVz^kG~r80FM>YQY6P%Kq8 zISRQiDn*xUBDEG)-*;6-F;Vc2%-g%>Uk=RVC;$rbv!NrBFYex;wKJYJ_BceB;#Z&psfSVOVygjNN5 zxk6iBp_X`q%jz#B)+|K%jdLfua|7Z6{2&O}rwcyiK|Tl2E>uonb0mHLk<+lFiuGmYb5V)eV`;>>=wySjSKlr2g;8RXqN}mctt+@SLQB)(!|=G z@i&;y8pPW34DFYgew6Ht(e;Xriy*Vb|9A4fuof-6|m$tVWRCKAv35+kj;R5Rfx#u&t4$r0wc@UG}4=YlriP z=F}z_6`FNINy5nG=7vj-Uv{0vRLjr5cXtlo?0bzRr8%`}+8Pzblqy6yFD@(#hVMuS z`8(t4fR3v5$EDIEYBRv!cvT z+P+SvP=|W!y9BFK(<#*nnsQ}4ZY@Vj96C9kP`@^IWmh_V-#f*@6J-d^*g9TQK|{i! z`v}VZ6bIl^1q17nqZQr>n=)P_hE8YO^4(}qVCctp7n^SM`E#QVp%hKcN?64=vtr=fBf_kiM3M^lAKB$ zSBPeQ)Fc;@u{*d%&~Z0Apuw!8?xcnZQ7dhhxkW2ZrL zn|O<8;?UQ(-&NP_P}k3=)V{&^A_|;I&^e-)Cd4tn(I`0P21o}gVp^C7ie&_)%|}~~ z#vNea+c*6Bc>-V-WiNZ8B5*bn^2VY_=l2L~3rA#IuRz)qRlwE0Chp6UOmJ+d{!0Y~ ziVD{Oo_FZQJq9Zw9FJ%Y<}oZ|w0rJVQVK+0IEfhUXTm0f@xY!WG+@1E77?5!$P~o# zj_K%7%%Kdn8n53&?Y9cTT!J50E~UDambRt6!l?*hik(_z4h6>_*t`z`wY~a_QI{c_ z8FxjRcM%WQCsD@XA(>U-=h&(Y8VUFQ8gg+IoujZ&*Qlyb@D{j3GIgY&u-ES1G%3nm z9o4aJE3bXpeVi)j=W0dQWCCpv{}Z;T)CfzCjVRkW*#Mn9>(Myq`vYM}{4dbOJex*+ z#%Ee}qg}&&Yj2TfZAg2{&b(IN(x366ecYArbtcLIM$fv%5 z2`5|@^hucN!eoTAUmtg{?*t9&+8v+2@w5ew4eBm6kw zP|?V;Z41uwic}~k(}5zBQ9A9)$mpXt^s2MpZbK&}*luT1Y497kypKcM%zx;61%k@plFDVggdOZa`I4bn+{ znuo5jmMr6pmxqo@X0~eXv9j{tG;z#r5o!H>pU$TU`Eb0fk=b#N)A$?FGJrWkCMZrkHrOB&74AX%z$pO_V2Jx z8+S8Ntr%`QI77|ti1|(SncstgXiqV)Y|S+f>|vBnEMZ#_RBVoagUOcr{oIe>GN)hnkziXOeA|_0D$Q`QX~=jk?lT@MzjZ1!$JUa>lDhJmc51kf}T030`|a zS(!vUFX0dqug=Ai={S|72OlrHjxs-;JFk9xzPx|@{Q1WFEyGdWu*s^Z5XODeks?Z& znLRB>3Y~JlnK`>Odw5^A&siC@Q6;lBOLcX4Eo23>F^l#xGp!a@UMUD^+1YII^+I=Y zn9E&AB)>aCJ0F+gpdM}c33{Tj2)@YB9Kv*Sd;($Yuj-^>rX0u^W*So1;l?+6b|87R zx#Elb0WeAKpn$wiTz}=!Se8&J(i=Rz2&*E##J{3Q$$4DYdYX30wfwgixlJxV~H*jRQbYFy{`d8rVgNjUEIAIGs*LqPYO6tq7x|-v{@PS z)m=BGV`A%)!?)ASs}~@zZplaBgoSsFIc|oa&A03>0vDbPmXh#+tWr0Bq&btxhuZPR zp9tfao1(#|pH8X==p^m!WosMs#OYfz1s>ox1i+NHo`0~FQ_2TBG!YlIhl_|YpjmdY z!CumcuZ34)xDru2;#a_}EP{yec(0dSAaoq2wol7AjAmz$tT z$cUNn1hkbdioStYguHnEVk{Xm@kG zK~@d4)LzNlSxydAHB$aQ@=+sId7(!((D;WlBBLgny-?XGmA9t0gOIb9X{b@62ALP@ z1PnPkSAochTY&8z)^cCy`wqci2amfkQN&txBzX4(en?SwPkL}m#T`stGl0!Zdeo3KJP<>ORtlU@@K)_OQQQU7Az-t{=#+b&=kzyeUxRhZ8Pa<+H=N?!!Uo4& z?NT>f`iSOMGKlrD!mU(9T^8JDwkBo|+-*AH#Cw_K(ROj1c_K5G6coKfj4EtBxVcNX z#@$S!FrIiJy~2QVpC$DYirqxCUMv}BoznQ1_uT+XKch!QE_MFPu7! zgWSar#Z7w>O}O`Ry{nUO*yv4)6A4*iJ|uM>YFA1OPmU>%{Z1XA)UKGnr14u;$tAh9 zSk8yXN9r?go5*c=I?D{6|Ma<+#4$t29w=^^Xo=_jpo|pD4^uOx@BdWCSIYve(3dT`c$3{(S;OsK%PhSjpg~^ zGN!Q(!*=A6)7YXSA6i?I^Aq>EfEz+k=nH@URrWS7HsZvNAt*vyDQOL<*@7b^6~*Kffwktqc*Gm#lC^xdv-fZlgA_D3YD-7~$es3wxbeNT_W z>1VgVUucp0Cc;lc@K2;B*apPdYlE8;uwYI)li&%wmSbaf{ETqFfj*k7^U7~Goy(v- z{ff0k#=B)Tp+VsldDg961U^7MbcVSRSL>WU>hA-4c%7uzAeZX1b0AkcT4FPJ`rEER z9jPtM+;C5_;o|I5p&uT?3;F)q!DSNsfGOYm=3Nfe!$<0?vzV>^ZJ2@EUmCk?89J}E*ECvFEj_N587TH{F-3Q&d{AEYbTI{SVt>G^OqWtygXcb2hNZsDcC`8abQ(PZ9F# z*wxKN+3d?j`oD*dDwO_h?&ya=oWWp4Obkp+PHt3%;h$Ho62cQCQqxunCnAfPtQ5hs zJ0E^j|4X+j10;F)a(7f4wbc($2uG;H8t+fUIux4k zatT558@dZOOohDR2y|~_*>m$jn6j7R?a0KWV-46ewf>t72;YsB4A>3bE}6FY>*GLW zLTDJ1=Y{x0K4rZ869wfv4P3*TEEdh0G;LQO)6ynS$qsfek{KOS;=3R>VDI?k?Mg8x zII4~1V#};V?VdAqr>#udo5?pnl3}4FK4D}ve2#Kmfv#_W~-4$U1tpk z{v<_>ycg9Z_b%a^MDH^O*7J>v^IKK%@06padoQ!6MVn0~ay-h}SUoB4WV$X3hGQh= zpg>>1!d)E?j5GE7~}$-#>Mc>gZD5Y5r2eQToRjwSRO2 z`$uNX|7-R9H)hs^_EcR!|F{}A-899DgR>zSvn&Bf32UM;5rGi*2%<2d2L4Lz9B(HB zWxX5pVnv#^pWkS$Z%}u%SwO+S6vPfx1vV5&7raT^**y6f=t>uS`Z-XT#zRa07=2=X z>h$?4PM3dja}I6#Uo!nVG5#Ycr&$$6d0(7-KCdi(&}yksFjE4kS2Vj6XF^#t9vPMA zx9WfR56N9@J?9~2c=Ad03WT6fgMzeKu;i+x&K2K7j&7tv!}@I@(yi5Hd$XHP5fJZP zqHjin9iu9K9~0wPo?n}tpPVYP5{0*tem2zs?-{AWiD7Lmo4X!Q{zn;5jHAL^Uu;@O zS4lok1`cb>60cpqV=Xn|B7#z)$%3~~-j{GoXkTmTjfgJVTceutOOxJEr!_7?Z1Ux) z`>%x3A;4s3pYOZR$vy_6v|}eO%pkOGVv3i@RlRzW{4&rmuzMMSK25_sfVv=IN?Zcb zx4AnyyjjtZtL2bNBoAUQxvU;C;aY#>fF$5@_A?Z5O1#K}w8rdBnbS6vZd=kFfL$9o z6}|7W?r4|^+2^QF{GxDU$Q7|~TMDTk6<2ox^5IeSJ5UA;&AUh`+B!HEuLvyFrv{F4Z$g~UUP8GL21^T8$T3#JXl4mbxHn{x zO7Nt{Xt0w|_<-%i@)TmyIX*+pP!8;Dai-NISH#*W7mEh6p{gf)RzoZ`*WlP>!Nw3S z(QQ-n*Xgm)Mwa(0Zdi)zJT~fIQA6E8u%n$~a%tsPKIY=%i{$3bfg%D%e`!)OQ7C+$ z=CDKtM?TcI(=&mOPO6fYB=M$z=s;5H2WQBwASE`CRd}7xt*>A-F(I_GO`iZC>|XAn zi2)HW$g%-hCjhM`<|L5=4MB%W{Mr z3mAc6W53IFc;jg-i!DSmU#S2h*r>Y*jXEw1Jjr$;y7!Os8F!50MSqxa{;@!}L4Etl zcJ2<8r-8HZq7b`z&=Nz+DfiPnf#nXp+;cW1VVjf`)x`mhV<9zVwlZj*&Zz)=?vN2- zMDVs_kXbbe)xNmR)5w`ak}swR-^rjo-+g?{nd>`7Zzs$B|YU6eA zJl6#H_6GI&Xql>99a}xL^k!Mc5vHr~%?oO+TRd{3TpKqV89ZqFQoP)~D`Gm&6-i-b z@y<=wkLsRNB-FtftHI&tSkJs(%)FR`8=T+Wn>8RS3#T5+eum`CfUAQ2NseJ9m+XHd-%x_ z@CR10lJ%}c)-o%yG%s0(2Acy(WGg{ny3&q$Yda9=<@i$u7V=XuqdA?4?al|u&YJ%jQ{Q7R$1|wXDx3oxgsopEk+%$64<7*;B`7ADr4) za*Z4-^>7%N_s_Z@&AuF?cxiS$nG4gykOl-na3A}RVR!wG)b_|Ob=tAa%ElwISI5PR zA`}$JO{DbW7SuoM{^nVjc58_V)UhN6;OlPX4zh0LyTmecv*LyXI7&ou$8GE4Uz2cs zaf~)>w0GrnKL7lzyvkVb#Rc`IL7q1?=o2Voz?eg!P_%?#AUft<*5h7Lt0O%erzHd& z4qN1L-zr(g_zFAG^;kv)AblCE)bxWAf68_z{njm^8l}dI=G83E=34btG2IpaYH($D|0B|h-_n|jH~3I(6XR;(z)IKWO|t$J5{WOY8lJX|x!s6x@v6^FKd3E3 z()*p}>aBxte+3(|M(o!;A@RE$M#odKfUJ~P#uGxqiB%vkD_Ar}&&Fn~+CI{B1Uy;E zO2o`ZEt|kfw2?B1bIXrt$g#(1Vg?>78s3=(Pq0|$^^l^Kr1>5r?RRO2(3HFzB!a?_ zqM4i6?YT@hLkdLHah8`ia@&7=cR57(@^(&XkS@P0{W%h@+K2IPmHTSuIb)2{r4*MBH2E)E41_t4-qK|9P8tsu@a@5$-c8G^V#($-22DmtEBw&vw|= zNj!y-zP9sLCSD-(h1_CQX~o_;Vi->=P*_aBSnyCXwB`!2LKL_L>_Qx_Vq9)YZgT!U zo4DVjm(Ak!yt4~Vp}$|zE2O08Udi3QUc)NfZbqWq(Wv&w3%qP1+9WctqK6je<-SEX zTN!PP8=-W0OO311OB;;E#hU(Mu;7VSfxc-_c(YbP)qt}5wE08b^D}dB3xCe%`Y?-> z+5P=wo$En5bi&8m_0;~?_U9^lxXR zyc;#{X7<5V9DTL!j$II&y5*Z*{nhnuaa;3+CLs&ay4St$uf4DSfvcO+?+4AX%r0?f z3ft6oYqzGTew=s}f8uH^iZD~d&xz0LJ=`B9ug;P9$t`BvhP-d?Q+M+-F<5H`mTi%e~|1xQZfql&x*cRFI7H`;}HYL*KuJdFZBZh-avw9ngS~}ugi`AbW`Ax zym4XR*p~1B3OFT}Jf(VSzGK#(dvNvm1UTK_E&jcC6mE6OzIeLEmJT}^rl-_=YNpwf6s<$cxj>?VSoBnx7E=_ri+zh$#Fyg4&ppTE3g>5!StA*(Nxn< ztKr5*FX_^<#71WBC8aYOPyB!r(%#%uL*t88}OTXxhY_hrEmaV?o+&BajinbaJOBccUbPt>3AQZ)Lm_pnOp}_{MM}p1p;dMf+4zoE%m_AIV(zSM77bVyDhicSyG{EDu&G|4rU+(bZ37} z!<2ILHKNq$dDHyHJDFAykqSc45`3@_gaWgbxR)2<1XmZGDodP|6zrSJ@l#(Cx9f`8o9J_-+NH)&ZnLe6kA#5wwME?RZO+)t+~*$eCWe+#R}Mr6=l8AAW2W7 zAcs1aU;n&Mf;bne@gM{pi9Kt16yaMc+Bp zhhQ^R=V7qA>PWV0*Q7n^S#)P5$MV(-yeRG?5LQ(_vNJA6uoL+3;q@azafi*LihDq# zA~~%<5H(gceWNp&U3JaxZ~>cJo=QnSI$lP^SB08|s+y5DwkAGB@7q z^lcMt?Ep?_OHl8^4X#p}(D#!GPZ?@)C&q+X*KXK5iZ7f^vMFi)_N z-&2?W6_J*TB*3^=&KmO^yl#zvq1j*-!_jfhaZp^FJM9n^;3tr?06zKab1m(~H;X4P zK*6{&D%WR~ zTubWV&~*-3@f%wgy?^Q2O^aQjb~Ut??oy8RepIW?!XNaRqLci>PkMV4ma1xJt>rD{ zO{kiziW%+s5ZjmY*VVSxDR#<))51AFzd_m69(TzCA{fThpkD6$q#7_7wuofgu+@<0 zIXq9{5M2bXeu|OMcY`1+8PjFr;P!+L>fzKG8Hwt2WkPUBmA|e`Lm|V~i_qQL&yizp z3;eo${YGQQn%nn7aH;V1;BqGMG9OcT##L6q{X|{(k|FC>Vo|M^ZMCjMzt5RC@^(ZV zKp{0|scIWH+ImHfAKqNDrWJX#*<0yb@|N-!X+@jM^61plFP)LmF9Y5cSf@U|oD|0Z z)0kdp#7_PoJ2<>e12F*lD=%)#i0{SounGI;=Xeu*KditzJ7tY4o`%4<3$p&UgJKUd z1>!d2-<0nV>dwiP&YpBGUgspb#vtr_no25fRO;DBwUS1<47X$rNC;hCREG}i50Q@e zB|B+aqTaW3G(~8H3;LQqFu&jPRu%mwNHw_w-2N}#t^=Oy?)yt*Q}(88l3gj3z4s=Y z?7dfoD3P+IB+91jP03aw$|#$%M|Lv)_p9;rDfA=#@9Xh=zpv-@eDC|5bI&>V+;h*p z7yjX32dfve@Q6xbM%*N7J11E?cCmK96G3167s1Im61>NXeLc3Nj7!?iCQqMtAM21` zfPb8IJ1+C!XEh|((_!d$==5$4ijk1nxx23+Okqbo#zublvNpTs#pdDQfR5!vac;@MG6tKfY}~fAgj}0XwJ&s;Q+B@X zQLO73zozCU*#{)C)x#ri>1;XpZn3lsvxHE-Oe+4&u=J6Ql&&m(1wM;ipfZq6?iPEx z9`$$@?l@uEO|=)pw3i(6`_AOfb^2R2zrI@OfqBG@PNQfxua9q{|3Zgkk9*x5ZGN+i z*&AVo?yzz!7QJ(?`mW5(aMU!hgek0)+@m(GK#(K@= zsbWTXAttSUIu9igA>j`QcbgH&8ARrBYZh-AlulC1tuiSq=E740>UZ9?q7IxWSIqt^IVY#U_<8c|O z>WfTs&b$)A&u_WhFkrj%GSrV;sh@5+<)xKXF{3tGa7EM1>9wc0KFi#f#0Rw<%;oqm z@m~+DGqXc*bFHLIjKv<9cRlCHEA~p9G`{q-R9E$qyDsZWm)yp#*v9Ia_E`KVzs`T<0f(OkI8`fNbDtj4^g+I;LxGXey zV&y0(c2>dLDK6W4je&}hojs^?7Pq=+4LzR`_C=xfJZ{a?g!2+9@ckb#4j`HyAgM+( zIU+Q5`jL(qpa+%J^dd?!sJicG9D zbKJRKIFX?Q>diZJCNgUgn6_urAP}BO3$1Z-_2M|bVeqc}s*NQxZ!Ly23vE$wE23>1 zNACST-DHY(sm2&xWTE(RJx)qo0cK(%vu?7RtCC~t{&>c>Tli>vNc~f_V9wW;r-#9f%XuZTs8z}w3QhH&i~;Th?Xg z+pzs!HKvC=n!Kp;oJOCe7SYyMi3yp*pp*Xs&9#_QT8)SK=SinB!p^toJhYi|$zz=t z)lLnckS%Z$4|EB~1}CV_T^%pvPhyHEul3(}rBL5@xj_th@;ZC2YmXWc$6`*vM4-_3Ec&n{4T^~!1z@nfWFm_B}D zuQ{k$tTuPZk5-wZTB4@|+o`j~mNPx-EV`wbnR;l6>)p1})XpaDNV%4V_oi$~t}IwA z(TSN!j#H?qyUJmbsG8$PF$Ty#vdXHx zFmmZVCCG%u=O;p3Quj{!R0G$Ir!r?(Mn`%clpYjoHku2xXgX5OgwD^568yk8Avd*B zF`BoLT7m7l9|f%br`U2RffDTANbGokiVLinc5(ZcgM*E|k)4x~-L5VG6WlAv|8NIb zN;kd#UQ`1i~pbnYxKQCM%3&=fL?^NlDEr?7K;iin-~cx=}o_ z%E(@N7OF>STW8h~f8Z`)x1=)CI!yt)1T4tcsh|NbJP6zN=2dY%{zpnfEZN0M4W^tc zaW_{E!lat(cHij=U?&*-ZGQ_G&)+Z%E&|I_mbY$YJ$z~U39Bcq(^*;s#fS=B96>Uv zvGb+UkL|~Ku+L`4Q=I!yQZijKS2X%M^>`h8V7LYuW~~D!^@FRg z5~3+EpK9Hwwe}P3q|68`N9;$=4(BE9Iju^@sxpg6-@tUj>WUeMF@a7~Cm$J?I?tT0 z(TC`=3nxZr!-pqtiWn>odazeN3!zg`uMLL_%$|MbW)qL-tokM+vXumdQPg*UcMFX7cwbcU`eNT6fU?;rQ6`rbme#Vc1<5Z%!JKb>S4*&PJnM z(-jNJMjmsuoXa`l`TqKdwxDax;vlXSg)WEyH{F zEhEc=l&+(ew$+k#C)$kajm!HCiIpj1<5BOE!P{p(uWQJ#7VXXuh$(-+Q#PuM(XU)Ep7qdW$FE@g! zEXr>_qpg0&n1iZF;-cS1h;V~pc?N$i#x>G{d(6_$%EE-jgauQbMVidUGatd7BW8T9 z*e85(3MJr5og5-#?F-T8i3#}SB}qo@!t+C-PWoRYR<57RFf#6s%idsGk{HQ;GuE4S zDVTZ)JDrN+;nCZQTDWfFAw%5jR^~L_nB^Khp)!l3E~VAiht<63=!ZXppw z+XWDWmULGLy^y+kGSerLcg1a7>Ap3sz-n=yBiVXfPK7m0s}0p^7%aeH%hnxz#VMfG z&`n)4OBWV<6R_iN2<{AI`RUHUZ`XVoZQi!EOK-9JG|mqgF(oBA#ZCW2&Gs#g1KzMy z&{*iX5wzSl^b6&>H=)^va-Wv+Hn_C1{pZW34TiWMvl2|!aPW7}rRZhlV>BE{i zhrA;CDCd+{Unth6=P`F;xZM|DvYuPN;E6PIh=oX_VJ4VMaP$kiy$37L;A0lI?AnbJ z)F~nF>|IZ?w@JQOIvdk;t>wOiX77z>gsBH@8C@9XQ8wO?)m4eov%X2}WVzE8f42d7 z4n2HyP4&R@nM)Us9TlqPH@N^dfD23hubv-rAV`t8+-QSo=)`Qk!u)aj^b%_x2<4>EFB zqcBQZWY|9lhIR@~rIePYg}ynRAj>CbomhLA!i3q93GbEoHDzM8BX7{v@`!20NO(mr zBPusMmd_O&zRhsz)YJI3(yHz`(z(EiGF#tOPs&^H2c@s->r;OToj7=0rZB($+JwLy zd>-2I%avnc$H^mU4ad2)9&8A&pF&L@u0w9BCom0R(;gy>csNpW2&SJG7LVdT2h|9{ zJ60p8?_EECQXJSc1r`QR1YZrn zvE}k=Yt?yd@{^m6__q<3Q z=#i*7dHMu6VAIRz*}JsracgP)Q!LB+AzeB?0jJfz(GB9327&Z9Jbb^iPkDpgW6hfr4ZbI87e72=$-Ie;R;cmeVGz>H1G|AZ z-z2$koyrpjZsxCGoTI3&Y`BEvl;b2;($m;*<)MF>i;&S%Mcqoy^!77xPlgC2`KUrf z_yr@+Gk=j;k)KaKGf{KN%du4;$MsfW;*%OF0ZM$?##(vi(t}5+ZRIHA3&uW6e7S0C z@{0O#UrOAqyyt;L_yM+-t2JWLBJrmKy^vRe6CcurqqWp(^1nDN|G8egasEV-RWbRnw3}xQ>0wX&uQ$#dpfLfrOX*Eac@M-dzVL< zU(P?r>y$#NCCCN0cE+!kYWb+k9QAtbMWbLmQq88!=*6>E6}r+!+?EGf-@jLHXyh18 zr!E>iTPjZ}87OkQlCYJ{ES#t9QOX#tzpX-c#9%#rI%>j$2Ga}7h(YfjoMk$AUyzGV zYar9q>we12VJ{pT<)^oKi8*~I3oa(!U=PIhQsRv#V6MzPOU&@`bz}FW<)r13Bc~l_ zCh}@G&E?#MI93_duDncUjPwX%*@d@@u4Wh4WP*tFGzB8ADa^aTn` z2#fH9irpBy6-51IcyZ%}$KcC`mwa@h=u=Vm8QV{};GU~&3LjIYauHrA#8;B9@gImx zoi6#r0q4_6%a>)zaQu`*JRhcJh0e)zpBs=h zLs(T;Pn@E`G_aInCMAAyv_iI1byV}o<8hDu zLQ@#C(Ki$nJbS=dFibJ*eKd=n=N#T~GW#p^aims3y?&&evX<15%1f=8%PW1`_=5C+c%&}-L{ygWcv=GUrR>R)hO zgixp7^4P=dIhvmS$A`vky*gs(&YZ2AJJBO(d1V;kq|M}mmsWPuM|-s`s;Gv>s2jd4 z2dJK!p22Dn+|@FW9sOcPg>?r2%hzscR`Mwb3Y6l|SjOYV2RFdcwsnl1mLV$pG9gNV)8-Zet`1+H)%qS* zeSK2ifR2qT5hIQv77-N@8#C${<^!d03Aj83Atr3$fkJVWMv)-0jCSRfCw&4mx0esB z(pPn$D48;y=FBhUxF6#>_i=K4bzu_e3W1A2hidS-me+F8dYH9#dePz zlJKjE9F%`_^UbQ^Vxa-91P;~R@ozF~RX;CC=mu0tt~ zT@#^1!P0%krdpUh;Of26w5XXZHtRKY0hY-Wp=NykV<_g~W0xK1($_gEDza}LdzQ;o z63YF!gnsal-e)WqCw=!AuZigBYuJyAGHvc=D&DEQPLgMKw%VXS{geIkk|N#N(+kP9 zsNw7=?**7%qZl%2E$4G7(VwHP40_XAC!k1n^*MF4X8{pSF;j1vL*;u6!IW{Y>jp%F zd^n9%o^}(Tf^)3QSBG^uRp_ zR$upIMf6~AZn%EcI`EL2{d=Xu>p>5Nf{uxqzmtPUueVVUEm9^Abe#pUQ&EfnT}o6TR%4!e#E$N#`+PFNL#~)7P_lzAugYa_{I{io$E?M=|dl6%|Np)q7=k zeB+Sd8PDhuw~Ib{lrf!hwwMN})I4eW2xF}JEc1tz=xa0t1f<9-1n|d|TJv~GJd!0yWEz!9ndFeZq%9VfSs0Et?lU?sF`Cox_ONn{&@E@YHBy!G$LYiUo7E45FC6 zXA?rl-zo~$N>-EhD9Am#d7oO|m%ZoceaoqUSMoPKv#*0QONfYbYL8BaOzRudCpc(b zI5DVY>l%<4=C^v`X z<(X2tzE%ZN^7T>PC(Rx`iFq*({R2+QYS>7hK()o_?rG+gR8qw|mwS}vMgQwm=i?I9 z7(6~Kngb8;$*#Gh<@Z?4ouoz9fG=Y?6pX7WzEOvgB@jnCdCyc+K)ggiA)X~GKKYhd ziRkcw5XDZx3w3-#vv4?HqF(Yncac6*^@cAor^wSVd+(g@5w*>#1^HO($~5^(kWhWKyntxFL|m*3IeXsrV-il)>@EKfpU8WXIH|%OUk%6166)}s zu5*hO^SCv>e8AQ%&+b}tUS`^r738dUM^ftrEgbBVUuz}B!duhlu8I*-=%@Pxqu#kn zD9?0RM1k`*S-^7O;pwY|>{B61b;Omd^~=4mwOR;S30)jmr|IsPOAy@;ck#_DsG)gi zDidwQeza|!p9;@^UyL+PZejWEgq-fPVlM+M;)&ucClazj+q+#{oh{T|U747@H*VZm z7OFz(b3wNmtD)*nwzvU*;|k@n5Uy()WjUO$-de1CC}(2}>!sE_=~rv7xO+FwZcN*j zmmsa%w;zDZ7*O*vdM!k0O1!m9civOGyZAy#LvVzufWE+QutIeAoky1HO4Uk7)Ym9w$xL)kBWK4ujX)ciu0cy2ce5$TwK>ml>Rk^Si+!Jq1B;diFb01;U`JoX}%j# z^E{80P@fhiBv|}x6_W|R| zT1je{Khjsgt;Ir}2#eP&#cxVld0i%LC2M*F!pC;3k0Yq6X%J}B4ML4|5^ zNAjVA+<0j`vbtR%QIhRo)xde|8Cou?gxHuiql&wl4S0y|#STRY@31p3Ahb8r*PLmU zuMoM|RM+6djMs05$ZKdP&PmQCoAcbn=Z1Y&XMptSTVAZaK4=IvH{s=;#j`}X9o9z> z8PxOCZHzcZH*_2=wK+@pjMq!m#FjD!bAdyitZM9V@g0nj)&}z#)7o$CZXm4{&51R% zKN(kx3)N6h#Np(z;6=Wt0PiW4C_<%;P#HiyLgjpqps{G!^>#!p(TnoQmhuC33BHw# zC-^f_%UrNxAL>a6-#!}sCO(iPay4F~T{wUGf`X?+#Gt%G&=C|I%sI117Tk?(pMsp7 z+>gsv=@*wuwU2tDpE3}ApIC#TeL7*z_$hO=_bm=Sb-YO5%IvY6z>h5&Qz)|!nU1`R zh^4z6`;4xv5It7^EjhQ-ZIOA?EF%$};#d{Ds);1TRVtT-bmvcq7d@Xmt{r#B8FeY_ zk$PkP$*r+%y27{yS%@k1+;BDCa_O^C(fVL-meeQ&9U8_N8ZSHyQR!mK-pI0<0kayp zXFgBZ#|0)FrL}?r~Dg- zG~kbD1>6ZHBfrqpK-N}ZG8(1+<_5D##~Za`9m2fZ=T8mLvfxhW=Y~zPxQzBZcOz>r zcya@CL{GEvozOAb%;KXi)M^HVN?p&Amua2cZJEjw;)%IhGJ5+F!&(}imU&|c!;%M+jd_j9YLJIHPGpvNUsqj0? z@}n7FMw!*s5H5x(ve@)*ETucy7K%pCQ&OcJH6gq7uH!c9B}OXnNQ1|l0MQu^ZTimA z#!=-@r>7oQg)bMCW)W)HeX7L%pbD=j@rIbh*)D~MWE91JUehdqS|Qu=cqr@fDMaP< zr6L90-b3kPe!())ZiTvy6e3({PWPEyL?XmBbC?;Yj$1Nxe<8iUG@xEe={_B{#-1{8 zOO4+5atKkey4wbgmpV^A*53H&EsSS1`rO#}IZ@ly?7XL}t5MGu$UZ!jEkCN}B)NfhPflY&>^g3~0}1x) z%(u;rmrArQ3`*Vcf5b>z_oz%t$}o>N1WoD)pNJ!4$jM6oNn7PNy7uA8_~26B&bt}X zgo|kUa(IeWN*|MxsaovPtQXZczGU)q#D{cQeXhWzVD1WjDJ?Z}y=LK+!{sMdhBSl4 zQp~xQc@Z!9+~@9n3Q3!|u~^OJ%HtKy(k76j0s7E zL3kF*6-~sQw``TDSZpq(t)^5PBD0Ylrn3{KNszyMh{L1S(8Zst8!OVlx%JX=r!?nu ztu4Ij;BibD++}in$NXiPdfj?`;~4v_v{#P0!SA!gQk2cQ&$1=GQclY~vG~T7{WO(N zcsU1$%hFpLZfBj;>spnvQ^e)nS$B11*nDE?p8H}(w|Tvtc@TasMor@3npz-N822M} zwSb(@lhuf7*Q|(nThDmcNfgs_`(dAp^+Nlcl4W>xnKY3vrno?tW5tHAR?p&t$=#^x zaLInYtNy4TDZDlL=U6{hKGbDI^iaqYt1w+Pn$>G#ZFCqKzH+KA>c&C`+_maHhvxQu0sh*GwOC z9j?F(C`YtGH}HEDB()H9dx2I(qL|TwyFMi{5qpf3P4m#hs7f|>6HQzc_f}88HSMx-ZwtiK%?GR$DkE(;lAV z2F;gaJtTuP>d|d5ZaFZg+K|ne&?WY}JuddrE<7S>gYzycz{`!Jat`0GD+6EW?cvG` z6H3%vkqm_jxON7%cCrzn_Vl6tX)AZTzS!t+NN>E>4k#f~xuL_Wz5t6$=U zXYIrvK7dQ|;QVBn)ZH&P-mKH6EqWXZ9O^cXdElRauAb^8sUyOBj&dGvtfvO=kj<&H z7}MpmjLC-%P%sL39t(KKjMk)=oZz8!C=YI&O`li$it^Fkvh4ON(Y*c9qhDt94_z+D z95h@voS8jwoa{LhuV7S10o$^+@$TDJ79=EpOik$@yUVzgP9K_qi>|B$+f!=8H0j^AIep`yy)ZlY><(4oh0SL zVybQDAhV&1&#T#xVq%{9PUGu~q@T2DXXmP1z3N!7KhS8iJy9d7Pu1dh8J<3YC!jZ2 zb1Uf#F3;Mb!Sk7o9Tpruc%0P(inIN7*Tu6FCkR3jMM@uBBr15BCq-=i`GfMs26MwT z$1(lO!Ear#RbMP9pR9~DuFCBePEAEsDq^nJycf%)T0!&ilRIX&a4Sk*R+nbA^(?<` zCx_<7`sO3>4<1=~Mu7`RmUk@NW&?|X|Gfyoz}ga|2X<9}aBeREzZM^qq57~MhU?>% zwe2IvCP?YKKzeUXTc2lvvIy-n!@}fy>$PG!_KT{v*Cr3uCpp!BMqBXmDt9w4MUsk( zsY=zns%Lvj4K1GnyuW@cu=*=@Zxt!BD{xa&v+R!xRPpF=`_hf?}SMfXra#49% z6@5Bi6dH=G$hlnkbFg)l4oQ8!C*b2I_}jkn;PhTO1yu*(%F_1lSPz%YF)78GqqLA} z)SR|#F{CAHxp?T^Xa>~;hCHJrIk<&Tr#H{gN32fNQ=rMZcj~>?oe4ul@oablUzJcp zp=&4ylt&bjKTv<>ekyj3mhLlU+RbvG=SK{g&Wc;bq}2v0dm!GJjV35KpQoNZPN6yx zg{g_xL~5Phk=;JdrFD6x^kKhE)g>KiV?wo0O7!D}jBpRr2{o}~94lg2#@-qZao5yD z9FXF@HNahugbb(#E#E@R=a)GL+o6h@Oc@0-!@_|F;+>jyRHtOnh_Q*LW+!FuP= zihGN6ENR}u4)sn(PLYqV&xn?^5mY2b8V~mx4>L%}6;z}Yuzg`n$b5BOcn}mHaDn23 z7_59_L-*XW1#A^c$D5$|KyyZ3L;fQgRiOld-#O$vZ1Uu0&89DoCXo%F$C+_LC3<9X zd!@9QM9PeQO0DMkm%6Hl-p44}6?_;!wNmN!N+9)~OYP5SZw`$uI&zKW(Jhxzg+=`P zDiLLpitI?^b?tSSMa>FhT;i=8Y)*|GBJS53WG&uhEo@TpUEeyTE!5 zKZ*<#Ev;MRz;)5qh!a;wyE;7XKDO#ZQ^r~Fd2x(icLWv1mnf&|QSPaS9g89PQmahs z2hOGWv(-!>Ek6uQ(iK=v<}hutkF|fr+r&Hk5hTRdaGwcw8N2AAIS!#kUOUK#`6lkH zypNZjt)v!uR8V7?+=tNM8NsQvL>sOC6fHiK@#oGr5K+|qgp~Z^(nqEznn_J+ z#Ik(ZdlOzdF$5H&XFa49bc>9?Pd3F?6_6n4ck?r{rU1oVpW;Tcw2xnc-?0mhRoT?= z=qBSziXs`0uBHSAsMR0ykz|js;qxJEBMiAI@kHLB13UunXknPVY;;I`IbxFNRc>u! zAc(5!wUfm1y3HNU$%sx}>^xPUw8WXw;>s*|=d%@?;o@Dlg6cM`JWYH|?Lb+09Mq&$A8Xw8KKPQ|5*C(Z}9CEIId~8i3{(8R2 zh~W}Fu^_h5a|G&a#x?nyghyvh70x1k?p)cdttmWvCXxsk0rHON^WE3T{wR9+W(5DK z<+m*w6-}iJ;2y4%FIfp_9nK&qgy@>Ei(fm+dX@I56TI{pBKUgrs`C%TGhL#%S?OZ9 zjom&qF91Ng70XYS%B+H432;(PSi2nWLnnCys%G z-t{Dj3DLn}!7qs1425E{R?s<;)J`BD*g*Uck6q8W;$Ubp>m5B{miLT|=>k~@e_xe| zDaMq2oJikLNhkqFwz@aROI?LLDdx9HL%9l%R@SoWuPE={=nOK-CU+>De(K`YL~!+O%~>Dpdna^uNZ znl_OHn4I!y;jc$xar|#epbFUQuyaY~#a$DmnZRYIC1^A;)y~bepngnXpPHg3L~coD zG!mhX;a;yA;{3e>gB-kR1YYp(H;Mkda; zhCQD}S$raK@2bje{V5tzc^b_yi5!{) zZsO82H?i@^DFPKjSTj=oE%Y`I5RM$e9(%jrW z9LqdNJeaSy5FDSH#E7R`eUYL($hr>xvowRK^PqaoQC!W)>9ZlzB`v(J2oUFR`4GDaoZu2Dz^OjpUe zXe5RY25-1;IK;q9ft3NCWe(!rv#mt3CGaB7hq|46HxQ`%A(aWmw_Rq4uz5Vxqd zh~b_F8i^zqzdTc|tQ)i_IU9osrLQ|_rd_5psw!u zlyx3wEbGo%+CAmCBQims4f~e}F8F5>OvHe*y9+dTKX6_0Oc1uHbXt6p^R|O&_J&D~ zyBzZ=)k$3)L9#|m$quTSK$9WL<15E1+F>FTbtPkh&INt)1H30Y`4 zM$W|KIe=xNChV$zfFeyd*4@}n9n3qbEsqqvFw( z(9g1-?>VB-^y%m+AIgArD~WfNsPYBTx7q_&s-1I0+y(@d=P z*EFPss>`1m|&vw7Z&yKOT{AxspRDYRi`xFZQ7KB=42z0y&zV0m1e`R~(u3C+rod&AQYp6ioqzHE8{atGR=&B#33`?piCNiSsA&c`Y)$K7W4pV$REa&dc}nvjLCld{j0_iUMlCOd_vmOP2x_&!7CkN; z2r?k;$Ff?QUq)O+SW)SOw8(nH@4di&1cH>!1`hQ6)KEabKYIBU9QOZx{~6fx`>6?l zpMj`;rypSc^uNQwIez`YPesH#{T5tm_EXFG?YFQc#7@5_`svqja0^@h{##}9PTi0~ zy5R$&*l8uRQ%`h|o^Jf1r~gq(Ops3d|MyO}5?^3o*r8sqk{br&b_UWh4;cEL`2LAn zSjQ52PI~;t;5GTLf$FbP5%HuRO9TV549Mk&;P{~K4ToCL+UlaI@z!uK1c0>Jz(wId zwJ31ozz@y0)N?Yj+EJyB{`6Bgxc1+FY-$aA(B9I>!NkbX{=`-yhV}5B7O05nL7~?# zwEW&3=u+oD1RXOVXYj<4mBVjjqeRs_%>%AN3inqLhx`=|EM*1~NxzP0oK;VoEnw|3 z_!EQi_@m_mJKj56&t9aIQdK1%4pHzQo|{N{^)V91Kj13>6$LjO+#V zz}Kx6iQv5UFdPXSoCz-+9Qfy_MhCpjZtTO-<;SyBTSH;w;+!xAMt250%MLqh^j{0% z+!fSMtZj`{ino$>AH0q!3;I3#9}M_r1X7K=V@lD$PS56hJ^invWu1?OL;_ek3Rr^b zhy{3mb5B6jiVlX>jt;7JrViVo5|y6*gamwzKd?I3xs(6en!;XDr3H-itQ3q4j7-5f zxviyoFChLNFMtdNHV9QscctCJ{!kTan1XJNS6JV7Dgc-Q4RA^#|M3XE(W~wjZ<9Sa zJ8LkK4z4?x!?iEMt0-VV)4`M>1i_@!+AZdPJnrPlIZYCeY6FKdcj8wr<8}9rxbsMc z92I)D1h_m7f+pBY68|*^`(0uFWQkv$4A5RZ3-E4}y}gp1o`Lyxs-(_C#GD3DF@YAt zwmJT56VAILK;kE_^F6WotC7yK$d0B11Y`gPb#Vx;y9N8^4Yq?i6t0ca4+Pr_{DI(q zOo4ACZo7gKa5S|rgqmR`FeeCO#D*7JAykU?P1dG8GKn?!!@iV@OP z;Gep(H?_0@4>nquZWY#y!V{pmfd2fzA8aG+zxHug{q8IXy8{X}-ar!kU_47=WzW&FFa2o-g{j4&z0eZv-0MO~~;I-ZM{llE7g^cVC z>`e9b^tYRS9CP4VUV^DE9>nizKQRPiv+H|@{d!1GM9kD|QPiWbFw2FTdfB+xLHs-EbY`Gg1JD6o5mhc81pP7EDyn(b(wE{IQMW9SR4K zL%{D#LX_o6<8C1pHz)r8{O*ogI*KVY(gy-Z4X|>Bnnl^`zXaZTB&l$VK#e3=z5eFh zG2ibR5S%@?F)}>KNiAq(VX-wH+NC1;Xu#lckPwDC_v!9E<82M~8cB#00hnMYNRB}* zWB%i=p&TtO_3T{#tT`}c0pi?jgx@~DeppWa7Gqi48J}>~v$WVT&O8R`C2xmb?5*_7 zjkfG>%1Mb0tm@!A!5=H6KcuPcsrs+Ko#V&^xpA5_r68)4c60l zQIbKr&4fR&eb@tpx(j)({i&-h<@qyd$04N29{dAooBjPK*pw>vnL zQ!66@a7C^8)+Q>4x;CT*#@GaSA82Iz2K{efWvs2_>`bj3V3GX}TyLF2ixZ~-cv}am16{3CpV}RqI&l8mEfY}4v&&F{jvNGW78GTOdk-k=Tl0cC zc$$|UpkV)oqQtug6ppP?>T>2SgcbL!+Gmb3W)Cv;<1g2^1d6qQ3AR02NI^3e`c_($rzwEdW=F#j;Ys zVm25)D2x1Jdq9Ng;?6AIH_%Dw2lIS0;O``46s;t754g3az`6xe+-$Hb{{Cw@+PlL5 z)rB_J;Lg9_f&moq86zqX6Z(Q=DO7HRI(vi={D!qPPlqd!M6Q8>It>O&>OY3Sw{)w& z1Qd2LFxtUW!N9&t6Y4`UY<7!m1#%jWusaQY6KEIO@~e0Na~G&S*z)?R;o0sTgrRYt%Zwy$RKJR2safN`h}mM;ovwO_6{zfXK(Za*xHU7?4>w@8(p1@lpI02 zZfi==X47IZDL}GN9fZ^nN=lvfjgqaQ8QAGAmjg&sAP8tYAsn%H=pO>u8nle_x_CbZ z99%LrSg%6(b&1>uP$2am1W4=I*qB;vQwMR(gBD8|*s~QC92^k+Ppv;;pXvA-*ljJ2 zK+%#Qevm{vNCZNxpNN2i%gEbrGK_2;jjRl|(ZkXBg}D%54YOd+R0~3gbHzRr0-G~r z_05b7wyB6Q4y?#c2O*~$C^v$xX2NRrg_Ny_BEcN{U?hkG^8ZpRf1>jcze8r#8;oz`Z_l_?FT#u=No`aF3k?S7_C_qa|c>@TL z12YcPBj0$tcLEgkE<&8*x0@<|UBX6+`qXQJ>EIm5z34)?e-Eyp*sJt^1^+P`%2tL( z7r`=fn?$Tq3DYdBNJ0}(qX(g;>fJw}24)cgrdA+Vw6$tReQ2UR3CPI=bEOW1oUZPF zMUJ)gHp#dc>lU9Jprd2JM4=-U+xL%%0eJ|$ZJY&-OSWh;phgy~#HF}Hs1e_; zlrJ_!but7Pj~b8+lop=xe?$wI{- zD_R`3sbAv@oN*}zGrP`^h6SVm;~tWO!* zn`+Q892HPC!Jqg6rFArWVLwgV&zt+ok&R}*wqU}?!0!0CYs-JhD{+5IFy!PhK}Fhn;W1%#aWEpZ~NxUYo#d2Bq_?CoiPGn4(GLdM#`WZPt`8SW7p*lCw9U?89q zTABHNfGawHY5~g~e7T_(X5VQLD<1^K^!yM_P`Cao0=AyOkE4?e34!Pp7F9|>;NTMe z3hoaXydq57r`Z5+2>gjaa7z>a3KxjhVVls6AOP1}9q=gwCIm4E=0MWkFu&%@`K|OU zT-4?r3$@HD>SAh$=4r&#lN6v84_R_z!p4~RpEF>Qs zJ?{Yb@D{iSXw~3>oV_9$8LIP3OZ`DvhKg|RfUOQVJYbl@-$eQK1E+8=!2bgzto!ey z#sPt3D&8d|Y%|~fx1}R;x3TNyQVuAiAOs+2Zvgxjrh4|9l>=K_I)xJF5lSFLm}`ZO z9#z?%IQmxd3CgcPbiM;{@JcHIJ5U>Ouz3W{0F;*hCGe&n-2obR;_gNZ;JF+I4-v9y z<({CwhkHA795*fAQw_un4^~A`QD=kyysOCKtMYt@{S&|EaWn7H03%5RQzt)!-XPyqO2XYQli}pa4whgmJKSPnh2#^qsZm!3|r7WWebdkScUa#(4WTsDDzPht|5? zgD?jHxD|kmCUeK0aA8G7I~XSwcFl1#;QcOvy=@@~-j#QI!uvWK?|_)0*suiZ1>i6M zhfsI0*1I>vZwZo}2efL0i4?Zbm;wU|bqA;ee+B!e5j`t){-6iow;0%{C`7`?KkN;7 zGkV>bTRW?0S$6>X9DqWFOg8)%pnu{O#vYLIW`h=1VU6w*)&-QLfspREDI3=JcL?sU zNZaVUIL`61g3vdmb`~QGWwtY;A39VYDL}bk;&%{0pYOp&1+MIq2<( z33WG@_6^g~!E|T)fR?3v-e2Hv7c2f+nDMg)K{qShm-b88n~Z94}khV=ldsuGrhzD3$WP_8J(BVu$|9>KFw+_4aWeEr_Ed_zM`=-7x$H2H;kYt+~59RX0uog9M_Nf+*`W(OO9ae!sM3 zYvc~0Wp3D=P__VB27-K*{4bD2!4)RpE!~~5Bh4(qv-OF;z}^`&N*y;m z0La;$>es_!=Q;KPRM8O>oSQm0ZkHXkp~rd(D`OD`E)Obi388&}R|XM-{dVrw+Zt^I z0n7sB)V~^+x5$2BZ*5#Kd-@*JL$kAR%DY3h0<+5RX}*=NvPD=1N&qZ$1t7+&zo-8B ztqe@8?O-eGt@*K8onm+fMlc5L*EGo^)xGfZUy^ToOikAD)7BuspaE6Tf)E}%H1~q} zElaXJARYHBktiV028>@*-i3yH0o)$xg5N|d>;PvEa0bu}SFzb%k;JztWeC+AU~vRk zYJf9-h!}k=_lmVca!W}i9>)zp8G<+hs+q<%dx86!ec4`=kLcjiVebtDf}{UJ5ccGq z_JsE>_p&|W$0KwZM8JcG;Qe|>#SzcFAS&r?b3y~g4H&r12Hh+Oy|z0b8$G+Nj&w~N z*YukJ-GdU;Urw7Y?h#-UXKNRdSU}7Y3xGZWHv-Li%KGn(n@zAk?D3>lom#wUa6!O#K@XDL4E$S2IT+7BSGR4}&}>`c7J+Wg=n0Hb z8yF*W=Y8_lzLT;o6%Pn}*XcPc=ddus~pybq$l?pt;RGa0ma3GvCkQm~ox-kOF*(=6Lk zpc!OfQ3x$wGRfZ;8h$D$6SlN*aNWUNd#)$G?E|zl0WF1=A7&QqH!VB6Q3Su6CC$Ka z;Xxi7ngJv(+iyy?^`ecJdk`^!7bOGHDYP`#x^lmX*kM%ew!Wq82eK#xvVb~sgt~nr z!~tLW-!ALcwlk?aiUIRu0l<$z zDH?tKPbu0~W!PU=;2s7lLj+XjB1A^wZU2;_9rTB~ymht*j9U+|YG~E{t9VpA0PJpTniq6BtQ^@FYW`TUh{IYECv^C(&RY4moAY&CU>5Kma2TI}K_XPOu9wV@zwBKQc z4nqQ{n+>|GEJoZNET}o%YTK6tsQ_0DI6_sxm)JL;uODQG_5`4?iSvh*p4I#N*Q~%~ zkPo73VF>DbP-wH83E>-CUp4eA_SOT4%425v8JO%t04oB4EXCOq z1e1Yix0p6|M)trZY_W46%6|++AHZ;dA%qr72mb{MY_nd$=m+X{3usDZ{8zMK60M{9 zb$7sqbnh(w0>1T#K0GmkodlCGSSCU<^hX%>4*i4YtwAU0FTf82z&4;t&~+g*<350b zD_(yP0DFoBwk5SSA)n@g>*T>ysLS-LLy9@RFNACj%YysiJ-FZj4jb?fO_&(*?j06( z^T7|kfebb;X#zWcs^C!yaKqo$q$sPV#BnoJA)14;zIZ3o-xg_gd{OPExYfmC!MK4(JsU(n*}V6=l|6jVIU4+5#k zfx-i*xsZY?&fPisAHIm?S9SR@Mnc;b{`Wp?cqj_Qq5z125^`Pc9}oh&k9upZ)eX@Z zegO!9?Uq1eYBj}wK*)DX+L{>688&WktOt%8C<|07nJWK)7%6aR_|}9pdq^zl0YX>+ zA<&g-jQT$y1S}7?rlTVY8yj3w0!Il;{Xwk94{QeSyS{FJ35ArM6nz$m%Q}IYK>h55 z_CF!SQhz%?izy$F(+S3fhX6b*1d$27!9O4c+-eFAz=M0pc5o|BJRMYEO91XB2}a}8YE-<%aJmnuiwNPb5uu#Rz7evu^}>`Bh+wlp3xLx=Mf>j5!rs~fJQ4L75u!l(m7TAK{xcmAc>+_e8TZ_@zMSzqH z$T1njc+fRr&CS0A{2!OP(5pJsZ|@Ej)b&|`!lvKGu8Et5M+I2xJn$L<5J8sh5n=O& zF1_uxDcmk%p-%xE*bA2Y5Ii4n@Od}t_?;uL!4BhW>tQPk%&xBnP#3|lNkHKGBL52R z4~zMijt|;MfVwOKlYmwYkwyO%?&hYUpb5BmbX%{tX5XjbcLwb5`~7N;x%d7WduuTV zo2Z!00d~uQqlKDdM*AKiO<@n@Y?~Q|4JE+aY^T0`e*HM|ewTot+E35I)NKpfXuNxv zG!OKO3KU2R0^+iFkgt_Wn^lH-U^Tb3JV~h5nxX-JY``+1JH1I=duC6@5f;zsBOGJ^sG1cv`hK~uuQ-T*gi`*uK70gpR+0z|OG`%4;gd}&XJn*}OhpL++) zdzZOXuL8_+fC-HUx>>X1K)I%XxC9ERNju%#hm+>Wtl?C-|3vwA6dXTOCR^6y^cJ=R}C|B3G- zIEz=nz36c9fNy>X-@Qln1P)@v9fr7MjbM-)K*4Tw6@tK3;p_?SYd!A{h)PdoI^6(+ zzuS;C!QK$RpDx}36zi_x%dJlrYZLti=${5t{X9kA|Fw2yF-=5Kv?Ll${2>~^B}UxE zg$7)r-~zN1Q6N={OC*8OPNinr!Rgdk6qG+#RFvQn6&K=|X&`13>MLrqXW^-D#K z(fC6Yqw%~hz%4T)eeEPe3n6pveeW)B-o5YMUhrCibt;`q`wT8vgnkXUENf1_zyeKG zqh#mUOl~;+%KkgsEv;#Iqe(_Ak8<~J79Sk*G`eLY`o8sKEx}q4o;)h4-noDuPJ59y z`AK$903(Uiz^GN>??qf#!HgM$sbi`aS?6XEJ^ZjZHbBiYwt>K2MTU& zzjCq<%)bWnG`%k+J3eY+AR_0();lcoavc!0&R2iXG8xAL^XSimG$&cJCZhI}+JU_km9nT;8CL z8)ajk=b+hFgH$Ic#KSy7JfirsNP^GD`mSMX(Ga|GaBTx>RGDlre{@$hr<@nuD!K%} zq#ENcKk{HXyyI6eT}~#o7JJx~x3Mx^Bq+Ouy=ZVDp-nqB{J*S=&N=&MoLBZ zFaRB>uH6ZyQ=5R6ozLd8>U&#}WldG16R|LYOBt3gPse8@UPv9Og$Ec%GO_vfuMhSd}RA8KT);zOk;SG#_H3X`9SbXtq@Jb?R zC=)!Q(<;E5c|+#HhAw{aY}!_;?Y2~Z5#H%1%wrLuCZjC@)M$e;oQR#EFQKdM#-dX? zg_f#j^ggTy#A)0c7}n6$%JX<*`*67=qoowgu(RVdkGipggO@QZqt_3y!@jIQD=SXh zpfh}ra&uazfuo5~5*moR88? Date: Sun, 31 Jan 2021 15:29:19 +0800 Subject: [PATCH 13/48] Delete settings --- docker-depends/settings | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 docker-depends/settings diff --git a/docker-depends/settings b/docker-depends/settings deleted file mode 100644 index 8254140a..00000000 --- a/docker-depends/settings +++ /dev/null @@ -1,21 +0,0 @@ - - /usr/share/maven/ref/repository - - - - aliyun-nexus - * - http://maven.aliyun.com/nexus/content/groups/public/ - - - - aliyun-nexus-public-snapshots - public-snapshots - http://maven.aliyun.com/nexus/content/repositories/snapshots/ - - - From 6786095154bac0a67351e4da90122d1775a9577b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=85=89?= Date: Sun, 31 Jan 2021 15:29:31 +0800 Subject: [PATCH 14/48] Delete sources.list --- docker-depends/sources.list | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 docker-depends/sources.list diff --git a/docker-depends/sources.list b/docker-depends/sources.list deleted file mode 100644 index 8bde27f9..00000000 --- a/docker-depends/sources.list +++ /dev/null @@ -1,3 +0,0 @@ -deb http://mirrors.aliyun.com/debian/ jessie main -deb http://mirrors.aliyun.com/debian/ jessie-updates main -deb http://mirrors.aliyun.com/debian-security/ jessie/updates main From 76b2489fe910a87ecb54c2712b9eed3a8ceeb0df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=85=89?= Date: Sun, 31 Jan 2021 15:29:50 +0800 Subject: [PATCH 15/48] Delete docker-depends/agent/config directory --- docker-depends/agent/config/agent.config | 108 ----------------------- 1 file changed, 108 deletions(-) delete mode 100644 docker-depends/agent/config/agent.config diff --git a/docker-depends/agent/config/agent.config b/docker-depends/agent/config/agent.config deleted file mode 100644 index 9236a4ff..00000000 --- a/docker-depends/agent/config/agent.config +++ /dev/null @@ -1,108 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# The agent namespace -# agent.namespace=${SW_AGENT_NAMESPACE:default-namespace} - -# The service name in UI -agent.service_name=${SW_AGENT_NAME:crm-rest-new} - -# The number of sampled traces per 3 seconds -# Negative or zero means off, by default -# agent.sample_n_per_3_secs=${SW_AGENT_SAMPLE:-1} - -# Authentication active is based on backend setting, see application.yml for more details. -# agent.authentication = ${SW_AGENT_AUTHENTICATION:xxxx} - -# The max amount of spans in a single segment. -# Through this config item, SkyWalking keep your application memory cost estimated. -# agent.span_limit_per_segment=${SW_AGENT_SPAN_LIMIT:150} - -# Ignore the segments if their operation names end with these suffix. -# agent.ignore_suffix=${SW_AGENT_IGNORE_SUFFIX:.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg} - -# If true, SkyWalking agent will save all instrumented classes files in `/debugging` folder. -# SkyWalking team may ask for these files in order to resolve compatible problem. -# agent.is_open_debugging_class = ${SW_AGENT_OPEN_DEBUG:true} - -# If true, SkyWalking agent will cache all instrumented classes files to memory or disk files (decided by class cache mode), -# allow other javaagent to enhance those classes that enhanced by SkyWalking agent. -# agent.is_cache_enhanced_class = ${SW_AGENT_CACHE_CLASS:false} - -# The instrumented classes cache mode: MEMORY or FILE -# MEMORY: cache class bytes to memory, if instrumented classes is too many or too large, it may take up more memory -# FILE: cache class bytes in `/class-cache` folder, automatically clean up cached class files when the application exits -# agent.class_cache_mode = ${SW_AGENT_CLASS_CACHE_MODE:MEMORY} - -# The operationName max length -# Notice, in the current practice, we don't recommend the length over 190. -# agent.operation_name_threshold=${SW_AGENT_OPERATION_NAME_THRESHOLD:150} - -# If true, skywalking agent will enable profile when user create a new profile task. Otherwise disable profile. -# profile.active=${SW_AGENT_PROFILE_ACTIVE:true} - -# Parallel monitor segment count -# profile.max_parallel=${SW_AGENT_PROFILE_MAX_PARALLEL:5} - -# Max monitor segment time(minutes), if current segment monitor time out of limit, then stop it. -# profile.duration=${SW_AGENT_PROFILE_DURATION:10} - -# Max dump thread stack depth -# profile.dump_max_stack_depth=${SW_AGENT_PROFILE_DUMP_MAX_STACK_DEPTH:500} - -# Snapshot transport to backend buffer size -# profile.snapshot_transport_buffer_size=${SW_AGENT_PROFILE_SNAPSHOT_TRANSPORT_BUFFER_SIZE:50} - -# Backend service addresses. -collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:skywalking-oap.monitoring:11800} - -# Logging file_name -logging.file_name=${SW_LOGGING_FILE_NAME:skywalking-api.log} - -# Logging level -logging.level=${SW_LOGGING_LEVEL:INFO} - -# Logging dir -# logging.dir=${SW_LOGGING_DIR:""} - -# Logging max_file_size, default: 300 * 1024 * 1024 = 314572800 -# logging.max_file_size=${SW_LOGGING_MAX_FILE_SIZE:314572800} - -# The max history log files. When rollover happened, if log files exceed this number, -# then the oldest file will be delete. Negative or zero means off, by default. -# logging.max_history_files=${SW_LOGGING_MAX_HISTORY_FILES:-1} - -# Listed exceptions would not be treated as an error. Because in some codes, the exception is being used as a way of controlling business flow. -# Besides, the annotation named IgnoredException in the trace toolkit is another way to configure ignored exceptions. -# statuscheck.ignored_exceptions=${SW_STATUSCHECK_IGNORED_EXCEPTIONS:} - -# The max recursive depth when checking the exception traced by the agent. Typically, we don't recommend setting this more than 10, which could cause a performance issue. Negative value and 0 would be ignored, which means all exceptions would make the span tagged in error status. -# statuscheck.max_recursive_depth=${SW_STATUSCHECK_MAX_RECURSIVE_DEPTH:1} - -# Mount the specific folders of the plugins. Plugins in mounted folders would work. -plugin.mount=${SW_MOUNT_FOLDERS:plugins,activations} - -# Exclude activated plugins -# plugin.exclude_plugins=${SW_EXCLUDE_PLUGINS:} - -# mysql plugin configuration -# plugin.mysql.trace_sql_parameters=${SW_MYSQL_TRACE_SQL_PARAMETERS:false} - -# Kafka producer configuration -# plugin.kafka.bootstrap_servers=${SW_KAFKA_BOOTSTRAP_SERVERS:localhost:9092} - -# Match spring bean with regex expression for classname -# plugin.springannotation.classname_match_regex=${SW_SPRINGANNOTATION_CLASSNAME_MATCH_REGEX:} From 8ac713ce3287a5d1807565497bc607a861d3004b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=85=89?= Date: Sun, 31 Jan 2021 15:30:18 +0800 Subject: [PATCH 16/48] Update Dockerfile --- Dockerfile | 1 - 1 file changed, 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index a4a486bf..74d31c9e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,7 +22,6 @@ RUN apk add --no-cache --virtual .build-deps \ ENV AGENT_HOME /opt/agent/ WORKDIR /tmp -COPY ./docker-depends/agent $AGENT_HOME COPY ./docker-depends/config.yaml $AGENT_HOME COPY ./docker-depends/jmx_prometheus_javaagent-0.14.0.jar $AGENT_HOME From 0ee4df03f9dc9db4235a0759312160864474f092 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=85=89?= Date: Sun, 31 Jan 2021 15:34:15 +0800 Subject: [PATCH 17/48] Update Dockerfile --- Dockerfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 74d31c9e..f1435733 100644 --- a/Dockerfile +++ b/Dockerfile @@ -37,5 +37,8 @@ ENV JAVA_OPTS="-verbose:gc \ EXPOSE 8080 9999 -ENTRYPOINT ["sh","-c","java -jar $JAVA_AGENT $JAVA_HEAP_OPTS $JAVA_OPTS /tmp/app.jar --spring.config.location=/km/application.yml"] +ENTRYPOINT ["sh","-c","java -jar $JAVA_HEAP_OPTS $JAVA_OPTS /tmp/app.jar --spring.config.location=/km/application.yml"] + +## 默认不带Prometheus JMX监控,需要可以自行取消以下注释并注释上面一行默认Entrypoint 命令。 +## ENTRYPOINT ["sh","-c","java -jar $JAVA_AGENT $JAVA_HEAP_OPTS $JAVA_OPTS /tmp/app.jar --spring.config.location=/km/application.yml"] From 6bc5f814407a1bfddefb32b3b007667e727f7049 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Tue, 2 Feb 2021 15:58:46 +0800 Subject: [PATCH 18/48] change dockerfile and heml location --- Dockerfile => container/dockerfiles/Dockerfile | 4 ++-- .../dockerfiles/docker-depends}/config.yaml | 0 {charts/didi-km => container/helm}/.helmignore | 0 {charts/didi-km => container/helm}/Chart.yaml | 0 .../helm}/templates/NOTES.txt | 0 .../helm}/templates/_helpers.tpl | 0 .../helm}/templates/configmap.yaml | 0 .../helm}/templates/deployment.yaml | 0 .../helm}/templates/hpa.yaml | 0 .../helm}/templates/ingress.yaml | 0 .../helm}/templates/service.yaml | 0 .../helm}/templates/serviceaccount.yaml | 0 .../helm}/templates/tests/test-connection.yaml | 0 {charts/didi-km => container/helm}/values.yaml | 0 .../jmx_prometheus_javaagent-0.14.0.jar | Bin 413862 -> 0 bytes 15 files changed, 2 insertions(+), 2 deletions(-) rename Dockerfile => container/dockerfiles/Dockerfile (92%) rename {docker-depends => container/dockerfiles/docker-depends}/config.yaml (100%) rename {charts/didi-km => container/helm}/.helmignore (100%) rename {charts/didi-km => container/helm}/Chart.yaml (100%) rename {charts/didi-km => container/helm}/templates/NOTES.txt (100%) rename {charts/didi-km => container/helm}/templates/_helpers.tpl (100%) rename {charts/didi-km => container/helm}/templates/configmap.yaml (100%) rename {charts/didi-km => container/helm}/templates/deployment.yaml (100%) rename {charts/didi-km => container/helm}/templates/hpa.yaml (100%) rename {charts/didi-km => container/helm}/templates/ingress.yaml (100%) rename {charts/didi-km => container/helm}/templates/service.yaml (100%) rename {charts/didi-km => container/helm}/templates/serviceaccount.yaml (100%) rename {charts/didi-km => container/helm}/templates/tests/test-connection.yaml (100%) rename {charts/didi-km => container/helm}/values.yaml (100%) delete mode 100644 docker-depends/jmx_prometheus_javaagent-0.14.0.jar diff --git a/Dockerfile b/container/dockerfiles/Dockerfile similarity index 92% rename from Dockerfile rename to container/dockerfiles/Dockerfile index f1435733..d8a3d158 100644 --- a/Dockerfile +++ b/container/dockerfiles/Dockerfile @@ -22,8 +22,8 @@ RUN apk add --no-cache --virtual .build-deps \ ENV AGENT_HOME /opt/agent/ WORKDIR /tmp -COPY ./docker-depends/config.yaml $AGENT_HOME -COPY ./docker-depends/jmx_prometheus_javaagent-0.14.0.jar $AGENT_HOME +COPY docker-depends/config.yaml $AGENT_HOME +COPY docker-depends/jmx_prometheus_javaagent-0.14.0.jar $AGENT_HOME ENV JAVA_AGENT="-javaagent:$AGENT_HOME/jmx_prometheus_javaagent-0.14.0.jar=9999:$AGENT_HOME/config.yaml" diff --git a/docker-depends/config.yaml b/container/dockerfiles/docker-depends/config.yaml similarity index 100% rename from docker-depends/config.yaml rename to container/dockerfiles/docker-depends/config.yaml diff --git a/charts/didi-km/.helmignore b/container/helm/.helmignore similarity index 100% rename from charts/didi-km/.helmignore rename to container/helm/.helmignore diff --git a/charts/didi-km/Chart.yaml b/container/helm/Chart.yaml similarity index 100% rename from charts/didi-km/Chart.yaml rename to container/helm/Chart.yaml diff --git a/charts/didi-km/templates/NOTES.txt b/container/helm/templates/NOTES.txt similarity index 100% rename from charts/didi-km/templates/NOTES.txt rename to container/helm/templates/NOTES.txt diff --git a/charts/didi-km/templates/_helpers.tpl b/container/helm/templates/_helpers.tpl similarity index 100% rename from charts/didi-km/templates/_helpers.tpl rename to container/helm/templates/_helpers.tpl diff --git a/charts/didi-km/templates/configmap.yaml b/container/helm/templates/configmap.yaml similarity index 100% rename from charts/didi-km/templates/configmap.yaml rename to container/helm/templates/configmap.yaml diff --git a/charts/didi-km/templates/deployment.yaml b/container/helm/templates/deployment.yaml similarity index 100% rename from charts/didi-km/templates/deployment.yaml rename to container/helm/templates/deployment.yaml diff --git a/charts/didi-km/templates/hpa.yaml b/container/helm/templates/hpa.yaml similarity index 100% rename from charts/didi-km/templates/hpa.yaml rename to container/helm/templates/hpa.yaml diff --git a/charts/didi-km/templates/ingress.yaml b/container/helm/templates/ingress.yaml similarity index 100% rename from charts/didi-km/templates/ingress.yaml rename to container/helm/templates/ingress.yaml diff --git a/charts/didi-km/templates/service.yaml b/container/helm/templates/service.yaml similarity index 100% rename from charts/didi-km/templates/service.yaml rename to container/helm/templates/service.yaml diff --git a/charts/didi-km/templates/serviceaccount.yaml b/container/helm/templates/serviceaccount.yaml similarity index 100% rename from charts/didi-km/templates/serviceaccount.yaml rename to container/helm/templates/serviceaccount.yaml diff --git a/charts/didi-km/templates/tests/test-connection.yaml b/container/helm/templates/tests/test-connection.yaml similarity index 100% rename from charts/didi-km/templates/tests/test-connection.yaml rename to container/helm/templates/tests/test-connection.yaml diff --git a/charts/didi-km/values.yaml b/container/helm/values.yaml similarity index 100% rename from charts/didi-km/values.yaml rename to container/helm/values.yaml diff --git a/docker-depends/jmx_prometheus_javaagent-0.14.0.jar b/docker-depends/jmx_prometheus_javaagent-0.14.0.jar deleted file mode 100644 index 54b633bfb78d09b4bb70255195be47e8bc770c76..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 413862 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

Z4yy9Sc8T?N38RV4)YjSxI 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≫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 Date: Tue, 2 Feb 2021 16:42:20 +0800 Subject: [PATCH 19/48] storage support s3 --- .../manager/common/utils/ValidateUtils.java | 15 +++ .../kafka-manager-kcm/pom.xml | 5 + .../kafka/manager/kcm/KafkaFileService.java | 3 +- .../storage/AbstractStorageService.java | 11 +- .../kcm/component/storage/local/Local.java | 33 ----- .../kcm/component/storage/s3/S3Service.java | 125 ++++++++++++++++++ .../kcm/impl/KafkaFileServiceImpl.java | 7 +- .../versionone/rd/RdKafkaFileController.java | 51 +++++-- .../src/main/resources/application.yml | 7 +- pom.xml | 6 + 10 files changed, 213 insertions(+), 50 deletions(-) delete mode 100644 kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/local/Local.java create mode 100644 kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/s3/S3Service.java diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/ValidateUtils.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/ValidateUtils.java index 1ece8f9f..6bd0c55c 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/ValidateUtils.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/ValidateUtils.java @@ -2,6 +2,7 @@ package com.xiaojukeji.kafka.manager.common.utils; import org.apache.commons.lang.StringUtils; +import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Set; @@ -11,6 +12,20 @@ import java.util.Set; * @date 20/4/16 */ public class ValidateUtils { + /** + * 任意一个为空, 则返回true + */ + public static boolean anyNull(Object... objects) { + return Arrays.stream(objects).anyMatch(ValidateUtils::isNull); + } + + /** + * 是空字符串或者空 + */ + public static boolean anyBlank(String... strings) { + return Arrays.stream(strings).anyMatch(StringUtils::isBlank); + } + /** * 为空 */ diff --git a/kafka-manager-extends/kafka-manager-kcm/pom.xml b/kafka-manager-extends/kafka-manager-kcm/pom.xml index 741f0f12..7ffd00e3 100644 --- a/kafka-manager-extends/kafka-manager-kcm/pom.xml +++ b/kafka-manager-extends/kafka-manager-kcm/pom.xml @@ -68,5 +68,10 @@ spring-test ${spring-version} + + + io.minio + minio + \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/KafkaFileService.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/KafkaFileService.java index b2de3a32..babfeb15 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/KafkaFileService.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/KafkaFileService.java @@ -4,6 +4,7 @@ import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.KafkaFileDTO; import com.xiaojukeji.kafka.manager.common.entity.pojo.KafkaFileDO; +import org.springframework.web.multipart.MultipartFile; import java.util.List; @@ -24,7 +25,7 @@ public interface KafkaFileService { KafkaFileDO getFileByFileName(String fileName); - Result downloadKafkaConfigFile(Long fileId); + Result downloadKafkaFile(Long fileId); String getDownloadBaseUrl(); } diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/AbstractStorageService.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/AbstractStorageService.java index 90192b0b..34c209ac 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/AbstractStorageService.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/AbstractStorageService.java @@ -10,13 +10,20 @@ import org.springframework.web.multipart.MultipartFile; public abstract class AbstractStorageService { /** * 上传 + * @param fileName 文件名 + * @param fileMd5 文件md5 + * @param uploadFile 文件 + * @return 上传结果 */ public abstract boolean upload(String fileName, String fileMd5, MultipartFile uploadFile); /** - * 下载 + * 下载文件 + * @param fileName 文件名 + * @param fileMd5 文件md5 + * @return 文件 */ - public abstract Result download(String fileName, String fileMd5); + public abstract Result download(String fileName, String fileMd5); /** * 下载base地址 diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/local/Local.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/local/Local.java deleted file mode 100644 index 992c09e4..00000000 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/local/Local.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.xiaojukeji.kafka.manager.kcm.component.storage.local; - -import com.xiaojukeji.kafka.manager.common.entity.Result; -import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Service; -import com.xiaojukeji.kafka.manager.kcm.component.storage.AbstractStorageService; -import org.springframework.web.multipart.MultipartFile; - -/** - * @author zengqiao - * @date 20/9/17 - */ -@Service("storageService") -public class Local extends AbstractStorageService { - @Value("${kcm.storage.base-url}") - private String baseUrl; - - @Override - public boolean upload(String fileName, String fileMd5, MultipartFile uploadFile) { - return false; - } - - @Override - public Result download(String fileName, String fileMd5) { - return Result.buildFrom(ResultStatus.STORAGE_DOWNLOAD_FILE_FAILED); - } - - @Override - public String getDownloadBaseUrl() { - return baseUrl; - } -} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/s3/S3Service.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/s3/S3Service.java new file mode 100644 index 00000000..419e66e0 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/s3/S3Service.java @@ -0,0 +1,125 @@ +package com.xiaojukeji.kafka.manager.kcm.component.storage.s3; + +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import com.xiaojukeji.kafka.manager.kcm.component.storage.AbstractStorageService; +import io.minio.*; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.mock.web.MockMultipartFile; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.annotation.PostConstruct; +import java.io.IOException; +import java.io.InputStream; + + +@Service("storageService") +public class S3Service extends AbstractStorageService { + private final static Logger LOGGER = LoggerFactory.getLogger(S3Service.class); + + @Value("${kcm.s3.endpoint:}") + private String endpoint; + + @Value("${kcm.s3.access-key:}") + private String accessKey; + + @Value("${kcm.s3.secret-key:}") + private String secretKey; + + @Value("${kcm.s3.bucket:}") + private String bucket; + + private MinioClient minioClient; + + @PostConstruct + public void init() { + try { + if (ValidateUtils.anyBlank(this.endpoint, this.accessKey, this.secretKey, this.bucket)) { + // without config s3 + return; + } + minioClient = new MinioClient(endpoint, accessKey, secretKey); + } catch (Exception e) { + LOGGER.error("class=S3Service||method=init||fields={}||errMsg={}", this.toString(), e.getMessage()); + } + } + + @Override + public boolean upload(String fileName, String fileMd5, MultipartFile uploadFile) { + InputStream inputStream = null; + try { + if (!createBucketIfNotExist()) { + return false; + } + + inputStream = uploadFile.getInputStream(); + minioClient.putObject(PutObjectArgs.builder() + .bucket(this.bucket) + .object(fileName) + .stream(inputStream, inputStream.available(), -1) + .build() + ); + return true; + } catch (Exception e) { + LOGGER.error("class=S3Service||method=upload||fileName={}||errMsg={}||msg=upload failed", fileName, e.getMessage()); + } finally { + if (inputStream != null) { + try { + inputStream.close(); + } catch (IOException e) { + ; // ignore + } + } + } + return false; + } + + @Override + public Result download(String fileName, String fileMd5) { + try { + final ObjectStat stat = minioClient.statObject(this.bucket, fileName); + + InputStream is = minioClient.getObject(this.bucket, fileName); + + return Result.buildSuc(new MockMultipartFile(fileName, fileName, stat.contentType(), is)); + } catch (Exception e) { + LOGGER.error("class=S3Service||method=download||fileName={}||errMsg={}||msg=download failed", fileName, e.getMessage()); + } + return Result.buildFrom(ResultStatus.STORAGE_DOWNLOAD_FILE_FAILED); + } + + @Override + public String getDownloadBaseUrl() { + return this.endpoint + "/" + this.bucket; + } + + private boolean createBucketIfNotExist() { + try { + boolean found = minioClient.bucketExists(BucketExistsArgs.builder().bucket(this.bucket).build()); + if (!found) { + minioClient.makeBucket(MakeBucketArgs.builder().bucket(this.bucket).build()); + } + + LOGGER.info("class=S3Service||method=createBucketIfNotExist||bucket={}||msg=check and create bucket success", this.bucket); + return true; + } catch (Exception e) { + LOGGER.error("class=S3Service||method=createBucketIfNotExist||bucket={}||errMsg={}||msg=create bucket failed", this.bucket, e.getMessage()); + } + return false; + } + + @Override + public String toString() { + return "S3Service{" + + "endpoint='" + endpoint + '\'' + + ", accessKey='" + accessKey + '\'' + + ", secretKey='" + secretKey + '\'' + + ", bucket='" + bucket + '\'' + + '}'; + } +} diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java index 307c486c..37f8753a 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java @@ -4,17 +4,18 @@ import com.xiaojukeji.kafka.manager.common.bizenum.KafkaFileEnum; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.KafkaFileDTO; +import com.xiaojukeji.kafka.manager.common.entity.pojo.KafkaFileDO; import com.xiaojukeji.kafka.manager.common.utils.CopyUtils; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.dao.KafkaFileDao; -import com.xiaojukeji.kafka.manager.common.entity.pojo.KafkaFileDO; -import com.xiaojukeji.kafka.manager.kcm.component.storage.AbstractStorageService; import com.xiaojukeji.kafka.manager.kcm.KafkaFileService; +import com.xiaojukeji.kafka.manager.kcm.component.storage.AbstractStorageService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.dao.DuplicateKeyException; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; import java.util.ArrayList; import java.util.List; @@ -163,7 +164,7 @@ public class KafkaFileServiceImpl implements KafkaFileService { } @Override - public Result downloadKafkaConfigFile(Long fileId) { + public Result downloadKafkaFile(Long fileId) { KafkaFileDO kafkaFileDO = kafkaFileDao.getById(fileId); if (ValidateUtils.isNull(kafkaFileDO)) { return Result.buildFrom(ResultStatus.RESOURCE_NOT_EXIST); diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdKafkaFileController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdKafkaFileController.java index 823bbe70..009d540a 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdKafkaFileController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdKafkaFileController.java @@ -1,23 +1,30 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.rd; import com.xiaojukeji.kafka.manager.common.bizenum.KafkaFileEnum; +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.KafkaFileDTO; -import com.xiaojukeji.kafka.manager.common.entity.vo.rd.KafkaFileVO; -import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; -import com.xiaojukeji.kafka.manager.kcm.component.storage.common.StorageEnum; import com.xiaojukeji.kafka.manager.common.entity.pojo.KafkaFileDO; -import com.xiaojukeji.kafka.manager.service.service.ClusterService; -import com.xiaojukeji.kafka.manager.kcm.KafkaFileService; +import com.xiaojukeji.kafka.manager.common.entity.vo.rd.KafkaFileVO; import com.xiaojukeji.kafka.manager.common.utils.JsonUtils; import com.xiaojukeji.kafka.manager.common.utils.SpringTool; -import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import com.xiaojukeji.kafka.manager.kcm.KafkaFileService; +import com.xiaojukeji.kafka.manager.kcm.component.storage.common.StorageEnum; +import com.xiaojukeji.kafka.manager.service.service.ClusterService; import com.xiaojukeji.kafka.manager.web.converters.KafkaFileConverter; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.tomcat.util.http.fileupload.IOUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import javax.servlet.http.HttpServletResponse; +import java.io.InputStream; +import java.net.URLEncoder; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -30,6 +37,8 @@ import java.util.Map; @RestController @RequestMapping(ApiPrefix.API_V1_RD_PREFIX) public class RdKafkaFileController { + private final static Logger LOGGER = LoggerFactory.getLogger(RdKafkaFileController.class); + @Autowired private ClusterService clusterService; @@ -71,9 +80,33 @@ public class RdKafkaFileController { return new Result<>(KafkaFileConverter.convertKafkaFileVOList(kafkaFileDOList, clusterService)); } - @ApiOperation(value = "文件预览", notes = "") + @Deprecated + @ApiOperation(value = "文件下载", notes = "") @RequestMapping(value = "kafka-files/{fileId}/config-files", method = RequestMethod.GET) - public Result previewKafkaFile(@PathVariable("fileId") Long fileId) { - return kafkaFileService.downloadKafkaConfigFile(fileId); + public Result downloadKafkaFile(@PathVariable("fileId") Long fileId, HttpServletResponse response) { + Result multipartFileResult = kafkaFileService.downloadKafkaFile(fileId); + + if (multipartFileResult.failed() || ValidateUtils.isNull(multipartFileResult.getData())) { + return multipartFileResult; + } + + InputStream is = null; + try { + response.setContentType(multipartFileResult.getData().getContentType()); + response.setCharacterEncoding("UTF-8"); + response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(multipartFileResult.getData().getOriginalFilename(), "UTF-8")); + is = multipartFileResult.getData().getInputStream(); + IOUtils.copy(is, response.getOutputStream()); + } catch (Exception e) { + LOGGER.error("class=RdKafkaFileController||method=downloadKafkaFile||fileId={}||errMsg={}||msg=modify response failed", fileId, e.getMessage()); + } finally { + try { + if (is != null) { + is.close(); + } + } catch (Exception e) { + } + } + return Result.buildSuc(); } } \ No newline at end of file diff --git a/kafka-manager-web/src/main/resources/application.yml b/kafka-manager-web/src/main/resources/application.yml index 8c137da8..5b01d321 100644 --- a/kafka-manager-web/src/main/resources/application.yml +++ b/kafka-manager-web/src/main/resources/application.yml @@ -52,8 +52,11 @@ account: kcm: enabled: false - storage: - base-url: http://127.0.0.1 + s3: + endpoint: 127.0.0.1 + access-key: 1234567890 + secret-key: 0987654321 + bucket: logi-kafka n9e: base-url: http://127.0.0.1:8004 user-token: 12345678 diff --git a/pom.xml b/pom.xml index 7165880e..6588d335 100644 --- a/pom.xml +++ b/pom.xml @@ -223,6 +223,12 @@ curator-recipes 2.10.0 + + + io.minio + minio + 7.1.0 + \ No newline at end of file From 63d291cb470a54d9b74c291711b2973964697849 Mon Sep 17 00:00:00 2001 From: 17hao Date: Wed, 3 Feb 2021 15:50:33 +0800 Subject: [PATCH 20/48] Remove __consumer_offsets from topic list --- .../manager/service/service/impl/TopicManagerServiceImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java index 0b42d068..9e381587 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java @@ -50,6 +50,8 @@ import java.util.stream.Collectors; public class TopicManagerServiceImpl implements TopicManagerService { private static final Logger LOGGER = LoggerFactory.getLogger(TopicManagerServiceImpl.class); + private static final String CONSUMER_OFFSETS_TOPIC = "__consumer_offsets"; + @Autowired private TopicDao topicDao; @@ -275,6 +277,8 @@ public class TopicManagerServiceImpl implements TopicManagerService { } Map> topicMap = new HashMap<>(appList.size()); for (TopicDO topicDO: topicList) { + if (topicDO.getTopicName().equals(CONSUMER_OFFSETS_TOPIC)) + continue; Map subTopicMap = topicMap.getOrDefault(topicDO.getClusterId(), new HashMap<>()); subTopicMap.put(topicDO.getTopicName(), topicDO); topicMap.put(topicDO.getClusterId(), subTopicMap); From 712851a8a56725a097bf89ab479af332c0957e7f Mon Sep 17 00:00:00 2001 From: 17hao Date: Wed, 3 Feb 2021 16:06:16 +0800 Subject: [PATCH 21/48] Add braces --- .../manager/service/service/impl/TopicManagerServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java index 9e381587..96913e50 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java @@ -277,8 +277,9 @@ public class TopicManagerServiceImpl implements TopicManagerService { } Map> topicMap = new HashMap<>(appList.size()); for (TopicDO topicDO: topicList) { - if (topicDO.getTopicName().equals(CONSUMER_OFFSETS_TOPIC)) + if (topicDO.getTopicName().equals(CONSUMER_OFFSETS_TOPIC)) { continue; + } Map subTopicMap = topicMap.getOrDefault(topicDO.getClusterId(), new HashMap<>()); subTopicMap.put(topicDO.getTopicName(), topicDO); topicMap.put(topicDO.getClusterId(), subTopicMap); From 5b7d7ad65daedd84de4cc1a7db82fa2668ea7e34 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Wed, 3 Feb 2021 18:01:42 +0800 Subject: [PATCH 22/48] Create resource_apply.md --- docs/user_guide/resource_apply.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 docs/user_guide/resource_apply.md diff --git a/docs/user_guide/resource_apply.md b/docs/user_guide/resource_apply.md new file mode 100644 index 00000000..ba811b05 --- /dev/null +++ b/docs/user_guide/resource_apply.md @@ -0,0 +1,31 @@ +--- + +![kafka-manager-logo](../assets/images/common/logo_name.png) + +**一站式`Apache Kafka`集群指标监控与运维管控平台** + +--- + + +# 资源申请文档 + +## 主要名词解释 + +- 应用(App):作为Kafka中的账户,使用AppID+password作为身份标识 +- 集群:可使用平台提供的共享集群,也可为某一应用申请单独的集群 +- Topic:可申请创建Topic或申请其他Topic的生产/消费权限。进行生产/消费时通过Topic+AppID进行身份鉴权 +![production_consumption_flow](../assets/images/resource_apply/production_consumption_flow.png) + +## 应用申请 +应用(App)作为Kafka中的账户,使用AppID+password作为身份标识。对Topic进行生产/消费时通过Topic+AppID进行身份鉴权。 + +用户申请应用,经由运维人员审批,审批通过后获得AppID和密钥 + +## 集群申请 +可使用平台提供的共享集群,若对隔离性、稳定性、生产消费速率有更高的需求,可对某一应用申请单独的集群 + +## Topic申请 +- 用户可根据已申请的应用创建Topic。创建后,应用负责人默认拥有该Topic的生产/消费权限和管理权限 +- 也可申请其他Topic的生产、消费权限。经由Topic所属应用的负责人审批后,即可拥有相应权限。 + + From 6471efed5f12593e5d587caf1ca8dbaf0f390853 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Wed, 3 Feb 2021 18:04:40 +0800 Subject: [PATCH 23/48] Add files via upload --- .../production_consumption_flow.png | Bin 0 -> 121691 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/user_guide/assets/resource_apply/production_consumption_flow.png diff --git a/docs/user_guide/assets/resource_apply/production_consumption_flow.png b/docs/user_guide/assets/resource_apply/production_consumption_flow.png new file mode 100644 index 0000000000000000000000000000000000000000..36187c83dbcc3a6a6fdaec5c57f931e3a9c4e0b3 GIT binary patch literal 121691 zcmY(r1z1$y_dQHAfFKRh-Q6wS-Q7qI-6bvE-Q68SDh^T3i(Z0!kbF`U!voe^TZh!3I7+x~NKtLex$Y zoPdAvw9uCMpr8Oj2YwHLfPut=fPFay{1Sr1|KEE_NE!&}zn?=vKzy=>fO$Pf5qy04 zNd>=NzVq)0oe%kXHu$rAsQ=D}($0te-}|30Uju5hO@j{zj?y|V5D+-%FE2>Tyjk$D zg&}0bMbteZ&%5E%35VRMys4%jaQCxaOyPRvgUD#nq6{ zUb}dLzN8Q={w6T5V^~SeYb-a`F-??a#RxPOrE*pb=7IPSfbjjX?9^53$A!-kilZfq z%XeDijw;0*m(%&J4UHpB4J`~E7MM4XVm+v@2O3%^jg5_sF`Yf5RP`!a_W$$8d^R-C z(#p!yrWXAlJCChxY^?RV_)uX1q{aZ;mxHn@%%X^%n~X*#+yA@X%Vk~a&x!u;UGnDv z%K*&^G)}+&^W`f*da%Y-YXIcy)m{!Il05{~s^m7m{@)1mchOkjt9BhAq5n5z78u!> z0AB49$@$xN{~M0*0J$-W=D-#d-2cXB3`oXm(2Qmu(jdv(gcCx>=m7(MxQ?A^{^9L169BNTrx5jxiWhhJZmeeS0!zeLP(-f@Dnl&xnDAs6DL!VzbHb zm;*q0i%&hD{eB;pq#2ejE~;_({&d9Sb;iugdT@Z@nwyd|NtXs}#BrrxNh3^Y;b9bN3U@tqN;9sCt0?p18 zG5RVsM<%)L#c7F+A5U&!;z^WsrB z%%x6ygERFeU#)2VaNgu8yw#XS?$sEuvN)^I z7n%YazOeXW^uQ=#@MK3pIMhe>wXe20k#|2$@^hH>13GrX&a6-8ttB+52_|}3-on+o zVvf>Y5;)5`y12)~e?XJJ;bFvambcmsS3>kL0~ygEd}e)+g)y+9Oa^QfM2x|J*P9t)hjnAU9Tj;tO zzMY42^M6Y={w;WMUX!Yo-liG(>qwHPZh+*m>!~|c)$s^x-oxWkNFRUlGh*22)PnM$ zcJ%7P`*2(L>(iQ$aDS8xZ9z6R{vm(n3LJr`zHAsirlr1GJX#paJJGSUEd{++`!qM7 zSR1KVFZKm5sFb%EY(-z&SH67wV%N>$v@4#;wNcZ4?MJu7^$oNk3|D5Bc;AhZVk|DZ zZ$?SPNu5s7M2~$@u`g+m_<(>RuEe%=az4X_dvSsBP@GsEPth*DcD=I`c)G%cNo<_N zQAo1}As>qyKCp^?d3a1~jL)?3_<*#3@Cm$l=Nin0@<)RHg(_hpnDO3GX!-Vp9b@2f zeF6?^+%Bh9wA_+7%?2l38QnAV|E=}idB@1o_ z&h?2>zmMxNQa$CBv5%E2t>OpfhX>YzAdxDP ziX~FGWy=tl??V;Q*_>M|aDHZk(IuyqHhiInSBvs0Bssia<$aYjdEB4AR_L7H`{qRi2@#fwh&Q}SJ5n}!mnPpzc*jL@~u1`PaVyAKLc;_JZQL=v5!luEZP=txim#0XLWV8 zIraa{fMh+JFs)@G6UWjw{nJzQm4!orpQtlDi9DF{(dO}cJQPS>iP5-ShG~kH7A_+F zN5${DxOkm%=~vhzAPe;E@PCGK0|V%0AM?9N==6DbbhRauQ!si9e-NybQ3fw@b$@cE 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

kojzpaj(72nUK{n;67+$OBl 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 z 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 Date: Wed, 3 Feb 2021 18:07:34 +0800 Subject: [PATCH 24/48] Update resource_apply.md --- docs/user_guide/resource_apply.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/user_guide/resource_apply.md b/docs/user_guide/resource_apply.md index ba811b05..61c3c5e8 100644 --- a/docs/user_guide/resource_apply.md +++ b/docs/user_guide/resource_apply.md @@ -1,3 +1,4 @@ + --- ![kafka-manager-logo](../assets/images/common/logo_name.png) From 276c15cc23c11592a020ddd85eccee2486530e76 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Wed, 3 Feb 2021 18:08:15 +0800 Subject: [PATCH 25/48] Delete docs/user_guide/resource_apply directory --- .../resource_apply/resource_apply.md | 32 ------------------- 1 file changed, 32 deletions(-) delete mode 100644 docs/user_guide/resource_apply/resource_apply.md diff --git a/docs/user_guide/resource_apply/resource_apply.md b/docs/user_guide/resource_apply/resource_apply.md deleted file mode 100644 index 427d8b14..00000000 --- a/docs/user_guide/resource_apply/resource_apply.md +++ /dev/null @@ -1,32 +0,0 @@ - ---- - -![kafka-manager-logo](../assets/images/common/logo_name.png) - -**一站式`Apache Kafka`集群指标监控与运维管控平台** - ---- - - -# 资源申请文档 - -## 主要名词解释 - -- 应用(App):作为Kafka中的账户,使用AppID+password作为身份标识 -- 集群:可使用平台提供的共享集群,也可为某一应用申请单独的集群 -- Topic:可申请创建Topic或申请其他Topic的生产/消费权限。进行生产/消费时通过Topic+AppID进行身份鉴权 -![production_consumption_flow](/production_consumption_flow.png) - -## 应用申请 -应用(App)作为Kafka中的账户,使用AppID+password作为身份标识。对Topic进行生产/消费时通过Topic+AppID进行身份鉴权。 - -用户申请应用,经由运维人员审批,审批通过后获得AppID和密钥 - -## 集群申请 -可使用平台提供的共享集群,若对隔离性、稳定性、生产消费速率有更高的需求,可对某一应用申请单独的集群 - -## Topic申请 -- 用户可根据已申请的应用创建Topic。创建后,应用负责人默认拥有该Topic的生产/消费权限和管理权限 -- 也可申请其他Topic的生产、消费权限。经由Topic所属应用的负责人审批后,即可拥有相应权限。 - - From 10ba0cf976fd6c31b3b3488bf30f19df48e7b2fa Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Wed, 3 Feb 2021 18:18:02 +0800 Subject: [PATCH 26/48] Update resource_apply.md --- docs/user_guide/resource_apply.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/user_guide/resource_apply.md b/docs/user_guide/resource_apply.md index 61c3c5e8..46b956dc 100644 --- a/docs/user_guide/resource_apply.md +++ b/docs/user_guide/resource_apply.md @@ -14,8 +14,8 @@ - 应用(App):作为Kafka中的账户,使用AppID+password作为身份标识 - 集群:可使用平台提供的共享集群,也可为某一应用申请单独的集群 -- Topic:可申请创建Topic或申请其他Topic的生产/消费权限。进行生产/消费时通过Topic+AppID进行身份鉴权 -![production_consumption_flow](../assets/images/resource_apply/production_consumption_flow.png) +- Topic:可申请创建Topic或申请其他Topic的生产/消费权限。进行生产/消费时通过Topic+AppID进行身份鉴权 +![production_consumption_flow](../assets/resource_apply/production_consumption_flow.png) ## 应用申请 应用(App)作为Kafka中的账户,使用AppID+password作为身份标识。对Topic进行生产/消费时通过Topic+AppID进行身份鉴权。 From 3dd0f7f2c3448f0365bda49ef5dc98423cccef44 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Wed, 3 Feb 2021 19:41:33 +0800 Subject: [PATCH 27/48] Update add_cluster.md --- docs/user_guide/add_cluster/add_cluster.md | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/docs/user_guide/add_cluster/add_cluster.md b/docs/user_guide/add_cluster/add_cluster.md index 14c1d907..99d2c205 100644 --- a/docs/user_guide/add_cluster/add_cluster.md +++ b/docs/user_guide/add_cluster/add_cluster.md @@ -5,16 +5,26 @@ **一站式`Apache Kafka`集群指标监控与运维管控平台** + --- # 集群接入 -集群的接入总共需要三个步骤,分别是: -1. 接入物理集群 -2. 创建Region -3. 创建逻辑集群 +## 主要概念讲解 +面对大规模集群、业务场景复杂的情况,引入Region、逻辑集群的概念 +- Region:划分部分Broker作为一个 Region,用Region定义资源划分的单位,提高扩展性和隔离性。如果部分Topic异常也不会影响大面积的Broker +- 逻辑集群:逻辑集群由部分Region组成,便于对大规模集群按照业务划分、保障能力进行管理 -备注:接入集群需要2、3两步是因为普通用户的视角下,看到的都是逻辑集群,如果没有2、3两步,那么普通用户看不到任何信息。 + +集群的接入总共需要三个步骤,分别是: +1. 接入物理集群:填写机器地址、安全协议等配置信息,接入真实的物理集群 +2. 创建Region:将部分Broker划分为一个Region +3. 创建逻辑集群:逻辑集群由部分Region组成,可根据业务划分、保障等级来创建相应的逻辑集群 + +![op_cluster_flow](assets/op_cluster_flow.png) + + +**备注:接入集群需要2、3两步是因为普通用户的视角下,看到的都是逻辑集群,如果没有2、3两步,那么普通用户看不到任何信息。** ## 1、接入物理集群 @@ -36,4 +46,4 @@ ![op_add_logical_cluster](assets/op_add_logical_cluster.jpg) -如上图所示,填写逻辑集群信息,然后点击确定,即可完成逻辑集群的创建。 \ No newline at end of file +如上图所示,填写逻辑集群信息,然后点击确定,即可完成逻辑集群的创建。 From 96ca17d26c747b81bf4ea9f2e2c41bc5d28f97f5 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Wed, 3 Feb 2021 19:43:03 +0800 Subject: [PATCH 28/48] Add files via upload --- .../add_cluster/assets/op_cluster_flow.png | Bin 0 -> 107895 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/user_guide/add_cluster/assets/op_cluster_flow.png diff --git a/docs/user_guide/add_cluster/assets/op_cluster_flow.png b/docs/user_guide/add_cluster/assets/op_cluster_flow.png new file mode 100644 index 0000000000000000000000000000000000000000..283f2676d61925e086d102f14df2670428454e9d GIT binary patch literal 107895 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 Date: Wed, 3 Feb 2021 20:52:44 +0800 Subject: [PATCH 29/48] Update resource_apply.md --- docs/user_guide/resource_apply.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user_guide/resource_apply.md b/docs/user_guide/resource_apply.md index 46b956dc..87537f95 100644 --- a/docs/user_guide/resource_apply.md +++ b/docs/user_guide/resource_apply.md @@ -15,7 +15,7 @@ - 应用(App):作为Kafka中的账户,使用AppID+password作为身份标识 - 集群:可使用平台提供的共享集群,也可为某一应用申请单独的集群 - Topic:可申请创建Topic或申请其他Topic的生产/消费权限。进行生产/消费时通过Topic+AppID进行身份鉴权 -![production_consumption_flow](../assets/resource_apply/production_consumption_flow.png) +![production_consumption_flow](assets/resource_apply/production_consumption_flow.png) ## 应用申请 应用(App)作为Kafka中的账户,使用AppID+password作为身份标识。对Topic进行生产/消费时通过Topic+AppID进行身份鉴权。 From dfb625377b85afae67f9e17d6e7a263a11be9aea Mon Sep 17 00:00:00 2001 From: 17hao Date: Wed, 3 Feb 2021 22:30:38 +0800 Subject: [PATCH 30/48] Using existing topic name constant --- .../manager/service/service/impl/TopicManagerServiceImpl.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java index 96913e50..fc5f678d 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java @@ -50,8 +50,6 @@ import java.util.stream.Collectors; public class TopicManagerServiceImpl implements TopicManagerService { private static final Logger LOGGER = LoggerFactory.getLogger(TopicManagerServiceImpl.class); - private static final String CONSUMER_OFFSETS_TOPIC = "__consumer_offsets"; - @Autowired private TopicDao topicDao; @@ -277,7 +275,7 @@ public class TopicManagerServiceImpl implements TopicManagerService { } Map> topicMap = new HashMap<>(appList.size()); for (TopicDO topicDO: topicList) { - if (topicDO.getTopicName().equals(CONSUMER_OFFSETS_TOPIC)) { + if (topicDO.getTopicName().equals(KafkaConstant.COORDINATOR_TOPIC_NAME)) { continue; } Map subTopicMap = topicMap.getOrDefault(topicDO.getClusterId(), new HashMap<>()); From e8de40328690b729a9d6572a0bfa1f808e6842e7 Mon Sep 17 00:00:00 2001 From: 17hao Date: Thu, 4 Feb 2021 12:14:44 +0800 Subject: [PATCH 31/48] Hide __transaction_state in topic list && fix logic error --- .../service/impl/TopicManagerServiceImpl.java | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java index fc5f678d..e903b2e7 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java @@ -2,6 +2,7 @@ package com.xiaojukeji.kafka.manager.service.service.impl; import com.xiaojukeji.kafka.manager.common.bizenum.KafkaClientEnum; import com.xiaojukeji.kafka.manager.common.bizenum.TopicAuthorityEnum; +import com.xiaojukeji.kafka.manager.common.constant.KafkaConstant; import com.xiaojukeji.kafka.manager.common.constant.KafkaMetricsCollections; import com.xiaojukeji.kafka.manager.common.constant.TopicCreationConstant; import com.xiaojukeji.kafka.manager.common.entity.Result; @@ -275,11 +276,13 @@ public class TopicManagerServiceImpl implements TopicManagerService { } Map> topicMap = new HashMap<>(appList.size()); for (TopicDO topicDO: topicList) { - if (topicDO.getTopicName().equals(KafkaConstant.COORDINATOR_TOPIC_NAME)) { + String topicName = topicDO.getTopicName(); + if (topicName.equals(KafkaConstant.COORDINATOR_TOPIC_NAME) || + topicName.equals(KafkaConstant.TRANSACTION_TOPIC_NAME)) { continue; } Map subTopicMap = topicMap.getOrDefault(topicDO.getClusterId(), new HashMap<>()); - subTopicMap.put(topicDO.getTopicName(), topicDO); + subTopicMap.put(topicName, topicDO); topicMap.put(topicDO.getClusterId(), subTopicMap); } @@ -304,6 +307,11 @@ public class TopicManagerServiceImpl implements TopicManagerService { continue; } + TopicDO topicDO = topicMap.get(topicName); + if (ValidateUtils.isNull(topicDO)) { + continue; + } + TopicDTO dto = new TopicDTO(); dtoList.add(dto); @@ -311,11 +319,6 @@ public class TopicManagerServiceImpl implements TopicManagerService { dto.setLogicalClusterName(logicalClusterDO.getName()); dto.setTopicName(topicName); dto.setNeedAuth(Boolean.TRUE); - - TopicDO topicDO = topicMap.get(topicName); - if (ValidateUtils.isNull(topicDO)) { - continue; - } dto.setDescription(topicDO.getDescription()); dto.setAppId(topicDO.getAppId()); From 9491418f3b5d7c38d32442b63b46b9e09c7faf8f Mon Sep 17 00:00:00 2001 From: 17hao Date: Thu, 4 Feb 2021 12:32:28 +0800 Subject: [PATCH 32/48] Update if statements --- .../service/service/impl/TopicManagerServiceImpl.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java index e903b2e7..f86d022a 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java @@ -303,12 +303,10 @@ public class TopicManagerServiceImpl implements TopicManagerService { clusterDO.getId(), topicName ); - if (ValidateUtils.isNull(logicalClusterDO)) { - continue; - } TopicDO topicDO = topicMap.get(topicName); - if (ValidateUtils.isNull(topicDO)) { + + if (ValidateUtils.isNull(topicDO) || ValidateUtils.isNull(logicalClusterDO)) { continue; } From c7919210a2cf3d90f58b3578539b96e6bfcd9578 Mon Sep 17 00:00:00 2001 From: 17hao Date: Thu, 4 Feb 2021 16:30:23 +0800 Subject: [PATCH 33/48] Fix topic list filter condition --- .../service/impl/TopicManagerServiceImpl.java | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java index f86d022a..a2d5aa92 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java @@ -276,13 +276,8 @@ public class TopicManagerServiceImpl implements TopicManagerService { } Map> topicMap = new HashMap<>(appList.size()); for (TopicDO topicDO: topicList) { - String topicName = topicDO.getTopicName(); - if (topicName.equals(KafkaConstant.COORDINATOR_TOPIC_NAME) || - topicName.equals(KafkaConstant.TRANSACTION_TOPIC_NAME)) { - continue; - } Map subTopicMap = topicMap.getOrDefault(topicDO.getClusterId(), new HashMap<>()); - subTopicMap.put(topicName, topicDO); + subTopicMap.put(topicDO.getTopicName(), topicDO); topicMap.put(topicDO.getClusterId(), subTopicMap); } @@ -299,14 +294,15 @@ public class TopicManagerServiceImpl implements TopicManagerService { Map topicMap) { List dtoList = new ArrayList<>(); for (String topicName: PhysicalClusterMetadataManager.getTopicNameList(clusterDO.getId())) { + if (topicName.equals(KafkaConstant.COORDINATOR_TOPIC_NAME) || topicName.equals(KafkaConstant.TRANSACTION_TOPIC_NAME)) { + continue; + } + LogicalClusterDO logicalClusterDO = logicalClusterMetadataManager.getTopicLogicalCluster( clusterDO.getId(), topicName ); - - TopicDO topicDO = topicMap.get(topicName); - - if (ValidateUtils.isNull(topicDO) || ValidateUtils.isNull(logicalClusterDO)) { + if (ValidateUtils.isNull(logicalClusterDO)) { continue; } @@ -317,6 +313,11 @@ public class TopicManagerServiceImpl implements TopicManagerService { dto.setLogicalClusterName(logicalClusterDO.getName()); dto.setTopicName(topicName); dto.setNeedAuth(Boolean.TRUE); + + TopicDO topicDO = topicMap.get(topicName); + if (ValidateUtils.isNull(topicDO)) { + continue; + } dto.setDescription(topicDO.getDescription()); dto.setAppId(topicDO.getAppId()); From ed93c50fefb62d91d083a85440ebed4a6674d441 Mon Sep 17 00:00:00 2001 From: EricZeng Date: Thu, 4 Feb 2021 16:54:42 +0800 Subject: [PATCH 34/48] modify without logical cluster desc --- docs/user_guide/faq.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/user_guide/faq.md b/docs/user_guide/faq.md index 28138a3a..8ab9781a 100644 --- a/docs/user_guide/faq.md +++ b/docs/user_guide/faq.md @@ -10,7 +10,7 @@ # FAQ - 0、Github图裂问题解决 -- 1、Topic申请时没有可选择的集群? +- 1、Topic申请、新建监控告警等操作时没有可选择的集群? - 2、逻辑集群 & Region的用途? - 3、登录失败? - 4、页面流量信息等无数据? @@ -37,9 +37,13 @@ --- -### 1、Topic申请时没有可选择的集群? +### 1、Topic申请、新建监控告警等操作时没有可选择的集群? -- 参看 [kafka-manager 接入集群](docs/user_guide/add_cluster/add_cluster.md) 手册,这里的Region和逻辑集群都必须添加。 +缺少逻辑集群导致的,在Topic管理、监控告警、集群管理这三个Tab下面都是普通用户视角,普通用户看到的集群都是逻辑集群,因此在这三个Tab下进行操作时,都需要有逻辑集群。 + +逻辑集群的创建参看: + +- [kafka-manager 接入集群](docs/user_guide/add_cluster/add_cluster.md) 手册,这里的Region和逻辑集群都必须添加。 --- From 31ce3b9c08652a1885e78824370918d70bf93246 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Thu, 4 Feb 2021 19:08:28 +0800 Subject: [PATCH 35/48] Update add_cluster.md --- docs/user_guide/add_cluster/add_cluster.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/user_guide/add_cluster/add_cluster.md b/docs/user_guide/add_cluster/add_cluster.md index 99d2c205..1774a9be 100644 --- a/docs/user_guide/add_cluster/add_cluster.md +++ b/docs/user_guide/add_cluster/add_cluster.md @@ -13,8 +13,8 @@ ## 主要概念讲解 面对大规模集群、业务场景复杂的情况,引入Region、逻辑集群的概念 - Region:划分部分Broker作为一个 Region,用Region定义资源划分的单位,提高扩展性和隔离性。如果部分Topic异常也不会影响大面积的Broker -- 逻辑集群:逻辑集群由部分Region组成,便于对大规模集群按照业务划分、保障能力进行管理 - +- 逻辑集群:逻辑集群由部分Region组成,便于对大规模集群按照业务划分、保障能力进行管理 +![op_cluster_arch](assets/op_cluster_arch.png) 集群的接入总共需要三个步骤,分别是: 1. 接入物理集群:填写机器地址、安全协议等配置信息,接入真实的物理集群 From 75e7e81c05d8630bd9882f44fde5fb6d6ff55ef6 Mon Sep 17 00:00:00 2001 From: ZHAOYINRUI <51046167+ZHAOYINRUI@users.noreply.github.com> Date: Thu, 4 Feb 2021 19:09:02 +0800 Subject: [PATCH 36/48] Add files via upload --- .../add_cluster/assets/op_cluster_arch.png | Bin 0 -> 127189 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/user_guide/add_cluster/assets/op_cluster_arch.png diff --git a/docs/user_guide/add_cluster/assets/op_cluster_arch.png b/docs/user_guide/add_cluster/assets/op_cluster_arch.png new file mode 100644 index 0000000000000000000000000000000000000000..aa972d9e8bbfc6c89d6a3c8ff344d7f5051b22cc GIT binary patch literal 127189 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 =} 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 L#?Jq!TmP@-biy0e#j#cal(nRcD5NH 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 Date: Thu, 4 Feb 2021 19:10:11 +0800 Subject: [PATCH 37/48] Update README.md --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index d0887cac..aaa7e1d8 100644 --- a/README.md +++ b/README.md @@ -53,11 +53,20 @@ ## 2 相关文档 +### 2.1 产品文档 - [滴滴Logi-KafkaManager 安装手册](docs/install_guide/install_guide_cn.md) - [滴滴Logi-KafkaManager 接入集群](docs/user_guide/add_cluster/add_cluster.md) - [滴滴Logi-KafkaManager 用户使用手册](docs/user_guide/user_guide_cn.md) - [滴滴Logi-KafkaManager FAQ](docs/user_guide/faq.md) +### 2.2 社区文章 +- [滴滴云官网产品介绍](https://www.didiyun.com/production/logi-KafkaManager.html) +- [7年沉淀之作--滴滴Logi日志服务套件](https://mp.weixin.qq.com/s/-KQp-Qo3WKEOc9wIR2iFnw) +- [滴滴Logi-KafkaManager 一站式Kafka监控与管控平台](https://mp.weixin.qq.com/s/9qSZIkqCnU6u9nLMvOOjIQ) +- [滴滴Logi-KafkaManager 开源之路](https://xie.infoq.cn/article/0223091a99e697412073c0d64) +- [滴滴Logi-KafkaManager 系列视频教程](https://mp.weixin.qq.com/s/9X7gH0tptHPtfjPPSdGO8g) +- [kafka实践(十五):滴滴开源Kafka管控平台 Logi-KafkaManager研究--A叶子叶来](https://blog.csdn.net/yezonggang/article/details/113106244) + ## 3 滴滴Logi开源用户钉钉交流群 ![dingding_group](./docs/assets/images/common/dingding_group.jpg) From 1fdb85234c06bae25da1fdd4b4714e00885d1951 Mon Sep 17 00:00:00 2001 From: 17hao Date: Fri, 5 Feb 2021 12:18:50 +0800 Subject: [PATCH 38/48] Record editting topic --- .../service/impl/TopicManagerServiceImpl.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java index a2d5aa92..5709fffc 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java @@ -1,6 +1,9 @@ package com.xiaojukeji.kafka.manager.service.service.impl; +import com.alibaba.fastjson.JSONObject; import com.xiaojukeji.kafka.manager.common.bizenum.KafkaClientEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.ModuleEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.OperateEnum; import com.xiaojukeji.kafka.manager.common.bizenum.TopicAuthorityEnum; import com.xiaojukeji.kafka.manager.common.constant.KafkaConstant; import com.xiaojukeji.kafka.manager.common.constant.KafkaMetricsCollections; @@ -81,6 +84,9 @@ public class TopicManagerServiceImpl implements TopicManagerService { @Autowired private RegionService regionService; + @Autowired + private OperateRecordService operateRecordService; + @Override public List listAll() { try { @@ -341,6 +347,12 @@ public class TopicManagerServiceImpl implements TopicManagerService { if (ValidateUtils.isNull(topicDO)) { return ResultStatus.TOPIC_NOT_EXIST; } + + Map content = new HashMap<>(2); + content.put("clusterId", clusterId); + content.put("topicName", topicName); + recordOperation(content, topicName, operator); + topicDO.setDescription(description); if (topicDao.updateByName(topicDO) > 0) { return ResultStatus.SUCCESS; @@ -364,6 +376,12 @@ public class TopicManagerServiceImpl implements TopicManagerService { return ResultStatus.APP_NOT_EXIST; } + Map content = new HashMap<>(4); + content.put("clusterId", clusterId); + content.put("topicName", topicName); + content.put("appId", appId); + recordOperation(content, topicName, operator); + TopicDO topicDO = topicDao.getByTopicName(clusterId, topicName); if (ValidateUtils.isNull(topicDO)) { // 不存在, 则需要插入 @@ -394,6 +412,16 @@ public class TopicManagerServiceImpl implements TopicManagerService { return ResultStatus.MYSQL_ERROR; } + private void recordOperation(Map content, String topicName, String operator) { + OperateRecordDO operateRecordDO = new OperateRecordDO(); + operateRecordDO.setModuleId(ModuleEnum.TOPIC.getCode()); + operateRecordDO.setOperateId(OperateEnum.EDIT.getCode()); + operateRecordDO.setResource(topicName); + operateRecordDO.setContent(JSONObject.toJSONString(content)); + operateRecordDO.setOperator(operator); + operateRecordService.insert(operateRecordDO); + } + @Override public int deleteByTopicName(Long clusterId, String topicName) { try { From 02d6463faa0dc7d9fb11ddb94828389db1d60df3 Mon Sep 17 00:00:00 2001 From: 17hao Date: Sat, 6 Feb 2021 18:43:36 +0800 Subject: [PATCH 39/48] Using JsonUtils instead of fastjson --- kafka-manager-common/pom.xml | 7 +++++++ .../manager/common/utils/JsonUtilsTest.java | 18 ++++++++++++++++++ .../service/impl/TopicManagerServiceImpl.java | 3 +-- 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 kafka-manager-common/src/test/java/com/xiaojukeji/kafka/manager/common/utils/JsonUtilsTest.java diff --git a/kafka-manager-common/pom.xml b/kafka-manager-common/pom.xml index 67fbcdbd..7316d5d0 100644 --- a/kafka-manager-common/pom.xml +++ b/kafka-manager-common/pom.xml @@ -104,5 +104,12 @@ javax.servlet javax.servlet-api + + + junit + junit + 4.12 + test + \ No newline at end of file diff --git a/kafka-manager-common/src/test/java/com/xiaojukeji/kafka/manager/common/utils/JsonUtilsTest.java b/kafka-manager-common/src/test/java/com/xiaojukeji/kafka/manager/common/utils/JsonUtilsTest.java new file mode 100644 index 00000000..1d338015 --- /dev/null +++ b/kafka-manager-common/src/test/java/com/xiaojukeji/kafka/manager/common/utils/JsonUtilsTest.java @@ -0,0 +1,18 @@ +package com.xiaojukeji.kafka.manager.common.utils; + +import org.junit.Assert; +import org.junit.Test; + +import java.util.HashMap; +import java.util.Map; + +public class JsonUtilsTest { + @Test + public void testMapToJsonString() { + Map map = new HashMap<>(); + map.put("key", "value"); + map.put("int", 1); + String expectRes = "{\"key\":\"value\",\"int\":1}"; + Assert.assertEquals(expectRes, JsonUtils.toJSONString(map)); + } +} diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java index 5709fffc..6ee9a499 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/TopicManagerServiceImpl.java @@ -1,6 +1,5 @@ package com.xiaojukeji.kafka.manager.service.service.impl; -import com.alibaba.fastjson.JSONObject; import com.xiaojukeji.kafka.manager.common.bizenum.KafkaClientEnum; import com.xiaojukeji.kafka.manager.common.bizenum.ModuleEnum; import com.xiaojukeji.kafka.manager.common.bizenum.OperateEnum; @@ -417,7 +416,7 @@ public class TopicManagerServiceImpl implements TopicManagerService { operateRecordDO.setModuleId(ModuleEnum.TOPIC.getCode()); operateRecordDO.setOperateId(OperateEnum.EDIT.getCode()); operateRecordDO.setResource(topicName); - operateRecordDO.setContent(JSONObject.toJSONString(content)); + operateRecordDO.setContent(JsonUtils.toJSONString(content)); operateRecordDO.setOperator(operator); operateRecordService.insert(operateRecordDO); } From 0668debec649132420d2af1c5a74fed00b9ec5ef Mon Sep 17 00:00:00 2001 From: 17hao Date: Sat, 6 Feb 2021 18:46:47 +0800 Subject: [PATCH 40/48] Update pom.xml --- kafka-manager-common/pom.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/kafka-manager-common/pom.xml b/kafka-manager-common/pom.xml index 7316d5d0..6a8ff0cb 100644 --- a/kafka-manager-common/pom.xml +++ b/kafka-manager-common/pom.xml @@ -108,8 +108,6 @@ junit junit - 4.12 - test \ No newline at end of file From 70c237da72791ac39b39052826d70cf64a24c87e Mon Sep 17 00:00:00 2001 From: 17hao Date: Sun, 7 Feb 2021 13:23:22 +0800 Subject: [PATCH 41/48] Tracking changes applied to Kafka cluster --- .../service/service/ClusterService.java | 2 +- .../service/impl/ClusterServiceImpl.java | 20 ++++++++++- .../service/utils/ChangeTrackingUtils.java | 35 +++++++++++++++++++ .../versionone/op/OpClusterController.java | 2 +- 4 files changed, 56 insertions(+), 3 deletions(-) create mode 100644 kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ChangeTrackingUtils.java diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ClusterService.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ClusterService.java index 004a3f51..b2c5f7b2 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ClusterService.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ClusterService.java @@ -43,7 +43,7 @@ public interface ClusterService { ClusterNameDTO getClusterName(Long logicClusterId); - ResultStatus deleteById(Long clusterId); + ResultStatus deleteById(Long clusterId, String operator); /** * 获取优先被选举为controller的broker diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java index fd28308d..74640e2a 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java @@ -1,6 +1,8 @@ package com.xiaojukeji.kafka.manager.service.service.impl; import com.xiaojukeji.kafka.manager.common.bizenum.DBStatusEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.ModuleEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.OperateEnum; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.ao.ClusterDetailDTO; @@ -19,6 +21,7 @@ import com.xiaojukeji.kafka.manager.service.service.ClusterService; import com.xiaojukeji.kafka.manager.service.service.ConsumerService; import com.xiaojukeji.kafka.manager.service.service.RegionService; import com.xiaojukeji.kafka.manager.service.service.ZookeeperService; +import com.xiaojukeji.kafka.manager.service.utils.ChangeTrackingUtils; import com.xiaojukeji.kafka.manager.service.utils.ConfigUtils; import org.apache.zookeeper.ZooKeeper; import org.slf4j.Logger; @@ -65,6 +68,9 @@ public class ClusterServiceImpl implements ClusterService { @Autowired private ZookeeperService zookeeperService; + @Autowired + private ChangeTrackingUtils changeTrackingUtils; + @Override public ResultStatus addNew(ClusterDO clusterDO, String operator) { if (ValidateUtils.isNull(clusterDO) || ValidateUtils.isNull(operator)) { @@ -74,6 +80,11 @@ public class ClusterServiceImpl implements ClusterService { return ResultStatus.ZOOKEEPER_CONNECT_FAILED; } try { + Map content = new HashMap<>(); + content.put("zk address", clusterDO.getZookeeper()); + content.put("bootstrap servers", clusterDO.getBootstrapServers()); + content.put("security properties", clusterDO.getSecurityProperties()); + changeTrackingUtils.saveOperateRecord(operator, ModuleEnum.CLUSTER, clusterDO.getClusterName(), OperateEnum.ADD, content); if (clusterDao.insert(clusterDO) <= 0) { LOGGER.error("add new cluster failed, clusterDO:{}.", clusterDO); return ResultStatus.MYSQL_ERROR; @@ -104,6 +115,10 @@ public class ClusterServiceImpl implements ClusterService { return ResultStatus.CHANGE_ZOOKEEPER_FORBIDDEN; } clusterDO.setStatus(originClusterDO.getStatus()); + Map content = new HashMap<>(); + content.put("cluster id", clusterDO.getId().toString()); + content.put("security properties", clusterDO.getSecurityProperties()); + changeTrackingUtils.saveOperateRecord(operator, ModuleEnum.CLUSTER, clusterDO.getClusterName(), OperateEnum.EDIT, content); return updateById(clusterDO); } @@ -254,12 +269,15 @@ public class ClusterServiceImpl implements ClusterService { } @Override - public ResultStatus deleteById(Long clusterId) { + public ResultStatus deleteById(Long clusterId, String operator) { List regionDOList = regionService.getByClusterId(clusterId); if (!ValidateUtils.isEmptyList(regionDOList)) { return ResultStatus.OPERATION_FORBIDDEN; } try { + Map content = new HashMap<>(); + content.put("cluster id", clusterId.toString()); + changeTrackingUtils.saveOperateRecord(operator, ModuleEnum.CLUSTER, getClusterName(clusterId).getPhysicalClusterName(), OperateEnum.DELETE, content); if (clusterDao.deleteById(clusterId) <= 0) { LOGGER.error("delete cluster failed, clusterId:{}.", clusterId); return ResultStatus.MYSQL_ERROR; diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ChangeTrackingUtils.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ChangeTrackingUtils.java new file mode 100644 index 00000000..3fac4ffc --- /dev/null +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ChangeTrackingUtils.java @@ -0,0 +1,35 @@ +package com.xiaojukeji.kafka.manager.service.utils; + +import com.xiaojukeji.kafka.manager.common.bizenum.ModuleEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.OperateEnum; +import com.xiaojukeji.kafka.manager.common.entity.pojo.OperateRecordDO; +import com.xiaojukeji.kafka.manager.common.utils.JsonUtils; +import com.xiaojukeji.kafka.manager.service.service.OperateRecordService; +import org.springframework.beans.factory.annotation.Autowired; + +import java.util.Map; + +/** + * Track changes applied to Kafka. + */ +public class ChangeTrackingUtils { + private final OperateRecordService operateRecordService; + + @Autowired + public ChangeTrackingUtils(OperateRecordService operateRecordService) { + this.operateRecordService = operateRecordService; + } + + /** + * Saving operate record to database. + */ + public void saveOperateRecord(String operator, ModuleEnum module, String resourceName, OperateEnum operate, Map content) { + OperateRecordDO operateRecordDO = new OperateRecordDO(); + operateRecordDO.setOperator(operator); + operateRecordDO.setModuleId(module.getCode()); + operateRecordDO.setResource(resourceName); + operateRecordDO.setOperateId(operate.getCode()); + operateRecordDO.setContent(JsonUtils.toJSONString(content)); + operateRecordService.insert(operateRecordDO); + } +} diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpClusterController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpClusterController.java index 21547aa9..07b7dbc4 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpClusterController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpClusterController.java @@ -43,7 +43,7 @@ public class OpClusterController { @RequestMapping(value = "clusters", method = RequestMethod.DELETE) @ResponseBody public Result delete(@RequestParam(value = "clusterId") Long clusterId) { - return Result.buildFrom(clusterService.deleteById(clusterId)); + return Result.buildFrom(clusterService.deleteById(clusterId, SpringTool.getUserName())); } @ApiOperation(value = "修改集群信息") From 832320abc616cd12122142150c073079d80d0211 Mon Sep 17 00:00:00 2001 From: 17hao Date: Sun, 7 Feb 2021 14:20:57 +0800 Subject: [PATCH 42/48] Improve code's cohesion && save jmx properties --- .../service/service/OperateRecordService.java | 5 +++ .../service/impl/ClusterServiceImpl.java | 16 ++++----- .../impl/OperateRecordServiceImpl.java | 15 ++++++++ .../service/utils/ChangeTrackingUtils.java | 35 ------------------- 4 files changed, 27 insertions(+), 44 deletions(-) delete mode 100644 kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ChangeTrackingUtils.java diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/OperateRecordService.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/OperateRecordService.java index c5007ac6..5b2909ca 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/OperateRecordService.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/OperateRecordService.java @@ -1,9 +1,12 @@ package com.xiaojukeji.kafka.manager.service.service; +import com.xiaojukeji.kafka.manager.common.bizenum.ModuleEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.OperateEnum; import com.xiaojukeji.kafka.manager.common.entity.dto.rd.OperateRecordDTO; import com.xiaojukeji.kafka.manager.common.entity.pojo.OperateRecordDO; import java.util.List; +import java.util.Map; /** * @author zhongyuankai @@ -12,5 +15,7 @@ import java.util.List; public interface OperateRecordService { int insert(OperateRecordDO operateRecordDO); + int insert(String operator, ModuleEnum module, String resourceName, OperateEnum operate, Map content); + List queryByCondt(OperateRecordDTO dto); } diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java index 74640e2a..609c8cf9 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java @@ -17,11 +17,7 @@ import com.xiaojukeji.kafka.manager.dao.ClusterMetricsDao; import com.xiaojukeji.kafka.manager.dao.ControllerDao; import com.xiaojukeji.kafka.manager.service.cache.LogicalClusterMetadataManager; import com.xiaojukeji.kafka.manager.service.cache.PhysicalClusterMetadataManager; -import com.xiaojukeji.kafka.manager.service.service.ClusterService; -import com.xiaojukeji.kafka.manager.service.service.ConsumerService; -import com.xiaojukeji.kafka.manager.service.service.RegionService; -import com.xiaojukeji.kafka.manager.service.service.ZookeeperService; -import com.xiaojukeji.kafka.manager.service.utils.ChangeTrackingUtils; +import com.xiaojukeji.kafka.manager.service.service.*; import com.xiaojukeji.kafka.manager.service.utils.ConfigUtils; import org.apache.zookeeper.ZooKeeper; import org.slf4j.Logger; @@ -69,7 +65,7 @@ public class ClusterServiceImpl implements ClusterService { private ZookeeperService zookeeperService; @Autowired - private ChangeTrackingUtils changeTrackingUtils; + private OperateRecordService operateRecordService; @Override public ResultStatus addNew(ClusterDO clusterDO, String operator) { @@ -84,7 +80,8 @@ public class ClusterServiceImpl implements ClusterService { content.put("zk address", clusterDO.getZookeeper()); content.put("bootstrap servers", clusterDO.getBootstrapServers()); content.put("security properties", clusterDO.getSecurityProperties()); - changeTrackingUtils.saveOperateRecord(operator, ModuleEnum.CLUSTER, clusterDO.getClusterName(), OperateEnum.ADD, content); + content.put("jmx properties", clusterDO.getJmxProperties()); + operateRecordService.insert(operator, ModuleEnum.CLUSTER, clusterDO.getClusterName(), OperateEnum.ADD, content); if (clusterDao.insert(clusterDO) <= 0) { LOGGER.error("add new cluster failed, clusterDO:{}.", clusterDO); return ResultStatus.MYSQL_ERROR; @@ -118,7 +115,8 @@ public class ClusterServiceImpl implements ClusterService { Map content = new HashMap<>(); content.put("cluster id", clusterDO.getId().toString()); content.put("security properties", clusterDO.getSecurityProperties()); - changeTrackingUtils.saveOperateRecord(operator, ModuleEnum.CLUSTER, clusterDO.getClusterName(), OperateEnum.EDIT, content); + content.put("jmx properties", clusterDO.getJmxProperties()); + operateRecordService.insert(operator, ModuleEnum.CLUSTER, clusterDO.getClusterName(), OperateEnum.EDIT, content); return updateById(clusterDO); } @@ -277,7 +275,7 @@ public class ClusterServiceImpl implements ClusterService { try { Map content = new HashMap<>(); content.put("cluster id", clusterId.toString()); - changeTrackingUtils.saveOperateRecord(operator, ModuleEnum.CLUSTER, getClusterName(clusterId).getPhysicalClusterName(), OperateEnum.DELETE, content); + operateRecordService.insert(operator, ModuleEnum.CLUSTER, getClusterName(clusterId).getPhysicalClusterName(), OperateEnum.DELETE, content); if (clusterDao.deleteById(clusterId) <= 0) { LOGGER.error("delete cluster failed, clusterId:{}.", clusterId); return ResultStatus.MYSQL_ERROR; diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/OperateRecordServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/OperateRecordServiceImpl.java index 47702eaa..290bbae5 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/OperateRecordServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/OperateRecordServiceImpl.java @@ -1,7 +1,10 @@ package com.xiaojukeji.kafka.manager.service.service.impl; +import com.xiaojukeji.kafka.manager.common.bizenum.ModuleEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.OperateEnum; import com.xiaojukeji.kafka.manager.common.entity.dto.rd.OperateRecordDTO; import com.xiaojukeji.kafka.manager.common.entity.pojo.OperateRecordDO; +import com.xiaojukeji.kafka.manager.common.utils.JsonUtils; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.dao.OperateRecordDao; import com.xiaojukeji.kafka.manager.service.service.OperateRecordService; @@ -10,6 +13,7 @@ import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; +import java.util.Map; /** * @author zhongyuankai @@ -25,6 +29,17 @@ public class OperateRecordServiceImpl implements OperateRecordService { return operateRecordDao.insert(operateRecordDO); } + @Override + public int insert(String operator, ModuleEnum module, String resourceName, OperateEnum operate, Map content) { + OperateRecordDO operateRecordDO = new OperateRecordDO(); + operateRecordDO.setOperator(operator); + operateRecordDO.setModuleId(module.getCode()); + operateRecordDO.setResource(resourceName); + operateRecordDO.setOperateId(operate.getCode()); + operateRecordDO.setContent(JsonUtils.toJSONString(content)); + return insert(operateRecordDO); + } + @Override public List queryByCondt(OperateRecordDTO dto) { return operateRecordDao.queryByCondt( diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ChangeTrackingUtils.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ChangeTrackingUtils.java deleted file mode 100644 index 3fac4ffc..00000000 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/ChangeTrackingUtils.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.xiaojukeji.kafka.manager.service.utils; - -import com.xiaojukeji.kafka.manager.common.bizenum.ModuleEnum; -import com.xiaojukeji.kafka.manager.common.bizenum.OperateEnum; -import com.xiaojukeji.kafka.manager.common.entity.pojo.OperateRecordDO; -import com.xiaojukeji.kafka.manager.common.utils.JsonUtils; -import com.xiaojukeji.kafka.manager.service.service.OperateRecordService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.Map; - -/** - * Track changes applied to Kafka. - */ -public class ChangeTrackingUtils { - private final OperateRecordService operateRecordService; - - @Autowired - public ChangeTrackingUtils(OperateRecordService operateRecordService) { - this.operateRecordService = operateRecordService; - } - - /** - * Saving operate record to database. - */ - public void saveOperateRecord(String operator, ModuleEnum module, String resourceName, OperateEnum operate, Map content) { - OperateRecordDO operateRecordDO = new OperateRecordDO(); - operateRecordDO.setOperator(operator); - operateRecordDO.setModuleId(module.getCode()); - operateRecordDO.setResource(resourceName); - operateRecordDO.setOperateId(operate.getCode()); - operateRecordDO.setContent(JsonUtils.toJSONString(content)); - operateRecordService.insert(operateRecordDO); - } -} From c1afc07955fab9d6bf267c44dae743136ec8302e Mon Sep 17 00:00:00 2001 From: 17hao Date: Sun, 7 Feb 2021 15:16:26 +0800 Subject: [PATCH 43/48] Tracking changes applied to app --- .../service/service/gateway/AppService.java | 2 +- .../service/gateway/impl/AppServiceImpl.java | 19 ++++++++++++++++--- .../manager/bpm/order/impl/ApplyAppOrder.java | 2 +- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/AppService.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/AppService.java index c78946b6..82aa5513 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/AppService.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/AppService.java @@ -17,7 +17,7 @@ public interface AppService { * @param appDO appDO * @return int */ - ResultStatus addApp(AppDO appDO); + ResultStatus addApp(AppDO appDO, String operator); /** * 删除数据 diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/AppServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/AppServiceImpl.java index 09b4a071..200b3cf4 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/AppServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/AppServiceImpl.java @@ -60,10 +60,8 @@ public class AppServiceImpl implements AppService { @Autowired private OperateRecordService operateRecordService; - - @Override - public ResultStatus addApp(AppDO appDO) { + public ResultStatus addApp(AppDO appDO, String operator) { try { if (appDao.insert(appDO) < 1) { LOGGER.warn("class=AppServiceImpl||method=addApp||AppDO={}||msg=add fail,{}",appDO,ResultStatus.MYSQL_ERROR.getMessage()); @@ -75,6 +73,15 @@ public class AppServiceImpl implements AppService { kafkaUserDO.setOperation(OperationStatusEnum.CREATE.getCode()); kafkaUserDO.setUserType(0); kafkaUserDao.insert(kafkaUserDO); + + Map content = new HashMap<>(); + content.put("appId", appDO.getAppId()); + content.put("name", appDO.getName()); + content.put("applicant", appDO.getApplicant()); + content.put("password", appDO.getPassword()); + content.put("principals", appDO.getPrincipals()); + content.put("description", appDO.getDescription()); + operateRecordService.insert(operator, ModuleEnum.APP, appDO.getName(), OperateEnum.ADD, content); } catch (DuplicateKeyException e) { LOGGER.error("class=AppServiceImpl||method=addApp||errMsg={}||appDO={}|", e.getMessage(), appDO, e); return ResultStatus.RESOURCE_ALREADY_EXISTED; @@ -141,6 +148,12 @@ public class AppServiceImpl implements AppService { appDO.setDescription(dto.getDescription()); if (appDao.updateById(appDO) > 0) { + Map content = new HashMap<>(); + content.put("appId", appDO.getAppId()); + content.put("name", appDO.getName()); + content.put("principals", appDO.getPrincipals()); + content.put("description", appDO.getDescription()); + operateRecordService.insert(operator, ModuleEnum.APP, appDO.getName(), OperateEnum.EDIT, content); return ResultStatus.SUCCESS; } } catch (DuplicateKeyException e) { diff --git a/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/order/impl/ApplyAppOrder.java b/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/order/impl/ApplyAppOrder.java index d902abed..1528ada8 100644 --- a/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/order/impl/ApplyAppOrder.java +++ b/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/order/impl/ApplyAppOrder.java @@ -87,6 +87,6 @@ public class ApplyAppOrder extends AbstractAppOrder { appDO.setDescription(orderDO.getDescription()); appDO.generateAppIdAndPassword(orderDO.getId(), configUtils.getIdc()); appDO.setType(0); - return appService.addApp(appDO); + return appService.addApp(appDO, userName); } } From 8e5f93be1c20704c8fd6c893fec5e5450c234d33 Mon Sep 17 00:00:00 2001 From: 17hao Date: Sun, 7 Feb 2021 15:54:41 +0800 Subject: [PATCH 44/48] Tracking delete account --- .../kafka/manager/account/AccountService.java | 2 +- .../manager/account/impl/AccountServiceImpl.java | 11 ++++++++++- .../web/api/versionone/rd/RdAccountController.java | 3 ++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/AccountService.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/AccountService.java index 8b208385..7f4974ea 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/AccountService.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/AccountService.java @@ -33,7 +33,7 @@ public interface AccountService { * @param username 用户名 * @return */ - ResultStatus deleteByName(String username); + ResultStatus deleteByName(String username, String operator); /** * 更新账号 diff --git a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/AccountServiceImpl.java b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/AccountServiceImpl.java index 39d773ed..e4d03c23 100644 --- a/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/AccountServiceImpl.java +++ b/kafka-manager-extends/kafka-manager-account/src/main/java/com/xiaojukeji/kafka/manager/account/impl/AccountServiceImpl.java @@ -6,6 +6,8 @@ import com.xiaojukeji.kafka.manager.account.AccountService; import com.xiaojukeji.kafka.manager.account.common.EnterpriseStaff; import com.xiaojukeji.kafka.manager.account.component.AbstractEnterpriseStaffService; import com.xiaojukeji.kafka.manager.common.bizenum.AccountRoleEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.ModuleEnum; +import com.xiaojukeji.kafka.manager.common.bizenum.OperateEnum; import com.xiaojukeji.kafka.manager.common.constant.Constant; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; @@ -15,6 +17,7 @@ import com.xiaojukeji.kafka.manager.common.utils.EncryptUtil; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.dao.AccountDao; import com.xiaojukeji.kafka.manager.service.service.ConfigService; +import com.xiaojukeji.kafka.manager.service.service.OperateRecordService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -48,6 +51,9 @@ public class AccountServiceImpl implements AccountService { @Autowired private AbstractEnterpriseStaffService enterpriseStaffService; + @Autowired + private OperateRecordService operateRecordService; + /** * 用户组织信息 * @@ -82,9 +88,12 @@ public class AccountServiceImpl implements AccountService { } @Override - public ResultStatus deleteByName(String username) { + public ResultStatus deleteByName(String username, String operator) { try { if (accountDao.deleteByName(username) > 0) { + Map content = new HashMap<>(); + content.put("username", username); + operateRecordService.insert(operator, ModuleEnum.AUTHORITY, username, OperateEnum.DELETE, content); return ResultStatus.SUCCESS; } } catch (Exception e) { diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdAccountController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdAccountController.java index 5efbbfce..2ca29082 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdAccountController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdAccountController.java @@ -2,6 +2,7 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.rd; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.vo.common.AccountVO; +import com.xiaojukeji.kafka.manager.common.utils.SpringTool; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.web.converters.AccountConverter; @@ -46,7 +47,7 @@ public class RdAccountController { @RequestMapping(value = "accounts", method = RequestMethod.DELETE) @ResponseBody public Result deleteAccount(@RequestParam("username") String username) { - ResultStatus rs = accountService.deleteByName(username); + ResultStatus rs = accountService.deleteByName(username, SpringTool.getUserName()); return Result.buildFrom(rs); } From 5efd4241726e9c46a338578c112b4fa88d9adbcc Mon Sep 17 00:00:00 2001 From: zengqiao Date: Tue, 9 Feb 2021 11:20:56 +0800 Subject: [PATCH 45/48] version 2.3.0 --- .../bizenum/TopicExpiredStatusEnum.java | 32 +++ .../kafka/manager/common/entity/Result.java | 10 +- .../manager/common/entity/ResultStatus.java | 4 + .../common/entity/ao/ClusterDetailDTO.java | 13 +- .../SinkTopicRequestTimeMetricsConfig.java | 57 ----- .../op/ControllerPreferredCandidateDTO.java | 45 ++++ .../common/entity/dto/rd/ClusterDTO.java | 5 +- .../entity/pojo/gateway/GatewayConfigDO.java | 11 + .../entity/vo/op/expert/ExpiredTopicVO.java | 2 +- .../common/entity/vo/rd/GatewayConfigVO.java | 12 + .../kafka/manager/common/utils/JsonUtils.java | 7 + .../common/utils/jmx/JmxConnectorWrap.java | 2 +- .../manager/common/zookeeper/ZkPathUtil.java | 10 +- .../cache/PhysicalClusterMetadataManager.java | 14 +- .../service/service/ClusterService.java | 17 ++ .../service/service/ZookeeperService.java | 16 ++ .../impl/GatewayConfigServiceImpl.java | 15 +- .../service/impl/ClusterServiceImpl.java | 46 +++- .../service/impl/ConsumerServiceImpl.java | 2 +- .../service/impl/ZookeeperServiceImpl.java | 54 +++++ .../manager/service/utils/TopicCommands.java | 4 +- .../service/zookeeper/TopicStateListener.java | 22 +- .../kafka/manager/dao/TopicDao.java | 2 - .../kafka/manager/dao/gateway/AppDao.java | 4 - .../manager/dao/gateway/AuthorityDao.java | 4 - .../manager/dao/gateway/impl/AppDaoImpl.java | 26 +- .../dao/gateway/impl/AuthorityDaoImpl.java | 46 ++-- .../kafka/manager/dao/impl/TopicDaoImpl.java | 30 ++- .../kafka/manager/task/Constant.java | 5 + .../kafka/manager/task/DaoBackgroundTask.java | 41 ++++ .../resources/mapper/GatewayConfigDao.xml | 8 +- .../OrderExtensionAddGatewayConfigDTO.java | 12 + .../OrderExtensionModifyGatewayConfigDTO.java | 12 + .../kafka/manager/kcm/common/Constant.java | 18 ++ .../common/bizenum/ClusterTaskActionEnum.java | 39 +-- .../kcm/common/entry/ao/ClusterTaskLog.java | 24 ++ .../kcm/common/entry/ao/CreationTaskData.java | 4 +- .../kcm/component/agent/AbstractAgent.java | 75 +++++- .../manager/kcm/component/agent/n9e/N9e.java | 222 +++++++----------- .../agent/n9e/entry/N9eCreationTask.java | 151 ++++++++++++ ...eTaskResultDTO.java => N9eTaskResult.java} | 2 +- .../agent/n9e/entry/N9eTaskStdoutLog.java | 35 +++ .../n9e/entry/bizenum/N9eTaskStatusEnum.java | 59 +++++ .../kcm/component/storage/s3/S3Service.java | 7 +- .../kcm/impl/ClusterTaskServiceImpl.java | 108 +++++---- .../kcm/impl/KafkaFileServiceImpl.java | 4 +- .../gateway/GatewayHeartbeatController.java | 2 +- .../GatewayServiceDiscoveryController.java | 13 +- .../versionone/op/OpClusterController.java | 38 +-- .../op/OpGatewayConfigController.java | 17 +- .../rd/RdGatewayConfigController.java | 4 +- .../versionone/rd/RdKafkaFileController.java | 12 +- .../rd/RdOperateRecordController.java | 3 +- .../web/converters/GatewayModelConverter.java | 17 +- .../web/inteceptor/WebMetricsInterceptor.java | 2 +- .../src/main/resources/application.yml | 4 +- 56 files changed, 1018 insertions(+), 432 deletions(-) create mode 100644 kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/TopicExpiredStatusEnum.java delete mode 100644 kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/config/SinkTopicRequestTimeMetricsConfig.java create mode 100644 kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/dto/op/ControllerPreferredCandidateDTO.java create mode 100644 kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/task/Constant.java create mode 100644 kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/task/DaoBackgroundTask.java create mode 100644 kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/Constant.java create mode 100644 kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/entry/ao/ClusterTaskLog.java create mode 100644 kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eCreationTask.java rename kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/{N9eTaskResultDTO.java => N9eTaskResult.java} (99%) create mode 100644 kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskStdoutLog.java create mode 100644 kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/bizenum/N9eTaskStatusEnum.java diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/TopicExpiredStatusEnum.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/TopicExpiredStatusEnum.java new file mode 100644 index 00000000..bac44235 --- /dev/null +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/bizenum/TopicExpiredStatusEnum.java @@ -0,0 +1,32 @@ +package com.xiaojukeji.kafka.manager.common.bizenum; + +/** + * 过期Topic状态 + * @author zengqiao + * @date 21/01/25 + */ +public enum TopicExpiredStatusEnum { + ALREADY_NOTIFIED_AND_DELETED(-2, "已通知, 已下线"), + ALREADY_NOTIFIED_AND_CAN_DELETE(-1, "已通知, 可下线"), + ALREADY_EXPIRED_AND_WAIT_NOTIFY(0, "已过期, 待通知"), + ALREADY_NOTIFIED_AND_WAIT_RESPONSE(1, "已通知, 待反馈"), + + ; + + private int status; + + private String message; + + TopicExpiredStatusEnum(int status, String message) { + this.status = status; + this.message = message; + } + + public int getStatus() { + return status; + } + + public String getMessage() { + return message; + } +} diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/Result.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/Result.java index 0fb38302..323e9ec9 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/Result.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/Result.java @@ -97,7 +97,7 @@ public class Result implements Serializable { return result; } - public static Result buildFailure(String message) { + public static Result buildGatewayFailure(String message) { Result result = new Result(); result.setCode(ResultStatus.GATEWAY_INVALID_REQUEST.getCode()); result.setMessage(message); @@ -105,6 +105,14 @@ public class Result implements Serializable { return result; } + public static Result buildFailure(String message) { + Result result = new Result(); + result.setCode(ResultStatus.FAIL.getCode()); + result.setMessage(message); + result.setData(null); + return result; + } + public static Result buildFrom(ResultStatus resultStatus) { Result result = new Result(); result.setCode(resultStatus.getCode()); diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java index 76e3aca8..94acb56d 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ResultStatus.java @@ -12,6 +12,8 @@ public enum ResultStatus { SUCCESS(Constant.SUCCESS, "success"), + FAIL(1, "操作失败"), + /** * 操作错误[1000, 2000) * ------------------------------------------------------------------------------------------ @@ -91,6 +93,8 @@ public enum ResultStatus { ZOOKEEPER_CONNECT_FAILED(8020, "zookeeper connect failed"), ZOOKEEPER_READ_FAILED(8021, "zookeeper read failed"), + ZOOKEEPER_WRITE_FAILED(8022, "zookeeper write failed"), + ZOOKEEPER_DELETE_FAILED(8023, "zookeeper delete failed"), // 调用集群任务里面的agent失败 CALL_CLUSTER_TASK_AGENT_FAILED(8030, " call cluster task agent failed"), diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/ClusterDetailDTO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/ClusterDetailDTO.java index 937d9cf8..2e903485 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/ClusterDetailDTO.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/ClusterDetailDTO.java @@ -23,6 +23,8 @@ public class ClusterDetailDTO { private String securityProperties; + private String jmxProperties; + private Integer status; private Date gmtCreate; @@ -103,6 +105,14 @@ public class ClusterDetailDTO { this.securityProperties = securityProperties; } + public String getJmxProperties() { + return jmxProperties; + } + + public void setJmxProperties(String jmxProperties) { + this.jmxProperties = jmxProperties; + } + public Integer getStatus() { return status; } @@ -176,8 +186,9 @@ public class ClusterDetailDTO { ", bootstrapServers='" + bootstrapServers + '\'' + ", kafkaVersion='" + kafkaVersion + '\'' + ", idc='" + idc + '\'' + - ", mode='" + mode + '\'' + + ", mode=" + mode + ", securityProperties='" + securityProperties + '\'' + + ", jmxProperties='" + jmxProperties + '\'' + ", status=" + status + ", gmtCreate=" + gmtCreate + ", gmtModify=" + gmtModify + diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/config/SinkTopicRequestTimeMetricsConfig.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/config/SinkTopicRequestTimeMetricsConfig.java deleted file mode 100644 index 91faaba1..00000000 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/ao/config/SinkTopicRequestTimeMetricsConfig.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.xiaojukeji.kafka.manager.common.entity.ao.config; - -/** - * @author zengqiao - * @date 20/9/7 - */ -public class SinkTopicRequestTimeMetricsConfig { - private Long clusterId; - - private String topicName; - - private Long startId; - - private Long step; - - public Long getClusterId() { - return clusterId; - } - - public void setClusterId(Long clusterId) { - this.clusterId = clusterId; - } - - public String getTopicName() { - return topicName; - } - - public void setTopicName(String topicName) { - this.topicName = topicName; - } - - public Long getStartId() { - return startId; - } - - public void setStartId(Long startId) { - this.startId = startId; - } - - public Long getStep() { - return step; - } - - public void setStep(Long step) { - this.step = step; - } - - @Override - public String toString() { - return "SinkTopicRequestTimeMetricsConfig{" + - "clusterId=" + clusterId + - ", topicName='" + topicName + '\'' + - ", startId=" + startId + - ", step=" + step + - '}'; - } -} \ No newline at end of file diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/dto/op/ControllerPreferredCandidateDTO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/dto/op/ControllerPreferredCandidateDTO.java new file mode 100644 index 00000000..1b4c95b9 --- /dev/null +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/dto/op/ControllerPreferredCandidateDTO.java @@ -0,0 +1,45 @@ +package com.xiaojukeji.kafka.manager.common.entity.dto.op; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +import java.util.List; + +/** + * @author zengqiao + * @date 21/01/24 + */ +@JsonIgnoreProperties(ignoreUnknown = true) +@ApiModel(description="优选为Controller的候选者") +public class ControllerPreferredCandidateDTO { + @ApiModelProperty(value="集群ID") + private Long clusterId; + + @ApiModelProperty(value="优选为controller的BrokerId") + private List brokerIdList; + + public Long getClusterId() { + return clusterId; + } + + public void setClusterId(Long clusterId) { + this.clusterId = clusterId; + } + + public List getBrokerIdList() { + return brokerIdList; + } + + public void setBrokerIdList(List brokerIdList) { + this.brokerIdList = brokerIdList; + } + + @Override + public String toString() { + return "ControllerPreferredCandidateDTO{" + + "clusterId=" + clusterId + + ", brokerIdList=" + brokerIdList + + '}'; + } +} diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/dto/rd/ClusterDTO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/dto/rd/ClusterDTO.java index 0b6fcebb..7afc09c6 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/dto/rd/ClusterDTO.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/dto/rd/ClusterDTO.java @@ -102,12 +102,11 @@ public class ClusterDTO { '}'; } - public Boolean legal() { + public boolean legal() { if (ValidateUtils.isNull(clusterName) || ValidateUtils.isNull(zookeeper) || ValidateUtils.isNull(idc) - || ValidateUtils.isNull(bootstrapServers) - ) { + || ValidateUtils.isNull(bootstrapServers)) { return false; } return true; diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/pojo/gateway/GatewayConfigDO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/pojo/gateway/GatewayConfigDO.java index c0e96000..fa29c7cf 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/pojo/gateway/GatewayConfigDO.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/pojo/gateway/GatewayConfigDO.java @@ -17,6 +17,8 @@ public class GatewayConfigDO { private Long version; + private String description; + private Date createTime; private Date modifyTime; @@ -61,6 +63,14 @@ public class GatewayConfigDO { this.version = version; } + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + public Date getCreateTime() { return createTime; } @@ -85,6 +95,7 @@ public class GatewayConfigDO { ", name='" + name + '\'' + ", value='" + value + '\'' + ", version=" + version + + ", description='" + description + '\'' + ", createTime=" + createTime + ", modifyTime=" + modifyTime + '}'; diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/op/expert/ExpiredTopicVO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/op/expert/ExpiredTopicVO.java index 46c7a3a2..c4921259 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/op/expert/ExpiredTopicVO.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/op/expert/ExpiredTopicVO.java @@ -28,7 +28,7 @@ public class ExpiredTopicVO { @ApiModelProperty(value = "负责人") private String principals; - @ApiModelProperty(value = "状态, -1:可下线, 0:过期待通知, 1+:已通知待反馈") + @ApiModelProperty(value = "状态, -1:已通知可下线, 0:过期待通知, 1+:已通知待反馈") private Integer status; public Long getClusterId() { diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/rd/GatewayConfigVO.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/rd/GatewayConfigVO.java index a0b402af..72314c31 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/rd/GatewayConfigVO.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/entity/vo/rd/GatewayConfigVO.java @@ -26,6 +26,9 @@ public class GatewayConfigVO { @ApiModelProperty(value="版本") private Long version; + @ApiModelProperty(value="描述说明") + private String description; + @ApiModelProperty(value="创建时间") private Date createTime; @@ -72,6 +75,14 @@ public class GatewayConfigVO { this.version = version; } + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + public Date getCreateTime() { return createTime; } @@ -96,6 +107,7 @@ public class GatewayConfigVO { ", name='" + name + '\'' + ", value='" + value + '\'' + ", version=" + version + + ", description='" + description + '\'' + ", createTime=" + createTime + ", modifyTime=" + modifyTime + '}'; diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/JsonUtils.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/JsonUtils.java index 46d177ad..283d59c5 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/JsonUtils.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/JsonUtils.java @@ -60,6 +60,13 @@ public class JsonUtils { return JSON.parseObject(src, clazz); } + public static List stringToArrObj(String src, Class clazz) { + if (ValidateUtils.isBlank(src)) { + return null; + } + return JSON.parseArray(src, clazz); + } + public static List parseTopicConnections(Long clusterId, JSONObject jsonObject, long postTime) { List connectionDOList = new ArrayList<>(); for (String clientType: jsonObject.keySet()) { diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/jmx/JmxConnectorWrap.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/jmx/JmxConnectorWrap.java index fc70c6b2..c7c69ca3 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/jmx/JmxConnectorWrap.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/utils/jmx/JmxConnectorWrap.java @@ -79,7 +79,7 @@ public class JmxConnectorWrap { try { Map environment = new HashMap(); if (!ValidateUtils.isBlank(this.jmxConfig.getUsername()) && !ValidateUtils.isBlank(this.jmxConfig.getPassword())) { - environment.put(javax.management.remote.JMXConnector.CREDENTIALS, Arrays.asList(this.jmxConfig.getUsername(), this.jmxConfig.getPassword())); + environment.put(JMXConnector.CREDENTIALS, Arrays.asList(this.jmxConfig.getUsername(), this.jmxConfig.getPassword())); } if (jmxConfig.isOpenSSL() != null && this.jmxConfig.isOpenSSL()) { environment.put(Context.SECURITY_PROTOCOL, "ssl"); diff --git a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/zookeeper/ZkPathUtil.java b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/zookeeper/ZkPathUtil.java index e0a5632a..6705f435 100644 --- a/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/zookeeper/ZkPathUtil.java +++ b/kafka-manager-common/src/main/java/com/xiaojukeji/kafka/manager/common/zookeeper/ZkPathUtil.java @@ -33,7 +33,9 @@ public class ZkPathUtil { private static final String D_METRICS_CONFIG_ROOT_NODE = CONFIG_ROOT_NODE + ZOOKEEPER_SEPARATOR + "KafkaExMetrics"; - public static final String D_CONTROLLER_CANDIDATES = CONFIG_ROOT_NODE + ZOOKEEPER_SEPARATOR + "extension/candidates"; + public static final String D_CONFIG_EXTENSION_ROOT_NODE = CONFIG_ROOT_NODE + ZOOKEEPER_SEPARATOR + "extension"; + + public static final String D_CONTROLLER_CANDIDATES = D_CONFIG_EXTENSION_ROOT_NODE + ZOOKEEPER_SEPARATOR + "candidates"; public static String getBrokerIdNodePath(Integer brokerId) { return BROKER_IDS_ROOT + ZOOKEEPER_SEPARATOR + String.valueOf(brokerId); @@ -111,6 +113,10 @@ public class ZkPathUtil { } public static String getKafkaExtraMetricsPath(Integer brokerId) { - return D_METRICS_CONFIG_ROOT_NODE + ZOOKEEPER_SEPARATOR + String.valueOf(brokerId); + return D_METRICS_CONFIG_ROOT_NODE + ZOOKEEPER_SEPARATOR + brokerId; + } + + public static String getControllerCandidatePath(Integer brokerId) { + return D_CONTROLLER_CANDIDATES + ZOOKEEPER_SEPARATOR + brokerId; } } diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/cache/PhysicalClusterMetadataManager.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/cache/PhysicalClusterMetadataManager.java index 59453919..e3b8f23f 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/cache/PhysicalClusterMetadataManager.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/cache/PhysicalClusterMetadataManager.java @@ -15,10 +15,7 @@ import com.xiaojukeji.kafka.manager.common.zookeeper.znode.brokers.TopicMetadata import com.xiaojukeji.kafka.manager.common.zookeeper.ZkConfigImpl; import com.xiaojukeji.kafka.manager.dao.ControllerDao; import com.xiaojukeji.kafka.manager.common.utils.jmx.JmxConnectorWrap; -import com.xiaojukeji.kafka.manager.dao.TopicDao; -import com.xiaojukeji.kafka.manager.dao.gateway.AuthorityDao; import com.xiaojukeji.kafka.manager.service.service.JmxService; -import com.xiaojukeji.kafka.manager.service.utils.ConfigUtils; import com.xiaojukeji.kafka.manager.service.zookeeper.*; import com.xiaojukeji.kafka.manager.service.service.ClusterService; import com.xiaojukeji.kafka.manager.common.zookeeper.ZkPathUtil; @@ -49,15 +46,6 @@ public class PhysicalClusterMetadataManager { @Autowired private ClusterService clusterService; - @Autowired - private ConfigUtils configUtils; - - @Autowired - private TopicDao topicDao; - - @Autowired - private AuthorityDao authorityDao; - private final static Map CLUSTER_MAP = new ConcurrentHashMap<>(); private final static Map CONTROLLER_DATA_MAP = new ConcurrentHashMap<>(); @@ -133,7 +121,7 @@ public class PhysicalClusterMetadataManager { zkConfig.watchChildren(ZkPathUtil.BROKER_IDS_ROOT, brokerListener); //增加Topic监控 - TopicStateListener topicListener = new TopicStateListener(clusterDO.getId(), zkConfig, topicDao, authorityDao); + TopicStateListener topicListener = new TopicStateListener(clusterDO.getId(), zkConfig); topicListener.init(); zkConfig.watchChildren(ZkPathUtil.BROKER_TOPICS_ROOT, topicListener); diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ClusterService.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ClusterService.java index b2c5f7b2..2feb321b 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ClusterService.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ClusterService.java @@ -4,6 +4,7 @@ import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.ao.ClusterDetailDTO; import com.xiaojukeji.kafka.manager.common.entity.ao.cluster.ControllerPreferredCandidate; +import com.xiaojukeji.kafka.manager.common.entity.dto.op.ControllerPreferredCandidateDTO; import com.xiaojukeji.kafka.manager.common.entity.vo.normal.cluster.ClusterNameDTO; import com.xiaojukeji.kafka.manager.common.entity.pojo.ClusterDO; import com.xiaojukeji.kafka.manager.common.entity.pojo.ClusterMetricsDO; @@ -51,4 +52,20 @@ public interface ClusterService { * @return void */ Result> getControllerPreferredCandidates(Long clusterId); + + /** + * 增加优先被选举为controller的broker + * @param clusterId 集群ID + * @param brokerIdList brokerId列表 + * @return + */ + Result addControllerPreferredCandidates(Long clusterId, List brokerIdList); + + /** + * 减少优先被选举为controller的broker + * @param clusterId 集群ID + * @param brokerIdList brokerId列表 + * @return + */ + Result deleteControllerPreferredCandidates(Long clusterId, List brokerIdList); } diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ZookeeperService.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ZookeeperService.java index d24b2d24..d52d3bc7 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ZookeeperService.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/ZookeeperService.java @@ -26,4 +26,20 @@ public interface ZookeeperService { * @return 操作结果 */ Result> getControllerPreferredCandidates(Long clusterId); + + /** + * 增加优先被选举为controller的broker + * @param clusterId 集群ID + * @param brokerId brokerId + * @return + */ + Result addControllerPreferredCandidate(Long clusterId, Integer brokerId); + + /** + * 减少优先被选举为controller的broker + * @param clusterId 集群ID + * @param brokerId brokerId + * @return + */ + Result deleteControllerPreferredCandidate(Long clusterId, Integer brokerId); } diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/GatewayConfigServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/GatewayConfigServiceImpl.java index fce7b605..18ee0a0d 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/GatewayConfigServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/gateway/impl/GatewayConfigServiceImpl.java @@ -221,13 +221,24 @@ public class GatewayConfigServiceImpl implements GatewayConfigService { if (ValidateUtils.isNull(oldGatewayConfigDO)) { return Result.buildFrom(ResultStatus.RESOURCE_NOT_EXIST); } + if (!oldGatewayConfigDO.getName().equals(newGatewayConfigDO.getName()) || !oldGatewayConfigDO.getType().equals(newGatewayConfigDO.getType()) || ValidateUtils.isBlank(newGatewayConfigDO.getValue())) { return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); } - newGatewayConfigDO.setVersion(oldGatewayConfigDO.getVersion() + 1); - if (gatewayConfigDao.updateById(oldGatewayConfigDO) > 0) { + + // 获取当前同类配置, 插入之后需要增大这个version + List gatewayConfigDOList = gatewayConfigDao.getByConfigType(newGatewayConfigDO.getType()); + Long version = 1L; + for (GatewayConfigDO elem: gatewayConfigDOList) { + if (elem.getVersion() > version) { + version = elem.getVersion() + 1L; + } + } + + newGatewayConfigDO.setVersion(version); + if (gatewayConfigDao.updateById(newGatewayConfigDO) > 0) { return Result.buildSuc(); } return Result.buildFrom(ResultStatus.MYSQL_ERROR); diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java index 609c8cf9..e1a619a8 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ClusterServiceImpl.java @@ -111,12 +111,13 @@ public class ClusterServiceImpl implements ClusterService { // 不允许修改zk地址 return ResultStatus.CHANGE_ZOOKEEPER_FORBIDDEN; } - clusterDO.setStatus(originClusterDO.getStatus()); Map content = new HashMap<>(); content.put("cluster id", clusterDO.getId().toString()); content.put("security properties", clusterDO.getSecurityProperties()); content.put("jmx properties", clusterDO.getJmxProperties()); operateRecordService.insert(operator, ModuleEnum.CLUSTER, clusterDO.getClusterName(), OperateEnum.EDIT, content); + + clusterDO.setStatus(originClusterDO.getStatus()); return updateById(clusterDO); } @@ -214,7 +215,7 @@ public class ClusterServiceImpl implements ClusterService { if (zk != null) { zk.close(); } - } catch (Throwable t) { + } catch (Exception e) { return false; } } @@ -275,7 +276,7 @@ public class ClusterServiceImpl implements ClusterService { try { Map content = new HashMap<>(); content.put("cluster id", clusterId.toString()); - operateRecordService.insert(operator, ModuleEnum.CLUSTER, getClusterName(clusterId).getPhysicalClusterName(), OperateEnum.DELETE, content); + operateRecordService.insert(operator, ModuleEnum.CLUSTER, String.valueOf(clusterId), OperateEnum.DELETE, content); if (clusterDao.deleteById(clusterId) <= 0) { LOGGER.error("delete cluster failed, clusterId:{}.", clusterId); return ResultStatus.MYSQL_ERROR; @@ -289,8 +290,9 @@ public class ClusterServiceImpl implements ClusterService { private ClusterDetailDTO getClusterDetailDTO(ClusterDO clusterDO, Boolean needDetail) { if (ValidateUtils.isNull(clusterDO)) { - return null; + return new ClusterDetailDTO(); } + ClusterDetailDTO dto = new ClusterDetailDTO(); dto.setClusterId(clusterDO.getId()); dto.setClusterName(clusterDO.getClusterName()); @@ -299,6 +301,7 @@ public class ClusterServiceImpl implements ClusterService { dto.setKafkaVersion(physicalClusterMetadataManager.getKafkaVersionFromCache(clusterDO.getId())); dto.setIdc(configUtils.getIdc()); dto.setSecurityProperties(clusterDO.getSecurityProperties()); + dto.setJmxProperties(clusterDO.getJmxProperties()); dto.setStatus(clusterDO.getStatus()); dto.setGmtCreate(clusterDO.getGmtCreate()); dto.setGmtModify(clusterDO.getGmtModify()); @@ -337,4 +340,39 @@ public class ClusterServiceImpl implements ClusterService { } return Result.buildSuc(controllerPreferredCandidateList); } + + @Override + public Result addControllerPreferredCandidates(Long clusterId, List brokerIdList) { + if (ValidateUtils.isNull(clusterId) || ValidateUtils.isEmptyList(brokerIdList)) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + + // 增加的BrokerId需要判断是否存活 + for (Integer brokerId: brokerIdList) { + if (!PhysicalClusterMetadataManager.isBrokerAlive(clusterId, brokerId)) { + return Result.buildFrom(ResultStatus.BROKER_NOT_EXIST); + } + + Result result = zookeeperService.addControllerPreferredCandidate(clusterId, brokerId); + if (result.failed()) { + return result; + } + } + return Result.buildSuc(); + } + + @Override + public Result deleteControllerPreferredCandidates(Long clusterId, List brokerIdList) { + if (ValidateUtils.isNull(clusterId) || ValidateUtils.isEmptyList(brokerIdList)) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + + for (Integer brokerId: brokerIdList) { + Result result = zookeeperService.deleteControllerPreferredCandidate(clusterId, brokerId); + if (result.failed()) { + return result; + } + } + return Result.buildSuc(); + } } diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConsumerServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConsumerServiceImpl.java index e228d36c..0d60d828 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConsumerServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ConsumerServiceImpl.java @@ -129,7 +129,7 @@ public class ConsumerServiceImpl implements ConsumerService { } summary.setState(consumerGroupSummary.state()); - java.util.Iterator> it = JavaConversions.asJavaIterator(consumerGroupSummary.consumers().iterator()); + Iterator> it = JavaConversions.asJavaIterator(consumerGroupSummary.consumers().iterator()); while (it.hasNext()) { List consumerSummaryList = JavaConversions.asJavaList(it.next()); for (AdminClient.ConsumerSummary consumerSummary: consumerSummaryList) { diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ZookeeperServiceImpl.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ZookeeperServiceImpl.java index aa31ed33..c4c89513 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ZookeeperServiceImpl.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/service/impl/ZookeeperServiceImpl.java @@ -70,4 +70,58 @@ public class ZookeeperServiceImpl implements ZookeeperService { } return Result.buildFrom(ResultStatus.ZOOKEEPER_READ_FAILED); } + + @Override + public Result addControllerPreferredCandidate(Long clusterId, Integer brokerId) { + if (ValidateUtils.isNull(clusterId)) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + ZkConfigImpl zkConfig = PhysicalClusterMetadataManager.getZKConfig(clusterId); + if (ValidateUtils.isNull(zkConfig)) { + return Result.buildFrom(ResultStatus.ZOOKEEPER_CONNECT_FAILED); + } + + try { + if (zkConfig.checkPathExists(ZkPathUtil.getControllerCandidatePath(brokerId))) { + // 节点已经存在, 则直接忽略 + return Result.buildSuc(); + } + + if (!zkConfig.checkPathExists(ZkPathUtil.D_CONFIG_EXTENSION_ROOT_NODE)) { + zkConfig.setOrCreatePersistentNodeStat(ZkPathUtil.D_CONFIG_EXTENSION_ROOT_NODE, ""); + } + + if (!zkConfig.checkPathExists(ZkPathUtil.D_CONTROLLER_CANDIDATES)) { + zkConfig.setOrCreatePersistentNodeStat(ZkPathUtil.D_CONTROLLER_CANDIDATES, ""); + } + + zkConfig.setOrCreatePersistentNodeStat(ZkPathUtil.getControllerCandidatePath(brokerId), ""); + return Result.buildSuc(); + } catch (Exception e) { + LOGGER.error("class=ZookeeperServiceImpl||method=addControllerPreferredCandidate||clusterId={}||brokerId={}||errMsg={}||", clusterId, brokerId, e.getMessage()); + } + return Result.buildFrom(ResultStatus.ZOOKEEPER_WRITE_FAILED); + } + + @Override + public Result deleteControllerPreferredCandidate(Long clusterId, Integer brokerId) { + if (ValidateUtils.isNull(clusterId)) { + return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); + } + ZkConfigImpl zkConfig = PhysicalClusterMetadataManager.getZKConfig(clusterId); + if (ValidateUtils.isNull(zkConfig)) { + return Result.buildFrom(ResultStatus.ZOOKEEPER_CONNECT_FAILED); + } + + try { + if (!zkConfig.checkPathExists(ZkPathUtil.getControllerCandidatePath(brokerId))) { + return Result.buildSuc(); + } + zkConfig.delete(ZkPathUtil.getControllerCandidatePath(brokerId)); + return Result.buildSuc(); + } catch (Exception e) { + LOGGER.error("class=ZookeeperServiceImpl||method=deleteControllerPreferredCandidate||clusterId={}||brokerId={}||errMsg={}||", clusterId, brokerId, e.getMessage()); + } + return Result.buildFrom(ResultStatus.ZOOKEEPER_DELETE_FAILED); + } } \ No newline at end of file diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/TopicCommands.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/TopicCommands.java index 58e5d98b..6995eb97 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/TopicCommands.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/utils/TopicCommands.java @@ -44,7 +44,7 @@ public class TopicCommands { ); // 生成分配策略 - scala.collection.Map> replicaAssignment = + scala.collection.Map> replicaAssignment = AdminUtils.assignReplicasToBrokers( convert2BrokerMetadataSeq(brokerIdList), partitionNum, @@ -177,7 +177,7 @@ public class TopicCommands { ) ); - Map> existingAssignJavaMap = + Map> existingAssignJavaMap = JavaConversions.asJavaMap(existingAssignScalaMap); // 新增分区的分配策略和旧的分配策略合并 Map> targetMap = new HashMap<>(); diff --git a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/zookeeper/TopicStateListener.java b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/zookeeper/TopicStateListener.java index f808b976..4314a101 100644 --- a/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/zookeeper/TopicStateListener.java +++ b/kafka-manager-core/src/main/java/com/xiaojukeji/kafka/manager/service/zookeeper/TopicStateListener.java @@ -5,8 +5,6 @@ import com.xiaojukeji.kafka.manager.common.zookeeper.znode.brokers.TopicMetadata import com.xiaojukeji.kafka.manager.common.zookeeper.StateChangeListener; import com.xiaojukeji.kafka.manager.common.zookeeper.ZkConfigImpl; import com.xiaojukeji.kafka.manager.common.zookeeper.ZkPathUtil; -import com.xiaojukeji.kafka.manager.dao.TopicDao; -import com.xiaojukeji.kafka.manager.dao.gateway.AuthorityDao; import com.xiaojukeji.kafka.manager.service.cache.PhysicalClusterMetadataManager; import com.xiaojukeji.kafka.manager.service.cache.ThreadPool; import org.apache.zookeeper.data.Stat; @@ -24,28 +22,17 @@ import java.util.concurrent.*; * @date 20/5/14 */ public class TopicStateListener implements StateChangeListener { - private final static Logger LOGGER = LoggerFactory.getLogger(TopicStateListener.class); + private static final Logger LOGGER = LoggerFactory.getLogger(TopicStateListener.class); private Long clusterId; private ZkConfigImpl zkConfig; - private TopicDao topicDao; - - private AuthorityDao authorityDao; - public TopicStateListener(Long clusterId, ZkConfigImpl zkConfig) { this.clusterId = clusterId; this.zkConfig = zkConfig; } - public TopicStateListener(Long clusterId, ZkConfigImpl zkConfig, TopicDao topicDao, AuthorityDao authorityDao) { - this.clusterId = clusterId; - this.zkConfig = zkConfig; - this.topicDao = topicDao; - this.authorityDao = authorityDao; - } - @Override public void init() { try { @@ -53,7 +40,7 @@ public class TopicStateListener implements StateChangeListener { FutureTask[] taskList = new FutureTask[topicNameList.size()]; for (int i = 0; i < topicNameList.size(); i++) { String topicName = topicNameList.get(i); - taskList[i] = new FutureTask(new Callable() { + taskList[i] = new FutureTask(new Callable() { @Override public Object call() throws Exception { processTopicAdded(topicName); @@ -65,7 +52,6 @@ public class TopicStateListener implements StateChangeListener { } catch (Exception e) { LOGGER.error("init topics metadata failed, clusterId:{}.", clusterId, e); } - return; } @Override @@ -92,8 +78,6 @@ public class TopicStateListener implements StateChangeListener { private void processTopicDelete(String topicName) { LOGGER.warn("delete topic, clusterId:{} topicName:{}.", clusterId, topicName); PhysicalClusterMetadataManager.removeTopicMetadata(clusterId, topicName); - topicDao.removeTopicInCache(clusterId, topicName); - authorityDao.removeAuthorityInCache(clusterId, topicName); } private void processTopicAdded(String topicName) { @@ -122,4 +106,4 @@ public class TopicStateListener implements StateChangeListener { LOGGER.error("add topic failed, clusterId:{} topicMetadata:{}.", clusterId, topicMetadata, e); } } -} \ No newline at end of file +} diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/TopicDao.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/TopicDao.java index 3d3f5410..64e089a6 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/TopicDao.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/TopicDao.java @@ -22,6 +22,4 @@ public interface TopicDao { List listAll(); TopicDO getTopic(Long clusterId, String topicName, String appId); - - TopicDO removeTopicInCache(Long clusterId, String topicName); } \ No newline at end of file diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/AppDao.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/AppDao.java index 218c8656..7802005a 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/AppDao.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/AppDao.java @@ -16,8 +16,6 @@ public interface AppDao { */ int insert(AppDO appDO); - int insertIgnoreGatewayDB(AppDO appDO); - /** * 删除appId * @param appName App名称 @@ -60,6 +58,4 @@ public interface AppDao { * @return int */ int updateById(AppDO appDO); - - List listNewAll(); } \ No newline at end of file diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/AuthorityDao.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/AuthorityDao.java index a7a8affe..655218e9 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/AuthorityDao.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/AuthorityDao.java @@ -15,8 +15,6 @@ public interface AuthorityDao { */ int insert(AuthorityDO authorityDO); - int replaceIgnoreGatewayDB(AuthorityDO authorityDO); - /** * 获取权限 * @param clusterId 集群id @@ -38,7 +36,5 @@ public interface AuthorityDao { Map>> getAllAuthority(); - void removeAuthorityInCache(Long clusterId, String topicName); - int deleteAuthorityByTopic(Long clusterId, String topicName); } diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AppDaoImpl.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AppDaoImpl.java index aa08c1b4..62475b9b 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AppDaoImpl.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AppDaoImpl.java @@ -2,6 +2,7 @@ package com.xiaojukeji.kafka.manager.dao.gateway.impl; import com.xiaojukeji.kafka.manager.common.entity.pojo.gateway.AppDO; import com.xiaojukeji.kafka.manager.dao.gateway.AppDao; +import com.xiaojukeji.kafka.manager.task.Constant; import org.mybatis.spring.SqlSessionTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; @@ -21,7 +22,7 @@ public class AppDaoImpl implements AppDao { /** * APP最近的一次更新时间, 更新之后的缓存 */ - private static Long APP_CACHE_LATEST_UPDATE_TIME = 0L; + private static volatile long APP_CACHE_LATEST_UPDATE_TIME = Constant.START_TIMESTAMP; private static final Map APP_MAP = new ConcurrentHashMap<>(); @Override @@ -29,11 +30,6 @@ public class AppDaoImpl implements AppDao { return sqlSession.insert("AppDao.insert", appDO); } - @Override - public int insertIgnoreGatewayDB(AppDO appDO) { - return sqlSession.insert("AppDao.insert", appDO); - } - @Override public int deleteByName(String appName) { return sqlSession.delete("AppDao.deleteByName", appName); @@ -66,7 +62,12 @@ public class AppDaoImpl implements AppDao { } private void updateTopicCache() { - Long timestamp = System.currentTimeMillis(); + long timestamp = System.currentTimeMillis(); + + if (timestamp + 1000 <= APP_CACHE_LATEST_UPDATE_TIME) { + // 近一秒内的请求不走db + return; + } Date afterTime = new Date(APP_CACHE_LATEST_UPDATE_TIME); List doList = sqlSession.selectList("AppDao.listAfterTime", afterTime); @@ -76,19 +77,22 @@ public class AppDaoImpl implements AppDao { /** * 更新APP缓存 */ - synchronized private void updateTopicCache(List doList, Long timestamp) { + private synchronized void updateTopicCache(List doList, long timestamp) { if (doList == null || doList.isEmpty() || APP_CACHE_LATEST_UPDATE_TIME >= timestamp) { // 本次无数据更新, 或者本次更新过时 时, 忽略本次更新 return; } + if (APP_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { + APP_MAP.clear(); + } + for (AppDO elem: doList) { APP_MAP.put(elem.getAppId(), elem); } APP_CACHE_LATEST_UPDATE_TIME = timestamp; } - @Override - public List listNewAll() { - return sqlSession.selectList("AppDao.listNewAll"); + public static void resetCache() { + APP_CACHE_LATEST_UPDATE_TIME = Constant.START_TIMESTAMP; } } \ No newline at end of file diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java index 74a7cab0..1b5df873 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java @@ -1,8 +1,8 @@ package com.xiaojukeji.kafka.manager.dao.gateway.impl; import com.xiaojukeji.kafka.manager.common.entity.pojo.gateway.AuthorityDO; -import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.dao.gateway.AuthorityDao; +import com.xiaojukeji.kafka.manager.task.Constant; import org.mybatis.spring.SqlSessionTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; @@ -23,7 +23,8 @@ public class AuthorityDaoImpl implements AuthorityDao { * Authority最近的一次更新时间, 更新之后的缓存 * >> */ - private static Long AUTHORITY_CACHE_LATEST_UPDATE_TIME = 0L; + private static volatile long AUTHORITY_CACHE_LATEST_UPDATE_TIME = Constant.START_TIMESTAMP; + private static final Map>> AUTHORITY_MAP = new ConcurrentHashMap<>(); @Override @@ -31,11 +32,6 @@ public class AuthorityDaoImpl implements AuthorityDao { return sqlSession.insert("AuthorityDao.replace", authorityDO); } - @Override - public int replaceIgnoreGatewayDB(AuthorityDO authorityDO) { - return sqlSession.insert("AuthorityDao.replace", authorityDO); - } - @Override public List getAuthority(Long clusterId, String topicName, String appId) { Map params = new HashMap<>(3); @@ -62,8 +58,8 @@ public class AuthorityDaoImpl implements AuthorityDao { } List authorityDOList = new ArrayList<>(); - for (Long clusterId: doMap.keySet()) { - authorityDOList.addAll(doMap.get(clusterId).values()); + for (Map.Entry> entry: doMap.entrySet()) { + authorityDOList.addAll(entry.getValue().values()); } return authorityDOList; } @@ -87,23 +83,6 @@ public class AuthorityDaoImpl implements AuthorityDao { return AUTHORITY_MAP; } - @Override - public void removeAuthorityInCache(Long clusterId, String topicName) { - AUTHORITY_MAP.forEach((appId, map) -> { - map.forEach((id, subMap) -> { - if (id.equals(clusterId)) { - subMap.remove(topicName); - if (subMap.isEmpty()) { - map.remove(id); - } - } - }); - if (map.isEmpty()) { - AUTHORITY_MAP.remove(appId); - } - }); - } - @Override public int deleteAuthorityByTopic(Long clusterId, String topicName) { Map params = new HashMap<>(2); @@ -116,6 +95,11 @@ public class AuthorityDaoImpl implements AuthorityDao { private void updateAuthorityCache() { Long timestamp = System.currentTimeMillis(); + if (timestamp + 1000 <= AUTHORITY_CACHE_LATEST_UPDATE_TIME) { + // 近一秒内的请求不走db + return; + } + Date afterTime = new Date(AUTHORITY_CACHE_LATEST_UPDATE_TIME); List doList = sqlSession.selectList("AuthorityDao.listAfterTime", afterTime); updateAuthorityCache(doList, timestamp); @@ -124,11 +108,15 @@ public class AuthorityDaoImpl implements AuthorityDao { /** * 更新Topic缓存 */ - synchronized private void updateAuthorityCache(List doList, Long timestamp) { + private synchronized void updateAuthorityCache(List doList, Long timestamp) { if (doList == null || doList.isEmpty() || AUTHORITY_CACHE_LATEST_UPDATE_TIME >= timestamp) { // 本次无数据更新, 或者本次更新过时 时, 忽略本次更新 return; } + if (AUTHORITY_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { + AUTHORITY_MAP.clear(); + } + for (AuthorityDO elem: doList) { Map> doMap = AUTHORITY_MAP.getOrDefault(elem.getAppId(), new ConcurrentHashMap<>()); @@ -139,4 +127,8 @@ public class AuthorityDaoImpl implements AuthorityDao { } AUTHORITY_CACHE_LATEST_UPDATE_TIME = timestamp; } + + public static void resetCache() { + AUTHORITY_CACHE_LATEST_UPDATE_TIME = Constant.START_TIMESTAMP; + } } diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java index ba4468df..3c1ba335 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java @@ -2,6 +2,7 @@ package com.xiaojukeji.kafka.manager.dao.impl; import com.xiaojukeji.kafka.manager.common.entity.pojo.TopicDO; import com.xiaojukeji.kafka.manager.dao.TopicDao; +import com.xiaojukeji.kafka.manager.task.Constant; import org.mybatis.spring.SqlSessionTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; @@ -18,7 +19,8 @@ public class TopicDaoImpl implements TopicDao { /** * Topic最近的一次更新时间, 更新之后的缓存 */ - private static Long TOPIC_CACHE_LATEST_UPDATE_TIME = 0L; + private static volatile long TOPIC_CACHE_LATEST_UPDATE_TIME = Constant.START_TIMESTAMP; + private static final Map> TOPIC_MAP = new ConcurrentHashMap<>(); @Autowired @@ -62,7 +64,7 @@ public class TopicDaoImpl implements TopicDao { @Override public List getByClusterId(Long clusterId) { updateTopicCache(); - return new ArrayList<>(TOPIC_MAP.getOrDefault(clusterId, new ConcurrentHashMap<>(0)).values()); + return new ArrayList<>(TOPIC_MAP.getOrDefault(clusterId, Collections.emptyMap()).values()); } @Override @@ -75,28 +77,28 @@ public class TopicDaoImpl implements TopicDao { updateTopicCache(); List doList = new ArrayList<>(); for (Long clusterId: TOPIC_MAP.keySet()) { - doList.addAll(TOPIC_MAP.getOrDefault(clusterId, new ConcurrentHashMap<>(0)).values()); + doList.addAll(TOPIC_MAP.getOrDefault(clusterId, Collections.emptyMap()).values()); } return doList; } @Override public TopicDO getTopic(Long clusterId, String topicName, String appId) { - Map params = new HashMap<>(2); + Map params = new HashMap<>(3); params.put("clusterId", clusterId); params.put("topicName", topicName); params.put("appId", appId); return sqlSession.selectOne("TopicDao.getTopic", params); } - @Override - public TopicDO removeTopicInCache(Long clusterId, String topicName) { - return TOPIC_MAP.getOrDefault(clusterId, new HashMap<>(0)).remove(topicName); - } - private void updateTopicCache() { Long timestamp = System.currentTimeMillis(); + if (timestamp + 1000 <= TOPIC_CACHE_LATEST_UPDATE_TIME) { + // 近一秒内的请求不走db + return; + } + Date afterTime = new Date(TOPIC_CACHE_LATEST_UPDATE_TIME); List doList = sqlSession.selectList("TopicDao.listAfterTime", afterTime); updateTopicCache(doList, timestamp); @@ -105,11 +107,15 @@ public class TopicDaoImpl implements TopicDao { /** * 更新Topic缓存 */ - synchronized private void updateTopicCache(List doList, Long timestamp) { + private synchronized void updateTopicCache(List doList, Long timestamp) { if (doList == null || doList.isEmpty() || TOPIC_CACHE_LATEST_UPDATE_TIME >= timestamp) { // 本次无数据更新, 或者本次更新过时 时, 忽略本次更新 return; } + if (TOPIC_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { + TOPIC_MAP.clear(); + } + for (TopicDO elem: doList) { Map doMap = TOPIC_MAP.getOrDefault(elem.getClusterId(), new ConcurrentHashMap<>()); doMap.put(elem.getTopicName(), elem); @@ -117,4 +123,8 @@ public class TopicDaoImpl implements TopicDao { } TOPIC_CACHE_LATEST_UPDATE_TIME = timestamp; } + + public static void resetCache() { + TOPIC_CACHE_LATEST_UPDATE_TIME = Constant.START_TIMESTAMP; + } } \ No newline at end of file diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/task/Constant.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/task/Constant.java new file mode 100644 index 00000000..3a50d7c1 --- /dev/null +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/task/Constant.java @@ -0,0 +1,5 @@ +package com.xiaojukeji.kafka.manager.task; + +public class Constant { + public static final long START_TIMESTAMP = 0; +} diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/task/DaoBackgroundTask.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/task/DaoBackgroundTask.java new file mode 100644 index 00000000..a750aff8 --- /dev/null +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/task/DaoBackgroundTask.java @@ -0,0 +1,41 @@ +package com.xiaojukeji.kafka.manager.task; + +import com.xiaojukeji.kafka.manager.common.utils.factory.DefaultThreadFactory; +import com.xiaojukeji.kafka.manager.dao.gateway.impl.AppDaoImpl; +import com.xiaojukeji.kafka.manager.dao.gateway.impl.AuthorityDaoImpl; +import com.xiaojukeji.kafka.manager.dao.impl.TopicDaoImpl; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +import javax.annotation.PostConstruct; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.TimeUnit; + +/** + * 后台任务线程 + * @author zengqiao + * @date 21/02/02 + */ +@Service +public class DaoBackgroundTask { + private static final Logger LOGGER = LoggerFactory.getLogger(DaoBackgroundTask.class); + + private static final ScheduledExecutorService SYNC_CACHE_THREAD_POOL = Executors.newSingleThreadScheduledExecutor(new DefaultThreadFactory("syncCacheTask")); + + @PostConstruct + public void init() { + SYNC_CACHE_THREAD_POOL.scheduleAtFixedRate(() -> { + LOGGER.info("class=DaoBackgroundTask||method=init||msg=sync cache start"); + + TopicDaoImpl.resetCache(); + + AppDaoImpl.resetCache(); + + AuthorityDaoImpl.resetCache(); + + LOGGER.info("class=DaoBackgroundTask||method=init||msg=sync cache finished"); + }, 1, 10, TimeUnit.MINUTES); + } +} diff --git a/kafka-manager-dao/src/main/resources/mapper/GatewayConfigDao.xml b/kafka-manager-dao/src/main/resources/mapper/GatewayConfigDao.xml index 8aa91925..ac003836 100644 --- a/kafka-manager-dao/src/main/resources/mapper/GatewayConfigDao.xml +++ b/kafka-manager-dao/src/main/resources/mapper/GatewayConfigDao.xml @@ -8,6 +8,7 @@ + @@ -27,9 +28,9 @@ @@ -45,7 +46,8 @@ `type`=#{type}, `name`=#{name}, `value`=#{value}, - `version`=#{version} + `version`=#{version}, + `description`=#{description} WHERE id=#{id} ]]> diff --git a/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/common/entry/apply/gateway/OrderExtensionAddGatewayConfigDTO.java b/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/common/entry/apply/gateway/OrderExtensionAddGatewayConfigDTO.java index 0045bfe2..6a2c0bb4 100644 --- a/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/common/entry/apply/gateway/OrderExtensionAddGatewayConfigDTO.java +++ b/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/common/entry/apply/gateway/OrderExtensionAddGatewayConfigDTO.java @@ -18,6 +18,9 @@ public class OrderExtensionAddGatewayConfigDTO { @ApiModelProperty(value = "值") private String value; + @ApiModelProperty(value = "描述说明") + private String description; + public String getType() { return type; } @@ -42,12 +45,21 @@ public class OrderExtensionAddGatewayConfigDTO { this.value = value; } + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + @Override public String toString() { return "OrderExtensionAddGatewayConfigDTO{" + "type='" + type + '\'' + ", name='" + name + '\'' + ", value='" + value + '\'' + + ", description='" + description + '\'' + '}'; } diff --git a/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/common/entry/apply/gateway/OrderExtensionModifyGatewayConfigDTO.java b/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/common/entry/apply/gateway/OrderExtensionModifyGatewayConfigDTO.java index f5212f8c..3f749ea7 100644 --- a/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/common/entry/apply/gateway/OrderExtensionModifyGatewayConfigDTO.java +++ b/kafka-manager-extends/kafka-manager-bpm/src/main/java/com/xiaojukeji/kafka/manager/bpm/common/entry/apply/gateway/OrderExtensionModifyGatewayConfigDTO.java @@ -23,6 +23,9 @@ public class OrderExtensionModifyGatewayConfigDTO { @ApiModelProperty(value = "值") private String value; + @ApiModelProperty(value = "描述说明") + private String description; + public Long getId() { return id; } @@ -55,6 +58,14 @@ public class OrderExtensionModifyGatewayConfigDTO { this.value = value; } + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + @Override public String toString() { return "OrderExtensionModifyGatewayConfigDTO{" + @@ -62,6 +73,7 @@ public class OrderExtensionModifyGatewayConfigDTO { ", type='" + type + '\'' + ", name='" + name + '\'' + ", value='" + value + '\'' + + ", description='" + description + '\'' + '}'; } diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/Constant.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/Constant.java new file mode 100644 index 00000000..f73c3fd6 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/Constant.java @@ -0,0 +1,18 @@ +package com.xiaojukeji.kafka.manager.kcm.common; + +public class Constant { + /** + * + */ + public static final String TASK_TITLE_PREFIX = "Logi-Kafka"; + + /** + * 并发度,顺序执行 + */ + public static final Integer AGENT_TASK_BATCH = 1; + + /** + * 失败的容忍度为0 + */ + public static final Integer AGENT_TASK_TOLERANCE = 0; +} diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/bizenum/ClusterTaskActionEnum.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/bizenum/ClusterTaskActionEnum.java index 556acab8..a51e2c68 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/bizenum/ClusterTaskActionEnum.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/bizenum/ClusterTaskActionEnum.java @@ -6,34 +6,35 @@ package com.xiaojukeji.kafka.manager.kcm.common.bizenum; * @date 20/4/26 */ public enum ClusterTaskActionEnum { - START(0, "start"), - PAUSE(1, "pause"), - IGNORE(2, "ignore"), - CANCEL(3, "cancel"), - ROLLBACK(4, "rollback"), + UNKNOWN("unknown"), + + START("start"), + PAUSE("pause"), + + IGNORE("ignore"), + CANCEL("cancel"), + + REDO("redo"), + KILL("kill"), + + ROLLBACK("rollback"), + ; - private Integer code; - private String message; + private String action; - ClusterTaskActionEnum(Integer code, String message) { - this.code = code; - this.message = message; + ClusterTaskActionEnum(String action) { + this.action = action; } - public Integer getCode() { - return code; - } - - public String getMessage() { - return message; + public String getAction() { + return action; } @Override public String toString() { - return "TaskActionEnum{" + - "code=" + code + - ", message='" + message + '\'' + + return "ClusterTaskActionEnum{" + + "action='" + action + '\'' + '}'; } } diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/entry/ao/ClusterTaskLog.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/entry/ao/ClusterTaskLog.java new file mode 100644 index 00000000..ff89fa99 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/entry/ao/ClusterTaskLog.java @@ -0,0 +1,24 @@ +package com.xiaojukeji.kafka.manager.kcm.common.entry.ao; + +public class ClusterTaskLog { + private String stdout; + + public ClusterTaskLog(String stdout) { + this.stdout = stdout; + } + + public String getStdout() { + return stdout; + } + + public void setStdout(String stdout) { + this.stdout = stdout; + } + + @Override + public String toString() { + return "AgentOperationTaskLog{" + + "stdout='" + stdout + '\'' + + '}'; + } +} diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/entry/ao/CreationTaskData.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/entry/ao/CreationTaskData.java index bc025d5c..8c2cd1ec 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/entry/ao/CreationTaskData.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/common/entry/ao/CreationTaskData.java @@ -1,5 +1,7 @@ package com.xiaojukeji.kafka.manager.kcm.common.entry.ao; +import com.xiaojukeji.kafka.manager.common.entity.Result; + import java.util.List; /** @@ -119,7 +121,7 @@ public class CreationTaskData { @Override public String toString() { - return "CreationTaskDTO{" + + return "CreationTaskData{" + "uuid='" + uuid + '\'' + ", clusterId=" + clusterId + ", hostList=" + hostList + diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/AbstractAgent.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/AbstractAgent.java index 88872868..70ce5902 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/AbstractAgent.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/AbstractAgent.java @@ -1,9 +1,18 @@ package com.xiaojukeji.kafka.manager.kcm.component.agent; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskActionEnum; import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskStateEnum; import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskSubStateEnum; +import com.xiaojukeji.kafka.manager.kcm.common.entry.ao.ClusterTaskLog; import com.xiaojukeji.kafka.manager.kcm.common.entry.ao.CreationTaskData; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; import java.util.Map; @@ -13,33 +22,79 @@ import java.util.Map; * @date 20/4/26 */ public abstract class AbstractAgent { + private static final Logger LOGGER = LoggerFactory.getLogger(AbstractAgent.class); + /** * 创建任务 + * @param creationTaskData 创建任务参数 + * @return 任务ID */ - public abstract Long createTask(CreationTaskData dto); + public abstract Result createTask(CreationTaskData creationTaskData); /** - * 任务动作 + * 执行任务 + * @param taskId 任务ID + * @param actionEnum 执行动作 + * @return true:触发成功, false:触发失败 */ - public abstract Boolean actionTask(Long taskId, String action); + public abstract boolean actionTask(Long taskId, ClusterTaskActionEnum actionEnum); /** - * 任务动作 + * 执行任务 + * @param taskId 任务ID + * @param actionEnum 执行动作 + * @param hostname 具体主机 + * @return true:触发成功, false:触发失败 */ - public abstract Boolean actionHostTask(Long taskId, String action, String hostname); + public abstract boolean actionHostTask(Long taskId, ClusterTaskActionEnum actionEnum, String hostname); /** - * 获取任务状态 + * 获取任务运行的状态[阻塞, 执行中, 完成等] + * @param taskId 任务ID + * @return 任务状态 */ - public abstract ClusterTaskStateEnum getTaskState(Long agentTaskId); + public abstract Result getTaskExecuteState(Long taskId); /** * 获取任务结果 + * @param taskId 任务ID + * @return 任务结果 */ - public abstract Map getTaskResult(Long taskId); + public abstract Result> getTaskResult(Long taskId); /** - * 获取任务日志 + * 获取任务执行日志 + * @param taskId 任务ID + * @param hostname 具体主机 + * @return 机器运行日志 */ - public abstract String getTaskLog(Long agentTaskId, String hostname); + public abstract Result getTaskLog(Long taskId, String hostname); + + protected static String readScriptInJarFile(String fileName) { + InputStream inputStream = AbstractAgent.class.getClassLoader().getResourceAsStream(fileName); + if (inputStream == null) { + LOGGER.error("class=AbstractAgent||method=readScriptInJarFile||fileName={}||msg=read script failed", fileName); + return ""; + } + + try { + BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); + String line = null; + + StringBuilder sb = new StringBuilder(); + while ((line = bufferedReader.readLine()) != null) { + sb.append(line).append("\n"); + } + return sb.toString(); + } catch (Exception e) { + LOGGER.error("class=AbstractAgent||method=readScriptInJarFile||fileName={}||errMsg={}||msg=read script failed", fileName, e.getMessage()); + } finally { + try { + inputStream.close(); + } catch (IOException e) { + LOGGER.error("class=AbstractAgent||method=readScriptInJarFile||fileName={}||errMsg={}||msg=close reading script failed", fileName, e.getMessage()); + } + } + return ""; + } } \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/N9e.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/N9e.java index f1f4b586..6e3fa677 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/N9e.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/N9e.java @@ -1,8 +1,11 @@ package com.xiaojukeji.kafka.manager.kcm.component.agent.n9e; -import com.alibaba.fastjson.JSON; import com.xiaojukeji.kafka.manager.common.bizenum.KafkaFileEnum; +import com.xiaojukeji.kafka.manager.common.entity.Result; +import com.xiaojukeji.kafka.manager.kcm.common.Constant; +import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskActionEnum; import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskTypeEnum; +import com.xiaojukeji.kafka.manager.kcm.common.entry.ao.ClusterTaskLog; import com.xiaojukeji.kafka.manager.kcm.common.entry.ao.CreationTaskData; import com.xiaojukeji.kafka.manager.common.utils.HttpUtils; import com.xiaojukeji.kafka.manager.common.utils.JsonUtils; @@ -11,20 +14,17 @@ import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskStateEnum; import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskSubStateEnum; import com.xiaojukeji.kafka.manager.kcm.component.agent.AbstractAgent; +import com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.N9eCreationTask; import com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.N9eResult; -import com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.N9eTaskResultDTO; -import com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.N9eTaskStatusEnum; -import com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.N9eTaskStdoutDTO; +import com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.N9eTaskResult; +import com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.N9eTaskStdoutLog; +import com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.bizenum.N9eTaskStatusEnum; import org.springframework.beans.factory.annotation.Value; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import javax.annotation.PostConstruct; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -54,16 +54,6 @@ public class N9e extends AbstractAgent { private String script; - /** - * 并发度,顺序执行 - */ - private static final Integer BATCH = 1; - - /** - * 失败的容忍度为0 - */ - private static final Integer TOLERANCE = 0; - private static final String CREATE_TASK_URI = "/api/job-ce/tasks"; private static final String ACTION_TASK_URI = "/api/job-ce/task/{taskId}/action"; @@ -82,143 +72,134 @@ public class N9e extends AbstractAgent { } @Override - public Long createTask(CreationTaskData creationTaskData) { - Map param = buildCreateTaskParam(creationTaskData); + public Result createTask(CreationTaskData creationTaskData) { + String content = JsonUtils.toJSONString(buildCreateTaskParam(creationTaskData)); String response = null; try { - response = HttpUtils.postForString( - baseUrl + CREATE_TASK_URI, - JsonUtils.toJSONString(param), - buildHeader() - ); - N9eResult zr = JSON.parseObject(response, N9eResult.class); - if (!ValidateUtils.isBlank(zr.getErr())) { - LOGGER.warn("class=N9e||method=createTask||param={}||errMsg={}||msg=call create task fail", JsonUtils.toJSONString(param),zr.getErr()); - return null; + response = HttpUtils.postForString(baseUrl + CREATE_TASK_URI, content, buildHeader()); + N9eResult nr = JsonUtils.stringToObj(response, N9eResult.class); + if (!ValidateUtils.isBlank(nr.getErr())) { + LOGGER.error("class=N9e||method=createTask||param={}||response={}||msg=call create task failed", content, response); + return Result.buildFailure(nr.getErr()); } - return Long.valueOf(zr.getDat().toString()); + return Result.buildSuc(Long.valueOf(nr.getDat().toString())); } catch (Exception e) { - LOGGER.error("create task failed, req:{}.", creationTaskData, e); + LOGGER.error("class=N9e||method=createTask||param={}||response={}||errMsg={}||msg=call create task failed", content, response, e.getMessage()); } - return null; + return Result.buildFailure("create n9e task failed"); } @Override - public Boolean actionTask(Long taskId, String action) { + public boolean actionTask(Long taskId, ClusterTaskActionEnum actionEnum) { Map param = new HashMap<>(1); - param.put("action", action); + param.put("action", actionEnum.getAction()); String response = null; try { - response = HttpUtils.putForString( - baseUrl + ACTION_TASK_URI.replace("{taskId}", taskId.toString()), - JSON.toJSONString(param), - buildHeader() - ); - N9eResult zr = JSON.parseObject(response, N9eResult.class); - if (ValidateUtils.isBlank(zr.getErr())) { + response = HttpUtils.putForString(baseUrl + ACTION_TASK_URI.replace("{taskId}", String.valueOf(taskId)), JsonUtils.toJSONString(param), buildHeader()); + N9eResult nr = JsonUtils.stringToObj(response, N9eResult.class); + if (ValidateUtils.isBlank(nr.getErr())) { return true; } - LOGGER.warn("class=N9e||method=actionTask||param={}||errMsg={}||msg=call action task fail", JSON.toJSONString(param),zr.getErr()); + + LOGGER.error("class=N9e||method=actionTask||param={}||response={}||msg=call action task fail", JsonUtils.toJSONString(param), response); return false; } catch (Exception e) { - LOGGER.error("action task failed, taskId:{}, action:{}.", taskId, action, e); + LOGGER.error("class=N9e||method=actionTask||param={}||response={}||errMsg={}||msg=call action task fail", JsonUtils.toJSONString(param), response, e.getMessage()); } return false; } @Override - public Boolean actionHostTask(Long taskId, String action, String hostname) { - Map param = new HashMap<>(2); - param.put("action", action); - param.put("hostname", hostname); + public boolean actionHostTask(Long taskId, ClusterTaskActionEnum actionEnum, String hostname) { + Map params = new HashMap<>(2); + params.put("action", actionEnum.getAction()); + params.put("hostname", hostname); String response = null; try { - response = HttpUtils.putForString( - baseUrl + ACTION_HOST_TASK_URI.replace("{taskId}", taskId.toString()), - JSON.toJSONString(param), - buildHeader() - ); - N9eResult zr = JSON.parseObject(response, N9eResult.class); - if (ValidateUtils.isBlank(zr.getErr())) { + response = HttpUtils.putForString(baseUrl + ACTION_HOST_TASK_URI.replace("{taskId}", String.valueOf(taskId)), JsonUtils.toJSONString(params), buildHeader()); + N9eResult nr = JsonUtils.stringToObj(response, N9eResult.class); + if (ValidateUtils.isBlank(nr.getErr())) { return true; } - LOGGER.warn("class=N9e||method=actionHostTask||param={}||errMsg={}||msg=call action host task fail", JSON.toJSONString(param),zr.getErr()); + + LOGGER.error("class=N9e||method=actionHostTask||params={}||response={}||msg=call action host task fail", JsonUtils.toJSONString(params), response); return false; } catch (Exception e) { - LOGGER.error("action task failed, taskId:{} action:{} hostname:{}.", taskId, action, hostname, e); + LOGGER.error("class=N9e||method=actionHostTask||params={}||response={}||errMsg={}||msg=call action host task fail", JsonUtils.toJSONString(params), response, e.getMessage()); } return false; } @Override - public ClusterTaskStateEnum getTaskState(Long agentTaskId) { + public Result getTaskExecuteState(Long taskId) { String response = null; try { // 获取任务的state - response = HttpUtils.get( - baseUrl + TASK_STATE_URI.replace("{taskId}", agentTaskId.toString()), null - ); - N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); - if (!ValidateUtils.isBlank(n9eResult.getErr())) { - LOGGER.error("get response result failed, agentTaskId:{} response:{}.", agentTaskId, response); - return null; + response = HttpUtils.get(baseUrl + TASK_STATE_URI.replace("{taskId}", String.valueOf(taskId)), null); + N9eResult nr = JsonUtils.stringToObj(response, N9eResult.class); + if (!ValidateUtils.isBlank(nr.getErr())) { + return Result.buildFailure(nr.getErr()); } - String state = JSON.parseObject(JSON.toJSONString(n9eResult.getDat()), String.class); + + String state = JsonUtils.stringToObj(JsonUtils.toJSONString(nr.getDat()), String.class); + N9eTaskStatusEnum n9eTaskStatusEnum = N9eTaskStatusEnum.getByMessage(state); if (ValidateUtils.isNull(n9eTaskStatusEnum)) { - LOGGER.error("get task status failed, agentTaskId:{} state:{}.", agentTaskId, state); - return null; + LOGGER.error("class=N9e||method=getTaskExecuteState||taskId={}||response={}||msg=get task state failed", taskId, response); + return Result.buildFailure("unknown state, state:" + state); } - return n9eTaskStatusEnum.getStatus(); + return Result.buildSuc(n9eTaskStatusEnum.getStatus()); } catch (Exception e) { - LOGGER.error("get task status failed, agentTaskId:{} response:{}.", agentTaskId, response, e); + LOGGER.error("class=N9e||method=getTaskExecuteState||taskId={}||response={}||errMsg={}||msg=get task state failed", taskId, response, e.getMessage()); } - return null; + return Result.buildFailure("get task state failed"); } @Override - public Map getTaskResult(Long agentTaskId) { + public Result> getTaskResult(Long taskId) { String response = null; try { // 获取子任务的state - response = HttpUtils.get(baseUrl + TASK_SUB_STATE_URI.replace("{taskId}", agentTaskId.toString()), null); - N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); + response = HttpUtils.get(baseUrl + TASK_SUB_STATE_URI.replace("{taskId}", String.valueOf(taskId)), null); + N9eResult nr = JsonUtils.stringToObj(response, N9eResult.class); + if (!ValidateUtils.isBlank(nr.getErr())) { + LOGGER.error("class=N9e||method=getTaskResult||taskId={}||response={}||msg=get task result failed", taskId, response); + return Result.buildFailure(nr.getErr()); + } - N9eTaskResultDTO n9eTaskResultDTO = - JSON.parseObject(JSON.toJSONString(n9eResult.getDat()), N9eTaskResultDTO.class); - return n9eTaskResultDTO.convert2HostnameStatusMap(); + return Result.buildSuc(JsonUtils.stringToObj(JsonUtils.toJSONString(nr.getDat()), N9eTaskResult.class).convert2HostnameStatusMap()); } catch (Exception e) { - LOGGER.error("get task result failed, agentTaskId:{} response:{}.", agentTaskId, response, e); + LOGGER.error("class=N9e||method=getTaskResult||taskId={}||response={}||errMsg={}||msg=get task result failed", taskId, response, e.getMessage()); } - return null; + return Result.buildFailure("get task result failed"); } @Override - public String getTaskLog(Long agentTaskId, String hostname) { + public Result getTaskLog(Long taskId, String hostname) { + Map params = new HashMap<>(1); + params.put("hostname", hostname); + String response = null; try { - Map params = new HashMap<>(1); - params.put("hostname", hostname); + response = HttpUtils.get(baseUrl + TASK_STD_LOG_URI.replace("{taskId}", String.valueOf(taskId)), params); + N9eResult nr = JsonUtils.stringToObj(response, N9eResult.class); + if (!ValidateUtils.isBlank(nr.getErr())) { + LOGGER.error("class=N9e||method=getTaskLog||taskId={}||response={}||msg=get task log failed", taskId, response); + return Result.buildFailure(nr.getErr()); + } - response = HttpUtils.get(baseUrl + TASK_STD_LOG_URI.replace("{taskId}", agentTaskId.toString()), params); - N9eResult n9eResult = JSON.parseObject(response, N9eResult.class); - if (!ValidateUtils.isBlank(n9eResult.getErr())) { - LOGGER.error("get task log failed, agentTaskId:{} response:{}.", agentTaskId, response); - return null; - } - List dtoList = - JSON.parseArray(JSON.toJSONString(n9eResult.getDat()), N9eTaskStdoutDTO.class); + List dtoList = JsonUtils.stringToArrObj(JsonUtils.toJSONString(nr.getDat()), N9eTaskStdoutLog.class); if (ValidateUtils.isEmptyList(dtoList)) { - return ""; + return Result.buildSuc(new ClusterTaskLog("")); } - return dtoList.get(0).getStdout(); + return Result.buildSuc(new ClusterTaskLog(dtoList.get(0).getStdout())); } catch (Exception e) { - LOGGER.error("get task log failed, agentTaskId:{}.", agentTaskId, e); + LOGGER.error("class=N9e||method=getTaskLog||taskId={}||response={}||errMsg={}||msg=get task log failed", taskId, response, e.getMessage()); } - return null; + return Result.buildFailure("get task log failed"); } private Map buildHeader() { @@ -228,7 +209,7 @@ public class N9e extends AbstractAgent { return headers; } - private Map buildCreateTaskParam(CreationTaskData creationTaskData) { + private N9eCreationTask buildCreateTaskParam(CreationTaskData creationTaskData) { StringBuilder sb = new StringBuilder(); sb.append(creationTaskData.getUuid()).append(",,"); sb.append(creationTaskData.getClusterId()).append(",,"); @@ -240,46 +221,17 @@ public class N9e extends AbstractAgent { sb.append(creationTaskData.getServerPropertiesMd5()).append(",,"); sb.append(creationTaskData.getServerPropertiesUrl()); - Map params = new HashMap<>(10); - params.put("title", String.format("集群ID=%d-升级部署", creationTaskData.getClusterId())); - params.put("batch", BATCH); - params.put("tolerance", TOLERANCE); - params.put("timeout", timeout); - params.put("pause", ListUtils.strList2String(creationTaskData.getPauseList())); - params.put("script", this.script); - params.put("args", sb.toString()); - params.put("account", account); - params.put("action", "pause"); - params.put("hosts", creationTaskData.getHostList()); - return params; - } - - private static String readScriptInJarFile(String fileName) { - InputStream inputStream = N9e.class.getClassLoader().getResourceAsStream(fileName); - if (inputStream == null) { - LOGGER.error("read kcm script failed, filename:{}", fileName); - return ""; - } - - try { - BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); - String line = null; - StringBuilder stringBuilder = new StringBuilder(""); - - while ((line = bufferedReader.readLine()) != null) { - stringBuilder.append(line); - stringBuilder.append("\n"); - } - return stringBuilder.toString(); - } catch (IOException e) { - LOGGER.error("read kcm script failed, filename:{}", fileName, e); - return ""; - } finally { - try { - inputStream.close(); - } catch (IOException e) { - LOGGER.error("close reading kcm script failed, filename:{}", fileName, e); - } - } + N9eCreationTask n9eCreationTask = new N9eCreationTask(); + n9eCreationTask.setTitle(Constant.TASK_TITLE_PREFIX + "-集群ID:" + creationTaskData.getClusterId()); + n9eCreationTask.setBatch(Constant.AGENT_TASK_BATCH); + n9eCreationTask.setTolerance(Constant.AGENT_TASK_TOLERANCE); + n9eCreationTask.setTimeout(this.timeout); + n9eCreationTask.setPause(ListUtils.strList2String(creationTaskData.getPauseList())); + n9eCreationTask.setScript(this.script); + n9eCreationTask.setArgs(sb.toString()); + n9eCreationTask.setAccount(this.account); + n9eCreationTask.setAction(ClusterTaskActionEnum.PAUSE.getAction()); + n9eCreationTask.setHosts(creationTaskData.getHostList()); + return n9eCreationTask; } } \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eCreationTask.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eCreationTask.java new file mode 100644 index 00000000..6ca4c85c --- /dev/null +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eCreationTask.java @@ -0,0 +1,151 @@ +package com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry; + +import java.util.List; + +public class N9eCreationTask { + /** + * 任务标题 + */ + private String title; + + /** + * 并发度, =2则表示两台并发执行 + */ + private Integer batch; + + /** + * 错误容忍度, 达到容忍度之上时, 任务会被暂停并不可以继续执行 + */ + private Integer tolerance; + + /** + * 单台任务的超时时间(秒) + */ + private Integer timeout; + + /** + * 暂停点, 格式: host1,host2,host3 + */ + private String pause; + + /** + * 任务执行对应的脚本 + */ + private String script; + + /** + * 任务参数 + */ + private String args; + + /** + * 使用的账号 + */ + private String account; + + /** + * 动作 + */ + private String action; + + /** + * 操作的主机列表 + */ + private List hosts; + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public Integer getBatch() { + return batch; + } + + public void setBatch(Integer batch) { + this.batch = batch; + } + + public Integer getTolerance() { + return tolerance; + } + + public void setTolerance(Integer tolerance) { + this.tolerance = tolerance; + } + + public Integer getTimeout() { + return timeout; + } + + public void setTimeout(Integer timeout) { + this.timeout = timeout; + } + + public String getPause() { + return pause; + } + + public void setPause(String pause) { + this.pause = pause; + } + + public String getScript() { + return script; + } + + public void setScript(String script) { + this.script = script; + } + + public String getArgs() { + return args; + } + + public void setArgs(String args) { + this.args = args; + } + + public String getAccount() { + return account; + } + + public void setAccount(String account) { + this.account = account; + } + + public String getAction() { + return action; + } + + public void setAction(String action) { + this.action = action; + } + + public List getHosts() { + return hosts; + } + + public void setHosts(List hosts) { + this.hosts = hosts; + } + + @Override + public String toString() { + return "N9eCreationTask{" + + "title='" + title + '\'' + + ", batch=" + batch + + ", tolerance=" + tolerance + + ", timeout=" + timeout + + ", pause='" + pause + '\'' + + ", script='" + script + '\'' + + ", args='" + args + '\'' + + ", account='" + account + '\'' + + ", action='" + action + '\'' + + ", hosts=" + hosts + + '}'; + } +} diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskResultDTO.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskResult.java similarity index 99% rename from kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskResultDTO.java rename to kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskResult.java index b787f016..e0e67b0e 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskResultDTO.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskResult.java @@ -12,7 +12,7 @@ import java.util.Map; * @author zengqiao * @date 20/9/7 */ -public class N9eTaskResultDTO { +public class N9eTaskResult { private List waiting; private List running; diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskStdoutLog.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskStdoutLog.java new file mode 100644 index 00000000..622aaa3e --- /dev/null +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/N9eTaskStdoutLog.java @@ -0,0 +1,35 @@ +package com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry; + +/** + * @author zengqiao + * @date 20/9/7 + */ +public class N9eTaskStdoutLog { + private String host; + + private String stdout; + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public String getStdout() { + return stdout; + } + + public void setStdout(String stdout) { + this.stdout = stdout; + } + + @Override + public String toString() { + return "N9eTaskStdoutDTO{" + + "host='" + host + '\'' + + ", stdout='" + stdout + '\'' + + '}'; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/bizenum/N9eTaskStatusEnum.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/bizenum/N9eTaskStatusEnum.java new file mode 100644 index 00000000..4453e703 --- /dev/null +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/agent/n9e/entry/bizenum/N9eTaskStatusEnum.java @@ -0,0 +1,59 @@ +package com.xiaojukeji.kafka.manager.kcm.component.agent.n9e.entry.bizenum; + +import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskStateEnum; + +/** + * @author zengqiao + * @date 20/9/3 + */ +public enum N9eTaskStatusEnum { + DONE(0, "done", ClusterTaskStateEnum.FINISHED), + PAUSE(1, "pause", ClusterTaskStateEnum.BLOCKED), + START(2, "start", ClusterTaskStateEnum.RUNNING), + ; + + private Integer code; + + private String message; + + private ClusterTaskStateEnum status; + + N9eTaskStatusEnum(Integer code, String message, ClusterTaskStateEnum status) { + this.code = code; + this.message = message; + this.status = status; + } + + public Integer getCode() { + return code; + } + + public void setCode(Integer code) { + this.code = code; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public ClusterTaskStateEnum getStatus() { + return status; + } + + public void setStatus(ClusterTaskStateEnum status) { + this.status = status; + } + + public static N9eTaskStatusEnum getByMessage(String message) { + for (N9eTaskStatusEnum elem: N9eTaskStatusEnum.values()) { + if (elem.message.equals(message)) { + return elem; + } + } + return null; + } +} \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/s3/S3Service.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/s3/S3Service.java index 419e66e0..9519efd2 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/s3/S3Service.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/component/storage/s3/S3Service.java @@ -54,7 +54,7 @@ public class S3Service extends AbstractStorageService { InputStream inputStream = null; try { if (!createBucketIfNotExist()) { - return false; + return false; } inputStream = uploadFile.getInputStream(); @@ -95,7 +95,10 @@ public class S3Service extends AbstractStorageService { @Override public String getDownloadBaseUrl() { - return this.endpoint + "/" + this.bucket; + if (this.endpoint.startsWith("http://")) { + return this.endpoint + "/" + this.bucket; + } + return "http://" + this.endpoint + "/" + this.bucket; } private boolean createBucketIfNotExist() { diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/ClusterTaskServiceImpl.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/ClusterTaskServiceImpl.java index a190350a..b3ef959a 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/ClusterTaskServiceImpl.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/ClusterTaskServiceImpl.java @@ -6,6 +6,7 @@ import com.xiaojukeji.kafka.manager.kcm.ClusterTaskService; import com.xiaojukeji.kafka.manager.kcm.common.Converters; import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskActionEnum; import com.xiaojukeji.kafka.manager.kcm.common.entry.ClusterTaskConstant; +import com.xiaojukeji.kafka.manager.kcm.common.entry.ao.ClusterTaskLog; import com.xiaojukeji.kafka.manager.kcm.common.entry.ao.ClusterTaskSubStatus; import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskStateEnum; import com.xiaojukeji.kafka.manager.kcm.common.bizenum.ClusterTaskSubStateEnum; @@ -34,7 +35,7 @@ import java.util.*; */ @Service("clusterTaskService") public class ClusterTaskServiceImpl implements ClusterTaskService { - private final static Logger LOGGER = LoggerFactory.getLogger(ClusterTaskServiceImpl.class); + private static final Logger LOGGER = LoggerFactory.getLogger(ClusterTaskServiceImpl.class); @Autowired private AbstractAgent abstractAgent; @@ -63,13 +64,13 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { } // 创建任务 - Long agentTaskId = abstractAgent.createTask(dtoResult.getData()); - if (ValidateUtils.isNull(agentTaskId)) { + Result createResult = abstractAgent.createTask(dtoResult.getData()); + if (ValidateUtils.isNull(createResult) || createResult.failed()) { return Result.buildFrom(ResultStatus.CALL_CLUSTER_TASK_AGENT_FAILED); } try { - if (clusterTaskDao.insert(Converters.convert2ClusterTaskDO(agentTaskId, dtoResult.getData(), operator)) > 0) { + if (clusterTaskDao.insert(Converters.convert2ClusterTaskDO(createResult.getData(), dtoResult.getData(), operator)) > 0) { return Result.buildFrom(ResultStatus.SUCCESS); } } catch (Exception e) { @@ -87,45 +88,44 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { Long agentTaskId = getActiveAgentTaskId(clusterTaskDO); Boolean rollback = inRollback(clusterTaskDO); - ClusterTaskStateEnum stateEnum = abstractAgent.getTaskState(agentTaskId); - if (ClusterTaskActionEnum.START.getMessage().equals(action) - && ClusterTaskStateEnum.BLOCKED.equals(stateEnum)) { + Result stateEnumResult = abstractAgent.getTaskExecuteState(agentTaskId); + if (ValidateUtils.isNull(stateEnumResult) || stateEnumResult.failed()) { + return ResultStatus.CALL_CLUSTER_TASK_AGENT_FAILED; + } + + if (ClusterTaskActionEnum.START.getAction().equals(action) && ClusterTaskStateEnum.BLOCKED.equals(stateEnumResult.getData())) { // 暂停状态, 可以执行开始 - return actionTaskExceptRollbackAction(agentTaskId, action, ""); + return actionTaskExceptRollbackAction(agentTaskId, ClusterTaskActionEnum.START, ""); } - if (ClusterTaskActionEnum.PAUSE.getMessage().equals(action) - && ClusterTaskStateEnum.RUNNING.equals(stateEnum)) { + if (ClusterTaskActionEnum.PAUSE.getAction().equals(action) && ClusterTaskStateEnum.RUNNING.equals(stateEnumResult.getData())) { // 运行状态, 可以执行暂停 - return actionTaskExceptRollbackAction(agentTaskId, action, ""); + return actionTaskExceptRollbackAction(agentTaskId, ClusterTaskActionEnum.PAUSE, ""); } - if (ClusterTaskActionEnum.IGNORE.getMessage().equals(action) - || ClusterTaskActionEnum.CANCEL.getMessage().equals(action)) { + if (ClusterTaskActionEnum.IGNORE.getAction().equals(action)) { // 忽略 & 取消随时都可以操作 - return actionTaskExceptRollbackAction(agentTaskId, action, hostname); + return actionTaskExceptRollbackAction(agentTaskId, ClusterTaskActionEnum.IGNORE, hostname); } - if ((!ClusterTaskStateEnum.FINISHED.equals(stateEnum) || !rollback) - && ClusterTaskActionEnum.ROLLBACK.getMessage().equals(action)) { + if (ClusterTaskActionEnum.CANCEL.getAction().equals(action)) { + // 忽略 & 取消随时都可以操作 + return actionTaskExceptRollbackAction(agentTaskId, ClusterTaskActionEnum.CANCEL, hostname); + } + if ((!ClusterTaskStateEnum.FINISHED.equals(stateEnumResult.getData()) || !rollback) + && ClusterTaskActionEnum.ROLLBACK.getAction().equals(action)) { // 暂未操作完时可以回滚, 回滚所有操作过的机器到上一个版本 return actionTaskRollback(clusterTaskDO); } return ResultStatus.OPERATION_FAILED; } - private ResultStatus actionTaskExceptRollbackAction(Long agentId, String action, String hostname) { + private ResultStatus actionTaskExceptRollbackAction(Long agentId, ClusterTaskActionEnum actionEnum, String hostname) { if (!ValidateUtils.isBlank(hostname)) { - return actionHostTaskExceptRollbackAction(agentId, action, hostname); + return actionHostTaskExceptRollbackAction(agentId, actionEnum, hostname); } - if (abstractAgent.actionTask(agentId, action)) { - return ResultStatus.SUCCESS; - } - return ResultStatus.OPERATION_FAILED; + return abstractAgent.actionTask(agentId, actionEnum)? ResultStatus.SUCCESS: ResultStatus.OPERATION_FAILED; } - private ResultStatus actionHostTaskExceptRollbackAction(Long agentId, String action, String hostname) { - if (abstractAgent.actionHostTask(agentId, action, hostname)) { - return ResultStatus.SUCCESS; - } - return ResultStatus.OPERATION_FAILED; + private ResultStatus actionHostTaskExceptRollbackAction(Long agentId, ClusterTaskActionEnum actionEnum, String hostname) { + return abstractAgent.actionHostTask(agentId, actionEnum, hostname)? ResultStatus.SUCCESS: ResultStatus.OPERATION_FAILED; } private ResultStatus actionTaskRollback(ClusterTaskDO clusterTaskDO) { @@ -133,9 +133,9 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { return ResultStatus.OPERATION_FORBIDDEN; } - Map subStatusEnumMap = + Result> subStatusEnumMapResult = abstractAgent.getTaskResult(clusterTaskDO.getAgentTaskId()); - if (ValidateUtils.isNull(subStatusEnumMap)) { + if (ValidateUtils.isNull(subStatusEnumMapResult) || subStatusEnumMapResult.failed()) { return ResultStatus.CALL_CLUSTER_TASK_AGENT_FAILED; } @@ -143,7 +143,7 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { List rollbackHostList = new ArrayList<>(); List rollbackPauseHostList = new ArrayList<>(); for (String host: ListUtils.string2StrList(clusterTaskDO.getHostList())) { - ClusterTaskSubStateEnum subStateEnum = subStatusEnumMap.get(host); + ClusterTaskSubStateEnum subStateEnum = subStatusEnumMapResult.getData().get(host); if (ValidateUtils.isNull(subStateEnum)) { // 机器对应的任务查询失败 return ResultStatus.OPERATION_FAILED; @@ -166,17 +166,17 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { clusterTaskDO.setRollbackPauseHostList(ListUtils.strList2String(rollbackPauseHostList)); // 创建任务 - Long agentTaskId = abstractAgent.createTask(Converters.convert2CreationTaskData(clusterTaskDO)); - if (ValidateUtils.isNull(agentTaskId)) { + Result createResult = abstractAgent.createTask(Converters.convert2CreationTaskData(clusterTaskDO)); + if (ValidateUtils.isNull(createResult) || createResult.failed()) { return ResultStatus.CALL_CLUSTER_TASK_AGENT_FAILED; } try { - clusterTaskDO.setAgentRollbackTaskId(agentTaskId); + clusterTaskDO.setAgentRollbackTaskId(createResult.getData()); if (clusterTaskDao.updateRollback(clusterTaskDO) <= 0) { return ResultStatus.MYSQL_ERROR; } - abstractAgent.actionTask(clusterTaskDO.getAgentTaskId(), ClusterTaskActionEnum.CANCEL.getMessage()); + abstractAgent.actionTask(clusterTaskDO.getAgentTaskId(), ClusterTaskActionEnum.CANCEL); return ResultStatus.SUCCESS; } catch (Exception e) { LOGGER.error("create cluster task failed, clusterTaskDO:{}.", clusterTaskDO, e); @@ -191,11 +191,11 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { return Result.buildFrom(ResultStatus.TASK_NOT_EXIST); } - String stdoutLog = abstractAgent.getTaskLog(getActiveAgentTaskId(clusterTaskDO, hostname), hostname); - if (ValidateUtils.isNull(stdoutLog)) { + Result stdoutLogResult = abstractAgent.getTaskLog(getActiveAgentTaskId(clusterTaskDO, hostname), hostname); + if (ValidateUtils.isNull(stdoutLogResult) || stdoutLogResult.failed()) { return Result.buildFrom(ResultStatus.CALL_CLUSTER_TASK_AGENT_FAILED); } - return new Result<>(stdoutLog); + return new Result<>(stdoutLogResult.getData().getStdout()); } @Override @@ -205,24 +205,33 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { return Result.buildFrom(ResultStatus.TASK_NOT_EXIST); } + Result statusEnumResult = abstractAgent.getTaskExecuteState(getActiveAgentTaskId(clusterTaskDO)); + if (ValidateUtils.isNull(statusEnumResult) || statusEnumResult.failed()) { + return new Result<>(statusEnumResult.getCode(), statusEnumResult.getMessage()); + } + return new Result<>(new ClusterTaskStatus( clusterTaskDO.getId(), clusterTaskDO.getClusterId(), inRollback(clusterTaskDO), - abstractAgent.getTaskState(getActiveAgentTaskId(clusterTaskDO)), + statusEnumResult.getData(), getTaskSubStatus(clusterTaskDO) )); } @Override public ClusterTaskStateEnum getTaskState(Long agentTaskId) { - return abstractAgent.getTaskState(agentTaskId); + Result statusEnumResult = abstractAgent.getTaskExecuteState(agentTaskId); + if (ValidateUtils.isNull(statusEnumResult) || statusEnumResult.failed()) { + return null; + } + return statusEnumResult.getData(); } private List getTaskSubStatus(ClusterTaskDO clusterTaskDO) { Map statusMap = this.getClusterTaskSubState(clusterTaskDO); if (ValidateUtils.isNull(statusMap)) { - return null; + return Collections.emptyList(); } List pauseList = ListUtils.string2StrList(clusterTaskDO.getPauseHostList()); @@ -242,20 +251,22 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { } private Map getClusterTaskSubState(ClusterTaskDO clusterTaskDO) { - Map statusMap = abstractAgent.getTaskResult(clusterTaskDO.getAgentTaskId()); - if (ValidateUtils.isNull(statusMap)) { + Result> statusMapResult = abstractAgent.getTaskResult(clusterTaskDO.getAgentTaskId()); + if (ValidateUtils.isNull(statusMapResult) || statusMapResult.failed()) { return null; } + Map statusMap = statusMapResult.getData(); if (!inRollback(clusterTaskDO)) { return statusMap; } - Map rollbackStatusMap = + Result> rollbackStatusMapResult = abstractAgent.getTaskResult(clusterTaskDO.getAgentRollbackTaskId()); - if (ValidateUtils.isNull(rollbackStatusMap)) { + if (ValidateUtils.isNull(rollbackStatusMapResult) || rollbackStatusMapResult.failed()) { return null; } - statusMap.putAll(rollbackStatusMap); + + statusMap.putAll(rollbackStatusMapResult.getData()); return statusMap; } @@ -276,7 +287,7 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { } catch (Exception e) { LOGGER.error("get all cluster task failed."); } - return null; + return Collections.emptyList(); } @Override @@ -302,9 +313,6 @@ public class ClusterTaskServiceImpl implements ClusterTaskService { } private boolean inRollback(ClusterTaskDO clusterTaskDO) { - if (ClusterTaskConstant.INVALID_AGENT_TASK_ID.equals(clusterTaskDO.getAgentRollbackTaskId())) { - return false; - } - return true; + return !ClusterTaskConstant.INVALID_AGENT_TASK_ID.equals(clusterTaskDO.getAgentRollbackTaskId()); } } \ No newline at end of file diff --git a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java index 37f8753a..bef2fb89 100644 --- a/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java +++ b/kafka-manager-extends/kafka-manager-kcm/src/main/java/com/xiaojukeji/kafka/manager/kcm/impl/KafkaFileServiceImpl.java @@ -4,12 +4,12 @@ import com.xiaojukeji.kafka.manager.common.bizenum.KafkaFileEnum; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.KafkaFileDTO; -import com.xiaojukeji.kafka.manager.common.entity.pojo.KafkaFileDO; import com.xiaojukeji.kafka.manager.common.utils.CopyUtils; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.dao.KafkaFileDao; -import com.xiaojukeji.kafka.manager.kcm.KafkaFileService; +import com.xiaojukeji.kafka.manager.common.entity.pojo.KafkaFileDO; import com.xiaojukeji.kafka.manager.kcm.component.storage.AbstractStorageService; +import com.xiaojukeji.kafka.manager.kcm.KafkaFileService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayHeartbeatController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayHeartbeatController.java index 4fe01e22..02a11497 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayHeartbeatController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayHeartbeatController.java @@ -50,7 +50,7 @@ public class GatewayHeartbeatController { doList = JsonUtils.parseTopicConnections(clusterId, jsonObject, System.currentTimeMillis()); } catch (Exception e) { LOGGER.error("class=GatewayHeartbeatController||method=receiveTopicConnections||clusterId={}||brokerId={}||msg=parse data failed||exception={}", clusterId, brokerId, e.getMessage()); - return Result.buildFailure("fail"); + return Result.buildGatewayFailure("fail"); } topicConnectionService.batchAdd(doList); diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayServiceDiscoveryController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayServiceDiscoveryController.java index e490368d..425eba75 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayServiceDiscoveryController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/gateway/GatewayServiceDiscoveryController.java @@ -31,7 +31,6 @@ import java.util.Map; @RestController @RequestMapping(ApiPrefix.GATEWAY_API_V1_PREFIX) public class GatewayServiceDiscoveryController { - private final static Logger LOGGER = LoggerFactory.getLogger(GatewayHeartbeatController.class); @Autowired @@ -65,7 +64,7 @@ public class GatewayServiceDiscoveryController { KafkaBootstrapServerConfig config = gatewayConfigService.getKafkaBootstrapServersConfig(Long.MIN_VALUE); if (ValidateUtils.isNull(config) || ValidateUtils.isNull(config.getClusterIdBootstrapServersMap())) { - return Result.buildFailure("call init kafka bootstrap servers failed"); + return Result.buildGatewayFailure("call init kafka bootstrap servers failed"); } if (ValidateUtils.isEmptyMap(config.getClusterIdBootstrapServersMap())) { return Result.buildSuc(); @@ -81,7 +80,7 @@ public class GatewayServiceDiscoveryController { KafkaBootstrapServerConfig config = gatewayConfigService.getKafkaBootstrapServersConfig(versionNumber); if (ValidateUtils.isNull(config) || ValidateUtils.isNull(config.getClusterIdBootstrapServersMap())) { - return Result.buildFailure("call update kafka bootstrap servers failed"); + return Result.buildGatewayFailure("call update kafka bootstrap servers failed"); } if (ValidateUtils.isEmptyMap(config.getClusterIdBootstrapServersMap())) { return Result.buildSuc(); @@ -99,7 +98,7 @@ public class GatewayServiceDiscoveryController { public Result getMaxRequestNum(@RequestParam("versionNumber") long versionNumber) { RequestQueueConfig config = gatewayConfigService.getRequestQueueConfig(versionNumber); if (ValidateUtils.isNull(config)) { - return Result.buildFailure("call get request queue size config failed"); + return Result.buildGatewayFailure("call get request queue size config failed"); } if (ValidateUtils.isNull(config.getMaxRequestQueueSize())) { return Result.buildSuc(); @@ -119,7 +118,7 @@ public class GatewayServiceDiscoveryController { public Result getAppIdRate(@RequestParam("versionNumber") long versionNumber) { AppRateConfig config = gatewayConfigService.getAppRateConfig(versionNumber); if (ValidateUtils.isNull(config)) { - return Result.buildFailure("call get app rate config failed"); + return Result.buildGatewayFailure("call get app rate config failed"); } if (ValidateUtils.isNull(config.getAppRateLimit())) { return Result.buildSuc(); @@ -139,7 +138,7 @@ public class GatewayServiceDiscoveryController { public Result getIpRate(@RequestParam("versionNumber") long versionNumber) { IpRateConfig config = gatewayConfigService.getIpRateConfig(versionNumber); if (ValidateUtils.isNull(config)) { - return Result.buildFailure("call get ip rate config failed"); + return Result.buildGatewayFailure("call get ip rate config failed"); } if (ValidateUtils.isNull(config.getIpRateLimit())) { return Result.buildSuc(); @@ -160,7 +159,7 @@ public class GatewayServiceDiscoveryController { SpRateConfig config = gatewayConfigService.getSpRateConfig(versionNumber); if (ValidateUtils.isNull(config) || ValidateUtils.isNull(config.getSpRateMap())) { - return Result.buildFailure("call update kafka bootstrap servers failed"); + return Result.buildGatewayFailure("call update kafka bootstrap servers failed"); } if (ValidateUtils.isEmptyMap(config.getSpRateMap())) { return Result.buildSuc(); diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpClusterController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpClusterController.java index 07b7dbc4..2caaa69b 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpClusterController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpClusterController.java @@ -2,6 +2,7 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.op; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; +import com.xiaojukeji.kafka.manager.common.entity.dto.op.ControllerPreferredCandidateDTO; import com.xiaojukeji.kafka.manager.common.entity.dto.rd.ClusterDTO; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.service.service.ClusterService; @@ -13,6 +14,7 @@ import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; + /** * @author zengqiao * @date 20/4/23 @@ -25,48 +27,56 @@ public class OpClusterController { private ClusterService clusterService; @ApiOperation(value = "接入集群") - @RequestMapping(value = "clusters", method = RequestMethod.POST) + @PostMapping(value = "clusters") @ResponseBody public Result addNew(@RequestBody ClusterDTO dto) { if (ValidateUtils.isNull(dto) || !dto.legal()) { return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); } return Result.buildFrom( - clusterService.addNew( - ClusterModelConverter.convert2ClusterDO(dto), - SpringTool.getUserName() - ) + clusterService.addNew(ClusterModelConverter.convert2ClusterDO(dto), SpringTool.getUserName()) ); } @ApiOperation(value = "删除集群") - @RequestMapping(value = "clusters", method = RequestMethod.DELETE) + @DeleteMapping(value = "clusters") @ResponseBody public Result delete(@RequestParam(value = "clusterId") Long clusterId) { return Result.buildFrom(clusterService.deleteById(clusterId, SpringTool.getUserName())); } @ApiOperation(value = "修改集群信息") - @RequestMapping(value = "clusters", method = RequestMethod.PUT) + @PutMapping(value = "clusters") @ResponseBody public Result modify(@RequestBody ClusterDTO reqObj) { if (ValidateUtils.isNull(reqObj) || !reqObj.legal() || ValidateUtils.isNull(reqObj.getClusterId())) { return Result.buildFrom(ResultStatus.PARAM_ILLEGAL); } - ResultStatus rs = clusterService.updateById( - ClusterModelConverter.convert2ClusterDO(reqObj), - SpringTool.getUserName() + return Result.buildFrom( + clusterService.updateById(ClusterModelConverter.convert2ClusterDO(reqObj), SpringTool.getUserName()) ); - return Result.buildFrom(rs); } @ApiOperation(value = "开启|关闭集群监控") - @RequestMapping(value = "clusters/{clusterId}/monitor", method = RequestMethod.PUT) + @PutMapping(value = "clusters/{clusterId}/monitor") @ResponseBody - public Result modifyStatus(@PathVariable Long clusterId, - @RequestParam("status") Integer status) { + public Result modifyStatus(@PathVariable Long clusterId, @RequestParam("status") Integer status) { return Result.buildFrom( clusterService.modifyStatus(clusterId, status, SpringTool.getUserName()) ); } + + @ApiOperation(value = "增加Controller优先候选的Broker", notes = "滴滴内部引擎特性") + @PostMapping(value = "cluster-controller/preferred-candidates") + @ResponseBody + public Result addControllerPreferredCandidates(@RequestBody ControllerPreferredCandidateDTO dto) { + return clusterService.addControllerPreferredCandidates(dto.getClusterId(), dto.getBrokerIdList()); + } + + @ApiOperation(value = "删除Controller优先候选的Broker", notes = "滴滴内部引擎特性") + @DeleteMapping(value = "cluster-controller/preferred-candidates") + @ResponseBody + public Result deleteControllerPreferredCandidates(@RequestBody ControllerPreferredCandidateDTO dto) { + return clusterService.deleteControllerPreferredCandidates(dto.getClusterId(), dto.getBrokerIdList()); + } } \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpGatewayConfigController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpGatewayConfigController.java index a97bb386..66eb3b7e 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpGatewayConfigController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/op/OpGatewayConfigController.java @@ -3,8 +3,11 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.op; import com.xiaojukeji.kafka.manager.bpm.common.entry.apply.gateway.OrderExtensionAddGatewayConfigDTO; import com.xiaojukeji.kafka.manager.bpm.common.entry.apply.gateway.OrderExtensionDeleteGatewayConfigDTO; import com.xiaojukeji.kafka.manager.bpm.common.entry.apply.gateway.OrderExtensionModifyGatewayConfigDTO; +import com.xiaojukeji.kafka.manager.common.bizenum.gateway.GatewayConfigKeyEnum; +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.ResultStatus; +import com.xiaojukeji.kafka.manager.common.utils.JsonUtils; import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; import com.xiaojukeji.kafka.manager.service.service.gateway.GatewayConfigService; import com.xiaojukeji.kafka.manager.web.converters.GatewayModelConverter; @@ -16,12 +19,20 @@ import org.springframework.web.bind.annotation.*; @Api(tags = "OP-Gateway配置相关接口(REST)") @RestController +@RequestMapping(ApiPrefix.API_V1_OP_PREFIX) public class OpGatewayConfigController { @Autowired private GatewayConfigService gatewayConfigService; + @ApiOperation(value = "Gateway配置类型", notes = "") + @GetMapping(value = "gateway-configs/type-enums") + @ResponseBody + public Result getClusterModesEnum() { + return new Result<>(JsonUtils.toJson(GatewayConfigKeyEnum.class)); + } + @ApiOperation(value = "创建Gateway配置", notes = "") - @RequestMapping(value = "gateway-configs", method = RequestMethod.POST) + @PostMapping(value = "gateway-configs") @ResponseBody public Result createGatewayConfig(@RequestBody OrderExtensionAddGatewayConfigDTO dto) { if (ValidateUtils.isNull(dto) || !dto.legal()) { @@ -31,7 +42,7 @@ public class OpGatewayConfigController { } @ApiOperation(value = "修改Gateway配置", notes = "") - @RequestMapping(value = "gateway-configs", method = RequestMethod.PUT) + @PutMapping(value = "gateway-configs") @ResponseBody public Result modifyGatewayConfig(@RequestBody OrderExtensionModifyGatewayConfigDTO dto) { if (ValidateUtils.isNull(dto) || !dto.legal()) { @@ -41,7 +52,7 @@ public class OpGatewayConfigController { } @ApiOperation(value = "删除Gateway配置", notes = "") - @RequestMapping(value = "gateway-configs", method = RequestMethod.DELETE) + @DeleteMapping(value = "gateway-configs") @ResponseBody public Result deleteGatewayConfig(@RequestBody OrderExtensionDeleteGatewayConfigDTO dto) { if (ValidateUtils.isNull(dto) || !dto.legal()) { diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdGatewayConfigController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdGatewayConfigController.java index 3748c3ca..6a46ff0a 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdGatewayConfigController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdGatewayConfigController.java @@ -1,5 +1,6 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.rd; +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.pojo.gateway.GatewayConfigDO; import com.xiaojukeji.kafka.manager.common.entity.vo.rd.GatewayConfigVO; @@ -15,12 +16,13 @@ import java.util.List; @Api(tags = "RD-Gateway配置相关接口(REST)") @RestController +@RequestMapping(ApiPrefix.API_V1_RD_PREFIX) public class RdGatewayConfigController { @Autowired private GatewayConfigService gatewayConfigService; @ApiOperation(value = "Gateway相关配置信息", notes = "") - @RequestMapping(value = "gateway-configs", method = RequestMethod.GET) + @GetMapping(value = "gateway-configs") @ResponseBody public Result> getGatewayConfigs() { List doList = gatewayConfigService.list(); diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdKafkaFileController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdKafkaFileController.java index 009d540a..eaab7dc9 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdKafkaFileController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdKafkaFileController.java @@ -1,17 +1,17 @@ package com.xiaojukeji.kafka.manager.web.api.versionone.rd; import com.xiaojukeji.kafka.manager.common.bizenum.KafkaFileEnum; -import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.common.entity.Result; import com.xiaojukeji.kafka.manager.common.entity.dto.normal.KafkaFileDTO; -import com.xiaojukeji.kafka.manager.common.entity.pojo.KafkaFileDO; import com.xiaojukeji.kafka.manager.common.entity.vo.rd.KafkaFileVO; +import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; +import com.xiaojukeji.kafka.manager.kcm.component.storage.common.StorageEnum; +import com.xiaojukeji.kafka.manager.common.entity.pojo.KafkaFileDO; +import com.xiaojukeji.kafka.manager.service.service.ClusterService; +import com.xiaojukeji.kafka.manager.kcm.KafkaFileService; import com.xiaojukeji.kafka.manager.common.utils.JsonUtils; import com.xiaojukeji.kafka.manager.common.utils.SpringTool; -import com.xiaojukeji.kafka.manager.common.utils.ValidateUtils; -import com.xiaojukeji.kafka.manager.kcm.KafkaFileService; -import com.xiaojukeji.kafka.manager.kcm.component.storage.common.StorageEnum; -import com.xiaojukeji.kafka.manager.service.service.ClusterService; +import com.xiaojukeji.kafka.manager.common.constant.ApiPrefix; import com.xiaojukeji.kafka.manager.web.converters.KafkaFileConverter; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdOperateRecordController.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdOperateRecordController.java index 11f063e6..68068f97 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdOperateRecordController.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/api/versionone/rd/RdOperateRecordController.java @@ -24,14 +24,13 @@ import java.util.List; @RestController @RequestMapping(ApiPrefix.API_V1_RD_PREFIX) public class RdOperateRecordController { - private static final int MAX_RECORD_COUNT = 200; @Autowired private OperateRecordService operateRecordService; @ApiOperation(value = "查询操作记录", notes = "") - @RequestMapping(value = "operate-record", method = RequestMethod.POST) + @PostMapping(value = "operate-record") @ResponseBody public Result> geOperateRecords(@RequestBody OperateRecordDTO dto) { if (ValidateUtils.isNull(dto) || !dto.legal()) { diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/converters/GatewayModelConverter.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/converters/GatewayModelConverter.java index f032e921..6a8b5f79 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/converters/GatewayModelConverter.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/converters/GatewayModelConverter.java @@ -67,6 +67,7 @@ public class GatewayModelConverter { vo.setName(configDO.getName()); vo.setValue(configDO.getValue()); vo.setVersion(configDO.getVersion()); + vo.setDescription(configDO.getDescription()); vo.setCreateTime(configDO.getCreateTime()); vo.setModifyTime(configDO.getModifyTime()); voList.add(vo); @@ -76,18 +77,20 @@ public class GatewayModelConverter { public static GatewayConfigDO convert2GatewayConfigDO(OrderExtensionAddGatewayConfigDTO configDTO) { GatewayConfigDO configDO = new GatewayConfigDO(); - configDO.setType(configDO.getType()); - configDO.setName(configDO.getName()); - configDO.setValue(configDO.getValue()); + configDO.setType(configDTO.getType()); + configDO.setName(configDTO.getName()); + configDO.setValue(configDTO.getValue()); + configDO.setDescription(ValidateUtils.isNull(configDTO.getDescription())? "": configDTO.getDescription()); return configDO; } public static GatewayConfigDO convert2GatewayConfigDO(OrderExtensionModifyGatewayConfigDTO configDTO) { GatewayConfigDO configDO = new GatewayConfigDO(); - configDO.setId(configDO.getId()); - configDO.setType(configDO.getType()); - configDO.setName(configDO.getName()); - configDO.setValue(configDO.getValue()); + configDO.setId(configDTO.getId()); + configDO.setType(configDTO.getType()); + configDO.setName(configDTO.getName()); + configDO.setValue(configDTO.getValue()); + configDO.setDescription(ValidateUtils.isNull(configDTO.getDescription())? "": configDTO.getDescription()); return configDO; } } \ No newline at end of file diff --git a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/inteceptor/WebMetricsInterceptor.java b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/inteceptor/WebMetricsInterceptor.java index bf8bc1e1..576fe036 100644 --- a/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/inteceptor/WebMetricsInterceptor.java +++ b/kafka-manager-web/src/main/java/com/xiaojukeji/kafka/manager/web/inteceptor/WebMetricsInterceptor.java @@ -119,7 +119,7 @@ public class WebMetricsInterceptor { ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); String uri = attributes.getRequest().getRequestURI(); if (uri.contains(ApiPrefix.GATEWAY_API_V1_PREFIX)) { - return Result.buildFailure("api limited"); + return Result.buildGatewayFailure("api limited"); } return new Result<>(ResultStatus.OPERATION_FORBIDDEN); } diff --git a/kafka-manager-web/src/main/resources/application.yml b/kafka-manager-web/src/main/resources/application.yml index 5b01d321..6f5438a3 100644 --- a/kafka-manager-web/src/main/resources/application.yml +++ b/kafka-manager-web/src/main/resources/application.yml @@ -31,7 +31,7 @@ logging: custom: idc: cn jmx: - max-conn: 10 + max-conn: 10 # 2.3版本配置不在这个地方生效 store-metrics-task: community: broker-metrics-enabled: true @@ -53,7 +53,7 @@ account: kcm: enabled: false s3: - endpoint: 127.0.0.1 + endpoint: s3.didiyunapi.com access-key: 1234567890 secret-key: 0987654321 bucket: logi-kafka From 6080f76a9c436d159c614310a983e7e96cbb8774 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E8=B6=85?= Date: Tue, 9 Feb 2021 15:26:47 +0800 Subject: [PATCH 46/48] =?UTF-8?q?=E8=BF=AD=E4=BB=A3V2.5,=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8Dbroker=E7=9B=91=E6=8E=A7=E9=97=AE=E9=A2=98=EF=BC=8C?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0JMX=E8=AE=A4=E8=AF=81=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E7=AD=89...?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/component/antd/index.tsx | 6 +- .../src/component/editor/index.less | 2 +- .../src/component/editor/monacoEditor.tsx | 18 +- .../src/component/x-form/index.tsx | 2 + .../src/constants/strategy.ts | 2 +- .../admin/cluster-detail/cluster-consumer.tsx | 2 +- .../cluster-detail/cluster-controller.tsx | 191 +++++++++++++++++- .../container/admin/cluster-detail/index.less | 6 + .../container/admin/cluster-detail/index.tsx | 14 +- .../container/admin/cluster-list/index.tsx | 20 ++ .../src/container/admin/config.tsx | 86 +++++++- .../container/admin/configure-management.tsx | 38 +++- .../src/container/admin/data-curve/index.tsx | 4 +- .../container/admin/platform-management.tsx | 25 ++- .../src/container/admin/user-management.tsx | 2 +- .../alarm/add-alarm/alarm-select.tsx | 6 +- .../src/container/alarm/alarm-list.tsx | 10 +- .../src/container/cluster/my-cluster.tsx | 2 +- .../src/container/drawer/data-migration.tsx | 4 +- .../src/container/modal/admin/cluster.ts | 1 + .../src/container/modal/admin/task.ts | 12 +- .../src/container/modal/admin/user.ts | 103 +++++++++- .../src/container/modal/admin/version.ts | 77 ++++++- .../src/container/modal/app.tsx | 2 +- .../src/container/modal/expert.tsx | 6 +- .../src/container/modal/order.tsx | 4 +- .../src/container/modal/topic.tsx | 2 +- .../src/container/search-filter.tsx | 2 +- .../topic-detail/connect-information.tsx | 4 +- .../container/topic/topic-detail/group-id.tsx | 26 ++- .../topic/topic-detail/reset-offset.tsx | 34 ++-- kafka-manager-console/src/lib/api.ts | 47 ++++- .../src/lib/line-charts-config.ts | 10 +- .../src/store/admin-monitor.ts | 36 +++- kafka-manager-console/src/store/admin.ts | 146 ++++++++++--- kafka-manager-console/src/store/alarm.ts | 1 + kafka-manager-console/src/store/users.ts | 8 + kafka-manager-console/src/types/base-type.ts | 18 +- 38 files changed, 810 insertions(+), 169 deletions(-) diff --git a/kafka-manager-console/src/component/antd/index.tsx b/kafka-manager-console/src/component/antd/index.tsx index 2d771efe..d0958daf 100644 --- a/kafka-manager-console/src/component/antd/index.tsx +++ b/kafka-manager-console/src/component/antd/index.tsx @@ -94,6 +94,9 @@ import 'antd/es/divider/style'; import Upload from 'antd/es/upload'; import 'antd/es/upload/style'; +import Transfer from 'antd/es/transfer'; +import 'antd/es/transfer/style'; + import TimePicker from 'antd/es/time-picker'; import 'antd/es/time-picker/style'; @@ -142,5 +145,6 @@ export { TimePicker, RangePickerValue, Badge, - Popover + Popover, + Transfer }; diff --git a/kafka-manager-console/src/component/editor/index.less b/kafka-manager-console/src/component/editor/index.less index 4ff05854..36c52cde 100644 --- a/kafka-manager-console/src/component/editor/index.less +++ b/kafka-manager-console/src/component/editor/index.less @@ -25,7 +25,7 @@ .editor{ height: 100%; position: absolute; - left: -14%; + left: -12%; width: 120%; } } diff --git a/kafka-manager-console/src/component/editor/monacoEditor.tsx b/kafka-manager-console/src/component/editor/monacoEditor.tsx index 7a0dd44c..ac0a297a 100644 --- a/kafka-manager-console/src/component/editor/monacoEditor.tsx +++ b/kafka-manager-console/src/component/editor/monacoEditor.tsx @@ -21,24 +21,12 @@ class Monacoeditor extends React.Component { public state = { placeholder: '', }; - // public arr = '{"clusterId":95,"startId":37397856,"step":100,"topicName":"kmo_topic_metrics_tempory_zq"}'; - // public Ars(a: string) { - // const obj = JSON.parse(a); - // const newobj: any = {}; - // for (const item in obj) { - // if (typeof obj[item] === 'object') { - // this.Ars(obj[item]); - // } else { - // newobj[item] = obj[item]; - // } - // } - // return JSON.stringify(newobj); - // } + public async componentDidMount() { const { value, onChange } = this.props; const format: any = await format2json(value); this.editor = monaco.editor.create(this.ref, { - value: format.result, + value: format.result || value, language: 'json', lineNumbers: 'off', scrollBeyondLastLine: false, @@ -48,7 +36,7 @@ class Monacoeditor extends React.Component { minimap: { enabled: false, }, - // automaticLayout: true, // 自动布局 + automaticLayout: true, // 自动布局 glyphMargin: true, // 字形边缘 {},[] // useTabStops: false, // formatOnPaste: true, diff --git a/kafka-manager-console/src/component/x-form/index.tsx b/kafka-manager-console/src/component/x-form/index.tsx index 9530f2bb..dc435d0f 100755 --- a/kafka-manager-console/src/component/x-form/index.tsx +++ b/kafka-manager-console/src/component/x-form/index.tsx @@ -130,6 +130,8 @@ class XForm extends React.Component { this.renderFormItem(formItem), )} {formItem.renderExtraElement ? formItem.renderExtraElement() : null} + {/* 添加保存时间提示文案 */} + {formItem.attrs?.prompttype ? {formItem.attrs.prompttype} : null} ); })} diff --git a/kafka-manager-console/src/constants/strategy.ts b/kafka-manager-console/src/constants/strategy.ts index c0d19001..e92563e6 100644 --- a/kafka-manager-console/src/constants/strategy.ts +++ b/kafka-manager-console/src/constants/strategy.ts @@ -67,7 +67,7 @@ export const timeMonthStr = 'YYYY/MM'; // tslint:disable-next-line:max-line-length export const indexUrl ={ - indexUrl:'https://github.com/didi/kafka-manager', + indexUrl:'https://github.com/didi/Logi-KafkaManager/blob/master/docs/user_guide/kafka_metrics_desc.md', // 指标说明 cagUrl:'https://github.com/didi/Logi-KafkaManager/blob/master/docs/user_guide/add_cluster/add_cluster.md', // 集群接入指南 Cluster access Guide } diff --git a/kafka-manager-console/src/container/admin/cluster-detail/cluster-consumer.tsx b/kafka-manager-console/src/container/admin/cluster-detail/cluster-consumer.tsx index 5605a372..911f44d2 100644 --- a/kafka-manager-console/src/container/admin/cluster-detail/cluster-consumer.tsx +++ b/kafka-manager-console/src/container/admin/cluster-detail/cluster-consumer.tsx @@ -100,7 +100,7 @@ export class ClusterConsumer extends SearchAndFilterContainer {
  • {this.props.tab}
  • - {this.renderSearch()} + {this.renderSearch('', '请输入消费组名称')}
(origin: T[]) { + let data: T[] = origin; + let { searchCandidateKey } = this.state; + searchCandidateKey = (searchCandidateKey + '').trim().toLowerCase(); + + data = searchCandidateKey ? origin.filter((item: IController) => + (item.host !== undefined && item.host !== null) && item.host.toLowerCase().includes(searchCandidateKey as string), + ) : origin; + return data; + } + + // 候选controller + public renderCandidateController() { + const columns = [ + { + title: 'BrokerId', + dataIndex: 'brokerId', + key: 'brokerId', + width: '20%', + sorter: (a: IController, b: IController) => b.brokerId - a.brokerId, + render: (r: string, t: IController) => { + return ( + {r} + + ); + }, + }, + { + title: 'BrokerHost', + key: 'host', + dataIndex: 'host', + width: '20%', + // render: (r: string, t: IController) => { + // return ( + // {r} + // + // ); + // }, + }, + { + title: 'Broker状态', + key: 'status', + dataIndex: 'status', + width: '20%', + render: (r: number, t: IController) => { + return ( + {r === 1 ? '不在线' : '在线'} + ); + }, + }, + { + title: '创建时间', + dataIndex: 'startTime', + key: 'startTime', + width: '25%', + sorter: (a: IController, b: IController) => b.timestamp - a.timestamp, + render: (t: number) => moment(t).format(timeFormat), + }, + { + title: '操作', + dataIndex: 'operation', + key: 'operation', + width: '15%', + render: (r: string, t: IController) => { + return ( + this.deleteCandidateCancel(t)} + cancelText="取消" + okText="确认" + > + 删除 + + ); + }, + }, + ]; + + return ( +
+ ); + } + public renderController() { const columns = [ @@ -58,12 +151,6 @@ export class ClusterController extends SearchAndFilterContainer { key: 'host', dataIndex: 'host', width: '30%', - // render: (r: string, t: IController) => { - // return ( - // {r} - // - // ); - // }, }, { title: '变更时间', @@ -87,16 +174,104 @@ export class ClusterController extends SearchAndFilterContainer { public componentDidMount() { admin.getControllerHistory(this.clusterId); + admin.getCandidateController(this.clusterId); + admin.getBrokersMetadata(this.clusterId); + } + + public addController = () => { + this.setState({ isCandidateModel: true, targetKeys: [] }) + } + + public addCandidateChange = (targetKeys: any) => { + this.setState({ targetKeys }) + } + + + + public handleCandidateCancel = () => { + this.setState({ isCandidateModel: false }); + } + + public handleCandidateOk = () => { + let brokerIdList = this.state.targetKeys.map((item: any) => { + return admin.brokersMetadata[item].brokerId + }) + admin.addCandidateController(this.clusterId, brokerIdList).then(data => { + notification.success({ message: '新增成功' }); + admin.getCandidateController(this.clusterId); + }).catch(err => { + notification.error({ message: '新增失败' }); + }) + this.setState({ isCandidateModel: false, targetKeys: [] }); + } + + public deleteCandidateCancel = (target: any) => { + admin.deleteCandidateCancel(this.clusterId, [target.brokerId]).then(() => { + notification.success({ message: '删除成功' }); + }); + this.setState({ isCandidateModel: false }); + } + + public renderAddCandidateController() { + let filterControllerCandidate = admin.brokersMetadata.filter((item: any) => { + return !admin.filtercontrollerCandidate.includes(item.brokerId) + }) + + return ( + this.handleCandidateOk()} + onCancel={() => this.handleCandidateCancel()} + footer={<> + + + + } + > + item.host} + onChange={(targetKeys) => this.addCandidateChange(targetKeys)} + titles={['未选', '已选']} + locale={{ + itemUnit: '项', + itemsUnit: '项', + }} + listStyle={{ + width: "45%", + }} + /> + + ); } public render() { return (
    +
  • + 候选Controller + Controller将会优先从以下Broker中选举 +
  • +
    +
    + +
    + {this.renderSearch('', '请查找Host', 'searchCandidateKey')} +
    +
+ {this.renderCandidateController()} +
  • {this.props.tab}
  • {this.renderSearch('', '请输入Host')}
{this.renderController()} + {this.renderAddCandidateController()}
); } diff --git a/kafka-manager-console/src/container/admin/cluster-detail/index.less b/kafka-manager-console/src/container/admin/cluster-detail/index.less index 65c45b9c..0dd4d106 100644 --- a/kafka-manager-console/src/container/admin/cluster-detail/index.less +++ b/kafka-manager-console/src/container/admin/cluster-detail/index.less @@ -94,4 +94,10 @@ .region-prompt{ font-weight: bold; text-align: center; +} + +.asd{ + display: flex; + justify-content: space-around; + align-items: center; } \ No newline at end of file diff --git a/kafka-manager-console/src/container/admin/cluster-detail/index.tsx b/kafka-manager-console/src/container/admin/cluster-detail/index.tsx index 5882dd57..027dde27 100644 --- a/kafka-manager-console/src/container/admin/cluster-detail/index.tsx +++ b/kafka-manager-console/src/container/admin/cluster-detail/index.tsx @@ -32,9 +32,9 @@ export class ClusterDetail extends React.Component { } public render() { - let content = {} as IMetaData; - content = admin.basicInfo ? admin.basicInfo : content; - return ( + let content = {} as IMetaData; + content = admin.basicInfo ? admin.basicInfo : content; + return ( <> - + @@ -60,11 +60,11 @@ export class ClusterDetail extends React.Component { - + - - + + diff --git a/kafka-manager-console/src/container/admin/cluster-list/index.tsx b/kafka-manager-console/src/container/admin/cluster-list/index.tsx index 63ccd93e..dfac45d7 100644 --- a/kafka-manager-console/src/container/admin/cluster-list/index.tsx +++ b/kafka-manager-console/src/container/admin/cluster-list/index.tsx @@ -12,6 +12,7 @@ import { urlPrefix } from 'constants/left-menu'; import { indexUrl } from 'constants/strategy' import { region } from 'store'; import './index.less'; +import Monacoeditor from 'component/editor/monacoEditor'; import { getAdminClusterColumns } from '../config'; const { confirm } = Modal; @@ -132,6 +133,25 @@ export class ClusterList extends SearchAndFilterContainer { "security.protocol": "SASL_PLAINTEXT", "sasl.mechanism": "PLAIN", "sasl.jaas.config": "org.apache.kafka.common.security.plain.PlainLoginModule required username=\\"xxxxxx\\" password=\\"xxxxxx\\";" +}`, + rows: 8, + }, + }, + { + key: 'jmxProperties', + label: 'JMX认证', + type: 'text_area', + rules: [{ + required: false, + message: '请输入JMX认证', + }], + attrs: { + placeholder: `请输入JMX认证,例如: +{ +"maxConn": 10, #KM对单台Broker对最大连接数 +"username": "xxxxx", #用户名 +"password": "xxxxx", #密码 +"openSSL": true, #开启SSL,true表示开启SSL,false表示关闭 }`, rows: 8, }, diff --git a/kafka-manager-console/src/container/admin/config.tsx b/kafka-manager-console/src/container/admin/config.tsx index bce02cce..09a70f83 100644 --- a/kafka-manager-console/src/container/admin/config.tsx +++ b/kafka-manager-console/src/container/admin/config.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; -import { IUser, IUploadFile, IConfigure, IMetaData, IBrokersPartitions } from 'types/base-type'; +import { IUser, IUploadFile, IConfigure, IConfigGateway, IMetaData } from 'types/base-type'; import { users } from 'store/users'; import { version } from 'store/version'; -import { showApplyModal, showModifyModal, showConfigureModal } from 'container/modal/admin'; +import { showApplyModal, showApplyModalModifyPassword, showModifyModal, showConfigureModal, showConfigGatewayModal } from 'container/modal/admin'; import { Popconfirm, Tooltip } from 'component/antd'; import { admin } from 'store/admin'; import { cellStyle } from 'constants/table'; @@ -27,6 +27,7 @@ export const getUserColumns = () => { return ( showApplyModal(record)}>编辑 + showApplyModalModifyPassword(record)}>修改密码 users.deleteUser(record.username)} @@ -184,6 +185,87 @@ export const getConfigureColumns = () => { return columns; }; +// 网关配置 +export const getConfigColumns = () => { + const columns = [ + { + title: '配置类型', + dataIndex: 'type', + key: 'type', + width: '25%', + ellipsis: true, + sorter: (a: IConfigGateway, b: IConfigGateway) => a.type.charCodeAt(0) - b.type.charCodeAt(0), + }, + { + title: '配置键', + dataIndex: 'name', + key: 'name', + width: '15%', + ellipsis: true, + sorter: (a: IConfigGateway, b: IConfigGateway) => a.name.charCodeAt(0) - b.name.charCodeAt(0), + }, + { + title: '配置值', + dataIndex: 'value', + key: 'value', + width: '20%', + ellipsis: true, + sorter: (a: IConfigGateway, b: IConfigGateway) => a.value.charCodeAt(0) - b.value.charCodeAt(0), + render: (t: string) => { + return t.substr(0, 1) === '{' && t.substr(0, -1) === '}' ? JSON.stringify(JSON.parse(t), null, 4) : t; + }, + }, + { + title: '修改时间', + dataIndex: 'modifyTime', + key: 'modifyTime', + width: '15%', + sorter: (a: IConfigGateway, b: IConfigGateway) => b.modifyTime - a.modifyTime, + render: (t: number) => moment(t).format(timeFormat), + }, + { + title: '版本号', + dataIndex: 'version', + key: 'version', + width: '10%', + ellipsis: true, + sorter: (a: IConfigGateway, b: IConfigGateway) => b.version.charCodeAt(0) - a.version.charCodeAt(0), + }, + { + title: '描述信息', + dataIndex: 'description', + key: 'description', + width: '20%', + ellipsis: true, + onCell: () => ({ + style: { + maxWidth: 180, + ...cellStyle, + }, + }), + }, + { + title: '操作', + width: '10%', + render: (text: string, record: IConfigGateway) => { + return ( + + showConfigGatewayModal(record)}>编辑 + admin.deleteConfigGateway({ id: record.id })} + cancelText="取消" + okText="确认" + > + 删除 + + ); + }, + }, + ]; + return columns; +}; + const renderClusterHref = (value: number | string, item: IMetaData, key: number) => { return ( // 0 暂停监控--不可点击 1 监控中---可正常点击 <> diff --git a/kafka-manager-console/src/container/admin/configure-management.tsx b/kafka-manager-console/src/container/admin/configure-management.tsx index 680d1da7..5c3494b9 100644 --- a/kafka-manager-console/src/container/admin/configure-management.tsx +++ b/kafka-manager-console/src/container/admin/configure-management.tsx @@ -3,11 +3,11 @@ import { SearchAndFilterContainer } from 'container/search-filter'; import { Table, Button, Spin } from 'component/antd'; import { admin } from 'store/admin'; import { observer } from 'mobx-react'; -import { IConfigure } from 'types/base-type'; +import { IConfigure, IConfigGateway } from 'types/base-type'; import { users } from 'store/users'; import { pagination } from 'constants/table'; -import { getConfigureColumns } from './config'; -import { showConfigureModal } from 'container/modal/admin'; +import { getConfigureColumns, getConfigColumns } from './config'; +import { showConfigureModal, showConfigGatewayModal } from 'container/modal/admin'; @observer export class ConfigureManagement extends SearchAndFilterContainer { @@ -17,7 +17,12 @@ export class ConfigureManagement extends SearchAndFilterContainer { }; public componentDidMount() { - admin.getConfigure(); + if (this.props.isShow) { + admin.getGatewayList(); + admin.getGatewayType(); + } else { + admin.getConfigure(); + } } public getData(origin: T[]) { @@ -34,15 +39,34 @@ export class ConfigureManagement extends SearchAndFilterContainer { return data; } + public getGatewayData(origin: T[]) { + let data: T[] = origin; + let { searchKey } = this.state; + searchKey = (searchKey + '').trim().toLowerCase(); + + data = searchKey ? origin.filter((item: IConfigGateway) => + ((item.name !== undefined && item.name !== null) && item.name.toLowerCase().includes(searchKey as string)) + || ((item.value !== undefined && item.value !== null) && item.value.toLowerCase().includes(searchKey as string)) + || ((item.description !== undefined && item.description !== null) && + item.description.toLowerCase().includes(searchKey as string)), + ) : origin; + return data; + } + public renderTable() { return ( -
:
+ />} ); @@ -53,7 +77,7 @@ export class ConfigureManagement extends SearchAndFilterContainer {
    {this.renderSearch('', '请输入配置键、值或描述')}
  • - +
); diff --git a/kafka-manager-console/src/container/admin/data-curve/index.tsx b/kafka-manager-console/src/container/admin/data-curve/index.tsx index bd113aeb..b822957c 100644 --- a/kafka-manager-console/src/container/admin/data-curve/index.tsx +++ b/kafka-manager-console/src/container/admin/data-curve/index.tsx @@ -6,6 +6,7 @@ import { curveKeys, CURVE_KEY_MAP, PERIOD_RADIO_MAP, PERIOD_RADIO } from './conf import moment = require('moment'); import { observer } from 'mobx-react'; import { timeStampStr } from 'constants/strategy'; +import { adminMonitor } from 'store/admin-monitor'; @observer export class DataCurveFilter extends React.Component { @@ -21,6 +22,7 @@ export class DataCurveFilter extends React.Component { } public refreshAll = () => { + adminMonitor.setRequestId(null); Object.keys(curveKeys).forEach((c: curveKeys) => { const { typeInfo, curveInfo: option } = CURVE_KEY_MAP.get(c); const { parser } = typeInfo; @@ -32,7 +34,7 @@ export class DataCurveFilter extends React.Component { return ( <> - {PERIOD_RADIO.map(p => {p.label})} + {PERIOD_RADIO.map(p => {p.label})} - - - - - - - - - - - + + + + + + + + + + + + + + ); } diff --git a/kafka-manager-console/src/container/admin/user-management.tsx b/kafka-manager-console/src/container/admin/user-management.tsx index 757ceabb..1dc38e06 100644 --- a/kafka-manager-console/src/container/admin/user-management.tsx +++ b/kafka-manager-console/src/container/admin/user-management.tsx @@ -29,7 +29,7 @@ export class UserManagement extends SearchAndFilterContainer { searchKey = (searchKey + '').trim().toLowerCase(); data = searchKey ? origin.filter((item: IUser) => - (item.username !== undefined && item.username !== null) && item.username.toLowerCase().includes(searchKey as string)) : origin ; + (item.username !== undefined && item.username !== null) && item.username.toLowerCase().includes(searchKey as string)) : origin; return data; } diff --git a/kafka-manager-console/src/container/alarm/add-alarm/alarm-select.tsx b/kafka-manager-console/src/container/alarm/add-alarm/alarm-select.tsx index 6d19ec26..5cd1f4f0 100644 --- a/kafka-manager-console/src/container/alarm/add-alarm/alarm-select.tsx +++ b/kafka-manager-console/src/container/alarm/add-alarm/alarm-select.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { alarm } from 'store/alarm'; import { IMonitorGroups } from 'types/base-type'; -import { getValueFromLocalStorage, setValueToLocalStorage } from 'lib/local-storage'; +import { getValueFromLocalStorage, setValueToLocalStorage, deleteValueFromLocalStorage } from 'lib/local-storage'; import { VirtualScrollSelect } from '../../../component/virtual-scroll-select'; interface IAlarmSelectProps { @@ -36,6 +36,10 @@ export class AlarmSelect extends React.Component { onChange && onChange(params); } + public componentWillUnmount() { + deleteValueFromLocalStorage('monitorGroups'); + } + public render() { const { value, isDisabled } = this.props; return ( diff --git a/kafka-manager-console/src/container/alarm/alarm-list.tsx b/kafka-manager-console/src/container/alarm/alarm-list.tsx index 6dd6680b..54d266f1 100644 --- a/kafka-manager-console/src/container/alarm/alarm-list.tsx +++ b/kafka-manager-console/src/container/alarm/alarm-list.tsx @@ -9,6 +9,7 @@ import { pagination } from 'constants/table'; import { urlPrefix } from 'constants/left-menu'; import { alarm } from 'store/alarm'; import 'styles/table-filter.less'; +import { Link } from 'react-router-dom'; @observer export class AlarmList extends SearchAndFilterContainer { @@ -24,7 +25,7 @@ export class AlarmList extends SearchAndFilterContainer { if (app.active !== '-1' || searchKey !== '') { data = origin.filter(d => ((d.name !== undefined && d.name !== null) && d.name.toLowerCase().includes(searchKey as string) - || ((d.operator !== undefined && d.operator !== null) && d.operator.toLowerCase().includes(searchKey as string))) + || ((d.operator !== undefined && d.operator !== null) && d.operator.toLowerCase().includes(searchKey as string))) && (app.active === '-1' || d.appId === (app.active + '')), ); } else { @@ -55,9 +56,7 @@ export class AlarmList extends SearchAndFilterContainer { {this.renderSearch('名称:', '请输入告警规则或者操作人')}
  • @@ -68,6 +67,9 @@ export class AlarmList extends SearchAndFilterContainer { if (!alarm.monitorStrategies.length) { alarm.getMonitorStrategies(); } + if (!app.data.length) { + app.getAppList(); + } } public render() { diff --git a/kafka-manager-console/src/container/cluster/my-cluster.tsx b/kafka-manager-console/src/container/cluster/my-cluster.tsx index 3c54763a..e017b0dd 100644 --- a/kafka-manager-console/src/container/cluster/my-cluster.tsx +++ b/kafka-manager-console/src/container/cluster/my-cluster.tsx @@ -91,7 +91,7 @@ export class MyCluster extends SearchAndFilterContainer { ], formData: {}, visible: true, - title: '申请集群', + title:
    申请集群资源申请文档
    , okText: '确认', onSubmit: (value: any) => { value.idc = region.currentRegion; diff --git a/kafka-manager-console/src/container/drawer/data-migration.tsx b/kafka-manager-console/src/container/drawer/data-migration.tsx index 28353004..4da64f5c 100644 --- a/kafka-manager-console/src/container/drawer/data-migration.tsx +++ b/kafka-manager-console/src/container/drawer/data-migration.tsx @@ -117,12 +117,12 @@ class DataMigrationFormTable extends React.Component { key: 'maxThrottle', editable: true, }, { - title: '迁移保存时间(h)', + title: '迁移后Topic保存时间(h)', dataIndex: 'reassignRetentionTime', key: 'reassignRetentionTime', editable: true, }, { - title: '原本保存时间(h)', + title: '原Topic保存时间(h)', dataIndex: 'retentionTime', key: 'retentionTime', // originalRetentionTime width: '132px', diff --git a/kafka-manager-console/src/container/modal/admin/cluster.ts b/kafka-manager-console/src/container/modal/admin/cluster.ts index cea987f6..20ed9098 100644 --- a/kafka-manager-console/src/container/modal/admin/cluster.ts +++ b/kafka-manager-console/src/container/modal/admin/cluster.ts @@ -61,6 +61,7 @@ export const showEditClusterTopic = (item: IClusterTopics) => { attrs: { placeholder: '请输入保存时间', suffix: '小时', + prompttype:'修改保存时间,预计一分钟左右生效!' }, }, { diff --git a/kafka-manager-console/src/container/modal/admin/task.ts b/kafka-manager-console/src/container/modal/admin/task.ts index be240f7a..d9a609ac 100644 --- a/kafka-manager-console/src/container/modal/admin/task.ts +++ b/kafka-manager-console/src/container/modal/admin/task.ts @@ -158,26 +158,26 @@ export const createMigrationTasks = () => { }, { key: 'originalRetentionTime', - label: '原本保存时间', + label: '原Topic保存时间', rules: [{ required: true, - message: '请输入原本保存时间', + message: '请输入原Topic保存时间', }], attrs: { disabled: true, - placeholder: '请输入原本保存时间', + placeholder: '请输入原Topic保存时间', suffix: '小时', }, }, { key: 'reassignRetentionTime', - label: '迁移保存时间', + label: '迁移后Topic保存时间', rules: [{ required: true, - message: '请输入迁移保存时间', + message: '请输入迁移后Topic保存时间', }], attrs: { - placeholder: '请输入迁移保存时间', + placeholder: '请输入迁移后Topic保存时间', suffix: '小时', }, }, diff --git a/kafka-manager-console/src/container/modal/admin/user.ts b/kafka-manager-console/src/container/modal/admin/user.ts index 9f35e4cf..51ca360d 100644 --- a/kafka-manager-console/src/container/modal/admin/user.ts +++ b/kafka-manager-console/src/container/modal/admin/user.ts @@ -24,26 +24,111 @@ export const showApplyModal = (record?: IUser) => { value: +item, })), rules: [{ required: true, message: '请选择角色' }], - }, { - key: 'password', - label: '密码', - type: FormItemType.inputPassword, - rules: [{ required: !record, message: '请输入密码' }], - }, + }, + // { + // key: 'password', + // label: '密码', + // type: FormItemType.inputPassword, + // rules: [{ required: !record, message: '请输入密码' }], + // }, ], formData: record || {}, visible: true, title: record ? '修改用户' : '新增用户', onSubmit: (value: IUser) => { if (record) { - return users.modfiyUser(value).then(() => { - message.success('操作成功'); - }); + return users.modfiyUser(value) } return users.addUser(value).then(() => { message.success('操作成功'); }); }, }; + if(!record){ + let formMap: any = xFormModal.formMap + formMap.splice(2, 0,{ + key: 'password', + label: '密码', + type: FormItemType.inputPassword, + rules: [{ required: !record, message: '请输入密码' }], + },) + } wrapper.open(xFormModal); }; + +// const handleCfPassword = (rule:any, value:any, callback:any)=>{ +// if() +// } +export const showApplyModalModifyPassword = (record: IUser) => { + const xFormModal:any = { + formMap: [ + // { + // key: 'oldPassword', + // label: '旧密码', + // type: FormItemType.inputPassword, + // rules: [{ + // required: true, + // message: '请输入旧密码', + // }] + // }, + { + key: 'newPassword', + label: '新密码', + type: FormItemType.inputPassword, + rules: [ + { + required: true, + message: '请输入新密码', + } + ], + attrs:{ + onChange:(e:any)=>{ + users.setNewPassWord(e.target.value) + } + } + }, + { + key: 'confirmPassword', + label: '确认密码', + type: FormItemType.inputPassword, + rules: [ + { + required: true, + message: '请确认密码', + validator:(rule:any, value:any, callback:any) => { + // 验证新密码的一致性 + if(users.newPassWord){ + if(value!==users.newPassWord){ + rule.message = "两次密码输入不一致"; + callback('两次密码输入不一致') + }else{ + callback() + } + }else if(!value){ + rule.message = "请确认密码"; + callback('请确认密码'); + }else{ + callback() + } + }, + } + ], + }, + ], + formData: record || {}, + visible: true, + title: '修改密码', + onSubmit: (value: IUser) => { + let params:any = { + username:record?.username, + password:value.confirmPassword, + role:record?.role, + } + return users.modfiyUser(params).then(() => { + message.success('操作成功'); + }); + }, + } + wrapper.open(xFormModal); +}; + diff --git a/kafka-manager-console/src/container/modal/admin/version.ts b/kafka-manager-console/src/container/modal/admin/version.ts index ea642a8f..c863eba1 100644 --- a/kafka-manager-console/src/container/modal/admin/version.ts +++ b/kafka-manager-console/src/container/modal/admin/version.ts @@ -1,6 +1,6 @@ import * as React from 'react'; -import { notification } from 'component/antd'; -import { IUploadFile, IConfigure } from 'types/base-type'; +import { notification, Select } from 'component/antd'; +import { IUploadFile, IConfigure, IConfigGateway } from 'types/base-type'; import { version } from 'store/version'; import { admin } from 'store/admin'; import { wrapper } from 'store'; @@ -97,8 +97,8 @@ const updateFormModal = (type: number) => { formMap[2].attrs = { accept: version.fileSuffix, }, - // tslint:disable-next-line:no-unused-expression - wrapper.ref && wrapper.ref.updateFormMap$(formMap, wrapper.xFormWrapper.formData, true); + // tslint:disable-next-line:no-unused-expression + wrapper.ref && wrapper.ref.updateFormMap$(formMap, wrapper.xFormWrapper.formData, true); } }; @@ -157,8 +157,8 @@ export const showModifyModal = (record: IUploadFile) => { export const showConfigureModal = async (record?: IConfigure) => { if (record) { - const result:any = await format2json(record.configValue); - record.configValue = result.result; + const result: any = await format2json(record.configValue); + record.configValue = result.result || record.configValue; } const xFormModal = { formMap: [ @@ -193,10 +193,69 @@ export const showConfigureModal = async (record?: IConfigure) => { return admin.editConfigure(value).then(data => { notification.success({ message: '编辑配置成功' }); }); + } else { + return admin.addNewConfigure(value).then(data => { + notification.success({ message: '新建配置成功' }); + }); + } + }, + }; + wrapper.open(xFormModal); +}; + +export const showConfigGatewayModal = async (record?: IConfigGateway) => { + const xFormModal = { + formMap: [ + { + key: 'type', + label: '配置类型', + rules: [{ required: true, message: '请选择配置类型' }], + type: "select", + options: admin.gatewayType.map((item: any, index: number) => ({ + key: index, + label: item.configName, + value: item.configType, + })), + attrs: { + disabled: record ? true : false, + } + }, { + key: 'name', + label: '配置键', + rules: [{ required: true, message: '请输入配置键' }], + attrs: { + disabled: record ? true : false, + }, + }, { + key: 'value', + label: '配置值', + type: 'text_area', + rules: [{ + required: true, + message: '请输入配置值', + }], + }, { + key: 'description', + label: '描述', + type: 'text_area', + rules: [{ required: true, message: '请输入备注' }], + }, + ], + formData: record || {}, + visible: true, + isWaitting: true, + title: `${record ? '编辑配置' : '新建配置'}`, + onSubmit: async (parmas: IConfigGateway) => { + if (record) { + parmas.id = record.id; + return admin.editConfigGateway(parmas).then(data => { + notification.success({ message: '编辑配置成功' }); + }); + } else { + return admin.addNewConfigGateway(parmas).then(data => { + notification.success({ message: '新建配置成功' }); + }); } - return admin.addNewConfigure(value).then(data => { - notification.success({ message: '新建配置成功' }); - }); }, }; wrapper.open(xFormModal); diff --git a/kafka-manager-console/src/container/modal/app.tsx b/kafka-manager-console/src/container/modal/app.tsx index bda37418..bb0320ec 100644 --- a/kafka-manager-console/src/container/modal/app.tsx +++ b/kafka-manager-console/src/container/modal/app.tsx @@ -85,7 +85,7 @@ export const showEditModal = (record?: IAppItem, from?: string, isDisabled?: boo ], formData: record, visible: true, - title: isDisabled ? '详情' : record ? '编辑' :
    应用申请应用申请文档
    , + title: isDisabled ? '详情' : record ? '编辑' :
    应用申请资源申请文档
    , // customRenderElement: isDisabled ? '' : record ? '' : 集群资源充足时,预计1分钟自动审批通过, isWaitting: true, onSubmit: (value: IAppItem) => { diff --git a/kafka-manager-console/src/container/modal/expert.tsx b/kafka-manager-console/src/container/modal/expert.tsx index 96a1f312..2ff5e5f2 100644 --- a/kafka-manager-console/src/container/modal/expert.tsx +++ b/kafka-manager-console/src/container/modal/expert.tsx @@ -20,14 +20,14 @@ export interface IRenderData { } export const migrationModal = (renderData: IRenderData[]) => { - const xFormWrapper = { + const xFormWrapper = { type: 'drawer', visible: true, width: 1000, title: '新建迁移任务', - customRenderElement: , + customRenderElement: , nofooter: true, noform: true, }; - wrapper.open(xFormWrapper as IXFormWrapper); + wrapper.open(xFormWrapper as IXFormWrapper); }; diff --git a/kafka-manager-console/src/container/modal/order.tsx b/kafka-manager-console/src/container/modal/order.tsx index 2930e3df..c982db4c 100644 --- a/kafka-manager-console/src/container/modal/order.tsx +++ b/kafka-manager-console/src/container/modal/order.tsx @@ -75,8 +75,8 @@ export const showApprovalModal = (info: IOrderInfo, status: number, from?: strin // }], rules: [{ required: true, - message: '请输入大于12小于999的整数', - pattern: /^([1-9]{1}[0-9]{2})$|^([2-9]{1}[0-9]{1})$|^(1[2-9]{1})$/, + message: '请输入大于0小于10000的整数', + pattern: /^\+?[1-9]\d{0,3}(\.\d*)?$/, }], }, { key: 'species', diff --git a/kafka-manager-console/src/container/modal/topic.tsx b/kafka-manager-console/src/container/modal/topic.tsx index 7053a497..d4df0318 100644 --- a/kafka-manager-console/src/container/modal/topic.tsx +++ b/kafka-manager-console/src/container/modal/topic.tsx @@ -88,7 +88,7 @@ export const applyTopic = () => { ], formData: {}, visible: true, - title: '申请Topic', + title: , okText: '确认', // customRenderElement: 集群资源充足时,预计1分钟自动审批通过, isWaitting: true, diff --git a/kafka-manager-console/src/container/search-filter.tsx b/kafka-manager-console/src/container/search-filter.tsx index 12603d40..ac5d6bc1 100644 --- a/kafka-manager-console/src/container/search-filter.tsx +++ b/kafka-manager-console/src/container/search-filter.tsx @@ -126,7 +126,7 @@ export class SearchAndFilterContainer extends React.Component diff --git a/kafka-manager-console/src/container/topic/topic-detail/connect-information.tsx b/kafka-manager-console/src/container/topic/topic-detail/connect-information.tsx index f323310c..1e5ab182 100644 --- a/kafka-manager-console/src/container/topic/topic-detail/connect-information.tsx +++ b/kafka-manager-console/src/container/topic/topic-detail/connect-information.tsx @@ -101,7 +101,9 @@ export class ConnectInformation extends SearchAndFilterContainer { <>
      -
    • 连接信息
    • +
    • + 连接信息 展示近20分钟的连接信息 +
    • {this.renderSearch('', '请输入连接信息', 'searchKey')}
    {this.renderConnectionInfo(this.getData(topic.connectionInfo))} diff --git a/kafka-manager-console/src/container/topic/topic-detail/group-id.tsx b/kafka-manager-console/src/container/topic/topic-detail/group-id.tsx index 20b7642f..b173ac41 100644 --- a/kafka-manager-console/src/container/topic/topic-detail/group-id.tsx +++ b/kafka-manager-console/src/container/topic/topic-detail/group-id.tsx @@ -138,7 +138,7 @@ export class GroupID extends SearchAndFilterContainer { public renderConsumerDetails() { const consumerGroup = this.consumerGroup; - const columns = [{ + const columns: any = [{ title: 'Partition ID', dataIndex: 'partitionId', key: 'partitionId', @@ -179,7 +179,8 @@ export class GroupID extends SearchAndFilterContainer { <>
    {consumerGroup} -
    +
    + {this.renderSearch('', '请输入Consumer ID')} @@ -187,7 +188,7 @@ export class GroupID extends SearchAndFilterContainer {
    @@ -214,7 +215,12 @@ export class GroupID extends SearchAndFilterContainer { dataIndex: 'location', key: 'location', width: '34%', - }, + }, { + title: '状态', + dataIndex: 'state', + key: 'state', + width: '34%', + } ]; return ( <> @@ -236,7 +242,17 @@ export class GroupID extends SearchAndFilterContainer { data = searchKey ? origin.filter((item: IConsumerGroups) => (item.consumerGroup !== undefined && item.consumerGroup !== null) && item.consumerGroup.toLowerCase().includes(searchKey as string), - ) : origin ; + ) : origin; + return data; + } + + public getDetailData(origin: T[]) { + let data: T[] = origin; + let { searchKey } = this.state; + searchKey = (searchKey + '').trim().toLowerCase(); + data = searchKey ? origin.filter((item: IConsumeDetails) => + (item.clientId !== undefined && item.clientId !== null) && item.clientId.toLowerCase().includes(searchKey as string), + ) : origin; return data; } diff --git a/kafka-manager-console/src/container/topic/topic-detail/reset-offset.tsx b/kafka-manager-console/src/container/topic/topic-detail/reset-offset.tsx index be0767e8..531f69c6 100644 --- a/kafka-manager-console/src/container/topic/topic-detail/reset-offset.tsx +++ b/kafka-manager-console/src/container/topic/topic-detail/reset-offset.tsx @@ -71,32 +71,32 @@ class ResetOffset extends React.Component { const { getFieldDecorator } = this.props.form; const { typeValue, offsetValue } = this.state; return ( - <> - - - + <> + + + {/* */}
    - + 重置到指定时间
    - - 最新offset - 自定义 - + + 最新offset + 自定义 + {typeValue === 'time' && offsetValue === 'custom' && getFieldDecorator('timestamp', { rules: [{ required: false, message: '' }], initialValue: moment(), - })( + })( { 重置指定分区及偏移 - + diff --git a/kafka-manager-console/src/lib/api.ts b/kafka-manager-console/src/lib/api.ts index f53f6852..8716d4ea 100644 --- a/kafka-manager-console/src/lib/api.ts +++ b/kafka-manager-console/src/lib/api.ts @@ -1,5 +1,5 @@ import fetch, { formFetch } from './fetch'; -import { IUploadFile, IUser, IQuotaModelItem, ILimitsItem, ITopic, IOrderParams, ISample, IMigration, IExecute, IEepand, IUtils, ITopicMetriceParams, IRegister, IEditTopic, IExpand, IDeleteTopic, INewRegions, INewLogical, IRebalance, INewBulidEnums, ITrigger, IApprovalOrder, IMonitorSilences, IConfigure, IBatchApproval } from 'types/base-type'; +import { IUploadFile, IUser, IQuotaModelItem, ILimitsItem, ITopic, IOrderParams, ISample, IMigration, IExecute, IEepand, IUtils, ITopicMetriceParams, IRegister, IEditTopic, IExpand, IDeleteTopic, INewRegions, INewLogical, IRebalance, INewBulidEnums, ITrigger, IApprovalOrder, IMonitorSilences, IConfigure, IConfigGateway, IBatchApproval } from 'types/base-type'; import { IRequestParams } from 'types/alarm'; import { apiCache } from 'lib/api-cache'; @@ -442,6 +442,34 @@ export const deleteConfigure = (configKey: string) => { }); }; +export const getGatewayList = () => { + return fetch(`/rd/gateway-configs`); +}; + +export const getGatewayType = () => { + return fetch(`/op/gateway-configs/type-enums`); +}; + +export const addNewConfigGateway = (params: IConfigGateway) => { + return fetch(`/op/gateway-configs`, { + method: 'POST', + body: JSON.stringify(params), + }); +}; + +export const editConfigGateway = (params: IConfigGateway) => { + return fetch(`/op/gateway-configs`, { + method: 'PUT', + body: JSON.stringify(params), + }); +}; +export const deleteConfigGateway = (params: IConfigure) => { + return fetch(`/op/gateway-configs`, { + method: 'DELETE', + body: JSON.stringify(params), + }); +}; + export const getDataCenter = () => { return fetch(`/normal/configs/idc`); }; @@ -530,6 +558,23 @@ export const getControllerHistory = (clusterId: number) => { return fetch(`/rd/clusters/${clusterId}/controller-history`); }; +export const getCandidateController = (clusterId: number) => { + return fetch(`/rd/clusters/${clusterId}/controller-preferred-candidates`); +}; + +export const addCandidateController = (params:any) => { + return fetch(`/op/cluster-controller/preferred-candidates`, { + method: 'POST', + body: JSON.stringify(params), + }); +}; + +export const deleteCandidateCancel = (params:any)=>{ + return fetch(`/op/cluster-controller/preferred-candidates`, { + method: 'DELETE', + body: JSON.stringify(params), + }); +} /** * 运维管控 broker */ diff --git a/kafka-manager-console/src/lib/line-charts-config.ts b/kafka-manager-console/src/lib/line-charts-config.ts index fe9880a6..4a667c0c 100644 --- a/kafka-manager-console/src/lib/line-charts-config.ts +++ b/kafka-manager-console/src/lib/line-charts-config.ts @@ -77,7 +77,7 @@ export const getControlMetricOption = (type: IOptionType, data: IClusterMetrics[ name = '条'; data.map(item => { item.messagesInPerSec = item.messagesInPerSec !== null ? Number(item.messagesInPerSec.toFixed(2)) : null; - }); + }); break; case 'brokerNum': case 'topicNum': @@ -224,7 +224,7 @@ export const getClusterMetricOption = (type: IOptionType, record: IClusterMetric name = '条'; data.map(item => { item.messagesInPerSec = item.messagesInPerSec !== null ? Number(item.messagesInPerSec.toFixed(2)) : null; - }); + }); break; default: const { name: unitName, data: xData } = dealFlowData(metricTypeMap[type], data); @@ -248,8 +248,8 @@ export const getClusterMetricOption = (type: IOptionType, record: IClusterMetric const unitSeries = item.data[item.seriesName] !== null ? Number(item.data[item.seriesName]) : null; // tslint:disable-next-line:max-line-length result += ''; - if ( (item.data.produceThrottled && item.seriesName === 'appIdBytesInPerSec') - || (item.data.consumeThrottled && item.seriesName === 'appIdBytesOutPerSec') ) { + if ((item.data.produceThrottled && item.seriesName === 'appIdBytesInPerSec') + || (item.data.consumeThrottled && item.seriesName === 'appIdBytesOutPerSec')) { return result += item.seriesName + ': ' + unitSeries + '(被限流)' + '
    '; } return result += item.seriesName + ': ' + unitSeries + '
    '; @@ -317,7 +317,7 @@ export const getMonitorMetricOption = (seriesName: string, data: IMetricPoint[]) if (ele.name === item.seriesName) { // tslint:disable-next-line:max-line-length result += ''; - return result += item.seriesName + ': ' + (item.data.value === null ? '' : item.data.value.toFixed(2)) + '
    '; + return result += item.seriesName + ': ' + (item.data.value === null ? '' : item.data.value.toFixed(2)) + '
    '; } }); }); diff --git a/kafka-manager-console/src/store/admin-monitor.ts b/kafka-manager-console/src/store/admin-monitor.ts index 4071e1c5..7e257637 100644 --- a/kafka-manager-console/src/store/admin-monitor.ts +++ b/kafka-manager-console/src/store/admin-monitor.ts @@ -3,6 +3,11 @@ import { observable, action } from 'mobx'; import { getBrokersMetricsHistory } from 'lib/api'; import { IClusterMetrics } from 'types/base-type'; +const STATUS = { + PENDING: 'pending', + REJECT: 'reject', + FULLFILLED: 'fullfilled' +} class AdminMonitor { @observable public currentClusterId = null as number; @@ -33,33 +38,42 @@ class AdminMonitor { @action.bound public setBrokersChartsData(data: IClusterMetrics[]) { this.brokersMetricsHistory = data; - this.setRequestId(null); + this.setRequestId(STATUS.FULLFILLED); + Promise.all(this.taskQueue).then(() => { + this.setRequestId(null); + this.taskQueue = []; + }) return data; } + public taskQueue = [] as any[]; public getBrokersMetricsList = async (startTime: string, endTime: string) => { - if (this.requestId && this.requestId !== 'error') { - return new Promise((res, rej) => { - window.setTimeout(() => { - if (this.requestId === 'error') { - rej(); - } else { + if (this.requestId) { + //逐条定时查询任务状态 + const p = new Promise((res, rej) => { + const timer = window.setInterval(() => { + if (this.requestId === STATUS.REJECT) { + rej(this.brokersMetricsHistory); + window.clearInterval(timer); + } else if (this.requestId === STATUS.FULLFILLED) { res(this.brokersMetricsHistory); + window.clearInterval(timer); } - }, 800); // TODO: 该实现方式待优化 + }, (this.taskQueue.length + 1) * 100); }); + this.taskQueue.push(p); + return p; } - this.setRequestId('requesting'); + this.setRequestId(STATUS.PENDING); return getBrokersMetricsHistory(this.currentClusterId, this.currentBrokerId, startTime, endTime) - .then(this.setBrokersChartsData).catch(() => this.setRequestId('error')); + .then(this.setBrokersChartsData).catch(() => this.setRequestId(STATUS.REJECT)); } public getBrokersChartsData = async (startTime: string, endTime: string, reload?: boolean) => { if (this.brokersMetricsHistory && !reload) { return new Promise(res => res(this.brokersMetricsHistory)); } - return this.getBrokersMetricsList(startTime, endTime); } } diff --git a/kafka-manager-console/src/store/admin.ts b/kafka-manager-console/src/store/admin.ts index f3d08264..bd641773 100644 --- a/kafka-manager-console/src/store/admin.ts +++ b/kafka-manager-console/src/store/admin.ts @@ -1,5 +1,5 @@ import { observable, action } from 'mobx'; -import { INewBulidEnums, ILabelValue, IClusterReal, IOptionType, IClusterMetrics, IClusterTopics, IKafkaFiles, IMetaData, IConfigure, IBrokerData, IOffset, IController, IBrokersBasicInfo, IBrokersStatus, IBrokersTopics, IBrokersPartitions, IBrokersAnalysis, IAnalysisTopicVO, IBrokersMetadata, IBrokersRegions, IThrottles, ILogicalCluster, INewRegions, INewLogical, ITaskManage, IPartitionsLocation, ITaskType, ITasksEnums, ITasksMetaData, ITaskStatusDetails, IKafkaRoles, IEnumsMap, IStaffSummary, IBill, IBillDetail } from 'types/base-type'; +import { INewBulidEnums, ILabelValue, IClusterReal, IOptionType, IClusterMetrics, IClusterTopics, IKafkaFiles, IMetaData, IConfigure, IConfigGateway, IBrokerData, IOffset, IController, IBrokersBasicInfo, IBrokersStatus, IBrokersTopics, IBrokersPartitions, IBrokersAnalysis, IAnalysisTopicVO, IBrokersMetadata, IBrokersRegions, IThrottles, ILogicalCluster, INewRegions, INewLogical, ITaskManage, IPartitionsLocation, ITaskType, ITasksEnums, ITasksMetaData, ITaskStatusDetails, IKafkaRoles, IEnumsMap, IStaffSummary, IBill, IBillDetail } from 'types/base-type'; import { deleteCluster, getBasicInfo, @@ -12,7 +12,12 @@ import { getConfigure, addNewConfigure, editConfigure, + addNewConfigGateway, deleteConfigure, + getGatewayList, + getGatewayType, + editConfigGateway, + deleteConfigGateway, getDataCenter, getClusterBroker, getClusterConsumer, @@ -49,6 +54,9 @@ import { getStaffSummary, getBillStaffSummary, getBillStaffDetail, + getCandidateController, + addCandidateController, + deleteCandidateCancel } from 'lib/api'; import { getControlMetricOption, getClusterMetricOption } from 'lib/line-charts-config'; @@ -59,6 +67,7 @@ import { transBToMB } from 'lib/utils'; import moment from 'moment'; import { timestore } from './time'; +import { message } from 'component/antd'; class Admin { @observable @@ -97,6 +106,12 @@ class Admin { @observable public configureList: IConfigure[] = []; + @observable + public configGatewayList: IConfigGateway[] = []; + + @observable + public gatewayType: []; + @observable public dataCenterList: string[] = []; @@ -142,6 +157,12 @@ class Admin { @observable public controllerHistory: IController[] = []; + @observable + public controllerCandidate: IController[] = []; + + @observable + public filtercontrollerCandidate: string = ''; + @observable public brokersPartitions: IBrokersPartitions[] = []; @@ -152,7 +173,7 @@ class Admin { public brokersAnalysisTopic: IAnalysisTopicVO[] = []; @observable - public brokersMetadata: IBrokersMetadata[] = []; + public brokersMetadata: IBrokersMetadata[] | any = []; @observable public brokersRegions: IBrokersRegions[] = []; @@ -206,10 +227,10 @@ class Admin { public kafkaRoles: IKafkaRoles[]; @observable - public controlType: IOptionType = 'byteIn/byteOut' ; + public controlType: IOptionType = 'byteIn/byteOut'; @observable - public type: IOptionType = 'byteIn/byteOut' ; + public type: IOptionType = 'byteIn/byteOut'; @observable public currentClusterId = null as number; @@ -241,7 +262,7 @@ class Admin { @action.bound public setClusterRealTime(data: IClusterReal) { - this.clusterRealData = data; + this.clusterRealData = data; this.getRealClusterLoading(false); } @@ -284,7 +305,7 @@ class Admin { return { ...item, label: item.fileName, - value: item.fileName + ',' + item.fileMd5, + value: item.fileName + ',' + item.fileMd5, }; })); } @@ -306,6 +327,20 @@ class Admin { }) : []; } + @action.bound + public setConfigGatewayList(data: IConfigGateway[]) { + this.configGatewayList = data ? data.map((item, index) => { + item.key = index; + return item; + }) : []; + } + + @action.bound + public setConfigGatewayType(data: any) { + this.setLoading(false); + this.gatewayType = data || []; + } + @action.bound public setDataCenter(data: string[]) { this.dataCenterList = data || []; @@ -335,6 +370,17 @@ class Admin { }) : []; } + @action.bound + public setCandidateController(data: IController[]) { + this.controllerCandidate = data ? data.map((item, index) => { + item.key = index; + return item; + }) : []; + this.filtercontrollerCandidate = data?data.map((item,index)=>{ + return item.brokerId + }).join(','):'' + } + @action.bound public setBrokersBasicInfo(data: IBrokersBasicInfo) { this.brokersBasicInfo = data; @@ -356,10 +402,10 @@ class Admin { this.replicaStatus = data.brokerReplicaStatusList.slice(1); this.bytesInStatus.forEach((item, index) => { - this.peakValueList.push({ name: peakValueMap[index], value: item}); + this.peakValueList.push({ name: peakValueMap[index], value: item }); }); this.replicaStatus.forEach((item, index) => { - this.copyValueList.push({name: copyValueMap[index], value: item}); + this.copyValueList.push({ name: copyValueMap[index], value: item }); }); } @@ -415,16 +461,16 @@ class Admin { } @action.bound - public setBrokersMetadata(data: IBrokersMetadata[]) { - this.brokersMetadata = data ? data.map((item, index) => { - item.key = index; - return { - ...item, - text: `${item.host} (BrokerID:${item.brokerId})`, - label: item.host, - value: item.brokerId, - }; - }) : []; + public setBrokersMetadata(data: IBrokersMetadata[]|any) { + this.brokersMetadata = data ? data.map((item:any, index:any) => { + item.key = index; + return { + ...item, + text: `${item.host} (BrokerID:${item.brokerId})`, + label: item.host, + value: item.brokerId, + }; + }) : []; } @action.bound @@ -461,9 +507,9 @@ class Admin { @action.bound public setLogicalClusters(data: ILogicalCluster[]) { this.logicalClusters = data ? data.map((item, index) => { - item.key = index; - return item; - }) : []; + item.key = index; + return item; + }) : []; } @action.bound @@ -474,25 +520,25 @@ class Admin { @action.bound public setClustersThrottles(data: IThrottles[]) { this.clustersThrottles = data ? data.map((item, index) => { - item.key = index; - return item; - }) : []; + item.key = index; + return item; + }) : []; } @action.bound public setPartitionsLocation(data: IPartitionsLocation[]) { this.partitionsLocation = data ? data.map((item, index) => { - item.key = index; - return item; - }) : []; + item.key = index; + return item; + }) : []; } @action.bound public setTaskManagement(data: ITaskManage[]) { this.taskManagement = data ? data.map((item, index) => { - item.key = index; - return item; - }) : []; + item.key = index; + return item; + }) : []; } @action.bound @@ -568,7 +614,7 @@ class Admin { return deleteCluster(clusterId).then(() => this.getMetaData(true)); } - public getPeakFlowChartData(value: ILabelValue[], map: string []) { + public getPeakFlowChartData(value: ILabelValue[], map: string[]) { return getPieChartOption(value, map); } @@ -627,6 +673,30 @@ class Admin { deleteConfigure(configKey).then(() => this.getConfigure()); } + public getGatewayList() { + getGatewayList().then(this.setConfigGatewayList); + } + + public getGatewayType() { + this.setLoading(true); + getGatewayType().then(this.setConfigGatewayType); + } + + public addNewConfigGateway(params: IConfigGateway) { + return addNewConfigGateway(params).then(() => this.getGatewayList()); + } + + public editConfigGateway(params: IConfigGateway) { + return editConfigGateway(params).then(() => this.getGatewayList()); + } + + public deleteConfigGateway(params: any) { + deleteConfigGateway(params).then(() => { + // message.success('删除成功') + this.getGatewayList() + }); + } + public getDataCenter() { getDataCenter().then(this.setDataCenter); } @@ -643,6 +713,20 @@ class Admin { return getControllerHistory(clusterId).then(this.setControllerHistory); } + public getCandidateController(clusterId: number) { + return getCandidateController(clusterId).then(data=>{ + return this.setCandidateController(data) + }); + } + + public addCandidateController(clusterId: number, brokerIdList: any) { + return addCandidateController({clusterId, brokerIdList}).then(()=>this.getCandidateController(clusterId)); + } + + public deleteCandidateCancel(clusterId: number, brokerIdList: any){ + return deleteCandidateCancel({clusterId, brokerIdList}).then(()=>this.getCandidateController(clusterId)); + } + public getBrokersBasicInfo(clusterId: number, brokerId: number) { return getBrokersBasicInfo(clusterId, brokerId).then(this.setBrokersBasicInfo); } diff --git a/kafka-manager-console/src/store/alarm.ts b/kafka-manager-console/src/store/alarm.ts index b3e004df..e57631f0 100644 --- a/kafka-manager-console/src/store/alarm.ts +++ b/kafka-manager-console/src/store/alarm.ts @@ -181,6 +181,7 @@ class Alarm { public modifyMonitorStrategy(params: IRequestParams) { return modifyMonitorStrategy(params).then(() => { message.success('操作成功'); + window.location.href = `${urlPrefix}/alarm`; }).finally(() => this.setLoading(false)); } diff --git a/kafka-manager-console/src/store/users.ts b/kafka-manager-console/src/store/users.ts index 8d53114e..249a0187 100644 --- a/kafka-manager-console/src/store/users.ts +++ b/kafka-manager-console/src/store/users.ts @@ -19,6 +19,9 @@ export class Users { @observable public staff: IStaff[] = []; + @observable + public newPassWord: any = null; + @action.bound public setAccount(data: IUser) { setCookie([{ key: 'role', value: `${data.role}`, time: 1 }]); @@ -42,6 +45,11 @@ export class Users { this.loading = value; } + @action.bound + public setNewPassWord(value: boolean) { + this.newPassWord = value; + } + public getAccount() { getAccount().then(this.setAccount); } diff --git a/kafka-manager-console/src/types/base-type.ts b/kafka-manager-console/src/types/base-type.ts index 1170a696..605fd4fc 100644 --- a/kafka-manager-console/src/types/base-type.ts +++ b/kafka-manager-console/src/types/base-type.ts @@ -190,6 +190,7 @@ export interface IUser { chineseName?: string; department?: string; key?: number; + confirmPassword?:string } export interface IOffset { @@ -486,6 +487,17 @@ export interface IConfigure { key?: number; } +export interface IConfigGateway { + id: number; + key?: number; + modifyTime: number; + name: string; + value: string; + version: string; + type: string; + description: string; +} + export interface IEepand { brokerIdList: number[]; clusterId: number; @@ -650,8 +662,10 @@ export interface IBrokerData { export interface IController { brokerId: number; host: string; - timestamp: number; - version: number; + timestamp?: number; + version?: number; + startTime?: number; + status?: number; key?: number; } From 0270f77eaab6b14e430c142f7a4d8cc620ba41e2 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Tue, 9 Feb 2021 21:46:55 +0800 Subject: [PATCH 47/48] add upgrade doc --- docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md | 17 +++++++++++++++++ docs/install_guide/create_mysql_table.sql | 3 ++- 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md diff --git a/docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md b/docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md new file mode 100644 index 00000000..3a4196f8 --- /dev/null +++ b/docs/dev_guide/upgrade_manual/logi-km-v2.3.0.md @@ -0,0 +1,17 @@ + +--- + +![kafka-manager-logo](../../assets/images/common/logo_name.png) + +**一站式`Apache Kafka`集群指标监控与运维管控平台** + +--- + +# 升级至`2.3.0`版本 + +`2.3.0`版本在`gateway_config`表增加了一个描述说明的字段,因此需要执行下面的sql进行字段的增加。 + +```sql +ALTER TABLE `gateway_config` +ADD COLUMN `description` TEXT NULL COMMENT '描述信息' AFTER `version`; +``` diff --git a/docs/install_guide/create_mysql_table.sql b/docs/install_guide/create_mysql_table.sql index 2a015de1..065532eb 100644 --- a/docs/install_guide/create_mysql_table.sql +++ b/docs/install_guide/create_mysql_table.sql @@ -203,7 +203,8 @@ CREATE TABLE `gateway_config` ( `type` varchar(128) NOT NULL DEFAULT '' COMMENT '配置类型', `name` varchar(128) NOT NULL DEFAULT '' COMMENT '配置名称', `value` text COMMENT '配置值', - `version` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT '版本信息', + `version` bigint(20) unsigned NOT NULL DEFAULT '1' COMMENT '版本信息', + `description` text COMMENT '描述信息', `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `modify_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`id`), From 0f8aca382eeb1360a742026d0fa421953e5ad3c2 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Tue, 9 Feb 2021 21:47:56 +0800 Subject: [PATCH 48/48] bump version to 2.3.0 --- build.sh | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build.sh b/build.sh index 03b1087e..f3ea8642 100644 --- a/build.sh +++ b/build.sh @@ -4,7 +4,7 @@ cd $workspace ## constant OUTPUT_DIR=./output -KM_VERSION=2.2.0 +KM_VERSION=2.3.0 APP_NAME=kafka-manager APP_DIR=${APP_NAME}-${KM_VERSION} diff --git a/pom.xml b/pom.xml index 6588d335..d4165a85 100644 --- a/pom.xml +++ b/pom.xml @@ -16,7 +16,7 @@ - 2.2.0-SNAPSHOT + 2.3.0-SNAPSHOT 2.7.0 1.5.13