From d79e92ebbef50cbd9c5aff5b60eeb30fd9ccae86 Mon Sep 17 00:00:00 2001 From: FengZhou Date: Mon, 18 Oct 2021 17:03:58 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=B8=8Espark-security?= =?UTF-8?q?=E6=97=A0=E5=85=B3=E7=BB=84=E4=BB=B6.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- LICENSE | 207 -- LICENSE-binary | 358 -- NOTICE | 27 - NOTICE-binary | 66 - README.md | 162 - bin/common.sh | 100 - bin/submarine-daemon.sh | 185 -- bin/submarine.sh | 58 - conf/log4j.properties | 59 - conf/log4j.properties.template | 59 - conf/submarine-env.sh.template | 29 - conf/submarine-site.xml | 164 - conf/submarine-site.xml.template | 163 - dev-support/cicd/Dockerfile | 50 - dev-support/cicd/HowToRelease.md | 198 -- dev-support/cicd/README.md | 80 - .../cicd/build_and_start_cicd_image.sh | 21 - dev-support/cicd/common_release.sh | 65 - dev-support/cicd/create_release.sh | 105 - dev-support/cicd/entry.sh | 161 - dev-support/cicd/merge_submarine_pr.py | 359 -- dev-support/cicd/publish_release.sh | 178 - dev-support/docker-images/database/Dockerfile | 26 - dev-support/docker-images/database/build.sh | 38 - dev-support/docker-images/database/startup.sh | 34 - dev-support/docker-images/jupyter/Dockerfile | 108 - dev-support/docker-images/jupyter/build.sh | 32 - .../docker-images/jupyter/start-notebook.sh | 46 - dev-support/docker-images/operator/Dockerfile | 27 - dev-support/docker-images/operator/build.sh | 49 - .../docker-images/submarine/Dockerfile | 48 - dev-support/docker-images/submarine/build.sh | 64 - dev-support/k8s/deploy-kubeflow-operators.sh | 165 - dev-support/k8s/deploy-notebook-controller.sh | 62 - dev-support/k8s/deploy-traefik.sh | 59 - .../cluster-role-binding.yaml | 11 - .../k8s/notebook-controller/cluster-role.yaml | 107 - dev-support/k8s/notebook-controller/crd.yaml | 64 - .../k8s/notebook-controller/deployment.yaml | 23 - .../notebook-controller/deployment_patch.yaml | 15 - .../notebook-controller/kustomization.yaml | 42 - .../notebook-controller/service-account.yaml | 4 - .../k8s/notebook-controller/service.yaml | 7 - dev-support/k8s/pytorchjob/crd.yaml | 42 - .../k8s/pytorchjob/deploy-pytorch-operator.sh | 25 - dev-support/k8s/pytorchjob/deployment.yaml | 34 - .../k8s/pytorchjob/deployment_v1.16plus.yaml | 57 - dev-support/k8s/pytorchjob/namespace.yaml | 4 - dev-support/k8s/pytorchjob/podgroup.yaml | 39 - dev-support/k8s/pytorchjob/rbac.yaml | 53 - dev-support/k8s/pytorchjob/service.yaml | 19 - dev-support/k8s/tfjob/crd.yaml | 42 - .../tfjob/operator/cluster-role-binding.yaml | 14 - .../k8s/tfjob/operator/cluster-role.yaml | 96 - .../k8s/tfjob/operator/deployment.yaml | 31 - .../k8s/tfjob/operator/kustomization.yaml | 15 - .../k8s/tfjob/operator/service-account.yaml | 14 - dev-support/k8s/tfjob/operator/service.yaml | 19 - .../k8s/traefik/cluster-role-binding.yaml | 29 - dev-support/k8s/traefik/cluster-role.yaml | 61 - dev-support/k8s/traefik/crd.yaml | 120 - dev-support/k8s/traefik/deployment.yaml | 50 - dev-support/k8s/traefik/kustomization.yaml | 34 - dev-support/k8s/traefik/service-account.yaml | 21 - dev-support/k8s/traefik/service.yaml | 34 - dev-support/maven-config/checkstyle.xml | 289 -- .../maven-config/scalastyle-config.xml | 288 -- dev-support/mini-submarine/Dockerfile | 144 - dev-support/mini-submarine/README.md | 337 -- .../mini-submarine/build_mini-submarine.sh | 93 - dev-support/mini-submarine/conf/bootstrap.sh | 148 - .../conf/capacity-scheduler.xml | 73 - .../conf/container-executor.cfg | 51 - dev-support/mini-submarine/conf/core-site.xml | 25 - .../mini-submarine/conf/exclude-nodes.txt | 15 - .../mini-submarine/conf/excludeNodes.txt | 0 dev-support/mini-submarine/conf/hdfs-site.xml | 52 - .../mini-submarine/conf/include-nodes.txt | 15 - .../mini-submarine/conf/mapred-site.xml | 33 - .../mini-submarine/conf/node-resources.xml | 25 - .../mini-submarine/conf/resource-types.xml | 25 - .../mini-submarine/conf/setup-mysql.sh | 38 - dev-support/mini-submarine/conf/slaves | 16 - .../mini-submarine/conf/start-yarn-nm.sh | 35 - .../mini-submarine/conf/start-yarn-rm.sh | 35 - .../mini-submarine/conf/stop-yarn-nm.sh | 31 - .../mini-submarine/conf/stop-yarn-rm.sh | 33 - .../mini-submarine/conf/submarine-env.sh | 29 - .../mini-submarine/conf/submarine-site.xml | 122 - dev-support/mini-submarine/conf/tony.xml | 21 - .../mini-submarine/conf/yarn-ds-docker.sh | 18 - dev-support/mini-submarine/conf/yarn-site.xml | 185 -- .../spark-defaults-dynamic-allocation.conf | 33 - .../spark-script/pyspark-yarn.py | 32 - .../mini-submarine/spark-script/run_gpu_ds.sh | 20 - .../spark-script/run_pyspark.sh | 25 - .../spark-script/run_pyspark_docker.sh | 27 - .../mini-submarine/spark-script/run_spark.sh | 26 - .../spark-script/run_spark_docker.sh | 29 - .../submarine/build_python_virtual_env.sh | 37 - .../submarine/image_classification.py | 465 --- .../submarine/mnist_distributed.py | 275 -- .../submarine/mnist_distributed_tf2.py | 98 - .../submarine/pytorch_mnist_distributed.py | 242 -- .../run_customized_submarine-all_mnist.sh | 68 - .../submarine/run_submarine_mnist_tf2_tony.sh | 59 - .../submarine/run_submarine_mnist_tony.sh | 90 - .../submarine/run_submarine_mnist_tony_rpc.sh | 66 - .../run_submarine_mxnet_cifar10_tony.sh | 63 - .../run_submarine_pytorch_mnist_tony.sh | 58 - dev-support/pysubmarine/Dockerfile | 53 - dev-support/pysubmarine/bootstrap.sh | 36 - dev-support/pysubmarine/gen-sdk.sh | 67 - dev-support/pysubmarine/gen-ts-sdk.sh | 55 - dev-support/pysubmarine/install-conda.sh | 41 - dev-support/pysubmarine/license-header.txt | 15 - dev-support/pysubmarine/openapi.json | 409 --- dev-support/pysubmarine/run-pysubmarine-ci.sh | 40 - dev-support/pysubmarine/swagger_config.json | 5 - dev-support/style-check/lint-angular.sh | 34 - dev-support/style-check/lint-java.sh | 31 - dev-support/style-check/lint-scala.sh | 28 - dev-support/submarine-installer/LICENSE.txt | 2888 ----------------- dev-support/submarine-installer/README-CN.md | 228 -- dev-support/submarine-installer/README.md | 236 -- .../assets/submarine-installer.gif | Bin 546547 -> 0 bytes dev-support/submarine-installer/install.conf | 181 -- dev-support/submarine-installer/install.sh | 118 - .../package/calico/calico-node.service | 50 - .../package/calico/calicoctl.cfg | 22 - .../package/docker/daemon.json | 23 - .../package/docker/docker.service | 35 - .../package/etcd/etcd.service | 40 - .../package/hadoop/yarn/etc | 1 - .../hadoop/capacity-scheduler.xml | 131 - .../hadoop/container-executor.cfg | 42 - .../yarn/etc_insecure/hadoop/core-site.xml | 209 -- .../etc_insecure/hadoop/gpu/yarn-site-gpu.xml | 27 - .../yarn/etc_insecure/hadoop/hadoop-env.sh | 108 - .../yarn/etc_insecure/hadoop/hdfs-site.xml | 79 - .../yarn/etc_insecure/hadoop/mapred-env.sh | 47 - .../yarn/etc_insecure/hadoop/mapred-site.xml | 120 - .../etc_insecure/hadoop/resource-types.xml | 6 - .../yarn/etc_insecure/hadoop/yarn-env.sh | 127 - .../yarn/etc_insecure/hadoop/yarn-site.xml | 655 ---- .../etc_secure/hadoop/capacity-scheduler.xml | 131 - .../etc_secure/hadoop/container-executor.cfg | 42 - .../yarn/etc_secure/hadoop/core-site.xml | 235 -- .../etc_secure/hadoop/gpu/yarn-site-gpu.xml | 27 - .../yarn/etc_secure/hadoop/hadoop-env.sh | 108 - .../yarn/etc_secure/hadoop/hdfs-site.xml | 79 - .../yarn/etc_secure/hadoop/mapred-env.sh | 47 - .../yarn/etc_secure/hadoop/mapred-site.xml | 119 - .../yarn/etc_secure/hadoop/resource-types.xml | 6 - .../hadoop/yarn/etc_secure/hadoop/yarn-env.sh | 127 - .../yarn/etc_secure/hadoop/yarn-site.xml | 652 ---- .../hadoop/yarn/sbin/start-historyserver.sh | 25 - .../hadoop/yarn/sbin/start-mr-jobhistory.sh | 20 - .../hadoop/yarn/sbin/start-nodemanager.sh | 25 - .../hadoop/yarn/sbin/start-registrydns.sh | 25 - .../hadoop/yarn/sbin/start-resourcemanager.sh | 25 - .../hadoop/yarn/sbin/start-timelinereader.sh | 25 - .../hadoop/yarn/sbin/start-timelineserver.sh | 25 - .../hadoop/yarn/sbin/stop-historyserver.sh | 25 - .../hadoop/yarn/sbin/stop-mr-jobhistory.sh | 20 - .../hadoop/yarn/sbin/stop-nodemanager.sh | 25 - .../hadoop/yarn/sbin/stop-registrydns.sh | 25 - .../hadoop/yarn/sbin/stop-resourcemanager.sh | 25 - .../hadoop/yarn/sbin/stop-timelinereader.sh | 25 - .../hadoop/yarn/sbin/stop-timelineserver.sh | 25 - .../package/submarine/submarine.sh | 31 - .../submarine-installer/scripts/calico.sh | 228 -- .../scripts/combine-docker-daemons.py | 34 - .../submarine-installer/scripts/docker.sh | 178 - .../scripts/download-server.sh | 43 - .../scripts/environment.sh | 219 -- .../submarine-installer/scripts/etcd.sh | 152 - .../submarine-installer/scripts/menu.sh | 561 ---- .../scripts/nvidia-docker.sh | 165 - .../submarine-installer/scripts/nvidia.sh | 155 - .../submarine-installer/scripts/submarine.sh | 38 - .../submarine-installer/scripts/utils.sh | 204 -- .../submarine-installer/scripts/xmlcombine.py | 32 - .../submarine-installer/scripts/yarn.sh | 640 ---- .../scripts/yarn_insecure.sh | 626 ---- .../travis/install_external_dependencies.sh | 45 - dev-support/travis/tf-operator/crd_v1.yaml | 42 - .../tfevent-volume/tfevent-pv.yaml | 15 - .../tfevent-volume/tfevent-pvc.yaml | 14 - docs/assets/128-black-white.png | Bin 5336 -> 0 bytes docs/assets/128-black.png | Bin 5722 -> 0 bytes docs/assets/128-white.png | Bin 5167 -> 0 bytes docs/assets/128.png | Bin 7179 -> 0 bytes docs/assets/256-black-white.png | Bin 11992 -> 0 bytes docs/assets/256-black.png | Bin 13138 -> 0 bytes docs/assets/256-white-backup.png | Bin 13223 -> 0 bytes docs/assets/256-white.png | Bin 11487 -> 0 bytes docs/assets/256.png | Bin 16547 -> 0 bytes docs/assets/32-black-white.png | Bin 1137 -> 0 bytes docs/assets/32-black.png | Bin 1188 -> 0 bytes docs/assets/32-white.png | Bin 1083 -> 0 bytes docs/assets/32.png | Bin 1362 -> 0 bytes docs/assets/64-black-white.png | Bin 2450 -> 0 bytes docs/assets/64-black.png | Bin 2536 -> 0 bytes docs/assets/64-white.png | Bin 2287 -> 0 bytes docs/assets/64.png | Bin 3263 -> 0 bytes docs/assets/LOGO-black.svg | 80 - docs/assets/LOGO-blue.svg | 80 - docs/assets/LOGO-white.svg | 80 - docs/assets/Run-Debug-Configuration.png | Bin 252823 -> 0 bytes docs/assets/apache_incubator.png | Bin 8249 -> 0 bytes docs/assets/architecture.png | Bin 124597 -> 0 bytes docs/assets/asf_feather.png | Bin 1209 -> 0 bytes docs/assets/color_logo_with_text.png | Bin 14817 -> 0 bytes docs/assets/color_logo_with_text.psd | Bin 511213 -> 0 bytes docs/assets/created-notebook.png | Bin 71556 -> 0 bytes docs/assets/design/experiments.png | Bin 75806 -> 0 bytes docs/assets/design/multi-dc-cloud.png | Bin 162694 -> 0 bytes docs/assets/job-logs-ui.png | Bin 229944 -> 0 bytes docs/assets/logo-UEDC.psd | Bin 1481292 -> 0 bytes docs/assets/logo-org.psd | Bin 91042 -> 0 bytes docs/assets/logo.psd | Bin 1580295 -> 0 bytes docs/assets/logo.svg | 1 - docs/assets/multiple-tensorboard-jobs.png | Bin 184717 -> 0 bytes docs/assets/notebook-form.png | Bin 68260 -> 0 bytes docs/assets/notebook-list.png | Bin 65219 -> 0 bytes docs/assets/submarine-installer.gif | Bin 546547 -> 0 bytes docs/assets/tensorboard-service.png | Bin 107567 -> 0 bytes docs/community/HowToCommit.md | 78 - docs/community/README.md | 71 - docs/community/become-a-committer.md | 15 - docs/community/contributing.md | 264 -- docs/community/contributors.md | 15 - docs/database/README.md | 163 - docs/database/init-database.sh | 40 - docs/database/metastore.sql | 982 ------ docs/database/submarine-data.sql | 96 - docs/database/submarine.sql | 281 -- docs/design/architecture-and-requirements.md | 323 -- docs/design/environments-implementation.md | 194 -- docs/design/experiment-implementation.md | 500 --- docs/design/implementation-notes.md | 31 - docs/design/notebook-implementation.md | 111 - docs/design/security-implementation.md | 24 - docs/design/storage-implementation.md | 165 - docs/design/submarine-server/architecture.md | 165 - docs/design/submarine-server/jobspec.md | 97 - .../wip-designs/SubmarineClusterServer.md | 162 - docs/design/wip-designs/submarine-launcher.md | 75 - docs/development-guide-home.md | 30 - docs/development/BuildFromCode.md | 96 - docs/development/IntegrationTest.md | 122 - docs/development/QuickDevTips.md | 36 - docs/development/README.md | 133 - .../RunningDistributedThchs30KaldiJobs.md | 678 ---- docs/ecosystem/kaldi/WriteDockerfileKaldi.md | 112 - .../ubuntu-18.04/Dockerfile.gpu.kaldi_latest | 74 - docs/ecosystem/kaldi/build-all.sh | 26 - docs/ecosystem/kaldi/pictures/sge_cluster.png | Bin 149752 -> 0 bytes docs/ecosystem/kaldi/pictures/sge_stat.png | Bin 123705 -> 0 bytes docs/ecosystem/kaldi/sge/gencfs.sh | 154 - docs/ecosystem/kaldi/sge/group | 66 - docs/ecosystem/kaldi/sge/passwd | 42 - docs/ecosystem/kaldi/sge/resolv.conf | 23 - docs/ecosystem/kaldi/sge/sge_run.sh | 84 - docs/submarine-sdk/README.md | 28 - docs/submarine-sdk/pysubmarine/development.md | 100 - docs/submarine-sdk/pysubmarine/tracking.md | 71 - .../spark-security/README.md | 134 - .../build-submarine-spark-security-plugin.md | 30 - docs/user-guide-home.md | 29 - docs/userdocs/k8s/README.md | 67 - docs/userdocs/k8s/api/environment.md | 227 -- docs/userdocs/k8s/api/experiment-template.md | 235 -- docs/userdocs/k8s/api/experiment.md | 483 --- docs/userdocs/k8s/api/notebook.md | 265 -- docs/userdocs/k8s/helm.md | 120 - docs/userdocs/k8s/kind.md | 61 - docs/userdocs/k8s/notebook.md | 101 - .../userdocs/k8s/run-experiment-python-sdk.md | 64 - .../k8s/run-experiment-template-rest.md | 54 - .../k8s/run-pytorch-experiment-rest.md | 146 - .../k8s/run-tensorflow-experiment-rest.md | 145 - .../k8s/run-tensorflow-experiment-ui.md | 56 - docs/userdocs/k8s/tensorflow.md | 54 - docs/userdocs/yarn/Dockerfiles.md | 22 - docs/userdocs/yarn/README.md | 37 - docs/userdocs/yarn/TestAndTroubleshooting.md | 147 - docs/userdocs/yarn/WriteDockerfileMX.md | 88 - docs/userdocs/yarn/WriteDockerfilePT.md | 112 - docs/userdocs/yarn/WriteDockerfileTF.md | 121 - docs/userdocs/yarn/YARNRuntimeGuide.md | 310 -- .../ubuntu-18.04/Dockerfile.cpu.mx_latest | 49 - .../ubuntu-18.04/Dockerfile.gpu.mx_latest | 49 - docs/userdocs/yarn/docker/mxnet/build-all.sh | 25 - .../mxnet/cifar10/Dockerfile.cifar10.mx_1.5.1 | 62 - .../Dockerfile.gpu.pytorch_latest | 77 - .../userdocs/yarn/docker/pytorch/build-all.sh | 30 - .../with-cifar10-models/cifar10_tutorial.py | 354 -- .../Dockerfile.gpu.pytorch_latest | 21 - .../ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 | 75 - .../ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 | 89 - .../yarn/docker/tensorflow/build-all.sh | 35 - .../mnist/Dockerfile.tony.tf.mnist.tf_1.13.1 | 72 - .../ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 | 22 - .../ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 | 22 - .../cifar10_estimator_tf_1.13.1/README.md | 542 ---- .../cifar10_estimator_tf_1.13.1/cifar10.py | 113 - .../cifar10_main.py | 521 --- .../cifar10_model.py | 80 - .../cifar10_utils.py | 153 - .../generate_cifar10_tfrecords.py | 118 - .../cifar10_estimator_tf_1.13.1/model_base.py | 219 -- .../zeppelin-notebook-example/Dockerfile.gpu | 75 - .../run_container.sh | 22 - .../zeppelin-notebook-example/shiro.ini | 120 - .../zeppelin-site.xml | 569 ---- docs/workbench/HowToRun.md | 114 - docs/workbench/README.md | 177 - docs/workbench/README.zh-CN.md | 176 - .../assets/workspace-project-step1.png | Bin 215256 -> 0 bytes .../assets/workspace-project-step2-blank.png | Bin 140145 -> 0 bytes .../assets/workspace-project-step2-git.png | Bin 212974 -> 0 bytes .../workspace-project-step2-template.png | Bin 159251 -> 0 bytes .../assets/workspace-project-step2-upload.png | Bin 138045 -> 0 bytes .../assets/workspace-project-step3.png | Bin 181445 -> 0 bytes docs/workbench/assets/workspace-project.png | Bin 312940 -> 0 bytes docs/workbench/notebook/jupyter.yaml | 60 - docs/workbench/notebook/setup-jupyter.md | 73 - helm-charts/submarine/.helmignore | 42 - helm-charts/submarine/Chart.yaml | 33 - .../charts/notebook-controller/.helmignore | 39 - .../charts/notebook-controller/Chart.yaml | 37 - .../charts/notebook-controller/crds/crd.yaml | 80 - .../templates/cluster-role-binding.yaml | 30 - .../templates/cluster-role.yaml | 128 - .../templates/deployment.yaml | 49 - .../templates/service-account.yaml | 22 - .../templates/service.yaml | 28 - .../charts/notebook-controller/values.yaml | 16 - .../submarine/charts/pytorchjob/.helmignore | 40 - .../submarine/charts/pytorchjob/Chart.yaml | 38 - .../submarine/charts/pytorchjob/crds/crd.yaml | 59 - .../pytorchjob/templates/deployment.yaml | 49 - .../charts/pytorchjob/templates/podgroup.yaml | 56 - .../charts/pytorchjob/templates/rbac.yaml | 69 - .../charts/pytorchjob/templates/service.yaml | 35 - .../submarine/charts/pytorchjob/values.yaml | 17 - .../submarine/charts/tfjob/.helmignore | 40 - helm-charts/submarine/charts/tfjob/Chart.yaml | 38 - .../submarine/charts/tfjob/crds/crd.yaml | 64 - .../tfjob/templates/cluster-role-binding.yaml | 31 - .../charts/tfjob/templates/cluster-role.yaml | 111 - .../charts/tfjob/templates/deployment.yaml | 53 - .../tfjob/templates/service-account.yaml | 30 - .../charts/tfjob/templates/service.yaml | 35 - .../submarine/charts/tfjob/values.yaml | 16 - .../submarine/charts/traefik/.helmignore | 40 - .../submarine/charts/traefik/Chart.yaml | 30 - .../charts/traefik/crds/ingressroute-tcp.yaml | 29 - .../charts/traefik/crds/ingressroute-udp.yaml | 30 - .../charts/traefik/crds/ingressroute.yaml | 29 - .../charts/traefik/crds/middlewares.yaml | 29 - .../charts/traefik/crds/tls-options.yaml | 29 - .../charts/traefik/crds/tls-stores.yaml | 30 - .../charts/traefik/crds/traefik-services.yaml | 29 - .../charts/traefik/templates/_helpers.tpl | 71 - .../dashboard-hook-ingressroute.yaml | 45 - .../charts/traefik/templates/deployment.yaml | 260 -- .../charts/traefik/templates/hpa.yaml | 37 - .../templates/pod-disruption-budget.yaml | 39 - .../charts/traefik/templates/pvc.yaml | 42 - .../templates/rbac/cluster-role-binding.yaml | 35 - .../traefik/templates/rbac/cluster-role.yaml | 66 - .../traefik/templates/rbac/role-binding.yaml | 35 - .../charts/traefik/templates/rbac/role.yaml | 66 - .../templates/rbac/service-account.yaml | 31 - .../charts/traefik/templates/service.yaml | 126 - .../submarine/charts/traefik/values.yaml | 336 -- helm-charts/submarine/templates/rbac.yaml | 73 - .../templates/submarine-database.yaml | 53 - .../templates/submarine-ingress.yaml | 16 - .../submarine/templates/submarine-server.yaml | 71 - helm-charts/submarine/values.yaml | 33 - licenses-binary/LICENSE-asm.txt | 27 - licenses-binary/LICENSE-hamcrest.txt | 27 - licenses-binary/LICENSE-jgit.txt | 37 - licenses-binary/LICENSE-pagehelper.txt | 21 - licenses-binary/LICENSE-paranamer.txt | 29 - licenses-binary/LICENSE-protobuf.txt | 32 - licenses-binary/LICENSE-slf4j.txt | 21 - licenses-binary/LICENSE-tony.txt | 28 - pom.xml | 1040 +++--- submarine-all/pom.xml | 258 -- submarine-client/pom.xml | 155 - .../submarine/client/cli/AbstractCli.java | 52 - .../org/apache/submarine/client/cli/Cli.java | 118 - .../submarine/client/cli/CliConstants.java | 73 - .../apache/submarine/client/cli/CliUtils.java | 158 - .../apache/submarine/client/cli/Command.java | 27 - .../submarine/client/cli/ShowJobCli.java | 131 - .../client/cli/param/ConfigType.java | 27 - .../client/cli/param/Localization.java | 137 - .../client/cli/param/ParametersHolder.java | 524 --- .../submarine/client/cli/param/Quicklink.java | 96 - .../client/cli/param/RunParameters.java | 111 - .../client/cli/param/ShowJobParameters.java | 25 - .../param/runjob/MXNetRunJobParameters.java | 236 -- .../param/runjob/PyTorchRunJobParameters.java | 136 - .../cli/param/runjob/RunJobParameters.java | 361 --- .../runjob/TensorFlowRunJobParameters.java | 261 -- .../client/cli/param/yaml/Configs.java | 110 - .../client/cli/param/yaml/PsRole.java | 28 - .../submarine/client/cli/param/yaml/Role.java | 94 - .../client/cli/param/yaml/Roles.java | 53 - .../client/cli/param/yaml/Scheduling.java | 35 - .../client/cli/param/yaml/Security.java | 53 - .../submarine/client/cli/param/yaml/Spec.java | 53 - .../client/cli/param/yaml/TensorBoard.java | 44 - .../client/cli/param/yaml/WorkerRole.java | 28 - .../client/cli/param/yaml/YamlConfigFile.java | 80 - .../cli/param/yaml/YamlParseException.java | 30 - .../client/cli/remote/ClientProto.java | 265 -- .../cli/remote/JobSubmitterRpcImpl.java | 92 - .../client/cli/remote/RpcContext.java | 61 - .../client/cli/remote/RpcRuntimeFactory.java | 58 - .../client/cli/runjob/RoleParameters.java | 88 - .../client/cli/runjob/RunJobCli.java | 371 --- .../client/cli/ShowJobCliParsingTest.java | 104 - .../client/cli/YamlConfigTestUtils.java | 69 - .../runjob/RunJobCliParsingCommonTest.java | 132 - .../RunJobCliParsingCommonYamlTest.java | 258 -- .../RunJobCliParsingParameterizedTest.java | 196 -- .../mxnet/RunJobCliParsingMXNetTest.java | 175 - .../mxnet/RunJobCliParsingMXNetYamlTest.java | 271 -- .../pytorch/RunJobCliParsingPyTorchTest.java | 282 -- .../RunJobCliParsingPyTorchYamlTest.java | 271 -- .../RunJobCliParsingTensorFlowTest.java | 239 -- ...liParsingTensorFlowYamlStandaloneTest.java | 206 -- .../RunJobCliParsingTensorFlowYamlTest.java | 308 -- .../src/test/resources/core-site.xml | 21 - .../src/test/resources/hdfs-site.xml | 21 - .../src/test/resources/resource-types.xml | 28 - .../runjob-common-yaml/empty-framework.yaml | 63 - .../runjob-common-yaml/invalid-framework.yaml | 63 - .../runjob-common-yaml/missing-configs.yaml | 41 - .../runjob-common-yaml/missing-framework.yaml | 62 - .../some-sections-missing.yaml | 49 - .../runjob-common-yaml/test-false-values.yaml | 57 - .../runjob-common-yaml/wrong-indentation.yaml | 60 - .../wrong-property-name.yaml | 60 - .../runjob-mxnet-yaml/envs-are-missing.yaml | 61 - .../invalid-config-tensorboard-section.yaml | 67 - .../security-principal-is-missing.yaml | 63 - .../valid-config-with-overrides.yaml | 91 - .../runjob-mxnet-yaml/valid-config.yaml | 64 - .../runjob-mxnet-yaml/valid-gpu-config.yaml | 64 - .../runjob-pytorch-yaml/envs-are-missing.yaml | 51 - .../invalid-config-ps-section.yaml | 56 - .../invalid-config-scheduler-section.yaml | 56 - .../invalid-config-tensorboard-section.yaml | 57 - .../security-principal-is-missing.yaml | 53 - .../valid-config-with-overrides.yaml | 63 - .../runjob-pytorch-yaml/valid-config.yaml | 54 - .../runjob-pytorch-yaml/valid-gpu-config.yaml | 54 - .../envs-are-missing.yaml | 60 - .../invalid-config-scheduler-section.yaml | 61 - .../security-principal-is-missing.yaml | 62 - .../tensorboard-dockerimage-is-missing.yaml | 62 - .../valid-config-with-overrides.yaml | 82 - .../runjob-tensorflow-yaml/valid-config.yaml | 63 - .../valid-gpu-config.yaml | 63 - submarine-cloud/Dockerfile | 33 - submarine-cloud/Makefile | 51 - submarine-cloud/build.sh | 35 - submarine-cloud/cmd/operator/main.go | 63 - submarine-cloud/go.mod | 28 - submarine-cloud/go.sum | 476 --- submarine-cloud/hack/boilerplate.go.txt | 17 - .../hack/custom-boilerplate.go.txt | 17 - submarine-cloud/hack/deploy-submarine.sh | 150 - submarine-cloud/hack/integration-test.sh | 137 - submarine-cloud/hack/kind | 27 - submarine-cloud/hack/kind-cluster-build.sh | 248 -- submarine-cloud/hack/kubectl | 27 - submarine-cloud/hack/lib.sh | 104 - submarine-cloud/hack/update-codegen.sh | 42 - submarine-cloud/hack/verify-codegen.sh | 51 - submarine-cloud/manifests/crd.yaml | 69 - .../manifests/submarine-cluster/rbac.yaml | 53 - .../submarine-cluster/serviceaccounts.yaml | 25 - .../submarine-cluster/submarine-database.yaml | 51 - .../submarine-cluster/submarine-server.yaml | 114 - .../submarine-operator/deployment.yaml | 43 - .../manifests/submarine-operator/rbac.yaml | 58 - .../submarine-operator/serviceaccounts.yaml | 25 - .../pkg/apis/submarine/register.go | 23 - .../pkg/apis/submarine/v1alpha1/const.go | 24 - .../pkg/apis/submarine/v1alpha1/default.go | 66 - .../pkg/apis/submarine/v1alpha1/doc.go | 20 - .../pkg/apis/submarine/v1alpha1/register.go | 67 - .../pkg/apis/submarine/v1alpha1/types.go | 222 -- .../v1alpha1/zz_generated.deepcopy.go | 221 -- submarine-cloud/pkg/client/client.go | 114 - .../client/clientset/versioned/clientset.go | 98 - .../pkg/client/clientset/versioned/doc.go | 21 - .../versioned/fake/clientset_generated.go | 83 - .../client/clientset/versioned/fake/doc.go | 21 - .../clientset/versioned/fake/register.go | 57 - .../client/clientset/versioned/scheme/doc.go | 21 - .../clientset/versioned/scheme/register.go | 57 - .../versioned/typed/submarine/v1alpha1/doc.go | 21 - .../typed/submarine/v1alpha1/fake/doc.go | 21 - .../v1alpha1/fake/fake_submarine_client.go | 41 - .../v1alpha1/fake/fake_submarinecluster.go | 141 - .../submarine/v1alpha1/generated_expansion.go | 22 - .../submarine/v1alpha1/submarine_client.go | 90 - .../submarine/v1alpha1/submarinecluster.go | 192 -- .../informers/externalversions/factory.go | 181 -- .../informers/externalversions/generic.go | 63 - .../internalinterfaces/factory_interfaces.go | 41 - .../externalversions/submarine/interface.go | 47 - .../submarine/v1alpha1/interface.go | 46 - .../submarine/v1alpha1/submarinecluster.go | 90 - .../submarine/v1alpha1/expansion_generated.go | 28 - .../submarine/v1alpha1/submarinecluster.go | 95 - submarine-cloud/pkg/config/cluster.go | 33 - submarine-cloud/pkg/config/submarine.go | 101 - submarine-cloud/pkg/controller/actions.go | 256 -- submarine-cloud/pkg/controller/checks.go | 246 -- .../clustering/cluster-migration.go | 61 - .../clustering/cluster-placement.go | 237 -- .../controller/clustering/cluster-roles.go | 44 - submarine-cloud/pkg/controller/condition.go | 100 - submarine-cloud/pkg/controller/config.go | 33 - submarine-cloud/pkg/controller/controller.go | 653 ---- submarine-cloud/pkg/controller/pod/control.go | 171 - submarine-cloud/pkg/controller/pod/utils.go | 62 - .../poddisruptionbudgets_control.go | 66 - .../pkg/controller/sanitycheck/process.go | 63 - .../pkg/controller/services_control.go | 78 - submarine-cloud/pkg/controller/utils.go | 82 - submarine-cloud/pkg/operator/config.go | 43 - submarine-cloud/pkg/operator/operator.go | 148 - submarine-cloud/pkg/signal/signal.go | 39 - submarine-cloud/pkg/submarine/admin.go | 209 -- submarine-cloud/pkg/submarine/client.go | 119 - submarine-cloud/pkg/submarine/cluster.go | 43 - submarine-cloud/pkg/submarine/clusterinfo.go | 168 - submarine-cloud/pkg/submarine/connections.go | 281 -- submarine-cloud/pkg/submarine/errors.go | 70 - submarine-cloud/pkg/submarine/node.go | 192 -- submarine-cloud/pkg/utils/build.go | 52 - submarine-cloud/pom.xml | 98 - submarine-cloud/submarine-operator.md | 170 - submarine-dist/pom.xml | 204 -- submarine-dist/src/assembly/distribution.xml | 206 -- .../src/assembly/src-distribution.xml | 53 - submarine-sdk/pysubmarine/.style.yapf | 4 - submarine-sdk/pysubmarine/README.md | 45 - .../pysubmarine/example/data/te.libsvm | 100 - .../pysubmarine/example/data/tr.libsvm | 1000 ------ .../pysubmarine/example/data/va.libsvm | 200 -- submarine-sdk/pysubmarine/example/deepfm.json | 35 - .../pysubmarine/example/deepfm_example.ipynb | 215 -- .../pysubmarine/example/pytorch/afm/afm.json | 49 - .../example/pytorch/afm/run_afm.py | 41 - .../example/pytorch/afm/run_afm.sh | 41 - .../example/pytorch/deepfm/deepfm.json | 48 - .../example/pytorch/deepfm/run_deepfm.py | 41 - .../example/pytorch/deepfm/run_deepfm.sh | 41 - .../example/submarine_experiment_sdk.ipynb | 452 --- .../example/tensorflow/deepfm/README.md | 61 - .../example/tensorflow/deepfm/deepfm.json | 34 - .../tensorflow/deepfm/deepfm_distributed.json | 34 - .../example/tensorflow/deepfm/run_deepfm.py | 34 - .../example/tensorflow/fm/README.md | 49 - .../pysubmarine/example/tensorflow/fm/fm.json | 30 - .../example/tensorflow/fm/fm_distributed.json | 30 - .../example/tensorflow/fm/run_fm.py | 34 - submarine-sdk/pysubmarine/example/tracking.py | 29 - .../pysubmarine/github-actions/auto-format.sh | 28 - .../github-actions/lint-requirements.txt | 20 - .../pysubmarine/github-actions/lint.sh | 43 - .../github-actions/pypi-requirements.txt | 19 - .../github-actions/test-requirements.txt | 33 - submarine-sdk/pysubmarine/pylintrc | 604 ---- submarine-sdk/pysubmarine/setup.py | 53 - .../pysubmarine/submarine/__init__.py | 30 - .../pysubmarine/submarine/entities/Metric.py | 54 - .../pysubmarine/submarine/entities/Param.py | 42 - .../submarine/entities/__init__.py | 22 - .../submarine/entities/_submarine_object.py | 66 - .../pysubmarine/submarine/exceptions.py | 38 - .../submarine/experiment/__init__.py | 48 - .../submarine/experiment/api/__init__.py | 21 - .../experiment/api/experiment_api.py | 943 ------ .../experiment/api/experiment_client.py | 155 - .../submarine/experiment/api_client.py | 709 ---- .../submarine/experiment/configuration.py | 391 --- .../submarine/experiment/exceptions.py | 139 - .../submarine/experiment/models/__init__.py | 39 - .../submarine/experiment/models/code_spec.py | 162 - .../experiment/models/environment_spec.py | 240 -- .../experiment/models/experiment_meta.py | 240 -- .../experiment/models/experiment_spec.py | 214 -- .../experiment/models/experiment_task_spec.py | 344 -- .../experiment/models/json_response.py | 214 -- .../experiment/models/kernel_spec.py | 188 -- .../pysubmarine/submarine/experiment/rest.py | 360 -- .../pysubmarine/submarine/ml/__init__.py | 14 - .../submarine/ml/abstract_model.py | 44 - .../submarine/ml/pytorch/__init__.py | 14 - .../submarine/ml/pytorch/input/__init__.py | 14 - .../ml/pytorch/input/libsvm_dataset.py | 110 - .../submarine/ml/pytorch/layers/__init__.py | 14 - .../submarine/ml/pytorch/layers/core.py | 90 - .../pysubmarine/submarine/ml/pytorch/loss.py | 36 - .../submarine/ml/pytorch/metric.py | 39 - .../submarine/ml/pytorch/model/__init__.py | 14 - .../ml/pytorch/model/base_pytorch_model.py | 162 - .../ml/pytorch/model/ctr/__init__.py | 19 - .../submarine/ml/pytorch/model/ctr/afm.py | 95 - .../submarine/ml/pytorch/model/ctr/deepfm.py | 60 - .../submarine/ml/pytorch/optimizer.py | 33 - .../submarine/ml/pytorch/parameters.py | 55 - .../submarine/ml/pytorch/registries.py | 20 - .../submarine/ml/tensorflow/__init__.py | 14 - .../submarine/ml/tensorflow/input/__init__.py | 18 - .../submarine/ml/tensorflow/input/input.py | 58 - .../ml/tensorflow/layers/__init__.py | 14 - .../submarine/ml/tensorflow/layers/core.py | 183 -- .../submarine/ml/tensorflow/model/__init__.py | 20 - .../ml/tensorflow/model/base_tf_model.py | 114 - .../submarine/ml/tensorflow/model/deepfm.py | 58 - .../submarine/ml/tensorflow/model/fm.py | 47 - .../submarine/ml/tensorflow/model/nfm.py | 49 - .../submarine/ml/tensorflow/optimizer.py | 49 - .../submarine/ml/tensorflow/parameters.py | 45 - .../submarine/ml/tensorflow/registries.py | 20 - .../pysubmarine/submarine/store/__init__.py | 18 - .../submarine/store/abstract_store.py | 48 - .../submarine/store/database/__init__.py | 14 - .../submarine/store/database/db_types.py | 24 - .../submarine/store/database/models.py | 142 - .../submarine/store/sqlalchemy_store.py | 163 - .../submarine/tracking/__init__.py | 26 - .../pysubmarine/submarine/tracking/client.py | 71 - .../pysubmarine/submarine/tracking/fluent.py | 56 - .../pysubmarine/submarine/tracking/utils.py | 126 - .../pysubmarine/submarine/utils/__init__.py | 38 - .../pysubmarine/submarine/utils/env.py | 82 - .../pysubmarine/submarine/utils/fileio.py | 75 - .../submarine/utils/pytorch_utils.py | 23 - .../pysubmarine/submarine/utils/rest_utils.py | 83 - .../pysubmarine/submarine/utils/tf_utils.py | 138 - .../pysubmarine/submarine/utils/validation.py | 118 - submarine-sdk/pysubmarine/tests/__init__.py | 14 - .../tests/entities/test_metrics.py | 38 - .../pysubmarine/tests/entities/test_params.py | 32 - .../experiment/test_experiment_client.py | 59 - .../pysubmarine/tests/ml/__init__.py | 14 - .../tests/ml/pytorch/model/conftest.py | 95 - .../ml/pytorch/model/test_afm_pytorch.py | 25 - .../ml/pytorch/model/test_deepfm_pytorch.py | 25 - .../tests/ml/pytorch/test_loss_pytorch.py | 30 - .../tests/ml/pytorch/test_metric_pytorch.py | 30 - .../ml/pytorch/test_optimizer_pytorch.py | 30 - .../tests/ml/tensorflow/model/conftest.py | 58 - .../ml/tensorflow/model/test_base_tf_model.py | 32 - .../tests/ml/tensorflow/model/test_deepfm.py | 25 - .../tests/ml/tensorflow/model/test_fm.py | 25 - .../tests/ml/tensorflow/model/test_nfm.py | 25 - .../tests/ml/tensorflow/test_optimizer.py | 31 - .../tests/store/test_sqlalchemy_store.py | 77 - .../pysubmarine/tests/tracking/__init__.py | 14 - .../tests/tracking/test_tracking.py | 69 - .../pysubmarine/tests/tracking/test_utils.py | 60 - .../pysubmarine/tests/utils/test_env.py | 66 - .../tests/utils/test_rest_utils.py | 69 - .../pysubmarine/tests/utils/test_tf_utils.py | 52 - .../tests/utils/test_validation.py | 86 - submarine-server/pom.xml | 106 - submarine-server/server-api/pom.xml | 56 - .../submarine/server/api/Submitter.java | 122 - .../server/api/environment/Environment.java | 51 - .../server/api/environment/EnvironmentId.java | 72 - .../api/exception/InvalidSpecException.java | 28 - .../server/api/experiment/Experiment.java | 188 -- .../server/api/experiment/ExperimentId.java | 68 - .../server/api/experiment/ExperimentLog.java | 72 - .../ExperimentTemplate.java | 45 - .../ExperimentTemplateId.java | 72 - .../ExperimentTemplateSubmit.java | 44 - .../server/api/notebook/Notebook.java | 146 - .../server/api/notebook/NotebookId.java | 69 - .../submarine/server/api/spec/CodeSpec.java | 43 - .../server/api/spec/EnvironmentSpec.java | 105 - .../server/api/spec/ExperimentMeta.java | 134 - .../server/api/spec/ExperimentSpec.java | 66 - .../server/api/spec/ExperimentTaskSpec.java | 193 -- .../api/spec/ExperimentTemplateParamSpec.java | 60 - .../api/spec/ExperimentTemplateSpec.java | 78 - .../submarine/server/api/spec/KernelSpec.java | 67 - .../server/api/spec/NotebookMeta.java | 78 - .../server/api/spec/NotebookPodSpec.java | 119 - .../server/api/spec/NotebookSpec.java | 56 - submarine-server/server-core/pom.xml | 532 --- .../apache/submarine/server/Bootstrap.java | 103 - .../submarine/server/SubmarineServer.java | 354 -- .../submarine/server/SubmitterManager.java | 110 - .../server/database/entity/BaseEntity.java | 113 - .../server/database/utils/MyBatisUtil.java | 105 - .../environment/EnvironmentManager.java | 272 -- .../database/entity/EnvironmentEntity.java | 45 - .../database/mappers/EnvironmentMapper.java | 36 - .../server/experiment/ExperimentManager.java | 250 -- .../ExperimentTemplateManager.java | 518 --- .../entity/ExperimentTemplateEntity.java | 46 - .../mappers/ExperimentTemplateMapper.java | 39 - .../gson/EnvironmentIdDeserializer.java | 37 - .../server/gson/EnvironmentIdSerializer.java | 35 - .../server/gson/ExperimentIdDeserializer.java | 37 - .../server/gson/ExperimentIdSerializer.java | 35 - .../server/gson/NotebookIdDeserializer.java | 36 - .../server/gson/NotebookIdSerializer.java | 35 - .../server/notebook/NotebookManager.java | 194 -- .../server/response/DictAnnotation.java | 185 -- .../response/JsonExclusionStrategy.java | 32 - .../server/response/JsonResponse.java | 243 -- .../submarine/server/rest/ClusterRestApi.java | 238 -- .../server/rest/EnvironmentRestApi.java | 194 -- .../server/rest/ExperimentRestApi.java | 265 -- .../rest/ExperimentTemplateRestApi.java | 194 -- .../server/rest/MetaStoreRestApi.java | 241 -- .../server/rest/NotebookRestApi.java | 172 - .../submarine/server/rest/RestConstants.java | 73 - .../rest/provider/YamlEntityProvider.java | 91 - .../server/utils/GitHttpRequest.java | 113 - .../submarine/server/utils/GitUtils.java | 322 -- .../server/workbench/annotation/Dict.java | 30 - .../workbench/annotation/SubmarineApi.java | 33 - .../server/workbench/database/entity/Job.java | 95 - .../workbench/database/entity/Metric.java | 92 - .../workbench/database/entity/Param.java | 62 - .../workbench/database/entity/Project.java | 159 - .../database/entity/ProjectFiles.java | 53 - .../workbench/database/entity/SysDept.java | 95 - .../database/entity/SysDeptSelect.java | 86 - .../database/entity/SysDeptTree.java | 63 - .../workbench/database/entity/SysDict.java | 70 - .../database/entity/SysDictItem.java | 84 - .../workbench/database/entity/SysMessage.java | 74 - .../workbench/database/entity/SysUser.java | 164 - .../workbench/database/entity/Team.java | 61 - .../workbench/database/entity/TeamMember.java | 66 - .../workbench/database/mappers/JobMapper.java | 45 - .../database/mappers/MetricMapper.java | 39 - .../database/mappers/ParamMapper.java | 39 - .../database/mappers/ProjectFilesMapper.java | 44 - .../database/mappers/ProjectMapper.java | 41 - .../database/mappers/SysDeptMapper.java | 40 - .../database/mappers/SysDictItemMapper.java | 39 - .../database/mappers/SysDictMapper.java | 37 - .../database/mappers/SysMessageMapper.java | 37 - .../database/mappers/SysUserMapper.java | 41 - .../database/mappers/SystemMapper.java | 25 - .../database/mappers/TeamMapper.java | 41 - .../database/mappers/TeamMemberMapper.java | 42 - .../database/service/JobService.java | 135 - .../database/service/MetricService.java | 125 - .../database/service/ParamService.java | 119 - .../database/service/ProjectFilesService.java | 51 - .../database/service/ProjectService.java | 163 - .../database/service/SysDictItemService.java | 46 - .../database/service/SysMessageService.java | 43 - .../database/service/SysUserService.java | 147 - .../database/service/TeamMemberService.java | 78 - .../database/service/TeamService.java | 168 - .../utils/CustomJsonDateDeserializer.java | 45 - .../database/utils/DepartmentUtil.java | 128 - .../database/utils/MybatisGenerator.java | 72 - .../server/workbench/entity/Action.java | 43 - .../server/workbench/entity/Permission.java | 95 - .../server/workbench/entity/Role.java | 110 - .../server/workbench/entity/User.java | 167 - .../server/workbench/entity/UserInfo.java | 168 - .../server/workbench/rest/LoginRestApi.java | 90 - .../server/workbench/rest/MetricRestApi.java | 155 - .../server/workbench/rest/ParamRestApi.java | 153 - .../server/workbench/rest/ProjectRestApi.java | 133 - .../server/workbench/rest/SysDeptRestApi.java | 264 -- .../workbench/rest/SysDictItemRestApi.java | 226 -- .../server/workbench/rest/SysDictRestApi.java | 201 -- .../server/workbench/rest/SysUserRestApi.java | 246 -- .../server/workbench/rest/SystemRestApi.java | 123 - .../server/workbench/rest/TeamRestApi.java | 156 - .../websocket/ConnectionManager.java | 102 - .../websocket/DateJsonDeserializer.java | 52 - .../server/workbench/websocket/Message.java | 82 - .../workbench/websocket/NotebookServer.java | 142 - .../workbench/websocket/NotebookSocket.java | 85 - .../websocket/NotebookSocketListener.java | 26 - .../websocket/NotebookWebSocketCreator.java | 39 - .../src/main/resources/log4j.properties | 17 - .../src/main/resources/mbgConfiguration.xml | 71 - .../resources/mybatis-config-metastore.xml | 59 - .../src/main/resources/mybatis-config.xml | 72 - .../database/mappers/EnvironmentMapper.xml | 75 - .../mappers/ExperimentTemplateMapper.xml | 87 - .../submarine/database/mappers/JobMapper.xml | 217 -- .../database/mappers/MetricMapper.xml | 106 - .../database/mappers/ParamMapper.xml | 85 - .../database/mappers/ProjectFilesMapper.xml | 170 - .../database/mappers/ProjectMapper.xml | 205 -- .../database/mappers/SysDeptMapper.xml | 107 - .../database/mappers/SysDictItemMapper.xml | 84 - .../database/mappers/SysDictMapper.xml | 87 - .../database/mappers/SysMessageMapper.xml | 202 -- .../database/mappers/SysUserMapper.xml | 147 - .../database/mappers/SystemMapper.xml | 32 - .../submarine/database/mappers/TeamMapper.xml | 144 - .../database/mappers/TeamMemberMapper.xml | 180 - .../src/main/resources/submarine-site.xml | 154 - .../server/AbstractSubmarineServerTest.java | 530 --- .../server/SubmarineServerClusterTest.java | 198 -- .../submarine/server/SubmarineServerTest.java | 59 - .../server/response/JsonResponseTest.java | 90 - .../server/rest/ClusterRestApiTest.java | 175 - .../server/rest/EnvironmentRestApiTest.java | 149 - .../server/rest/ExperimentRestApiTest.java | 230 -- .../rest/ExperimentTemplateRestApiTest.java | 146 - .../server/rest/MetaStoreRestApiTest.java | 180 - .../submarine/server/utils/GitUtilsTest.java | 256 -- .../submarine/server/utils/TestUtils.java | 50 - .../database/service/JobServiceTest.java | 130 - .../database/service/MetricServiceTest.java | 125 - .../database/service/ParamServiceTest.java | 109 - .../database/service/ProjectServiceTest.java | 178 - .../database/service/SysUserServiceTest.java | 193 -- .../service/TeamMemberServiceTest.java | 68 - .../database/service/TeamServiceTest.java | 154 - .../database/utils/DepartmentUtilTest.java | 77 - .../database/utils/DictAnnotationTest.java | 62 - .../server/workbench/rest/CommonDataTest.java | 279 -- .../workbench/rest/SysDeptRestApiTest.java | 209 -- .../rest/SysDictItemRestApiTest.java | 178 - .../workbench/rest/SysDictRestApiTest.java | 134 - .../workbench/rest/SysUserRestApiTest.java | 92 - .../websocket/NotebookServerTest.java | 97 - .../resources/environment/test_env_1.json | 14 - .../resources/environment/test_env_2.json | 10 - .../resources/environment/test_env_3.json | 10 - .../experimentTemplate/test_template_1.json | 49 - .../test_template_1_submit.json | 6 - submarine-server/server-rpc/pom.xml | 126 - .../server/rpc/SubmarineRpcServer.java | 235 -- .../server/rpc/SubmarineRpcServerProto.java | 327 -- .../submarine/server/rpc/MockRpcServer.java | 85 - .../server/rpc/RpcServerTestUtils.java | 72 - .../server/rpc/SubmarineRpcClient.java | 98 - .../server/rpc/SubmarineRpcServerTest.java | 70 - submarine-server/server-submitter/pom.xml | 41 - .../server-submitter/submitter-k8s/pom.xml | 138 - .../server/submitter/k8s/K8sSubmitter.java | 456 --- .../codelocalizer/AbstractCodeLocalizer.java | 78 - .../codelocalizer/CodeLocalizer.java | 31 - .../codelocalizer/DummyCodeLocalizer.java | 34 - .../codelocalizer/GitCodeLocalizer.java | 119 - .../codelocalizer/HTTPGitCodeLocalizer.java | 35 - .../codelocalizer/SSHGitCodeLocalizer.java | 70 - .../k8s/model/CustomResourceJob.java | 66 - .../k8s/model/CustomResourceJobList.java | 86 - .../server/submitter/k8s/model/ListMeta.java | 34 - .../server/submitter/k8s/model/MLJob.java | 150 - .../submitter/k8s/model/MLJobReplicaSpec.java | 121 - .../submitter/k8s/model/MLJobReplicaType.java | 27 - .../server/submitter/k8s/model/MLJobSpec.java | 27 - .../submitter/k8s/model/NotebookCR.java | 116 - .../submitter/k8s/model/NotebookCRList.java | 72 - .../submitter/k8s/model/NotebookCRSpec.java | 99 - .../submitter/k8s/model/ObjectMeta.java | 135 - .../k8s/model/ingressroute/IngressRoute.java | 114 - .../model/ingressroute/IngressRouteSpec.java | 54 - .../k8s/model/ingressroute/SpecRoute.java | 65 - .../k8s/model/pytorchjob/PyTorchJob.java | 62 - .../pytorchjob/PyTorchJobReplicaType.java | 57 - .../k8s/model/pytorchjob/PyTorchJobSpec.java | 57 - .../submitter/k8s/model/tfjob/TFJob.java | 63 - .../k8s/model/tfjob/TFJobReplicaType.java | 70 - .../submitter/k8s/model/tfjob/TFJobSpec.java | 59 - .../k8s/parser/ExperimentSpecParser.java | 351 -- .../k8s/parser/NotebookSpecParser.java | 203 -- .../submitter/k8s/util/MLJobConverter.java | 95 - .../src/main/resources/log4j.properties | 25 - .../k8s/ExperimentSpecParserTest.java | 365 --- .../submitter/k8s/K8SJobSubmitterTest.java | 92 - .../submitter/k8s/MLJobConverterTest.java | 107 - .../submitter/k8s/NotebookSpecParserTest.java | 88 - .../server/submitter/k8s/SpecBuilder.java | 65 - .../src/test/resources/notebook_req.json | 16 - .../src/test/resources/pytorch_job_req.json | 26 - .../test/resources/pytorch_job_req_env.json | 26 - ...torch_job_req_http_git_code_localizer.json | 30 - .../pytorch_job_req_invalid_env.json | 27 - ...ytorch_job_req_ssh_git_code_localizer.json | 30 - .../src/test/resources/tf_mnist_req.json | 24 - .../server-submitter/submitter-yarn/README.md | 25 - .../server-submitter/submitter-yarn/pom.xml | 384 --- .../submitter/yarn/JobStatusBuilder.java | 68 - .../server/submitter/yarn/YarnJobMonitor.java | 57 - .../submitter/yarn/YarnJobSubmitter.java | 110 - .../submitter/yarn/YarnRuntimeFactory.java | 61 - .../server/submitter/yarn/YarnUtils.java | 261 -- .../src/test/java/YarnUtilsTest.java | 221 -- .../submitter-yarnservice/README.md | 18 - .../submitter-yarnservice/pom.xml | 369 --- .../yarnservice/AbstractComponent.java | 144 - .../yarnservice/AbstractServiceSpec.java | 170 - .../yarnservice/FileSystemOperations.java | 296 -- .../yarnservice/HadoopEnvironmentSetup.java | 179 - .../submitter/yarnservice/ServiceSpec.java | 30 - .../yarnservice/ServiceSpecFileGenerator.java | 54 - .../submitter/yarnservice/ServiceWrapper.java | 65 - .../yarnservice/WorkerComponentFactory.java | 74 - .../yarnservice/YarnServiceJobMonitor.java | 63 - .../yarnservice/YarnServiceJobSubmitter.java | 180 - .../YarnServiceRuntimeFactory.java | 49 - .../yarnservice/YarnServiceUtils.java | 66 - .../builder/JobComponentStatusBuilder.java | 46 - .../yarnservice/builder/JobStatusBuilder.java | 69 - .../command/AbstractLaunchCommand.java | 65 - .../command/LaunchCommandFactory.java | 33 - .../command/LaunchScriptBuilder.java | 111 - .../command/PyTorchLaunchCommandFactory.java | 64 - .../TensorFlowLaunchCommandFactory.java | 73 - .../pytorch/PyTorchServiceSpec.java | 70 - .../command/PyTorchWorkerLaunchCommand.java | 90 - .../component/PyTorchWorkerComponent.java | 50 - .../tensorflow/TensorFlowCommons.java | 57 - .../TensorFlowConfigEnvGenerator.java | 104 - .../tensorflow/TensorFlowServiceSpec.java | 99 - .../command/TensorBoardLaunchCommand.java | 70 - .../command/TensorFlowLaunchCommand.java | 95 - .../command/TensorFlowPsLaunchCommand.java | 62 - .../TensorFlowWorkerLaunchCommand.java | 62 - .../component/TensorBoardComponent.java | 100 - .../component/TensorFlowPsComponent.java | 79 - .../component/TensorFlowWorkerComponent.java | 50 - .../yarnservice/utils/ClassPathUtilities.java | 60 - .../yarnservice/utils/DockerUtilities.java | 36 - .../utils/EnvironmentUtilities.java | 152 - .../utils/KerberosPrincipalFactory.java | 97 - .../yarnservice/utils/Localizer.java | 237 -- .../utils/SubmarineResourceUtils.java | 54 - .../yarnservice/utils/ZipUtilities.java | 89 - .../submarine/FileUtilitiesForTests.java | 166 - .../cli/yarnservice/ParamBuilderForTest.java | 148 - .../yarnservice/YarnServiceCliTestUtils.java | 40 - .../YarnServiceRunJobCliCommonsTest.java | 95 - .../YarnServiceRunJobCliLocalizationTest.java | 611 ---- .../yarnservice/YarnServiceRunJobCliTest.java | 666 ---- .../yarnservice/FileSystemOperationsTest.java | 247 -- .../yarnservice/ServiceWrapperTest.java | 97 - .../AbstractTFLaunchCommandTestHelper.java | 196 -- .../command/LaunchCommandFactoryTest.java | 101 - .../pytorch/PyTorchServiceSpecTest.java | 94 - .../TensorFlowConfigEnvGeneratorTest.java | 71 - .../tensorflow/TensorFlowServiceSpecTest.java | 95 - .../command/TensorBoardLaunchCommandTest.java | 106 - .../command/TensorFlowLaunchCommandTest.java | 256 -- .../component/ComponentTestCommons.java | 121 - .../component/TensorBoardComponentTest.java | 130 - .../component/TensorFlowPsComponentTest.java | 172 - .../TensorFlowWorkerComponentTest.java | 221 -- .../utils/ClassPathUtilitiesTest.java | 94 - .../utils/EnvironmentUtilitiesTest.java | 232 -- .../utils/KerberosPrincipalFactoryTest.java | 162 - .../yarnservice/utils/LocalizerTest.java | 340 -- .../utils/SubmarineResourceUtilsTest.java | 115 - .../yarnservice/utils/ZipUtilitiesTest.java | 148 - .../src/test/resources/core-site.xml | 21 - .../src/test/resources/hdfs-site.xml | 21 - submarine-test/pom.xml | 40 - submarine-test/test-e2e/pom.xml | 190 -- .../apache/submarine/AbstractSubmarineIT.java | 242 -- .../submarine/ChromeWebDriverProvider.java | 148 - .../org/apache/submarine/CommandExecutor.java | 74 - .../submarine/FirefoxWebDriverProvider.java | 153 - .../org/apache/submarine/ProcessData.java | 257 -- .../apache/submarine/SubmarineITUtils.java | 60 - .../apache/submarine/WebDriverManager.java | 116 - .../apache/submarine/WebDriverProvider.java | 42 - .../submarine/integration/SubmarineLogIT.java | 45 - .../apache/submarine/integration/dataIT.java | 73 - .../submarine/integration/datadictIT.java | 152 - .../submarine/integration/departmentIT.java | 73 - .../submarine/integration/environmentIT.java | 74 - .../submarine/integration/experimentIT.java | 106 - .../apache/submarine/integration/homeIT.java | 81 - .../submarine/integration/interpreterIT.java | 67 - .../apache/submarine/integration/loginIT.java | 73 - .../submarine/integration/notebookIT.java | 80 - .../integration/pages/ExperimentPage.java | 223 -- .../submarine/integration/registerIT.java | 112 - .../submarine/integration/sidebarIT.java | 85 - .../apache/submarine/integration/teamIT.java | 70 - .../submarine/integration/workspaceIT.java | 125 - .../src/test/resources/log4j.properties | 24 - submarine-test/test-k8s/pom.xml | 198 -- .../submarine/rest/ClusterRestApiIT.java | 52 - .../rest/EnvironmentManagerRestApiIT.java | 102 - .../submarine/rest/ExperimentRestApiIT.java | 486 --- .../ExperimentTemplateManagerRestApiIT.java | 229 -- .../submarine/rest/NotebookRestApiIT.java | 329 -- .../src/test/resources/log4j.properties | 24 - .../resources/notebook/notebook-req-2.json | 16 - .../test/resources/notebook/notebook-req.json | 16 - .../test/resources/notebook/notebook-req.yaml | 11 - .../resources/pytorch/pt-mnist-patch-req.json | 24 - .../resources/pytorch/pt-mnist-patch-req.yaml | 17 - .../test/resources/pytorch/pt-mnist-req.json | 24 - .../test/resources/pytorch/pt-mnist-req.yaml | 17 - .../tensorflow/tf-mnist-patch-req.json | 20 - .../tensorflow/tf-mnist-patch-req.yaml | 13 - .../resources/tensorflow/tf-mnist-req.json | 24 - .../resources/tensorflow/tf-mnist-req.yaml | 16 - .../tf-mnist-with-env-patch-req.json | 20 - .../tensorflow/tf-mnist-with-env-req.json | 25 - ...nist-with-http-git-code-localizer-req.json | 28 - ...mnist-with-ssh-git-code-localizer-req.json | 28 - .../interpreter/interpreter-core/pom.xml | 154 - .../interpreter/AbstractInterpreter.java | 141 - .../submarine/interpreter/Interpreter.java | 34 - .../interpreter/InterpreterException.java | 42 - .../interpreter/InterpreterGroup.java | 23 - .../interpreter/InterpreterProcess.java | 213 -- .../interpreter/InterpreterResult.java | 110 - .../interpreter/InterpreterResultMessage.java | 44 - .../src/main/resources/log4j.properties | 24 - submarine-workbench/interpreter/pom.xml | 69 - .../interpreter/python-interpreter/README.md | 39 - .../interpreter/python-interpreter/pom.xml | 273 -- .../interpreter/PythonInterpreter.java | 79 - .../src/main/resources/log4j.properties | 24 - .../interpreter/InterpreterClusterTest.java | 160 - .../interpreter/PythonInterpreterTest.java | 133 - .../interpreter/spark-interpreter/README.md | 95 - .../interpreter/spark-interpreter/pom.xml | 264 -- .../interpreter/SparkInterpreter.java | 93 - .../interpreter/SparkSqlInterpreter.java | 89 - .../interpreter/SparkInterpreterTest.java | 330 -- .../interpreter/SparkSqlInterpreterTest.java | 204 -- .../src/test/resources/hive-site.xml | 7 - .../src/test/resources/log4j.properties | 35 - submarine-workbench/pom.xml | 44 - .../workbench-web/.editorconfig | 14 - submarine-workbench/workbench-web/.gitignore | 46 - .../workbench-web/.prettierignore | 4 - submarine-workbench/workbench-web/.prettierrc | 16 - submarine-workbench/workbench-web/LICENSE | 16 - submarine-workbench/workbench-web/README.md | 43 - .../workbench-web/angular.json | 145 - .../workbench-web/browserslist | 12 - .../workbench-web/e2e/README.md | 79 - .../workbench-web/e2e/protractor-ci.conf.js | 39 - .../workbench-web/e2e/protractor.conf.js | 54 - .../workbench-web/e2e/src/app.e2e-spec.ts | 46 - .../workbench-web/e2e/src/app.po.ts | 30 - .../workbench-web/e2e/tsconfig.json | 13 - .../workbench-web/karma.conf.js | 62 - .../workbench-web/package.json | 72 - submarine-workbench/workbench-web/pom.xml | 141 - .../workbench-web/proxy.conf.js | 66 - .../workbench-web/src/WEB-INF/web.xml | 70 - .../src/app/app-routing.module.ts | 45 - .../workbench-web/src/app/app.component.html | 22 - .../workbench-web/src/app/app.component.scss | 22 - .../src/app/app.component.spec.ts | 38 - .../workbench-web/src/app/app.component.ts | 40 - .../workbench-web/src/app/app.module.ts | 50 - .../src/app/components/components.module.ts | 31 - .../page-layout/page-layout.component.html | 36 - .../page-layout/page-layout.component.scss | 23 - .../page-layout/page-layout.component.ts | 40 - .../src/app/core/auth/auth.guard.ts | 48 - .../workbench-web/src/app/core/index.ts | 20 - .../workbench-web/src/app/core/public-api.ts | 20 - .../src/app/icons-provider.module.ts | 30 - .../src/app/interfaces/action.ts | 24 - .../src/app/interfaces/base-entity.ts | 34 - .../src/app/interfaces/environment-info.ts | 25 - .../src/app/interfaces/environment-spec.ts | 29 - .../src/app/interfaces/experiment-info.ts | 33 - .../src/app/interfaces/experiment-spec.ts | 57 - .../workbench-web/src/app/interfaces/index.ts | 20 - .../src/app/interfaces/modal-props.ts | 25 - .../src/app/interfaces/notebook-info.ts | 32 - .../src/app/interfaces/notebook-spec.ts | 49 - .../src/app/interfaces/permission.ts | 46 - .../src/app/interfaces/project.ts | 37 - .../src/app/interfaces/public-api.ts | 27 - .../workbench-web/src/app/interfaces/rest.ts | 57 - .../workbench-web/src/app/interfaces/role.ts | 42 - .../src/app/interfaces/sys-dept-item.ts | 33 - .../src/app/interfaces/sys-dept-select.ts | 34 - .../src/app/interfaces/sys-dict-item.ts | 40 - .../src/app/interfaces/sys-team.ts | 25 - .../src/app/interfaces/sys-user.ts | 37 - .../src/app/interfaces/user-info.ts | 56 - .../pages/user/login/login-routing.module.ts | 30 - .../app/pages/user/login/login.component.html | 48 - .../app/pages/user/login/login.component.scss | 31 - .../app/pages/user/login/login.component.ts | 85 - .../user/register/register.component.html | 119 - .../user/register/register.component.scss | 26 - .../pages/user/register/register.component.ts | 103 - .../src/app/pages/user/user-routing.module.ts | 52 - .../src/app/pages/user/user.component.html | 31 - .../src/app/pages/user/user.component.scss | 55 - .../src/app/pages/user/user.component.ts | 32 - .../src/app/pages/user/user.module.ts | 33 - .../pages/workbench/data/data.component.html | 521 --- .../pages/workbench/data/data.component.scss | 57 - .../pages/workbench/data/data.component.ts | 174 - .../environment/environment.component.html | 262 -- .../environment/environment.component.scss | 98 - .../environment/environment.component.ts | 197 -- .../experiment-customized-form.component.html | 297 -- .../experiment-customized-form.component.scss | 132 - .../experiment-customized-form.component.ts | 432 --- .../charts/charts.component.html | 42 - .../charts/charts.component.scss | 24 - .../charts/charts.component.ts | 96 - .../experiment-info.component.html | 123 - .../experiment-info.component.scss | 30 - .../experiment-info.component.ts | 141 - .../hyper-params/hyper-params.component.html | 35 - .../hyper-params/hyper-params.component.scss | 23 - .../hyper-params/hyper-params.component.ts | 44 - .../metrics/metrics.component.html | 39 - .../metrics/metrics.component.scss | 24 - .../metrics/metrics.component.ts | 44 - .../outputs/outputs.component.html | 22 - .../outputs/outputs.component.scss | 26 - .../outputs/outputs.component.ts | 44 - .../experiment/experiment.component.html | 185 -- .../experiment/experiment.component.scss | 51 - .../experiment/experiment.component.ts | 215 -- .../workbench/experiment/experiment.module.ts | 55 - .../pages/workbench/home/home.component.html | 194 -- .../pages/workbench/home/home.component.scss | 22 - .../pages/workbench/home/home.component.ts | 286 -- .../interpreter-add-modal.component.html | 46 - .../interpreter-add-modal.component.scss | 18 - .../interpreter-add-modal.component.ts | 67 - .../interpreter/interpreter.component.html | 132 - .../interpreter/interpreter.component.scss | 32 - .../interpreter/interpreter.component.ts | 123 - .../interpreter/interpreter.module.ts | 33 - .../data-dict-config-modal.component.html | 201 -- .../data-dict-config-modal.component.scss | 22 - .../data-dict-config-modal.component.ts | 308 -- .../data-dict-modal.component.html | 54 - .../data-dict-modal.component.scss | 19 - .../data-dict-modal.component.ts | 70 - .../data-dict/data-dict.component.html | 129 - .../data-dict/data-dict.component.scss | 30 - .../manager/data-dict/data-dict.component.ts | 170 - .../department/department.component.html | 295 -- .../department/department.component.scss | 53 - .../department/department.component.ts | 347 -- .../manager/manager-routing.module.ts | 57 - .../workbench/manager/manager.component.html | 26 - .../workbench/manager/manager.component.scss | 19 - .../workbench/manager/manager.component.ts | 100 - .../pages/workbench/manager/manager.module.ts | 49 - .../user-drawer/user-drawer.component.html | 206 -- .../user-drawer/user-drawer.component.scss | 29 - .../user-drawer/user-drawer.component.ts | 241 -- .../user-password-modal.component.html | 63 - .../user-password-modal.component.scss | 19 - .../user-password-modal.component.ts | 83 - .../manager/user/user.component.html | 131 - .../manager/user/user.component.scss | 30 - .../workbench/manager/user/user.component.ts | 181 -- .../workbench/model/model.component.html | 20 - .../workbench/model/model.component.scss | 18 - .../pages/workbench/model/model.component.ts | 31 - .../notebook/notebook.component.html | 209 -- .../notebook/notebook.component.scss | 67 - .../workbench/notebook/notebook.component.ts | 297 -- .../workbench/notebook/notebook.module.ts | 32 - .../workbench/workbench-routing.module.ts | 114 - .../pages/workbench/workbench.component.html | 95 - .../pages/workbench/workbench.component.scss | 107 - .../pages/workbench/workbench.component.ts | 146 - .../app/pages/workbench/workbench.module.ts | 61 - .../new-project-page.component.html | 256 -- .../new-project-page.component.scss | 81 - .../new-project-page.component.ts | 154 - .../workspace/project/project.component.html | 94 - .../workspace/project/project.component.scss | 52 - .../workspace/project/project.component.ts | 133 - .../workspace/release/release.component.html | 49 - .../workspace/release/release.component.scss | 29 - .../workspace/release/release.component.ts | 33 - .../workspace/shared/shared.component.html | 49 - .../workspace/shared/shared.component.scss | 29 - .../workspace/shared/shared.component.ts | 33 - .../workspace/team/team.component.html | 113 - .../workspace/team/team.component.scss | 38 - .../workspace/team/team.component.ts | 174 - .../training/training.component.html | 74 - .../training/training.component.scss | 53 - .../workspace/training/training.component.ts | 52 - .../workspace/workspace.component.html | 52 - .../workspace/workspace.component.scss | 24 - .../workspace/workspace.component.ts | 46 - .../workbench/workspace/workspace.module.ts | 51 - .../src/app/pipe/condition.pipe.ts | 34 - .../src/app/pipe/pipe-shared.module.ts | 29 - .../src/app/services/auth.service.ts | 80 - .../src/app/services/base-api.service.ts | 94 - .../src/app/services/department.service.ts | 111 - .../src/app/services/environment.service.ts | 78 - .../app/services/experiment.form.service.ts | 60 - .../src/app/services/experiment.service.ts | 186 -- .../services/experiment.validator.service.ts | 93 - .../workbench-web/src/app/services/index.ts | 20 - .../src/app/services/local-storage.service.ts | 53 - .../src/app/services/notebook.service.ts | 83 - .../src/app/services/project.service.ts | 82 - .../src/app/services/public-api.ts | 27 - .../src/app/services/system-utils.service.ts | 91 - .../src/app/services/team.service.ts | 114 - .../src/app/services/user.service.ts | 145 - .../workbench-web/src/assets/.gitkeep | 0 .../workbench-web/src/assets/background.svg | 69 - .../workbench-web/src/assets/logo-128.png | Bin 6098 -> 0 bytes .../workbench-web/src/assets/logo.png | Bin 16547 -> 0 bytes .../src/assets/submarine-logo.svg | 133 - .../src/environments/environment.prod.ts | 22 - .../src/environments/environment.ts | 35 - .../workbench-web/src/favicon.ico | Bin 113805 -> 0 bytes .../workbench-web/src/index.html | 32 - submarine-workbench/workbench-web/src/main.ts | 32 - .../workbench-web/src/polyfills.ts | 81 - .../workbench-web/src/styles.scss | 20 - submarine-workbench/workbench-web/src/test.ts | 33 - .../workbench-web/src/theme.less | 561 ---- .../workbench-web/tsconfig.app.json | 18 - .../workbench-web/tsconfig.json | 33 - .../workbench-web/tsconfig.spec.json | 18 - submarine-workbench/workbench-web/tslint.json | 142 - 1255 files changed, 512 insertions(+), 124178 deletions(-) delete mode 100644 LICENSE delete mode 100644 LICENSE-binary delete mode 100644 NOTICE delete mode 100644 NOTICE-binary delete mode 100644 README.md delete mode 100755 bin/common.sh delete mode 100755 bin/submarine-daemon.sh delete mode 100755 bin/submarine.sh delete mode 100644 conf/log4j.properties delete mode 100755 conf/log4j.properties.template delete mode 100644 conf/submarine-env.sh.template delete mode 100755 conf/submarine-site.xml delete mode 100755 conf/submarine-site.xml.template delete mode 100644 dev-support/cicd/Dockerfile delete mode 100644 dev-support/cicd/HowToRelease.md delete mode 100644 dev-support/cicd/README.md delete mode 100755 dev-support/cicd/build_and_start_cicd_image.sh delete mode 100755 dev-support/cicd/common_release.sh delete mode 100755 dev-support/cicd/create_release.sh delete mode 100755 dev-support/cicd/entry.sh delete mode 100755 dev-support/cicd/merge_submarine_pr.py delete mode 100755 dev-support/cicd/publish_release.sh delete mode 100644 dev-support/docker-images/database/Dockerfile delete mode 100755 dev-support/docker-images/database/build.sh delete mode 100755 dev-support/docker-images/database/startup.sh delete mode 100644 dev-support/docker-images/jupyter/Dockerfile delete mode 100755 dev-support/docker-images/jupyter/build.sh delete mode 100755 dev-support/docker-images/jupyter/start-notebook.sh delete mode 100644 dev-support/docker-images/operator/Dockerfile delete mode 100755 dev-support/docker-images/operator/build.sh delete mode 100644 dev-support/docker-images/submarine/Dockerfile delete mode 100755 dev-support/docker-images/submarine/build.sh delete mode 100755 dev-support/k8s/deploy-kubeflow-operators.sh delete mode 100755 dev-support/k8s/deploy-notebook-controller.sh delete mode 100755 dev-support/k8s/deploy-traefik.sh delete mode 100644 dev-support/k8s/notebook-controller/cluster-role-binding.yaml delete mode 100644 dev-support/k8s/notebook-controller/cluster-role.yaml delete mode 100644 dev-support/k8s/notebook-controller/crd.yaml delete mode 100644 dev-support/k8s/notebook-controller/deployment.yaml delete mode 100644 dev-support/k8s/notebook-controller/deployment_patch.yaml delete mode 100644 dev-support/k8s/notebook-controller/kustomization.yaml delete mode 100644 dev-support/k8s/notebook-controller/service-account.yaml delete mode 100644 dev-support/k8s/notebook-controller/service.yaml delete mode 100644 dev-support/k8s/pytorchjob/crd.yaml delete mode 100755 dev-support/k8s/pytorchjob/deploy-pytorch-operator.sh delete mode 100644 dev-support/k8s/pytorchjob/deployment.yaml delete mode 100644 dev-support/k8s/pytorchjob/deployment_v1.16plus.yaml delete mode 100644 dev-support/k8s/pytorchjob/namespace.yaml delete mode 100644 dev-support/k8s/pytorchjob/podgroup.yaml delete mode 100644 dev-support/k8s/pytorchjob/rbac.yaml delete mode 100644 dev-support/k8s/pytorchjob/service.yaml delete mode 100644 dev-support/k8s/tfjob/crd.yaml delete mode 100644 dev-support/k8s/tfjob/operator/cluster-role-binding.yaml delete mode 100644 dev-support/k8s/tfjob/operator/cluster-role.yaml delete mode 100644 dev-support/k8s/tfjob/operator/deployment.yaml delete mode 100644 dev-support/k8s/tfjob/operator/kustomization.yaml delete mode 100644 dev-support/k8s/tfjob/operator/service-account.yaml delete mode 100644 dev-support/k8s/tfjob/operator/service.yaml delete mode 100644 dev-support/k8s/traefik/cluster-role-binding.yaml delete mode 100644 dev-support/k8s/traefik/cluster-role.yaml delete mode 100644 dev-support/k8s/traefik/crd.yaml delete mode 100644 dev-support/k8s/traefik/deployment.yaml delete mode 100644 dev-support/k8s/traefik/kustomization.yaml delete mode 100644 dev-support/k8s/traefik/service-account.yaml delete mode 100644 dev-support/k8s/traefik/service.yaml delete mode 100644 dev-support/maven-config/checkstyle.xml delete mode 100644 dev-support/maven-config/scalastyle-config.xml delete mode 100644 dev-support/mini-submarine/Dockerfile delete mode 100644 dev-support/mini-submarine/README.md delete mode 100755 dev-support/mini-submarine/build_mini-submarine.sh delete mode 100755 dev-support/mini-submarine/conf/bootstrap.sh delete mode 100644 dev-support/mini-submarine/conf/capacity-scheduler.xml delete mode 100644 dev-support/mini-submarine/conf/container-executor.cfg delete mode 100644 dev-support/mini-submarine/conf/core-site.xml delete mode 100644 dev-support/mini-submarine/conf/exclude-nodes.txt delete mode 100644 dev-support/mini-submarine/conf/excludeNodes.txt delete mode 100644 dev-support/mini-submarine/conf/hdfs-site.xml delete mode 100644 dev-support/mini-submarine/conf/include-nodes.txt delete mode 100644 dev-support/mini-submarine/conf/mapred-site.xml delete mode 100644 dev-support/mini-submarine/conf/node-resources.xml delete mode 100644 dev-support/mini-submarine/conf/resource-types.xml delete mode 100755 dev-support/mini-submarine/conf/setup-mysql.sh delete mode 100644 dev-support/mini-submarine/conf/slaves delete mode 100755 dev-support/mini-submarine/conf/start-yarn-nm.sh delete mode 100755 dev-support/mini-submarine/conf/start-yarn-rm.sh delete mode 100755 dev-support/mini-submarine/conf/stop-yarn-nm.sh delete mode 100755 dev-support/mini-submarine/conf/stop-yarn-rm.sh delete mode 100644 dev-support/mini-submarine/conf/submarine-env.sh delete mode 100644 dev-support/mini-submarine/conf/submarine-site.xml delete mode 100644 dev-support/mini-submarine/conf/tony.xml delete mode 100755 dev-support/mini-submarine/conf/yarn-ds-docker.sh delete mode 100644 dev-support/mini-submarine/conf/yarn-site.xml delete mode 100644 dev-support/mini-submarine/spark-defaults-dynamic-allocation.conf delete mode 100755 dev-support/mini-submarine/spark-script/pyspark-yarn.py delete mode 100755 dev-support/mini-submarine/spark-script/run_gpu_ds.sh delete mode 100755 dev-support/mini-submarine/spark-script/run_pyspark.sh delete mode 100755 dev-support/mini-submarine/spark-script/run_pyspark_docker.sh delete mode 100755 dev-support/mini-submarine/spark-script/run_spark.sh delete mode 100755 dev-support/mini-submarine/spark-script/run_spark_docker.sh delete mode 100755 dev-support/mini-submarine/submarine/build_python_virtual_env.sh delete mode 100644 dev-support/mini-submarine/submarine/image_classification.py delete mode 100644 dev-support/mini-submarine/submarine/mnist_distributed.py delete mode 100644 dev-support/mini-submarine/submarine/mnist_distributed_tf2.py delete mode 100644 dev-support/mini-submarine/submarine/pytorch_mnist_distributed.py delete mode 100755 dev-support/mini-submarine/submarine/run_customized_submarine-all_mnist.sh delete mode 100755 dev-support/mini-submarine/submarine/run_submarine_mnist_tf2_tony.sh delete mode 100755 dev-support/mini-submarine/submarine/run_submarine_mnist_tony.sh delete mode 100644 dev-support/mini-submarine/submarine/run_submarine_mnist_tony_rpc.sh delete mode 100755 dev-support/mini-submarine/submarine/run_submarine_mxnet_cifar10_tony.sh delete mode 100755 dev-support/mini-submarine/submarine/run_submarine_pytorch_mnist_tony.sh delete mode 100644 dev-support/pysubmarine/Dockerfile delete mode 100755 dev-support/pysubmarine/bootstrap.sh delete mode 100755 dev-support/pysubmarine/gen-sdk.sh delete mode 100755 dev-support/pysubmarine/gen-ts-sdk.sh delete mode 100644 dev-support/pysubmarine/install-conda.sh delete mode 100644 dev-support/pysubmarine/license-header.txt delete mode 100644 dev-support/pysubmarine/openapi.json delete mode 100755 dev-support/pysubmarine/run-pysubmarine-ci.sh delete mode 100644 dev-support/pysubmarine/swagger_config.json delete mode 100755 dev-support/style-check/lint-angular.sh delete mode 100755 dev-support/style-check/lint-java.sh delete mode 100755 dev-support/style-check/lint-scala.sh delete mode 100644 dev-support/submarine-installer/LICENSE.txt delete mode 100644 dev-support/submarine-installer/README-CN.md delete mode 100644 dev-support/submarine-installer/README.md delete mode 100644 dev-support/submarine-installer/assets/submarine-installer.gif delete mode 100644 dev-support/submarine-installer/install.conf delete mode 100755 dev-support/submarine-installer/install.sh delete mode 100644 dev-support/submarine-installer/package/calico/calico-node.service delete mode 100644 dev-support/submarine-installer/package/calico/calicoctl.cfg delete mode 100644 dev-support/submarine-installer/package/docker/daemon.json delete mode 100644 dev-support/submarine-installer/package/docker/docker.service delete mode 100644 dev-support/submarine-installer/package/etcd/etcd.service delete mode 120000 dev-support/submarine-installer/package/hadoop/yarn/etc delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/capacity-scheduler.xml delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/container-executor.cfg delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/core-site.xml delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/gpu/yarn-site-gpu.xml delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/hadoop-env.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/hdfs-site.xml delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/mapred-env.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/mapred-site.xml delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/resource-types.xml delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/yarn-env.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/yarn-site.xml delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/capacity-scheduler.xml delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/container-executor.cfg delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/core-site.xml delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/gpu/yarn-site-gpu.xml delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/hadoop-env.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/hdfs-site.xml delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/mapred-env.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/mapred-site.xml delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/resource-types.xml delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/yarn-env.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/yarn-site.xml delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/sbin/start-historyserver.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/sbin/start-mr-jobhistory.sh delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/sbin/start-nodemanager.sh delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/sbin/start-registrydns.sh delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/sbin/start-resourcemanager.sh delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/sbin/start-timelinereader.sh delete mode 100644 dev-support/submarine-installer/package/hadoop/yarn/sbin/start-timelineserver.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-historyserver.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-mr-jobhistory.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-nodemanager.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-registrydns.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-resourcemanager.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-timelinereader.sh delete mode 100755 dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-timelineserver.sh delete mode 100644 dev-support/submarine-installer/package/submarine/submarine.sh delete mode 100644 dev-support/submarine-installer/scripts/calico.sh delete mode 100644 dev-support/submarine-installer/scripts/combine-docker-daemons.py delete mode 100644 dev-support/submarine-installer/scripts/docker.sh delete mode 100644 dev-support/submarine-installer/scripts/download-server.sh delete mode 100644 dev-support/submarine-installer/scripts/environment.sh delete mode 100644 dev-support/submarine-installer/scripts/etcd.sh delete mode 100644 dev-support/submarine-installer/scripts/menu.sh delete mode 100644 dev-support/submarine-installer/scripts/nvidia-docker.sh delete mode 100644 dev-support/submarine-installer/scripts/nvidia.sh delete mode 100644 dev-support/submarine-installer/scripts/submarine.sh delete mode 100644 dev-support/submarine-installer/scripts/utils.sh delete mode 100644 dev-support/submarine-installer/scripts/xmlcombine.py delete mode 100644 dev-support/submarine-installer/scripts/yarn.sh delete mode 100644 dev-support/submarine-installer/scripts/yarn_insecure.sh delete mode 100755 dev-support/travis/install_external_dependencies.sh delete mode 100644 dev-support/travis/tf-operator/crd_v1.yaml delete mode 100644 dev-support/travis/tf-operator/tfevent-volume/tfevent-pv.yaml delete mode 100644 dev-support/travis/tf-operator/tfevent-volume/tfevent-pvc.yaml delete mode 100644 docs/assets/128-black-white.png delete mode 100644 docs/assets/128-black.png delete mode 100644 docs/assets/128-white.png delete mode 100644 docs/assets/128.png delete mode 100644 docs/assets/256-black-white.png delete mode 100644 docs/assets/256-black.png delete mode 100644 docs/assets/256-white-backup.png delete mode 100644 docs/assets/256-white.png delete mode 100644 docs/assets/256.png delete mode 100644 docs/assets/32-black-white.png delete mode 100644 docs/assets/32-black.png delete mode 100644 docs/assets/32-white.png delete mode 100644 docs/assets/32.png delete mode 100644 docs/assets/64-black-white.png delete mode 100644 docs/assets/64-black.png delete mode 100644 docs/assets/64-white.png delete mode 100644 docs/assets/64.png delete mode 100644 docs/assets/LOGO-black.svg delete mode 100644 docs/assets/LOGO-blue.svg delete mode 100644 docs/assets/LOGO-white.svg delete mode 100644 docs/assets/Run-Debug-Configuration.png delete mode 100644 docs/assets/apache_incubator.png delete mode 100644 docs/assets/architecture.png delete mode 100644 docs/assets/asf_feather.png delete mode 100644 docs/assets/color_logo_with_text.png delete mode 100644 docs/assets/color_logo_with_text.psd delete mode 100644 docs/assets/created-notebook.png delete mode 100644 docs/assets/design/experiments.png delete mode 100644 docs/assets/design/multi-dc-cloud.png delete mode 100644 docs/assets/job-logs-ui.png delete mode 100644 docs/assets/logo-UEDC.psd delete mode 100644 docs/assets/logo-org.psd delete mode 100644 docs/assets/logo.psd delete mode 100644 docs/assets/logo.svg delete mode 100644 docs/assets/multiple-tensorboard-jobs.png delete mode 100644 docs/assets/notebook-form.png delete mode 100644 docs/assets/notebook-list.png delete mode 100644 docs/assets/submarine-installer.gif delete mode 100644 docs/assets/tensorboard-service.png delete mode 100644 docs/community/HowToCommit.md delete mode 100644 docs/community/README.md delete mode 100644 docs/community/become-a-committer.md delete mode 100644 docs/community/contributing.md delete mode 100644 docs/community/contributors.md delete mode 100644 docs/database/README.md delete mode 100755 docs/database/init-database.sh delete mode 100644 docs/database/metastore.sql delete mode 100644 docs/database/submarine-data.sql delete mode 100644 docs/database/submarine.sql delete mode 100644 docs/design/architecture-and-requirements.md delete mode 100644 docs/design/environments-implementation.md delete mode 100644 docs/design/experiment-implementation.md delete mode 100644 docs/design/implementation-notes.md delete mode 100644 docs/design/notebook-implementation.md delete mode 100644 docs/design/security-implementation.md delete mode 100644 docs/design/storage-implementation.md delete mode 100644 docs/design/submarine-server/architecture.md delete mode 100644 docs/design/submarine-server/jobspec.md delete mode 100644 docs/design/wip-designs/SubmarineClusterServer.md delete mode 100644 docs/design/wip-designs/submarine-launcher.md delete mode 100644 docs/development-guide-home.md delete mode 100644 docs/development/BuildFromCode.md delete mode 100644 docs/development/IntegrationTest.md delete mode 100644 docs/development/QuickDevTips.md delete mode 100644 docs/development/README.md delete mode 100644 docs/ecosystem/kaldi/RunningDistributedThchs30KaldiJobs.md delete mode 100644 docs/ecosystem/kaldi/WriteDockerfileKaldi.md delete mode 100644 docs/ecosystem/kaldi/base/ubuntu-18.04/Dockerfile.gpu.kaldi_latest delete mode 100755 docs/ecosystem/kaldi/build-all.sh delete mode 100644 docs/ecosystem/kaldi/pictures/sge_cluster.png delete mode 100644 docs/ecosystem/kaldi/pictures/sge_stat.png delete mode 100644 docs/ecosystem/kaldi/sge/gencfs.sh delete mode 100644 docs/ecosystem/kaldi/sge/group delete mode 100644 docs/ecosystem/kaldi/sge/passwd delete mode 100644 docs/ecosystem/kaldi/sge/resolv.conf delete mode 100644 docs/ecosystem/kaldi/sge/sge_run.sh delete mode 100644 docs/submarine-sdk/README.md delete mode 100644 docs/submarine-sdk/pysubmarine/development.md delete mode 100644 docs/submarine-sdk/pysubmarine/tracking.md delete mode 100644 docs/submarine-security/spark-security/README.md delete mode 100644 docs/submarine-security/spark-security/build-submarine-spark-security-plugin.md delete mode 100644 docs/user-guide-home.md delete mode 100644 docs/userdocs/k8s/README.md delete mode 100644 docs/userdocs/k8s/api/environment.md delete mode 100644 docs/userdocs/k8s/api/experiment-template.md delete mode 100644 docs/userdocs/k8s/api/experiment.md delete mode 100644 docs/userdocs/k8s/api/notebook.md delete mode 100644 docs/userdocs/k8s/helm.md delete mode 100644 docs/userdocs/k8s/kind.md delete mode 100644 docs/userdocs/k8s/notebook.md delete mode 100644 docs/userdocs/k8s/run-experiment-python-sdk.md delete mode 100644 docs/userdocs/k8s/run-experiment-template-rest.md delete mode 100644 docs/userdocs/k8s/run-pytorch-experiment-rest.md delete mode 100644 docs/userdocs/k8s/run-tensorflow-experiment-rest.md delete mode 100644 docs/userdocs/k8s/run-tensorflow-experiment-ui.md delete mode 100644 docs/userdocs/k8s/tensorflow.md delete mode 100644 docs/userdocs/yarn/Dockerfiles.md delete mode 100644 docs/userdocs/yarn/README.md delete mode 100644 docs/userdocs/yarn/TestAndTroubleshooting.md delete mode 100644 docs/userdocs/yarn/WriteDockerfileMX.md delete mode 100644 docs/userdocs/yarn/WriteDockerfilePT.md delete mode 100644 docs/userdocs/yarn/WriteDockerfileTF.md delete mode 100644 docs/userdocs/yarn/YARNRuntimeGuide.md delete mode 100644 docs/userdocs/yarn/docker/mxnet/base/ubuntu-18.04/Dockerfile.cpu.mx_latest delete mode 100644 docs/userdocs/yarn/docker/mxnet/base/ubuntu-18.04/Dockerfile.gpu.mx_latest delete mode 100755 docs/userdocs/yarn/docker/mxnet/build-all.sh delete mode 100644 docs/userdocs/yarn/docker/mxnet/cifar10/Dockerfile.cifar10.mx_1.5.1 delete mode 100644 docs/userdocs/yarn/docker/pytorch/base/ubuntu-18.04/Dockerfile.gpu.pytorch_latest delete mode 100755 docs/userdocs/yarn/docker/pytorch/build-all.sh delete mode 100644 docs/userdocs/yarn/docker/pytorch/with-cifar10-models/cifar10_tutorial.py delete mode 100644 docs/userdocs/yarn/docker/pytorch/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.pytorch_latest delete mode 100644 docs/userdocs/yarn/docker/tensorflow/base/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 delete mode 100644 docs/userdocs/yarn/docker/tensorflow/base/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 delete mode 100755 docs/userdocs/yarn/docker/tensorflow/build-all.sh delete mode 100644 docs/userdocs/yarn/docker/tensorflow/mnist/Dockerfile.tony.tf.mnist.tf_1.13.1 delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/README.md delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10.py delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_main.py delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_model.py delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_utils.py delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/generate_cifar10_tfrecords.py delete mode 100644 docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/model_base.py delete mode 100644 docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/Dockerfile.gpu delete mode 100644 docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/run_container.sh delete mode 100644 docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/shiro.ini delete mode 100644 docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/zeppelin-site.xml delete mode 100644 docs/workbench/HowToRun.md delete mode 100644 docs/workbench/README.md delete mode 100644 docs/workbench/README.zh-CN.md delete mode 100644 docs/workbench/assets/workspace-project-step1.png delete mode 100644 docs/workbench/assets/workspace-project-step2-blank.png delete mode 100644 docs/workbench/assets/workspace-project-step2-git.png delete mode 100644 docs/workbench/assets/workspace-project-step2-template.png delete mode 100644 docs/workbench/assets/workspace-project-step2-upload.png delete mode 100644 docs/workbench/assets/workspace-project-step3.png delete mode 100644 docs/workbench/assets/workspace-project.png delete mode 100644 docs/workbench/notebook/jupyter.yaml delete mode 100644 docs/workbench/notebook/setup-jupyter.md delete mode 100644 helm-charts/submarine/.helmignore delete mode 100644 helm-charts/submarine/Chart.yaml delete mode 100644 helm-charts/submarine/charts/notebook-controller/.helmignore delete mode 100644 helm-charts/submarine/charts/notebook-controller/Chart.yaml delete mode 100644 helm-charts/submarine/charts/notebook-controller/crds/crd.yaml delete mode 100644 helm-charts/submarine/charts/notebook-controller/templates/cluster-role-binding.yaml delete mode 100644 helm-charts/submarine/charts/notebook-controller/templates/cluster-role.yaml delete mode 100644 helm-charts/submarine/charts/notebook-controller/templates/deployment.yaml delete mode 100644 helm-charts/submarine/charts/notebook-controller/templates/service-account.yaml delete mode 100644 helm-charts/submarine/charts/notebook-controller/templates/service.yaml delete mode 100644 helm-charts/submarine/charts/notebook-controller/values.yaml delete mode 100644 helm-charts/submarine/charts/pytorchjob/.helmignore delete mode 100644 helm-charts/submarine/charts/pytorchjob/Chart.yaml delete mode 100644 helm-charts/submarine/charts/pytorchjob/crds/crd.yaml delete mode 100644 helm-charts/submarine/charts/pytorchjob/templates/deployment.yaml delete mode 100644 helm-charts/submarine/charts/pytorchjob/templates/podgroup.yaml delete mode 100644 helm-charts/submarine/charts/pytorchjob/templates/rbac.yaml delete mode 100644 helm-charts/submarine/charts/pytorchjob/templates/service.yaml delete mode 100644 helm-charts/submarine/charts/pytorchjob/values.yaml delete mode 100644 helm-charts/submarine/charts/tfjob/.helmignore delete mode 100644 helm-charts/submarine/charts/tfjob/Chart.yaml delete mode 100644 helm-charts/submarine/charts/tfjob/crds/crd.yaml delete mode 100644 helm-charts/submarine/charts/tfjob/templates/cluster-role-binding.yaml delete mode 100644 helm-charts/submarine/charts/tfjob/templates/cluster-role.yaml delete mode 100644 helm-charts/submarine/charts/tfjob/templates/deployment.yaml delete mode 100644 helm-charts/submarine/charts/tfjob/templates/service-account.yaml delete mode 100644 helm-charts/submarine/charts/tfjob/templates/service.yaml delete mode 100644 helm-charts/submarine/charts/tfjob/values.yaml delete mode 100644 helm-charts/submarine/charts/traefik/.helmignore delete mode 100644 helm-charts/submarine/charts/traefik/Chart.yaml delete mode 100644 helm-charts/submarine/charts/traefik/crds/ingressroute-tcp.yaml delete mode 100644 helm-charts/submarine/charts/traefik/crds/ingressroute-udp.yaml delete mode 100644 helm-charts/submarine/charts/traefik/crds/ingressroute.yaml delete mode 100644 helm-charts/submarine/charts/traefik/crds/middlewares.yaml delete mode 100644 helm-charts/submarine/charts/traefik/crds/tls-options.yaml delete mode 100644 helm-charts/submarine/charts/traefik/crds/tls-stores.yaml delete mode 100644 helm-charts/submarine/charts/traefik/crds/traefik-services.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/_helpers.tpl delete mode 100644 helm-charts/submarine/charts/traefik/templates/dashboard-hook-ingressroute.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/deployment.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/hpa.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/pod-disruption-budget.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/pvc.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/rbac/cluster-role-binding.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/rbac/cluster-role.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/rbac/role-binding.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/rbac/role.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/rbac/service-account.yaml delete mode 100644 helm-charts/submarine/charts/traefik/templates/service.yaml delete mode 100644 helm-charts/submarine/charts/traefik/values.yaml delete mode 100644 helm-charts/submarine/templates/rbac.yaml delete mode 100644 helm-charts/submarine/templates/submarine-database.yaml delete mode 100644 helm-charts/submarine/templates/submarine-ingress.yaml delete mode 100644 helm-charts/submarine/templates/submarine-server.yaml delete mode 100644 helm-charts/submarine/values.yaml delete mode 100644 licenses-binary/LICENSE-asm.txt delete mode 100644 licenses-binary/LICENSE-hamcrest.txt delete mode 100644 licenses-binary/LICENSE-jgit.txt delete mode 100644 licenses-binary/LICENSE-pagehelper.txt delete mode 100644 licenses-binary/LICENSE-paranamer.txt delete mode 100644 licenses-binary/LICENSE-protobuf.txt delete mode 100644 licenses-binary/LICENSE-slf4j.txt delete mode 100644 licenses-binary/LICENSE-tony.txt delete mode 100644 submarine-all/pom.xml delete mode 100644 submarine-client/pom.xml delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/AbstractCli.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/Cli.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/CliConstants.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/CliUtils.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/Command.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/ShowJobCli.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/ConfigType.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/Localization.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/ParametersHolder.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/Quicklink.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/RunParameters.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/ShowJobParameters.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/runjob/MXNetRunJobParameters.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/runjob/PyTorchRunJobParameters.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/runjob/RunJobParameters.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/runjob/TensorFlowRunJobParameters.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/Configs.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/PsRole.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/Role.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/Roles.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/Scheduling.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/Security.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/Spec.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/TensorBoard.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/WorkerRole.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/YamlConfigFile.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/param/yaml/YamlParseException.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/remote/ClientProto.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/remote/JobSubmitterRpcImpl.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/remote/RpcContext.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/remote/RpcRuntimeFactory.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/runjob/RoleParameters.java delete mode 100644 submarine-client/src/main/java/org/apache/submarine/client/cli/runjob/RunJobCli.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/ShowJobCliParsingTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/YamlConfigTestUtils.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/RunJobCliParsingCommonTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/RunJobCliParsingCommonYamlTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/RunJobCliParsingParameterizedTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/mxnet/RunJobCliParsingMXNetTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/mxnet/RunJobCliParsingMXNetYamlTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/pytorch/RunJobCliParsingPyTorchTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/pytorch/RunJobCliParsingPyTorchYamlTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/tensorflow/RunJobCliParsingTensorFlowTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/tensorflow/RunJobCliParsingTensorFlowYamlStandaloneTest.java delete mode 100644 submarine-client/src/test/java/org/apache/submarine/client/cli/runjob/tensorflow/RunJobCliParsingTensorFlowYamlTest.java delete mode 100644 submarine-client/src/test/resources/core-site.xml delete mode 100644 submarine-client/src/test/resources/hdfs-site.xml delete mode 100644 submarine-client/src/test/resources/resource-types.xml delete mode 100644 submarine-client/src/test/resources/runjob-common-yaml/empty-framework.yaml delete mode 100644 submarine-client/src/test/resources/runjob-common-yaml/invalid-framework.yaml delete mode 100644 submarine-client/src/test/resources/runjob-common-yaml/missing-configs.yaml delete mode 100644 submarine-client/src/test/resources/runjob-common-yaml/missing-framework.yaml delete mode 100644 submarine-client/src/test/resources/runjob-common-yaml/some-sections-missing.yaml delete mode 100644 submarine-client/src/test/resources/runjob-common-yaml/test-false-values.yaml delete mode 100644 submarine-client/src/test/resources/runjob-common-yaml/wrong-indentation.yaml delete mode 100644 submarine-client/src/test/resources/runjob-common-yaml/wrong-property-name.yaml delete mode 100644 submarine-client/src/test/resources/runjob-mxnet-yaml/envs-are-missing.yaml delete mode 100644 submarine-client/src/test/resources/runjob-mxnet-yaml/invalid-config-tensorboard-section.yaml delete mode 100644 submarine-client/src/test/resources/runjob-mxnet-yaml/security-principal-is-missing.yaml delete mode 100644 submarine-client/src/test/resources/runjob-mxnet-yaml/valid-config-with-overrides.yaml delete mode 100644 submarine-client/src/test/resources/runjob-mxnet-yaml/valid-config.yaml delete mode 100644 submarine-client/src/test/resources/runjob-mxnet-yaml/valid-gpu-config.yaml delete mode 100644 submarine-client/src/test/resources/runjob-pytorch-yaml/envs-are-missing.yaml delete mode 100644 submarine-client/src/test/resources/runjob-pytorch-yaml/invalid-config-ps-section.yaml delete mode 100644 submarine-client/src/test/resources/runjob-pytorch-yaml/invalid-config-scheduler-section.yaml delete mode 100644 submarine-client/src/test/resources/runjob-pytorch-yaml/invalid-config-tensorboard-section.yaml delete mode 100644 submarine-client/src/test/resources/runjob-pytorch-yaml/security-principal-is-missing.yaml delete mode 100644 submarine-client/src/test/resources/runjob-pytorch-yaml/valid-config-with-overrides.yaml delete mode 100644 submarine-client/src/test/resources/runjob-pytorch-yaml/valid-config.yaml delete mode 100644 submarine-client/src/test/resources/runjob-pytorch-yaml/valid-gpu-config.yaml delete mode 100644 submarine-client/src/test/resources/runjob-tensorflow-yaml/envs-are-missing.yaml delete mode 100644 submarine-client/src/test/resources/runjob-tensorflow-yaml/invalid-config-scheduler-section.yaml delete mode 100644 submarine-client/src/test/resources/runjob-tensorflow-yaml/security-principal-is-missing.yaml delete mode 100644 submarine-client/src/test/resources/runjob-tensorflow-yaml/tensorboard-dockerimage-is-missing.yaml delete mode 100644 submarine-client/src/test/resources/runjob-tensorflow-yaml/valid-config-with-overrides.yaml delete mode 100644 submarine-client/src/test/resources/runjob-tensorflow-yaml/valid-config.yaml delete mode 100644 submarine-client/src/test/resources/runjob-tensorflow-yaml/valid-gpu-config.yaml delete mode 100644 submarine-cloud/Dockerfile delete mode 100644 submarine-cloud/Makefile delete mode 100755 submarine-cloud/build.sh delete mode 100644 submarine-cloud/cmd/operator/main.go delete mode 100644 submarine-cloud/go.mod delete mode 100644 submarine-cloud/go.sum delete mode 100644 submarine-cloud/hack/boilerplate.go.txt delete mode 100644 submarine-cloud/hack/custom-boilerplate.go.txt delete mode 100755 submarine-cloud/hack/deploy-submarine.sh delete mode 100755 submarine-cloud/hack/integration-test.sh delete mode 100755 submarine-cloud/hack/kind delete mode 100755 submarine-cloud/hack/kind-cluster-build.sh delete mode 100755 submarine-cloud/hack/kubectl delete mode 100755 submarine-cloud/hack/lib.sh delete mode 100755 submarine-cloud/hack/update-codegen.sh delete mode 100755 submarine-cloud/hack/verify-codegen.sh delete mode 100644 submarine-cloud/manifests/crd.yaml delete mode 100644 submarine-cloud/manifests/submarine-cluster/rbac.yaml delete mode 100644 submarine-cloud/manifests/submarine-cluster/serviceaccounts.yaml delete mode 100644 submarine-cloud/manifests/submarine-cluster/submarine-database.yaml delete mode 100644 submarine-cloud/manifests/submarine-cluster/submarine-server.yaml delete mode 100644 submarine-cloud/manifests/submarine-operator/deployment.yaml delete mode 100644 submarine-cloud/manifests/submarine-operator/rbac.yaml delete mode 100644 submarine-cloud/manifests/submarine-operator/serviceaccounts.yaml delete mode 100644 submarine-cloud/pkg/apis/submarine/register.go delete mode 100644 submarine-cloud/pkg/apis/submarine/v1alpha1/const.go delete mode 100644 submarine-cloud/pkg/apis/submarine/v1alpha1/default.go delete mode 100644 submarine-cloud/pkg/apis/submarine/v1alpha1/doc.go delete mode 100644 submarine-cloud/pkg/apis/submarine/v1alpha1/register.go delete mode 100644 submarine-cloud/pkg/apis/submarine/v1alpha1/types.go delete mode 100644 submarine-cloud/pkg/apis/submarine/v1alpha1/zz_generated.deepcopy.go delete mode 100644 submarine-cloud/pkg/client/client.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/clientset.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/doc.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/fake/clientset_generated.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/fake/doc.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/fake/register.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/scheme/doc.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/scheme/register.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/typed/submarine/v1alpha1/doc.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/typed/submarine/v1alpha1/fake/doc.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/typed/submarine/v1alpha1/fake/fake_submarine_client.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/typed/submarine/v1alpha1/fake/fake_submarinecluster.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/typed/submarine/v1alpha1/generated_expansion.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/typed/submarine/v1alpha1/submarine_client.go delete mode 100644 submarine-cloud/pkg/client/clientset/versioned/typed/submarine/v1alpha1/submarinecluster.go delete mode 100644 submarine-cloud/pkg/client/informers/externalversions/factory.go delete mode 100644 submarine-cloud/pkg/client/informers/externalversions/generic.go delete mode 100644 submarine-cloud/pkg/client/informers/externalversions/internalinterfaces/factory_interfaces.go delete mode 100644 submarine-cloud/pkg/client/informers/externalversions/submarine/interface.go delete mode 100644 submarine-cloud/pkg/client/informers/externalversions/submarine/v1alpha1/interface.go delete mode 100644 submarine-cloud/pkg/client/informers/externalversions/submarine/v1alpha1/submarinecluster.go delete mode 100644 submarine-cloud/pkg/client/listers/submarine/v1alpha1/expansion_generated.go delete mode 100644 submarine-cloud/pkg/client/listers/submarine/v1alpha1/submarinecluster.go delete mode 100644 submarine-cloud/pkg/config/cluster.go delete mode 100644 submarine-cloud/pkg/config/submarine.go delete mode 100644 submarine-cloud/pkg/controller/actions.go delete mode 100644 submarine-cloud/pkg/controller/checks.go delete mode 100644 submarine-cloud/pkg/controller/clustering/cluster-migration.go delete mode 100644 submarine-cloud/pkg/controller/clustering/cluster-placement.go delete mode 100644 submarine-cloud/pkg/controller/clustering/cluster-roles.go delete mode 100644 submarine-cloud/pkg/controller/condition.go delete mode 100644 submarine-cloud/pkg/controller/config.go delete mode 100644 submarine-cloud/pkg/controller/controller.go delete mode 100644 submarine-cloud/pkg/controller/pod/control.go delete mode 100644 submarine-cloud/pkg/controller/pod/utils.go delete mode 100644 submarine-cloud/pkg/controller/poddisruptionbudgets_control.go delete mode 100644 submarine-cloud/pkg/controller/sanitycheck/process.go delete mode 100644 submarine-cloud/pkg/controller/services_control.go delete mode 100644 submarine-cloud/pkg/controller/utils.go delete mode 100644 submarine-cloud/pkg/operator/config.go delete mode 100644 submarine-cloud/pkg/operator/operator.go delete mode 100644 submarine-cloud/pkg/signal/signal.go delete mode 100644 submarine-cloud/pkg/submarine/admin.go delete mode 100644 submarine-cloud/pkg/submarine/client.go delete mode 100644 submarine-cloud/pkg/submarine/cluster.go delete mode 100644 submarine-cloud/pkg/submarine/clusterinfo.go delete mode 100644 submarine-cloud/pkg/submarine/connections.go delete mode 100644 submarine-cloud/pkg/submarine/errors.go delete mode 100644 submarine-cloud/pkg/submarine/node.go delete mode 100644 submarine-cloud/pkg/utils/build.go delete mode 100644 submarine-cloud/pom.xml delete mode 100644 submarine-cloud/submarine-operator.md delete mode 100644 submarine-dist/pom.xml delete mode 100644 submarine-dist/src/assembly/distribution.xml delete mode 100644 submarine-dist/src/assembly/src-distribution.xml delete mode 100644 submarine-sdk/pysubmarine/.style.yapf delete mode 100644 submarine-sdk/pysubmarine/README.md delete mode 100644 submarine-sdk/pysubmarine/example/data/te.libsvm delete mode 100644 submarine-sdk/pysubmarine/example/data/tr.libsvm delete mode 100644 submarine-sdk/pysubmarine/example/data/va.libsvm delete mode 100644 submarine-sdk/pysubmarine/example/deepfm.json delete mode 100644 submarine-sdk/pysubmarine/example/deepfm_example.ipynb delete mode 100644 submarine-sdk/pysubmarine/example/pytorch/afm/afm.json delete mode 100644 submarine-sdk/pysubmarine/example/pytorch/afm/run_afm.py delete mode 100644 submarine-sdk/pysubmarine/example/pytorch/afm/run_afm.sh delete mode 100644 submarine-sdk/pysubmarine/example/pytorch/deepfm/deepfm.json delete mode 100644 submarine-sdk/pysubmarine/example/pytorch/deepfm/run_deepfm.py delete mode 100644 submarine-sdk/pysubmarine/example/pytorch/deepfm/run_deepfm.sh delete mode 100644 submarine-sdk/pysubmarine/example/submarine_experiment_sdk.ipynb delete mode 100644 submarine-sdk/pysubmarine/example/tensorflow/deepfm/README.md delete mode 100644 submarine-sdk/pysubmarine/example/tensorflow/deepfm/deepfm.json delete mode 100644 submarine-sdk/pysubmarine/example/tensorflow/deepfm/deepfm_distributed.json delete mode 100644 submarine-sdk/pysubmarine/example/tensorflow/deepfm/run_deepfm.py delete mode 100644 submarine-sdk/pysubmarine/example/tensorflow/fm/README.md delete mode 100644 submarine-sdk/pysubmarine/example/tensorflow/fm/fm.json delete mode 100644 submarine-sdk/pysubmarine/example/tensorflow/fm/fm_distributed.json delete mode 100644 submarine-sdk/pysubmarine/example/tensorflow/fm/run_fm.py delete mode 100644 submarine-sdk/pysubmarine/example/tracking.py delete mode 100755 submarine-sdk/pysubmarine/github-actions/auto-format.sh delete mode 100644 submarine-sdk/pysubmarine/github-actions/lint-requirements.txt delete mode 100755 submarine-sdk/pysubmarine/github-actions/lint.sh delete mode 100644 submarine-sdk/pysubmarine/github-actions/pypi-requirements.txt delete mode 100644 submarine-sdk/pysubmarine/github-actions/test-requirements.txt delete mode 100644 submarine-sdk/pysubmarine/pylintrc delete mode 100644 submarine-sdk/pysubmarine/setup.py delete mode 100644 submarine-sdk/pysubmarine/submarine/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/entities/Metric.py delete mode 100644 submarine-sdk/pysubmarine/submarine/entities/Param.py delete mode 100644 submarine-sdk/pysubmarine/submarine/entities/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/entities/_submarine_object.py delete mode 100644 submarine-sdk/pysubmarine/submarine/exceptions.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/api/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/api/experiment_api.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/api/experiment_client.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/api_client.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/configuration.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/exceptions.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/models/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/models/code_spec.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/models/environment_spec.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/models/experiment_meta.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/models/experiment_spec.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/models/experiment_task_spec.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/models/json_response.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/models/kernel_spec.py delete mode 100644 submarine-sdk/pysubmarine/submarine/experiment/rest.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/abstract_model.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/input/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/input/libsvm_dataset.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/layers/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/layers/core.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/loss.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/metric.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/model/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/model/base_pytorch_model.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/model/ctr/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/model/ctr/afm.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/model/ctr/deepfm.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/optimizer.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/parameters.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/pytorch/registries.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/input/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/input/input.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/layers/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/layers/core.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/model/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/model/base_tf_model.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/model/deepfm.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/model/fm.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/model/nfm.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/optimizer.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/parameters.py delete mode 100644 submarine-sdk/pysubmarine/submarine/ml/tensorflow/registries.py delete mode 100644 submarine-sdk/pysubmarine/submarine/store/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/store/abstract_store.py delete mode 100644 submarine-sdk/pysubmarine/submarine/store/database/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/store/database/db_types.py delete mode 100644 submarine-sdk/pysubmarine/submarine/store/database/models.py delete mode 100644 submarine-sdk/pysubmarine/submarine/store/sqlalchemy_store.py delete mode 100644 submarine-sdk/pysubmarine/submarine/tracking/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/tracking/client.py delete mode 100644 submarine-sdk/pysubmarine/submarine/tracking/fluent.py delete mode 100644 submarine-sdk/pysubmarine/submarine/tracking/utils.py delete mode 100644 submarine-sdk/pysubmarine/submarine/utils/__init__.py delete mode 100644 submarine-sdk/pysubmarine/submarine/utils/env.py delete mode 100644 submarine-sdk/pysubmarine/submarine/utils/fileio.py delete mode 100644 submarine-sdk/pysubmarine/submarine/utils/pytorch_utils.py delete mode 100644 submarine-sdk/pysubmarine/submarine/utils/rest_utils.py delete mode 100644 submarine-sdk/pysubmarine/submarine/utils/tf_utils.py delete mode 100644 submarine-sdk/pysubmarine/submarine/utils/validation.py delete mode 100644 submarine-sdk/pysubmarine/tests/__init__.py delete mode 100644 submarine-sdk/pysubmarine/tests/entities/test_metrics.py delete mode 100644 submarine-sdk/pysubmarine/tests/entities/test_params.py delete mode 100644 submarine-sdk/pysubmarine/tests/experiment/test_experiment_client.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/__init__.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/pytorch/model/conftest.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/pytorch/model/test_afm_pytorch.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/pytorch/model/test_deepfm_pytorch.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/pytorch/test_loss_pytorch.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/pytorch/test_metric_pytorch.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/pytorch/test_optimizer_pytorch.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/tensorflow/model/conftest.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/tensorflow/model/test_base_tf_model.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/tensorflow/model/test_deepfm.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/tensorflow/model/test_fm.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/tensorflow/model/test_nfm.py delete mode 100644 submarine-sdk/pysubmarine/tests/ml/tensorflow/test_optimizer.py delete mode 100644 submarine-sdk/pysubmarine/tests/store/test_sqlalchemy_store.py delete mode 100644 submarine-sdk/pysubmarine/tests/tracking/__init__.py delete mode 100644 submarine-sdk/pysubmarine/tests/tracking/test_tracking.py delete mode 100644 submarine-sdk/pysubmarine/tests/tracking/test_utils.py delete mode 100644 submarine-sdk/pysubmarine/tests/utils/test_env.py delete mode 100644 submarine-sdk/pysubmarine/tests/utils/test_rest_utils.py delete mode 100644 submarine-sdk/pysubmarine/tests/utils/test_tf_utils.py delete mode 100644 submarine-sdk/pysubmarine/tests/utils/test_validation.py delete mode 100644 submarine-server/pom.xml delete mode 100644 submarine-server/server-api/pom.xml delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/Submitter.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/environment/Environment.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/environment/EnvironmentId.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/exception/InvalidSpecException.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/experiment/Experiment.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/experiment/ExperimentId.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/experiment/ExperimentLog.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/experimenttemplate/ExperimentTemplate.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/experimenttemplate/ExperimentTemplateId.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/experimenttemplate/ExperimentTemplateSubmit.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/notebook/Notebook.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/notebook/NotebookId.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/CodeSpec.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/EnvironmentSpec.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/ExperimentMeta.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/ExperimentSpec.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/ExperimentTaskSpec.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/ExperimentTemplateParamSpec.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/ExperimentTemplateSpec.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/KernelSpec.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/NotebookMeta.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/NotebookPodSpec.java delete mode 100644 submarine-server/server-api/src/main/java/org/apache/submarine/server/api/spec/NotebookSpec.java delete mode 100644 submarine-server/server-core/pom.xml delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/Bootstrap.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/SubmarineServer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/SubmitterManager.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/database/entity/BaseEntity.java delete mode 100755 submarine-server/server-core/src/main/java/org/apache/submarine/server/database/utils/MyBatisUtil.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/environment/EnvironmentManager.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/environment/database/entity/EnvironmentEntity.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/environment/database/mappers/EnvironmentMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/experiment/ExperimentManager.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/experimenttemplate/ExperimentTemplateManager.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/experimenttemplate/database/entity/ExperimentTemplateEntity.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/experimenttemplate/database/mappers/ExperimentTemplateMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/gson/EnvironmentIdDeserializer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/gson/EnvironmentIdSerializer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/gson/ExperimentIdDeserializer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/gson/ExperimentIdSerializer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/gson/NotebookIdDeserializer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/gson/NotebookIdSerializer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/notebook/NotebookManager.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/response/DictAnnotation.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/response/JsonExclusionStrategy.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/response/JsonResponse.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/ClusterRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/EnvironmentRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/ExperimentRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/ExperimentTemplateRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/MetaStoreRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/NotebookRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/RestConstants.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/provider/YamlEntityProvider.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/utils/GitHttpRequest.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/utils/GitUtils.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/annotation/Dict.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/annotation/SubmarineApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/Job.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/Metric.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/Param.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/Project.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/ProjectFiles.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/SysDept.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/SysDeptSelect.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/SysDeptTree.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/SysDict.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/SysDictItem.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/SysMessage.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/SysUser.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/Team.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/entity/TeamMember.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/JobMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/MetricMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/ParamMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/ProjectFilesMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/ProjectMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/SysDeptMapper.java delete mode 100755 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/SysDictItemMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/SysDictMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/SysMessageMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/SysUserMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/SystemMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/TeamMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/mappers/TeamMemberMapper.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/JobService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/MetricService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/ParamService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/ProjectFilesService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/ProjectService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/SysDictItemService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/SysMessageService.java delete mode 100755 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/SysUserService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/TeamMemberService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/service/TeamService.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/utils/CustomJsonDateDeserializer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/utils/DepartmentUtil.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/database/utils/MybatisGenerator.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/entity/Action.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/entity/Permission.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/entity/Role.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/entity/User.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/entity/UserInfo.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/LoginRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/MetricRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/ParamRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/ProjectRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/SysDeptRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/SysDictItemRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/SysDictRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/SysUserRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/SystemRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/rest/TeamRestApi.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/websocket/ConnectionManager.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/websocket/DateJsonDeserializer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/websocket/Message.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/websocket/NotebookServer.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/websocket/NotebookSocket.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/websocket/NotebookSocketListener.java delete mode 100644 submarine-server/server-core/src/main/java/org/apache/submarine/server/workbench/websocket/NotebookWebSocketCreator.java delete mode 100644 submarine-server/server-core/src/main/resources/log4j.properties delete mode 100644 submarine-server/server-core/src/main/resources/mbgConfiguration.xml delete mode 100644 submarine-server/server-core/src/main/resources/mybatis-config-metastore.xml delete mode 100755 submarine-server/server-core/src/main/resources/mybatis-config.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/EnvironmentMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/ExperimentTemplateMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/JobMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/MetricMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/ParamMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/ProjectFilesMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/ProjectMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/SysDeptMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/SysDictItemMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/SysDictMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/SysMessageMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/SysUserMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/SystemMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/TeamMapper.xml delete mode 100644 submarine-server/server-core/src/main/resources/org/apache/submarine/database/mappers/TeamMemberMapper.xml delete mode 100755 submarine-server/server-core/src/main/resources/submarine-site.xml delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/AbstractSubmarineServerTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/SubmarineServerClusterTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/SubmarineServerTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/response/JsonResponseTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/rest/ClusterRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/rest/EnvironmentRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/rest/ExperimentRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/rest/ExperimentTemplateRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/rest/MetaStoreRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/utils/GitUtilsTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/utils/TestUtils.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/service/JobServiceTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/service/MetricServiceTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/service/ParamServiceTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/service/ProjectServiceTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/service/SysUserServiceTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/service/TeamMemberServiceTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/service/TeamServiceTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/utils/DepartmentUtilTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/database/utils/DictAnnotationTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/rest/CommonDataTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/rest/SysDeptRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/rest/SysDictItemRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/rest/SysDictRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/rest/SysUserRestApiTest.java delete mode 100644 submarine-server/server-core/src/test/java/org/apache/submarine/server/workbench/websocket/NotebookServerTest.java delete mode 100644 submarine-server/server-core/src/test/resources/environment/test_env_1.json delete mode 100644 submarine-server/server-core/src/test/resources/environment/test_env_2.json delete mode 100644 submarine-server/server-core/src/test/resources/environment/test_env_3.json delete mode 100644 submarine-server/server-core/src/test/resources/experimentTemplate/test_template_1.json delete mode 100644 submarine-server/server-core/src/test/resources/experimentTemplate/test_template_1_submit.json delete mode 100644 submarine-server/server-rpc/pom.xml delete mode 100644 submarine-server/server-rpc/src/main/java/org/apache/submarine/server/rpc/SubmarineRpcServer.java delete mode 100644 submarine-server/server-rpc/src/main/java/org/apache/submarine/server/rpc/SubmarineRpcServerProto.java delete mode 100644 submarine-server/server-rpc/src/test/java/org/apache/submarine/server/rpc/MockRpcServer.java delete mode 100644 submarine-server/server-rpc/src/test/java/org/apache/submarine/server/rpc/RpcServerTestUtils.java delete mode 100644 submarine-server/server-rpc/src/test/java/org/apache/submarine/server/rpc/SubmarineRpcClient.java delete mode 100644 submarine-server/server-rpc/src/test/java/org/apache/submarine/server/rpc/SubmarineRpcServerTest.java delete mode 100644 submarine-server/server-submitter/pom.xml delete mode 100644 submarine-server/server-submitter/submitter-k8s/pom.xml delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/K8sSubmitter.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/experiment/codelocalizer/AbstractCodeLocalizer.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/experiment/codelocalizer/CodeLocalizer.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/experiment/codelocalizer/DummyCodeLocalizer.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/experiment/codelocalizer/GitCodeLocalizer.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/experiment/codelocalizer/HTTPGitCodeLocalizer.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/experiment/codelocalizer/SSHGitCodeLocalizer.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/CustomResourceJob.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/CustomResourceJobList.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/ListMeta.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/MLJob.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/MLJobReplicaSpec.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/MLJobReplicaType.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/MLJobSpec.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/NotebookCR.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/NotebookCRList.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/NotebookCRSpec.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/ObjectMeta.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/ingressroute/IngressRoute.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/ingressroute/IngressRouteSpec.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/ingressroute/SpecRoute.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/pytorchjob/PyTorchJob.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/pytorchjob/PyTorchJobReplicaType.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/pytorchjob/PyTorchJobSpec.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/tfjob/TFJob.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/tfjob/TFJobReplicaType.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/model/tfjob/TFJobSpec.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/parser/ExperimentSpecParser.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/parser/NotebookSpecParser.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/java/org/apache/submarine/server/submitter/k8s/util/MLJobConverter.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/main/resources/log4j.properties delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/java/org/apache/submarine/server/submitter/k8s/ExperimentSpecParserTest.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/java/org/apache/submarine/server/submitter/k8s/K8SJobSubmitterTest.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/java/org/apache/submarine/server/submitter/k8s/MLJobConverterTest.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/java/org/apache/submarine/server/submitter/k8s/NotebookSpecParserTest.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/java/org/apache/submarine/server/submitter/k8s/SpecBuilder.java delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/resources/notebook_req.json delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/resources/pytorch_job_req.json delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/resources/pytorch_job_req_env.json delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/resources/pytorch_job_req_http_git_code_localizer.json delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/resources/pytorch_job_req_invalid_env.json delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/resources/pytorch_job_req_ssh_git_code_localizer.json delete mode 100644 submarine-server/server-submitter/submitter-k8s/src/test/resources/tf_mnist_req.json delete mode 100644 submarine-server/server-submitter/submitter-yarn/README.md delete mode 100644 submarine-server/server-submitter/submitter-yarn/pom.xml delete mode 100644 submarine-server/server-submitter/submitter-yarn/src/main/java/org/apache/submarine/server/submitter/yarn/JobStatusBuilder.java delete mode 100644 submarine-server/server-submitter/submitter-yarn/src/main/java/org/apache/submarine/server/submitter/yarn/YarnJobMonitor.java delete mode 100644 submarine-server/server-submitter/submitter-yarn/src/main/java/org/apache/submarine/server/submitter/yarn/YarnJobSubmitter.java delete mode 100644 submarine-server/server-submitter/submitter-yarn/src/main/java/org/apache/submarine/server/submitter/yarn/YarnRuntimeFactory.java delete mode 100644 submarine-server/server-submitter/submitter-yarn/src/main/java/org/apache/submarine/server/submitter/yarn/YarnUtils.java delete mode 100644 submarine-server/server-submitter/submitter-yarn/src/test/java/YarnUtilsTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/README.md delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/pom.xml delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/AbstractComponent.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/AbstractServiceSpec.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/FileSystemOperations.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/HadoopEnvironmentSetup.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/ServiceSpec.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/ServiceSpecFileGenerator.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/ServiceWrapper.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/WorkerComponentFactory.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/YarnServiceJobMonitor.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/YarnServiceJobSubmitter.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/YarnServiceRuntimeFactory.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/YarnServiceUtils.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/builder/JobComponentStatusBuilder.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/builder/JobStatusBuilder.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/command/AbstractLaunchCommand.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/command/LaunchCommandFactory.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/command/LaunchScriptBuilder.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/command/PyTorchLaunchCommandFactory.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/command/TensorFlowLaunchCommandFactory.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/pytorch/PyTorchServiceSpec.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/pytorch/command/PyTorchWorkerLaunchCommand.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/pytorch/component/PyTorchWorkerComponent.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/TensorFlowCommons.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/TensorFlowConfigEnvGenerator.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/TensorFlowServiceSpec.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/command/TensorBoardLaunchCommand.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/command/TensorFlowLaunchCommand.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/command/TensorFlowPsLaunchCommand.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/command/TensorFlowWorkerLaunchCommand.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/component/TensorBoardComponent.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/component/TensorFlowPsComponent.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/component/TensorFlowWorkerComponent.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/utils/ClassPathUtilities.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/utils/DockerUtilities.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/utils/EnvironmentUtilities.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/utils/KerberosPrincipalFactory.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/utils/Localizer.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/utils/SubmarineResourceUtils.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/main/java/org/apache/submarine/server/submitter/yarnservice/utils/ZipUtilities.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/FileUtilitiesForTests.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/client/cli/yarnservice/ParamBuilderForTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/client/cli/yarnservice/YarnServiceCliTestUtils.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/client/cli/yarnservice/YarnServiceRunJobCliCommonsTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/client/cli/yarnservice/YarnServiceRunJobCliLocalizationTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/client/cli/yarnservice/YarnServiceRunJobCliTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/FileSystemOperationsTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/ServiceWrapperTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/command/AbstractTFLaunchCommandTestHelper.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/command/LaunchCommandFactoryTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/pytorch/PyTorchServiceSpecTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/TensorFlowConfigEnvGeneratorTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/TensorFlowServiceSpecTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/command/TensorBoardLaunchCommandTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/command/TensorFlowLaunchCommandTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/component/ComponentTestCommons.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/component/TensorBoardComponentTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/component/TensorFlowPsComponentTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/tensorflow/component/TensorFlowWorkerComponentTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/utils/ClassPathUtilitiesTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/utils/EnvironmentUtilitiesTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/utils/KerberosPrincipalFactoryTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/utils/LocalizerTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/utils/SubmarineResourceUtilsTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/java/org/apache/submarine/server/submitter/yarnservice/utils/ZipUtilitiesTest.java delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/resources/core-site.xml delete mode 100644 submarine-server/server-submitter/submitter-yarnservice/src/test/resources/hdfs-site.xml delete mode 100644 submarine-test/pom.xml delete mode 100644 submarine-test/test-e2e/pom.xml delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/AbstractSubmarineIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/ChromeWebDriverProvider.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/CommandExecutor.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/FirefoxWebDriverProvider.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/ProcessData.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/SubmarineITUtils.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/WebDriverManager.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/WebDriverProvider.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/SubmarineLogIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/dataIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/datadictIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/departmentIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/environmentIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/experimentIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/homeIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/interpreterIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/loginIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/notebookIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/pages/ExperimentPage.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/registerIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/sidebarIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/teamIT.java delete mode 100644 submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/workspaceIT.java delete mode 100644 submarine-test/test-e2e/src/test/resources/log4j.properties delete mode 100644 submarine-test/test-k8s/pom.xml delete mode 100644 submarine-test/test-k8s/src/test/java/org/apache/submarine/rest/ClusterRestApiIT.java delete mode 100644 submarine-test/test-k8s/src/test/java/org/apache/submarine/rest/EnvironmentManagerRestApiIT.java delete mode 100644 submarine-test/test-k8s/src/test/java/org/apache/submarine/rest/ExperimentRestApiIT.java delete mode 100644 submarine-test/test-k8s/src/test/java/org/apache/submarine/rest/ExperimentTemplateManagerRestApiIT.java delete mode 100644 submarine-test/test-k8s/src/test/java/org/apache/submarine/rest/NotebookRestApiIT.java delete mode 100644 submarine-test/test-k8s/src/test/resources/log4j.properties delete mode 100644 submarine-test/test-k8s/src/test/resources/notebook/notebook-req-2.json delete mode 100644 submarine-test/test-k8s/src/test/resources/notebook/notebook-req.json delete mode 100644 submarine-test/test-k8s/src/test/resources/notebook/notebook-req.yaml delete mode 100644 submarine-test/test-k8s/src/test/resources/pytorch/pt-mnist-patch-req.json delete mode 100644 submarine-test/test-k8s/src/test/resources/pytorch/pt-mnist-patch-req.yaml delete mode 100644 submarine-test/test-k8s/src/test/resources/pytorch/pt-mnist-req.json delete mode 100644 submarine-test/test-k8s/src/test/resources/pytorch/pt-mnist-req.yaml delete mode 100644 submarine-test/test-k8s/src/test/resources/tensorflow/tf-mnist-patch-req.json delete mode 100644 submarine-test/test-k8s/src/test/resources/tensorflow/tf-mnist-patch-req.yaml delete mode 100644 submarine-test/test-k8s/src/test/resources/tensorflow/tf-mnist-req.json delete mode 100644 submarine-test/test-k8s/src/test/resources/tensorflow/tf-mnist-req.yaml delete mode 100644 submarine-test/test-k8s/src/test/resources/tensorflow/tf-mnist-with-env-patch-req.json delete mode 100644 submarine-test/test-k8s/src/test/resources/tensorflow/tf-mnist-with-env-req.json delete mode 100644 submarine-test/test-k8s/src/test/resources/tensorflow/tf-mnist-with-http-git-code-localizer-req.json delete mode 100644 submarine-test/test-k8s/src/test/resources/tensorflow/tf-mnist-with-ssh-git-code-localizer-req.json delete mode 100644 submarine-workbench/interpreter/interpreter-core/pom.xml delete mode 100644 submarine-workbench/interpreter/interpreter-core/src/main/java/org/apache/submarine/interpreter/AbstractInterpreter.java delete mode 100644 submarine-workbench/interpreter/interpreter-core/src/main/java/org/apache/submarine/interpreter/Interpreter.java delete mode 100644 submarine-workbench/interpreter/interpreter-core/src/main/java/org/apache/submarine/interpreter/InterpreterException.java delete mode 100644 submarine-workbench/interpreter/interpreter-core/src/main/java/org/apache/submarine/interpreter/InterpreterGroup.java delete mode 100644 submarine-workbench/interpreter/interpreter-core/src/main/java/org/apache/submarine/interpreter/InterpreterProcess.java delete mode 100644 submarine-workbench/interpreter/interpreter-core/src/main/java/org/apache/submarine/interpreter/InterpreterResult.java delete mode 100644 submarine-workbench/interpreter/interpreter-core/src/main/java/org/apache/submarine/interpreter/InterpreterResultMessage.java delete mode 100644 submarine-workbench/interpreter/interpreter-core/src/main/resources/log4j.properties delete mode 100644 submarine-workbench/interpreter/pom.xml delete mode 100644 submarine-workbench/interpreter/python-interpreter/README.md delete mode 100644 submarine-workbench/interpreter/python-interpreter/pom.xml delete mode 100644 submarine-workbench/interpreter/python-interpreter/src/main/java/org/apache/submarine/interpreter/PythonInterpreter.java delete mode 100644 submarine-workbench/interpreter/python-interpreter/src/main/resources/log4j.properties delete mode 100644 submarine-workbench/interpreter/python-interpreter/src/test/java/org/apache/submarine/interpreter/InterpreterClusterTest.java delete mode 100644 submarine-workbench/interpreter/python-interpreter/src/test/java/org/apache/submarine/interpreter/PythonInterpreterTest.java delete mode 100644 submarine-workbench/interpreter/spark-interpreter/README.md delete mode 100644 submarine-workbench/interpreter/spark-interpreter/pom.xml delete mode 100644 submarine-workbench/interpreter/spark-interpreter/src/main/java/org/apache/submarine/interpreter/SparkInterpreter.java delete mode 100644 submarine-workbench/interpreter/spark-interpreter/src/main/java/org/apache/submarine/interpreter/SparkSqlInterpreter.java delete mode 100644 submarine-workbench/interpreter/spark-interpreter/src/test/java/org/apache/submarine/interpreter/SparkInterpreterTest.java delete mode 100644 submarine-workbench/interpreter/spark-interpreter/src/test/java/org/apache/submarine/interpreter/SparkSqlInterpreterTest.java delete mode 100644 submarine-workbench/interpreter/spark-interpreter/src/test/resources/hive-site.xml delete mode 100644 submarine-workbench/interpreter/spark-interpreter/src/test/resources/log4j.properties delete mode 100644 submarine-workbench/pom.xml delete mode 100644 submarine-workbench/workbench-web/.editorconfig delete mode 100644 submarine-workbench/workbench-web/.gitignore delete mode 100644 submarine-workbench/workbench-web/.prettierignore delete mode 100644 submarine-workbench/workbench-web/.prettierrc delete mode 100644 submarine-workbench/workbench-web/LICENSE delete mode 100644 submarine-workbench/workbench-web/README.md delete mode 100644 submarine-workbench/workbench-web/angular.json delete mode 100644 submarine-workbench/workbench-web/browserslist delete mode 100644 submarine-workbench/workbench-web/e2e/README.md delete mode 100644 submarine-workbench/workbench-web/e2e/protractor-ci.conf.js delete mode 100644 submarine-workbench/workbench-web/e2e/protractor.conf.js delete mode 100644 submarine-workbench/workbench-web/e2e/src/app.e2e-spec.ts delete mode 100644 submarine-workbench/workbench-web/e2e/src/app.po.ts delete mode 100644 submarine-workbench/workbench-web/e2e/tsconfig.json delete mode 100644 submarine-workbench/workbench-web/karma.conf.js delete mode 100644 submarine-workbench/workbench-web/package.json delete mode 100644 submarine-workbench/workbench-web/pom.xml delete mode 100644 submarine-workbench/workbench-web/proxy.conf.js delete mode 100644 submarine-workbench/workbench-web/src/WEB-INF/web.xml delete mode 100644 submarine-workbench/workbench-web/src/app/app-routing.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/app.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/app.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/app.component.spec.ts delete mode 100644 submarine-workbench/workbench-web/src/app/app.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/app.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/components/components.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/components/page-layout/page-layout.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/components/page-layout/page-layout.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/components/page-layout/page-layout.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/core/auth/auth.guard.ts delete mode 100644 submarine-workbench/workbench-web/src/app/core/index.ts delete mode 100644 submarine-workbench/workbench-web/src/app/core/public-api.ts delete mode 100644 submarine-workbench/workbench-web/src/app/icons-provider.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/action.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/base-entity.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/environment-info.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/environment-spec.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/experiment-info.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/experiment-spec.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/index.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/modal-props.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/notebook-info.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/notebook-spec.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/permission.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/project.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/public-api.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/rest.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/role.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/sys-dept-item.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/sys-dept-select.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/sys-dict-item.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/sys-team.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/sys-user.ts delete mode 100644 submarine-workbench/workbench-web/src/app/interfaces/user-info.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/login/login-routing.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/login/login.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/login/login.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/login/login.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/register/register.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/register/register.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/register/register.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/user-routing.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/user.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/user.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/user.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/user/user.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/data/data.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/data/data.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/data/data.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/environment/environment.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/environment/environment.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/environment/environment.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-customized-form/experiment-customized-form.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-customized-form/experiment-customized-form.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-customized-form/experiment-customized-form.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/charts/charts.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/charts/charts.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/charts/charts.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/experiment-info.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/experiment-info.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/experiment-info.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/hyper-params/hyper-params.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/hyper-params/hyper-params.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/hyper-params/hyper-params.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/metrics/metrics.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/metrics/metrics.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/metrics/metrics.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/outputs/outputs.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/outputs/outputs.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment-info/outputs/outputs.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/experiment/experiment.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/home/home.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/home/home.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/home/home.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/interpreter/interpreter-add-modal/interpreter-add-modal.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/interpreter/interpreter-add-modal/interpreter-add-modal.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/interpreter/interpreter-add-modal/interpreter-add-modal.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/interpreter/interpreter.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/interpreter/interpreter.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/interpreter/interpreter.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/interpreter/interpreter.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict-config-modal/data-dict-config-modal.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict-config-modal/data-dict-config-modal.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict-config-modal/data-dict-config-modal.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict-modal/data-dict-modal.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict-modal/data-dict-modal.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict-modal/data-dict-modal.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict/data-dict.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict/data-dict.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/data-dict/data-dict.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/department/department.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/department/department.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/department/department.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/manager-routing.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/manager.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/manager.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/manager.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/manager.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user-drawer/user-drawer.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user-drawer/user-drawer.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user-drawer/user-drawer.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user-password-modal/user-password-modal.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user-password-modal/user-password-modal.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user-password-modal/user-password-modal.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user/user.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user/user.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/manager/user/user.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/model/model.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/model/model.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/model/model.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/notebook/notebook.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/notebook/notebook.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/notebook/notebook.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/notebook/notebook.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workbench-routing.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workbench.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workbench.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workbench.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workbench.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/project/new-project-page/new-project-page.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/project/new-project-page/new-project-page.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/project/new-project-page/new-project-page.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/project/project.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/project/project.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/project/project.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/release/release.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/release/release.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/release/release.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/shared/shared.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/shared/shared.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/shared/shared.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/team/team.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/team/team.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/team/team.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/training/training.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/training/training.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/training/training.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/workspace.component.html delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/workspace.component.scss delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/workspace.component.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pages/workbench/workspace/workspace.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pipe/condition.pipe.ts delete mode 100644 submarine-workbench/workbench-web/src/app/pipe/pipe-shared.module.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/auth.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/base-api.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/department.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/environment.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/experiment.form.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/experiment.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/experiment.validator.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/index.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/local-storage.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/notebook.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/project.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/public-api.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/system-utils.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/team.service.ts delete mode 100644 submarine-workbench/workbench-web/src/app/services/user.service.ts delete mode 100644 submarine-workbench/workbench-web/src/assets/.gitkeep delete mode 100644 submarine-workbench/workbench-web/src/assets/background.svg delete mode 100644 submarine-workbench/workbench-web/src/assets/logo-128.png delete mode 100644 submarine-workbench/workbench-web/src/assets/logo.png delete mode 100644 submarine-workbench/workbench-web/src/assets/submarine-logo.svg delete mode 100644 submarine-workbench/workbench-web/src/environments/environment.prod.ts delete mode 100644 submarine-workbench/workbench-web/src/environments/environment.ts delete mode 100644 submarine-workbench/workbench-web/src/favicon.ico delete mode 100644 submarine-workbench/workbench-web/src/index.html delete mode 100644 submarine-workbench/workbench-web/src/main.ts delete mode 100644 submarine-workbench/workbench-web/src/polyfills.ts delete mode 100644 submarine-workbench/workbench-web/src/styles.scss delete mode 100644 submarine-workbench/workbench-web/src/test.ts delete mode 100644 submarine-workbench/workbench-web/src/theme.less delete mode 100644 submarine-workbench/workbench-web/tsconfig.app.json delete mode 100644 submarine-workbench/workbench-web/tsconfig.json delete mode 100644 submarine-workbench/workbench-web/tsconfig.spec.json delete mode 100644 submarine-workbench/workbench-web/tslint.json diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 400e554..0000000 --- a/LICENSE +++ /dev/null @@ -1,207 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed 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. - --------------------------------------------------------------------------------- -This product bundles various third-party source code under other open source -licenses. This section summarizes those components and their licenses. -See licenses/ for text of these licenses. \ No newline at end of file diff --git a/LICENSE-binary b/LICENSE-binary deleted file mode 100644 index 38dae8a..0000000 --- a/LICENSE-binary +++ /dev/null @@ -1,358 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed 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. - - --------------------------------------------------------------------------------- -This project bundles some components that are also licensed under the Apache -License Version 2.0: -cglib:cglib:2.2.2 -com.fasterxml.jackson.core:jackson-annotations:2.7.8 -com.fasterxml.jackson.core:jackson-databind:2.7.8 -com.fasterxml.jackson.core:jackson-core:2.7.8 -com.fasterxml.jackson.module:jackson-module-jaxb-annotations:2.8.10 -com.fasterxml.woodstox:woodstox-core:5.0.3 -com.github.stephenc.jcip:jcip-annotations:1.0-1 -com.google.code.findbugs:jsr305:3.0.0 -com.google.code.findbugs:jsr305:1.3.9 -com.google.code.gson:gson:2.8.1 -com.google.code.gson:gson:2.2.4 -com.google.guava:guava:11.0.2 -com.google.inject:guice:3 -com.google.inject.extensions:guice-servlet:3 -com.jamesmurty.utils:java-xmlbuilder:0.4 -com.nimbusds:nimbus-jose-jwt:4.41.1 -com.squareup.okhttp:okhttp:2.7.5 -com.squareup.okio:okio:1.6.0 -commons-beanutils:commons-beanutils:1.7.0 -commons-beanutils:commons-beanutils-core:1.8.0 -commons-cli:commons-cli:1.2 -commons-codec:commons-codec:1.4 -commons-collections:commons-collections:3.2.2 -commons-configuration:commons-configuration:1.6 -commons-configuration:commons-configuration:1.1 -commons-daemon:commons-daemon:1.0.13 -commons-digester:commons-digester:1.8 -commons-io:commons-io:2.4 -commons-lang:commons-lang:2.6 -commons-logging:commons-logging:1.1.3 -commons-logging:commons-logging:1.1.1 -commons-net:commons-net:3.1 -io.netty:netty:3.7.0.Final -io.netty:netty-all:4.0.23.Final -javax.inject:javax.inject:1 -javax.validation:validation-api:1.1.0.Final -log4j:log4j:1.2.17 -net.java.dev.jets3t:jets3t:0.9.0 -net.lingala.zip4j:zip4j:1.3.2 -net.minidev:accessors-smart:1.2 -net.minidev:json-smart:2.3 -org.apache.avro:avro:1.7.7 -org.apache.avro:avro:1.8.2 -org.apache.commons:commons-lang3:3.4 -org.apache.commons:commons-lang3:3.7 -org.apache.commons:commons-text:1.4 -org.apache.commons:commons-compress:1.4.1 -org.apache.commons:commons-math3:3.1.1 -org.apache.curator:curator-client:2.7.1 -org.apache.curator:curator-framework:2.7.1 -org.apache.curator:curator-recipes:2.7.1 -org.apache.directory.api:api-asn1-api:1.0.0-M20 -org.apache.directory.api:api-util:1.0.0-M20 -org.apache.directory.server:apacheds-i18n:2.0.0-M15 -org.apache.directory.server:apacheds-kerberos-codec:2.0.0-M15 -org.apache.hadoop:hadoop-yarn-api:2.9.2 -org.apache.hadoop:hadoop-yarn-client:2.9.2 -org.apache.hadoop:hadoop-yarn-common:2.9.2 -org.apache.hadoop:hadoop-common:2.9.2 -org.apache.hadoop:hadoop-annotations:2.9.2 -org.apache.hadoop:hadoop-auth:2.9.2 -org.apache.hadoop:hadoop-hdfs:2.9.2 -org.apache.hadoop:hadoop-hdfs-client:2.9.2 -org.apache.htrace:htrace-core4:4.1.0-incubating -org.apache.httpcomponents:httpclient:4.5.2 -org.apache.httpcomponents:httpcore:4.4.4 -org.apache.submarine:submarine-core:0.5.0 -org.apache.zookeeper:zookeeper:3.4.6 -org.codehaus.jackson:jackson-core-asl:1.9.13 -org.codehaus.jackson:jackson-mapper-asl:1.9.13 -org.codehaus.jackson:jackson-jaxrs:1.9.13 -org.codehaus.jackson:jackson-xc:1.9.13 -org.codehaus.jettison:jettison:1.1 -org.eclipse.jetty:jetty-jmx:9.4.18.v20190429 -org.eclipse.jetty:jetty-webapp:9.4.18.v20190429 -org.eclipse.jetty:jetty-client:9.4.18.v20190429 -org.eclipse.jetty:jetty-http:9.4.18.v20190429 -org.eclipse.jetty:jetty-io:9.4.18.v20190429 -org.eclipse.jetty:jetty-security:9.4.18.v20190429 -org.eclipse.jetty:jetty-server:9.4.18.v20190429 -org.eclipse.jetty:jetty-servlet:9.4.18.v20190429 -org.eclipse.jetty:jetty-util:9.4.18.v20190429 -org.eclipse.jetty:jetty-xml:9.4.18.v20190429 -org.eclipse.jetty.websocket:websocket-server:9.4.18.v20190429 -org.eclipse.jetty.websocket:websocket-api:9.4.18.v20190429 -org.eclipse.jetty.websocket:websocket-client:9.4.18.v20190429 -org.eclipse.jetty.websocket:websocket-common:9.4.18.v20190429 -org.eclipse.jetty.websocket:websocket-servlet:9.4.18.v20190429 -org.mortbay.jetty:jetty-sslengine:6.1.26 -org.mortbay.jetty:jetty-util:6.1.26 -org.mortbay.jetty:jetty:6.1.26 -org.mybatis:mybatis:3.2.8 -org.xerial.snappy:snappy-java:1.0.5 -org.xerial.snappy:snappy-java:1.1.1.3 -org.yaml:snakeyaml:1.16 -xerces:xercesImpl:2.9.1 -xml-apis:xml-apis:1.3.04 - - --------------------------------------------------------------------------------- -This product bundles various third-party binaries under other open source -licenses. This section summarizes those components and their licenses. -See licenses-binary/ for text of these licenses. - -MIT License ------------ -org.slf4j:slf4j-api:1.7.25 -com.github.pagehelper:Mybatis-PageHelper:5.1.10 - - -Eclipse Distribution License - v 1.0 ------------ -org.eclipse.jgit - - -Public Domain -------------- -aopalliance:aopalliance:1.0 - - -BSD 2-Clause ------------- -com.linkedin.tony:tony-core:0.3.21 - - -BSD 3-Clause ------------- -org.hamcrest:hamcrest-core:1.3 -com.google.protobuf:protobuf-java:2.5.0 -com.thoughtworks.paranamer:paranamer:2.3 -org.ow2.asm:asm:5.0.4 -asm:asm:3.3.1 - - -CDDL 1.1 + GPLv2 with classpath exception ------------- -org.glassfish.jersey.core:jersey-common:2.27 -org.glassfish.jersey.media:jersey-media-json-jackson:2.27 -org.glassfish.jersey.containers:jersey-container-servlet-core -org.glassfish.jersey.inject:jersey-hk2:2.27 -org.glassfish.jersey.ext:jersey-entity-filtering:2.27 -com.sun.jersey:jersey-client:1.9 -com.sun.jersey.contribs:jersey-guice:1.9 -com.sun.xml.bind:jaxb-impl:2.2.3-1 -javax.xml.bind:jaxb-api:2.2.11 -javax.ws.rs:javax.ws.rs-api:2.1 -javax.annotation:javax.annotation-api:1.2 -javax.servlet:javax.servlet-api:3.1.0 -org.glassfish.hk2:hk2-api:2.5.0-b42 -org.glassfish.hk2.external:aopalliance-repackaged:2.5.0-b42 -javax.servlet.jsp:jsp-api:2.1 diff --git a/NOTICE b/NOTICE deleted file mode 100644 index 4ec5251..0000000 --- a/NOTICE +++ /dev/null @@ -1,27 +0,0 @@ -Apache Submarine -Copyright 2019 and onwards The Apache Software Foundation. - -This product includes software developed at -The Apache Software Foundation (http://www.apache.org/). - -Export Control Notice ---------------------- - -This distribution includes cryptographic software. The country in -which you currently reside may have restrictions on the import, -possession, use, and/or re-export to another country, of -encryption software. BEFORE using any encryption software, please -check your country's laws, regulations and policies concerning the -import, possession, or use, and re-export of encryption software, to -see if this is permitted. See for more -information. - -The U.S. Government Department of Commerce, Bureau of Industry and -Security (BIS), has classified this software as Export Commodity -Control Number (ECCN) 5D002.C.1, which includes information security -software using or performing cryptographic functions with asymmetric -algorithms. The form and manner of this Apache Software Foundation -distribution makes it eligible for export under the License Exception -ENC Technology Software Unrestricted (TSU) exception (see the BIS -Export Administration Regulations, Section 740.13) for both object -code and source code. \ No newline at end of file diff --git a/NOTICE-binary b/NOTICE-binary deleted file mode 100644 index 8b01206..0000000 --- a/NOTICE-binary +++ /dev/null @@ -1,66 +0,0 @@ -Apache Submarine -Copyright 2019 and onwards The Apache Software Foundation. - -This product includes software developed at -The Apache Software Foundation (http://www.apache.org/). - -Export Control Notice ---------------------- - -This distribution includes cryptographic software. The country in -which you currently reside may have restrictions on the import, -possession, use, and/or re-export to another country, of -encryption software. BEFORE using any encryption software, please -check your country's laws, regulations and policies concerning the -import, possession, or use, and re-export of encryption software, to -see if this is permitted. See for more -information. - -The U.S. Government Department of Commerce, Bureau of Industry and -Security (BIS), has classified this software as Export Commodity -Control Number (ECCN) 5D002.C.1, which includes information security -software using or performing cryptographic functions with asymmetric -algorithms. The form and manner of this Apache Software Foundation -distribution makes it eligible for export under the License Exception -ENC Technology Software Unrestricted (TSU) exception (see the BIS -Export Administration Regulations, Section 740.13) for both object -code and source code. - - --------------------------------------------------------------------------------- -This product bundles a same/modified portion of third-party binaries -and optionally depends on them (NO NEED FOR PERMISSIVELY-LICENSED DEPENDENCIES, -aka, Category A, -per http://www.apache.org/dev/licensing-howto.html#permissive-deps). The license -text can be found in licenses-binary folder. - -TonY -------------- -Copyright 2018 LinkedIn Corporation -All Rights Reserved. - -Licensed under the BSD 2-Clause License (the "License"). -See LICENSE in the project root for license information. - -================================================================================ - -This product includes/uses TensorFlow (https://github.com/tensorflow) -Copyright 2018 The TensorFlow Authors -License: Apache-2.0 - -This product includes/uses TensorFlowOnYARN (https://github.com/Intel-bigdata/TensorFlowOnYARN) -Copyright 2018 Intel-bigdata -License: Apache-2.0 - -================================================================================ - -In addition, this product automatically loads third party code from an external repository -using the Gradle build system. Such third party code is subject to other license -terms than as set forth above. In addition, such third party code may also -depend on and load multiple tiers of dependencies. - - -jgit -------------- -Copyright (c) 2007, Eclipse Foundation, Inc. and its licensors. -Licenced under Eclipse Distribution License - v 1.0 \ No newline at end of file diff --git a/README.md b/README.md deleted file mode 100644 index 2980443..0000000 --- a/README.md +++ /dev/null @@ -1,162 +0,0 @@ - - - - -![color_logo_with_text](docs/assets/color_logo_with_text.png) - -[![Build Status](https://travis-ci.org/apache/submarine.svg?branch=master)](https://travis-ci.org/apache/submarine) [![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) [![HitCount](http://hits.dwyl.io/apache/submarine.svg)](http://hits.dwyl.io/apache/submarine) [![PyPI version](https://badge.fury.io/py/apache-submarine.svg)](https://badge.fury.io/py/apache-submarine) - -# What is Apache Submarine? - -**Apache Submarine** (Submarine for short) is an **End-to-End Machine Learning PLATFORM** to allow data scientists to create end-to-end machine learning workflows. To elaborate, on **Submarine**, data scientists can finish each stage in the ML model lifecycle, including data exploration, data pipeline creation, model training, serving, and monitoring. - -## Why Submarine? - -Some open-source and commercial projects are trying to build an end-to-end ML platform. What's the vision of Submarine? - -### Problems - -1) Many platforms lack easy-to-use user interfaces (API, SDK, and IDE, etc.) -2) In the same company, data scientists in different teams usually spend much time on developments of existing feature sets and models. -3) Data scientists put emphasis on domain-specific tasks (e.g. Click-Through-Rate), but they need to implement their models from scratch with SDKs provided by existing platforms. -4) Many platforms lack a unified workbench to manage each component in the ML lifecycle. - -_Theodore Levitt_ once said: - -``` -“People don’t want to buy a quarter-inch drill. They want a quarter-inch hole.” -``` - -### Goals of Submarine - -#### Model Training (Experiment) -- Run/Track distributed training `experiment` on prem or cloud via easy-to-use UI/API/SDK. -- Easy for data scientists to manage versions of `experiment` and dependencies of `environment` -- Support popular machine learning frameworks, including **TensorFlow**, **PyTorch**, **Horovod**, and **MXNet** -- Provide pre-defined **template** for data scientists to implement domain-specific tasks easily (e.g. using DeepFM template to build a CTR prediction model) -- Support many compute resources (e.g. CPU and GPU, etc.) -- Support **Kubernetes** and **YARN** -- Pipeline is also on the backlog, we will look into pipeline for training in the future. - -#### Notebook Service - -- Submarine aims to provide a notebook service (e.g. Jupyter notebook) which allows users to manage notebook instances running on the cluster. - -#### Model Management (Serving/versioning/monitoring, etc.) - -- Model management for model-serving/versioning/monitoring is on the roadmap. - -## Easy-to-use User Interface - -As mentioned above, Submarine attempts to provide **Data-Scientist-friendly** UI to make data scientists have a good user experience. Here're some examples. - -### Example: Submit a distributed Tensorflow experiment via Submarine Python SDK - -#### Run a Tensorflow Mnist experiment -```python - -# New a submarine client of the submarine server -submarine_client = submarine.ExperimentClient(host='http://localhost:8080') - -# The experiment's environment, could be Docker image or Conda environment based -environment = EnvironmentSpec(image='apache/submarine:tf-dist-mnist-test-1.0') - -# Specify the experiment's name, framework it's using, namespace it will run in, -# the entry point. It can also accept environment variables. etc. -# For PyTorch job, the framework should be 'Pytorch'. -experiment_meta = ExperimentMeta(name='mnist-dist', - namespace='default', - framework='Tensorflow', - cmd='python /var/tf_dist_mnist/dist_mnist.py --train_steps=100') -# 1 PS task of 2 cpu, 1GB -ps_spec = ExperimentTaskSpec(resources='cpu=2,memory=1024M', - replicas=1) -# 1 Worker task -worker_spec = ExperimentTaskSpec(resources='cpu=2,memory=1024M', - replicas=1) - -# Wrap up the meta, environment and task specs into an experiment. -# For PyTorch job, the specs would be "Master" and "Worker". -experiment_spec = ExperimentSpec(meta=experiment_meta, - environment=environment, - spec={'Ps':ps_spec, 'Worker': worker_spec}) - -# Submit the experiment to submarine server -experiment = submarine_client.create_experiment(experiment_spec=experiment_spec) - -# Get the experiment ID -id = experiment['experimentId'] - -``` - -#### Query a specific experiment -```python -submarine_client.get_experiment(id) -``` - -#### Wait for finish - -```python -submarine_client.wait_for_finish(id) -``` - -#### Get the experiment's log -```python -submarine_client.get_log(id) -``` - -#### Get all running experiment -```python -submarine_client.list_experiments(status='running') -``` - -For a quick-start, see [Submarine On K8s](docs/userdocs/k8s/README.md) - - -### Example: Submit a pre-defined experiment template job - -### Example: Submit an experiment via Submarine UI - -(Available on 0.6.0, see Roadmap) - -## Architecture, Design and requirements - -If you want to know more about Submarine's architecture, components, requirements and design doc, they can be found on [Architecture-and-requirement](docs/design/architecture-and-requirements.md) - -Detailed design documentation, implementation notes can be found at: [Implementation notes](docs/design/implementation-notes.md) - -## Apache Submarine Community - -Read the [Apache Submarine Community Guide](./docs/community/README.md) - -How to contribute [Contributing Guide](./docs/community/contributing.md) - -Issue Tracking: https://issues.apache.org/jira/projects/SUBMARINE - -## User Document - -See [User Guide Home Page](docs/user-guide-home.md) - -## Developer Document - -See [Developer Guide Home Page](docs/development-guide-home.md) - -## Roadmap - -What to know more about what's coming for Submarine? Please check the roadmap out: https://cwiki.apache.org/confluence/display/SUBMARINE/Roadmap - -## License - -The Apache Submarine project is licensed under the Apache 2.0 License. See the [LICENSE](./LICENSE) file for details. diff --git a/bin/common.sh b/bin/common.sh deleted file mode 100755 index ecf9469..0000000 --- a/bin/common.sh +++ /dev/null @@ -1,100 +0,0 @@ -#!/usr/bin/env bash -# -# 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. -# - -export DEFAULT_MYSQL_VERSION=5.1.39 - -if [[ -L ${BASH_SOURCE-$0} ]]; then - FWDIR=$(dirname $(readlink "${BASH_SOURCE-$0}")) -else - FWDIR=$(dirname "${BASH_SOURCE-$0}") -fi - -if [[ -z "${SUBMARINE_HOME}" ]]; then - # Make SUBMARINE_HOME look cleaner in logs by getting rid of the - # extra ../ - export SUBMARINE_HOME="$(cd "${FWDIR}/.."; pwd)" -fi - -if [[ -z "${SUBMARINE_CONF_DIR}" ]]; then - export SUBMARINE_CONF_DIR="${SUBMARINE_HOME}/conf" -fi - -if [[ -z "${SUBMARINE_LOG_DIR}" ]]; then - export SUBMARINE_LOG_DIR="${SUBMARINE_HOME}/logs" -fi - -if [[ -f "${SUBMARINE_CONF_DIR}/submarine-env.sh" ]]; then - . "${SUBMARINE_CONF_DIR}/submarine-env.sh" -fi - -SUBMARINE_SERVER_CLASSPATH+=":${SUBMARINE_CONF_DIR}" - -function add_each_jar_in_dir(){ - if [[ -d "${1}" ]]; then - for jar in $(find -L "${1}" -maxdepth 1 -name '*jar'); do - SUBMARINE_SERVER_CLASSPATH="$jar:$SUBMARINE_SERVER_CLASSPATH" - done - fi -} - -function add_each_jar_in_dir_recursive(){ - if [[ -d "${1}" ]]; then - for jar in $(find -L "${1}" -type f -name '*jar'); do - SUBMARINE_SERVER_CLASSPATH="$jar:$SUBMARINE_SERVER_CLASSPATH" - done - fi -} - -function add_jar_in_dir(){ - if [[ -d "${1}" ]]; then - SUBMARINE_SERVER_CLASSPATH="${1}/*:${SUBMARINE_SERVER_CLASSPATH}" - fi -} - -function download_mysql_jdbc_jar(){ - if [[ -z "${MYSQL_JAR_URL}" ]]; then - if [[ -z "${MYSQL_VERSION}" ]]; then - MYSQL_VERSION="${DEFAULT_MYSQL_VERSION}" - fi - MYSQL_JAR_URL="https://repo1.maven.org/maven2/mysql/mysql-connector-java/${MYSQL_VERSION}/mysql-connector-java-${MYSQL_VERSION}.jar" - fi - - echo "Downloading mysql jdbc jar from ${MYSQL_JAR_URL}." - if type wget >/dev/null 2>&1; then - wget ${MYSQL_JAR_URL} -P "${SUBMARINE_HOME}/lib" --no-check-certificate - elif type curl >/dev/null 2>&1; then - curl -o "${SUBMARINE_HOME}/lib/mysql-connector-java-${MYSQL_VERSION}.jar" ${MYSQL_JAR_URL} - else - echo 'We need a tool to transfer data from or to a server. Such as wget/curl.' - echo 'Bye, bye!' - exit 1 - fi - - echo "Mysql jdbc jar is downloaded and put in the path of submarine/lib." -} - -JAVA_OPTS+=" -Dfile.encoding=UTF-8" -JAVA_OPTS+=" -Dlog4j.configuration=file://${SUBMARINE_CONF_DIR}/log4j.properties" -export JAVA_OPTS - -if [[ -n "${JAVA_HOME}" ]]; then - JAVA_RUNNER="${JAVA_HOME}/bin/java" -else - JAVA_RUNNER=java -fi -export JAVA_RUNNER diff --git a/bin/submarine-daemon.sh b/bin/submarine-daemon.sh deleted file mode 100755 index f7fcdc8..0000000 --- a/bin/submarine-daemon.sh +++ /dev/null @@ -1,185 +0,0 @@ -#!/usr/bin/env bash -# -# 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. -# -# description: Start and stop daemon script for. -# - -USAGE="-e Usage: submarine-daemon.sh {start|stop|restart|status}" - -if [ -L ${BASH_SOURCE-$0} ]; then - BIN=$(dirname $(readlink "${BASH_SOURCE-$0}")) -else - BIN=$(dirname ${BASH_SOURCE-$0}) -fi -export BIN=$(cd "${BIN}">/dev/null; pwd) -GET_MYSQL_JAR=false - -. "${BIN}/common.sh" - -cd ${BIN}/>/dev/null - -SUBMARINE_SERVER_NAME="Submarine Server" -SUBMARINE_SERVER_LOGFILE="${SUBMARINE_LOG_DIR}/submarine.log" -SUBMARINE_SERVER_MAIN=org.apache.submarine.server.SubmarineServer -JAVA_OPTS+="${SUBMARINE_SERVER_JAVA_OPTS} ${SUBMARINE_SERVER_MEM} -Dsubmarine.log.file=${SUBMARINE_SERVER_LOGFILE}" - -add_jar_in_dir "${BIN}/../lib" - -function initialize_default_directories() { - if [[ ! -d "${SUBMARINE_LOG_DIR}" ]]; then - echo "Log dir doesn't exist, create ${SUBMARINE_LOG_DIR}" - $(mkdir -p "${SUBMARINE_LOG_DIR}") - fi -} - -function found_submarine_server_pid() { - process='SubmarineServer'; - RUNNING_PIDS=$(ps x | grep ${process} | grep -v grep | awk '{print $1}'); - - if [[ -z "${RUNNING_PIDS}" ]]; then - return - fi - - if ! kill -0 ${RUNNING_PIDS} > /dev/null 2>&1; then - echo "${SUBMARINE_SERVER_NAME} running but process is dead" - fi - - echo "${RUNNING_PIDS}" -} - -function wait_for_submarine_server_to_die() { - local pid - local count - - pid=`found_submarine_server_pid` - timeout=10 - count=0 - timeoutTime=$(date "+%s") - let "timeoutTime+=$timeout" - currentTime=$(date "+%s") - forceKill=1 - - while [[ $currentTime -lt $timeoutTime ]]; do - $(kill ${pid} > /dev/null 2> /dev/null) - if kill -0 ${pid} > /dev/null 2>&1; then - sleep 3 - else - forceKill=0 - break - fi - currentTime=$(date "+%s") - done - - if [[ forceKill -ne 0 ]]; then - $(kill -9 ${pid} > /dev/null 2> /dev/null) - fi -} - -function check_jdbc_jar() { - if [[ -d "${1}" ]]; then - mysql_connector_exists=$(find -L "${1}" -name "mysql-connector*") - if [[ -z "${mysql_connector_exists}" ]]; then - if [[ ${GET_MYSQL_JAR} = true ]]; then - download_mysql_jdbc_jar - else - echo -e "\\033[31mError: There is no mysql jdbc jar in lib.\\033[0m" - echo -e "\\033[31mPlease download a mysql jdbc jar and put it under lib manually.\\033[0m" - echo -e "\\033[31mOr add a parameter getMysqlJar, like this:\n./bin/submarine-daemon.sh start getMysqlJar\\033[0m" - echo -e "\\033[31mIt would download mysql jdbc jar automatically.\\033[0m" - exit 1 - fi - fi - fi -} - -function start() { - local pid - - pid=`found_submarine_server_pid` - if [[ ! -z "$pid" && "$pid" != 0 ]]; then - echo "${SUBMARINE_SERVER_NAME}:${pid} is already running" - return 1; - fi - - check_jdbc_jar "${BIN}/../lib" - - initialize_default_directories - - echo "SUBMARINE_SERVER_CLASSPATH: ${SUBMARINE_SERVER_CLASSPATH}" >> "${SUBMARINE_SERVER_LOGFILE}" - - nohup $JAVA_RUNNER $JAVA_OPTS -cp $SUBMARINE_SERVER_CLASSPATH $SUBMARINE_SERVER_MAIN >> "${SUBMARINE_SERVER_LOGFILE}" 2>&1 < /dev/null & - pid=$! - if [[ ! -z "${pid}" ]]; then - echo "${SUBMARINE_SERVER_NAME} start" - return 0; - fi -} - -function stop() { - local pid - pid=`found_submarine_server_pid` - - if [[ -z "$pid" ]]; then - echo "${SUBMARINE_SERVER_NAME} is not running" - return 0; - else - # submarine workbench daemon kill - wait_for_submarine_server_to_die - echo "${SUBMARINE_SERVER_NAME} stop" - fi -} - -function find_submarine_server_process() { - local pid - pid=`found_submarine_server_pid` - - if [[ -z "$pid" ]]; then - echo "${SUBMARINE_SERVER_NAME} is not running" - return 1 - else - if ! kill -0 ${pid} > /dev/null 2>&1; then - echo "${SUBMARINE_SERVER_NAME} running but process is dead" - return 1 - else - echo "${SUBMARINE_SERVER_NAME} is running" - fi - fi -} - -if [[ "$2" = "getMysqlJar" ]]; then - export GET_MYSQL_JAR=true -fi - -case "${1}" in - start) - start - ;; - stop) - stop - ;; - restart) - echo "${SUBMARINE_SERVER_NAME} is restarting" >> "${SUBMARINE_SERVER_LOGFILE}" - stop - start - ;; - status) - find_submarine_server_process - ;; - *) - echo ${USAGE} -esac diff --git a/bin/submarine.sh b/bin/submarine.sh deleted file mode 100755 index 8a5d6e8..0000000 --- a/bin/submarine.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/usr/bin/env bash -# -# 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. - -USAGE="Usage: bin/submarine.sh [--config ]" - -if [[ "$1" == "--config" ]]; then - shift - conf_dir="$1" - if [[ ! -d "${conf_dir}" ]]; then - echo "ERROR : ${conf_dir} is not a directory" - echo ${USAGE} - exit 1 - else - export SUBMARINE_CONF_DIR="${conf_dir}" - fi - shift -fi - -if [ -L ${BASH_SOURCE-$0} ]; then - BIN=$(dirname $(readlink "${BASH_SOURCE-$0}")) -else - BIN=$(dirname ${BASH_SOURCE-$0}) -fi -export BIN=$(cd "${BIN}">/dev/null; pwd) -GET_MYSQL_JAR=false - -. "${BIN}/common.sh" - -cd ${BIN}/>/dev/null - -SUBMARINE_SERVER_NAME="Submarine Server" -SUBMARINE_SERVER_LOGFILE="${SUBMARINE_LOG_DIR}/submarine.log" -SUBMARINE_SERVER_MAIN=org.apache.submarine.server.SubmarineServer -JAVA_OPTS+="${SUBMARINE_SERVER_JAVA_OPTS:-""} ${SUBMARINE_SERVER_MEM:-""} -Dsubmarine.log.file=${SUBMARINE_SERVER_LOGFILE}" - -add_jar_in_dir "${BIN}/../lib" - -if [[ ! -d "${SUBMARINE_LOG_DIR}" ]]; then - echo "Log dir doesn't exist, create ${SUBMARINE_LOG_DIR}" - $(mkdir -p "${SUBMARINE_LOG_DIR}") -fi - -exec $JAVA_RUNNER $JAVA_OPTS -cp ${SUBMARINE_SERVER_CLASSPATH} ${SUBMARINE_SERVER_MAIN} "$@" >> "${SUBMARINE_SERVER_LOGFILE}" 2>&1 diff --git a/conf/log4j.properties b/conf/log4j.properties deleted file mode 100644 index 2f44c72..0000000 --- a/conf/log4j.properties +++ /dev/null @@ -1,59 +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. - -# Define some default values that can be overridden by system properties -submarine.log.threshold=ALL -submarine.root.logger=INFO, DRFA, console -submarine.log.dir=/tmp -submarine.log.file=submarine.log - -log4j.rootLogger=${submarine.root.logger}, EventCounter - -# Logging Threshold -log4j.threshold=${submarine.log.threshold} - -# -# Daily Rolling File Appender -# -# Use the PidDailyerRollingFileAppend class instead if you want to use separate log files -# for different CLI session. - -log4j.appender.DRFA=org.apache.log4j.DailyRollingFileAppender - -log4j.appender.DRFA.File=${submarine.log.dir}/${submarine.log.file} - -# Rollover at midnight -log4j.appender.DRFA.DatePattern=.yyyy-MM-dd - -# 30-day backup -#log4j.appender.DRFA.MaxBackupIndex=30 -log4j.appender.DRFA.layout=org.apache.log4j.PatternLayout - -# Pattern format: Date LogLevel LoggerName LogMessage -#log4j.appender.DRFA.layout.ConversionPattern=%d{ISO8601} %p %c: %m%n -# Debugging Pattern format -log4j.appender.DRFA.layout.ConversionPattern=%d{ISO8601} %-5p [%t]: %c{2} (%F:%M(%L)) - %m%n - -# -# console -# Add "console" to rootlogger above if you want to use this -# - -log4j.appender.console=org.apache.log4j.ConsoleAppender -log4j.appender.console.target=System.err -log4j.appender.console.layout=org.apache.log4j.PatternLayout -log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} [%t]: %p %c{2}: %m%n -log4j.appender.console.encoding=UTF-8 diff --git a/conf/log4j.properties.template b/conf/log4j.properties.template deleted file mode 100755 index 579a382..0000000 --- a/conf/log4j.properties.template +++ /dev/null @@ -1,59 +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. - -# Define some default values that can be overridden by system properties -submarine.log.threshold=ALL -submarine.root.logger=INFO,DRFA,console -submarine.log.dir=/tmp -submarine.log.file=submarine.log - -log4j.rootLogger=${submarine.root.logger}, EventCounter - -# Logging Threshold -log4j.threshold=${submarine.log.threshold} - -# -# Daily Rolling File Appender -# -# Use the PidDailyerRollingFileAppend class instead if you want to use separate log files -# for different CLI session. - -log4j.appender.DRFA=org.apache.log4j.DailyRollingFileAppender - -log4j.appender.DRFA.File=${submarine.log.dir}/${submarine.log.file} - -# Rollover at midnight -log4j.appender.DRFA.DatePattern=.yyyy-MM-dd - -# 30-day backup -#log4j.appender.DRFA.MaxBackupIndex=30 -log4j.appender.DRFA.layout=org.apache.log4j.PatternLayout - -# Pattern format: Date LogLevel LoggerName LogMessage -#log4j.appender.DRFA.layout.ConversionPattern=%d{ISO8601} %p %c: %m%n -# Debugging Pattern format -log4j.appender.DRFA.layout.ConversionPattern=%d{ISO8601} %-5p [%t]: %c{2} (%F:%M(%L)) - %m%n - -# -# console -# Add "console" to rootlogger above if you want to use this -# - -log4j.appender.console=org.apache.log4j.ConsoleAppender -log4j.appender.console.target=System.err -log4j.appender.console.layout=org.apache.log4j.PatternLayout -log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} [%t]: %p %c{2}: %m%n -log4j.appender.console.encoding=UTF-8 diff --git a/conf/submarine-env.sh.template b/conf/submarine-env.sh.template deleted file mode 100644 index 97ae1d8..0000000 --- a/conf/submarine-env.sh.template +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env bash -# -# 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. -# - -# export JAVA_HOME=java - -# Debug Submarine server -# export SUBMARINE_SERVER_JAVA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8000" - -# Set Submarine server memory -# export SUBMARINE_SERVER_MEM="-Xms1024m -Xmx1024m -XX:MaxPermSize=512m" - -# Set Submarine server classpath. If you want to visit hdfs, just add hadoop -# configuration path. -# export SUBMARINE_SERVER_CLASSPATH+=":/usr/local/hadoop/etc/hadoop" diff --git a/conf/submarine-site.xml b/conf/submarine-site.xml deleted file mode 100755 index eba2529..0000000 --- a/conf/submarine-site.xml +++ /dev/null @@ -1,164 +0,0 @@ - - - - - - - - submarine.cluster.addr - - submarine cluster address list, e.g. ip1:port1;ip2:port2;ip3:port3 - - - - submarine.server.addr - 0.0.0.0 - Server address - - - - submarine.server.port - 8080 - Server port. - - - - submarine.server.ssl - false - Should SSL be used by the submarine server? - - - - submarine.server.ssl.port - 8443 - Server ssl port. (used when ssl property is set to true) - - - - submarine.server.ssl.client.auth - false - Should client authentication be used for SSL connections? - - - - submarine.server.ssl.keystore.path - keystore - Path to keystore relative to submarine configuration directory - - - - submarine.server.ssl.keystore.type - JKS - The format of the given keystore (e.g. JKS or PKCS12) - - - - submarine.server.ssl.keystore.password - change me - Keystore password. Can be obfuscated by the Jetty Password tool - - - - - - submarine.server.ssl.truststore.path - truststore - Path to truststore relative to submarine configuration directory. Defaults to the keystore path - - - - submarine.server.ssl.truststore.type - JKS - The format of the given truststore (e.g. JKS or PKCS12). Defaults to the same type as the keystore type - - - - - - workbench.web.war - ../submarine-workbench-web.war - Submarine workbench web war file path. - - - - jdbc.driverClassName - com.mysql.jdbc.Driver - - - jdbc.url - jdbc:mysql://127.0.0.1:3306/submarine?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false - - - jdbc.username - submarine - - - jdbc.password - password - - - - metastore.jdbc.url - jdbc:mysql://127.0.0.1:3306/metastore?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false - - - metastore.jdbc.username - metastore - - - metastore.jdbc.password - password - - - - submarine.runtime.class - org.apache.submarine.server.submitter.yarn.YarnRuntimeFactory - RuntimeFactory for Submarine jobs - - - - submarine.server.rpc.enabled - false - Run jobs using rpc server. - - - - submarine.server.rpc.port - 8980 - Rpc server port - - - - submarine.submitter - k8s - The submitter which you want used in the server. Build-in k8s - - - diff --git a/conf/submarine-site.xml.template b/conf/submarine-site.xml.template deleted file mode 100755 index ccb2aa0..0000000 --- a/conf/submarine-site.xml.template +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - submarine.cluster.addr - - submarine cluster address list, e.g. ip1:port1;ip2:port2;ip3:port3 - - - - submarine.server.addr - 0.0.0.0 - Server address - - - - submarine.server.port - 8080 - Server port. - - - - submarine.server.ssl - false - Should SSL be used by the submarine server? - - - - submarine.server.ssl.port - 8443 - Server ssl port. (used when ssl property is set to true) - - - - submarine.server.ssl.client.auth - false - Should client authentication be used for SSL connections? - - - - submarine.server.ssl.keystore.path - keystore - Path to keystore relative to submarine configuration directory - - - - submarine.server.ssl.keystore.type - JKS - The format of the given keystore (e.g. JKS or PKCS12) - - - - submarine.server.ssl.keystore.password - change me - Keystore password. Can be obfuscated by the Jetty Password tool - - - - - - submarine.server.ssl.truststore.path - truststore - Path to truststore relative to submarine configuration directory. Defaults to the keystore path - - - - submarine.server.ssl.truststore.type - JKS - The format of the given truststore (e.g. JKS or PKCS12). Defaults to the same type as the keystore type - - - - - - workbench.web.war - ../submarine-workbench-web.war - Submarine workbench web war file path. - - - - jdbc.driverClassName - com.mysql.jdbc.Driver - - - jdbc.url - jdbc:mysql://127.0.0.1:3306/submarine?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false - - - jdbc.username - submarine - - - jdbc.password - password - - - - metastore.jdbc.url - jdbc:mysql://127.0.0.1:3306/metastore?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false&zeroDateTimeBehavior=convertToNull&useSSL=false - - - metastore.jdbc.username - metastore - - - metastore.jdbc.password - password - - - - submarine.runtime.class - org.apache.submarine.server.submitter.yarn.YarnRuntimeFactory - RuntimeFactory for Submarine jobs - - - - submarine.server.rpc.enabled - false - Run jobs using rpc server. - - - - submarine.server.rpc.port - 8980 - Rpc server port - - - - submarine.submitter - k8s - The submitter which you want used in the server. Build-in k8s - - diff --git a/dev-support/cicd/Dockerfile b/dev-support/cicd/Dockerfile deleted file mode 100644 index edf0402..0000000 --- a/dev-support/cicd/Dockerfile +++ /dev/null @@ -1,50 +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. - -FROM ubuntu:18.04 -RUN \ - apt-get update && \ - apt-get install -y wget vim git python-pip zlib1g-dev libssl-dev && \ - wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz && \ - tar xzf Python-2.7.13.tgz && cd Python-2.7.13 && ./configure --with-zlib && make install && make altinstall && \ - cd /root && wget https://files.pythonhosted.org/packages/59/38/55dd25a965990bd93f77eb765b189e72cf581ce1c2de651cb7b1dea74ed1/virtualenv-16.2.0.tar.gz && \ - tar xf virtualenv-16.2.0.tar.gz && \ - python virtualenv-16.2.0/virtualenv.py venv2.7 && \ - . venv2.7/bin/activate && \ - pip install jira && \ - deactivate - -RUN \ - git clone https://gitbox.apache.org/repos/asf/submarine.git && \ - cd submarine && \ - git remote rename origin apache && \ - git remote add apache-github https://github.com/apache/submarine.git -ADD \ - entry.sh /entry.sh -ENV \ - SUBMARINE_HOME=/submarine \ - PYTHON_VENV_PATH=/root - -RUN apt-get update && apt-get -y install bundler - -RUN \ - cd / && \ - git clone https://gitbox.apache.org/repos/asf/submarine-site.git && \ - cd /submarine-site && bundle update - -ENV \ - SUBMARINE_SITE=/submarine-site - -CMD /entry.sh diff --git a/dev-support/cicd/HowToRelease.md b/dev-support/cicd/HowToRelease.md deleted file mode 100644 index cd4d297..0000000 --- a/dev-support/cicd/HowToRelease.md +++ /dev/null @@ -1,198 +0,0 @@ -# How To Release Apache Submarine -This document is for Apache Submarine Release Manager to do a new release. - -## 1. Preparation -If you have not already done so, generate your PGP key and append your [signing key](http://www.apache.org/dev/release-signing.html#keys-policy) to the [KEYS](https://dist.apache.org/repos/dist/release/submarine/KEYS) file. Once you commit your changes (ask for PMC's help if you cannot), they will automatically be propagated to the website. Also upload your key to a public key server if you haven't. -End users use the KEYS file to validate that releases were done by an Apache Committer. - -``` -# generate key and send keys to a keyserver -gpg --gen-key -gpg --list-sigs -gpg --keyserver pgp.mit.edu --send-keys -gpg --refresh-keys --keyserver pgp.mit.edu - - -# ask for PMC’s help to sign the key and add your key to the submarine KEYS (Only PMCs has permission). The PMC should do -gpg --keyserver pgp.mit.edu --recv-key -gpg --sign-key -svn co --depth immediates https://dist.apache.org/repos/dist apache-dist -cd apache-dist -svn update --set-depth immediates release/submarine -cd release/submarine -gpg --list-sigs >> KEYS -gpg --armor --export >> KEYS -svn ci -m "Add 's key" -``` - -## 2. Send Release Plan -It's better to send a release plan email informing code freeze date and release date. - -## 3. Clean up the JIRA -Bulk update JIRA to move out non-blocker issues by setting the target version to the new release. -Assuming we're releasing version X, use below advanced filter in [submarine issue page](https://issues.apache.org/jira/projects/SUBMARINE). For instance, if we're releasing `0.3.0`. -``` -project in ("Apache Submarine") AND "Target Version" = 0.3.0 AND statusCategory != Done -``` -Click "tools"-> "bulk update" to edit all issues: -1. Change the target version to X+1. Here it is `0.4.0` (If it doesn't exist, ask for the PMC's help to access [administer-versions](https://issues.apache.org/jira/plugins/servlet/project-config/SUBMARINE/administer-versions?status=no-filter) to add the new version). -2. Add a comment to inform contributors. Like this. `Bulk update due to releasing 0.3.0. Please change it back if you think this is a blocker.` - -Do a double-check to confirm that there are no issues found with the above filter. And send mail to the developer list informing that we should mark "Target version" to `0.4.0` when creating new JIRAs. - -## 4. Tagging -Once the JIRA is cleaned up, we can tag the candidate release with below steps: -``` -export version=0.3.0 -export cversion=$version-RC0 -export tag=release-$cversion - -git tag -s $tag -m "Release candidate - $version" -# Verify the tag is signed with your GPG key -git tag -v $tag -# Push the tag to apache repo -git push origin $tag -``` - -## 5. Build Artifacts -The submarine artifacts consists of GPG signed source code tarball, binary tarball and docker images. -``` -cd dev-support/cicd/ -./create_release.sh $version $tag -# Move the artifacts to a folder instead of /tmp/ -mv /tmp/submarine-release ~/ -``` -> Note: In here we use the `version` not the `cversion`. - -## 6. Upload Artifacts For Vote -Before the uploading, we need to do some basic testing for the release candidates. For instance, build from the source tarball and run feature test using the binary tarball. - -### 6.1 Staging Source and Binary Tarball to self FTP server -``` -cd ~/submarine-release -sftp home.apache.org -# if not exits, please mkdir -cd public_html -mkdir submarine-$cversion && cd $_ -put -r . -exit -``` - -### 6.2 Staging Docker Images -When doing release, the release manager might needs to package an artifact candidates in this docker image and public the image candidate for a vote. -In this scenario, we can do this: - -Put submarine candidate artifacts to a folder like "~/releases/submarine-release" -``` -$ ls $release_candidates_path -submarine-dist-0.3.0-hadoop-2.9.tar.gz submarine-dist-0.3.0-src.tar.gz.asc -submarine-dist-0.3.0-hadoop-2.9.tar.gz.asc submarine-dist-0.3.0-src.tar.gz.sha512 -submarine-dist-0.3.0-hadoop-2.9.tar.gz.sha512 submarine-dist-0.3.0-src.tar.gz -``` -``` -export submarine_version=0.3.0 -export release_candidates_path=~/releases/submarine-release -./build_mini-submarine.sh -#docker run -it -h submarine-dev --net=bridge --privileged -P local/mini-submarine:0.3.0 /bin/bash -docker tag local/mini-submarine:0.3.0 apache/submarine:mini-0.3.0-RC0 -``` -In the container, we can verify that the submarine jar version is the expected 0.3.0. Then we can upload this image with a "RC" tag for a vote. - -Note: if you don't have permission to push image to docker hub, create a jira ticket to request the push permission. - -Refer to https://issues.apache.org/jira/browse/INFRA-20364 -``` -docker push apache/submarine:mini-0.3.0-RC0 -``` - -TODO: build the other images by manual. - -### 6.3 Publish Jars To Apache Maven Staging Repository -``` -export GPG_PASSPHRASE=yourPassphase -export ASF_USERID=yourApacheId -export ASF_PASSWORD=yourApachePwd -./publish_release.sh $version $tag -``` -Then to view the staging repo, we can login the https://repository.apache.org with the apache id. Click the "Staging Repositories" in the left side of the web page. And click "orgapachesubmarine-1001", then you will see the details of the repo including the URI. The URI is like this: -"https://repository.apache.org/content/repositories/orgapachesubmarine-1001" - -### 6.4 Call A Vote For The Release Candidate -After the artifacts and images are staged, we can send a vote email to the community. It's recommended that we paste the URI of RC tag, RC release artifacts, docker images, maven staging repository and the KEYS. -Refer to [here](https://www.mail-archive.com/dev@submarine.apache.org/msg01498.html) for an example. - -## 7. Release -In several days if the [vote passes](http://hadoop.apache.org/bylaws#Decision+Making), we can publish the release. If the vote fails, then we need to start another RC from [cleanup](#3.-Clean-up-the-JIRA) to the [staging](#6.-Upload-Artifacts-For-Vote). - -1. Access [submarine project version page](https://issues.apache.org/jira/projects/SUBMARINE?selectedItem=com.atlassian.jira.jira-projects-plugin:release-page&status=unreleased). Click the version to be released, and then click the "Release" button. It will request the release date. We can fill it with the end-of-vote date. - -2. Tag the release -``` -# please replace the version to the right version -export version=0.3.0 -export tag=rel/release-$version -git tag -s $tag -m "Submarine ${version} release" -git push origin $tag -``` - -3. Copy release artifacts to apache dist server -``` -svn co --depth immediates https://dist.apache.org/repos/dist apache-dist -cd apache-dist -svn update --set-depth infinity dev/submarine -svn update --set-depth infinity release/submarine -cd dev/submarine -mkdir submarine-$version -cp ~/submarine-release/* submarine-$version/ -svn add submarine-$version -svn ci -m "Publishing the bits for submarine release ${version} to apache dist dev folder" -cd ../../ -svn mv dev/submarine/submarine-$version release/submarine/ -svn ci -m "Publishing the bits for submarine release ${version}" -``` - -Usually binary tarball becomes larger than 300MB, so it cannot be directly uploaded to the distribution directory. We can use the dev directory (https://dist.apache.org/repos/dist/dev/submarine/) first and then move it to the distribution directory by svn move - -4. In [Nexus](https://repository.apache.org/), effect the release of artifacts by selecting the staged repository and then clicking Release. If there were multiple RCs, simply drop the staging repositories corresponding to failed RCs. - -5. Upload the docker images -``` -docker tag apache/submarine:mini-0.3.0-RC0 apache/submarine:mini-0.3.0 -docker push apache/submarine:mini-0.3.0 -``` - -6. Update the version in pom.xml -``` -# if the new version a point release -mvn versions:set -DgenerateBackupPoms=false -DnewVersion=X.(Y+1).Z-SNAPSHOT -git commit -a -m "Preparing for X.(Y+1).Z development" -``` - -7. Wait 24 hours for release to propagate to mirrors. - -8. Update the website. The guide is [here](https://github.com/apache/submarine-site) -``` -git clone https://github.com/apache/submarine-site.git -cd submarine-site -git checkout master -# Edit download.md to add the new release content -# The url of the binary and source tarball should be like -# "https://www.apache.org/dyn/closer.cgi/submarine/submarine-0.3.0/submarine-dist-0.3.0-hadoop-2.9.tar.gz" -# due to it will find a mirror server for different region. -# The url of the signature and checksum should be like -# "https://www.apache.org/dist/submarine/submarine-0.3.0/submarine-dist-0.3.0-hadoop-2.9.tar.gz.sha512)" -# due to they're not mirrored from apache dist server. -# For the release note web page, we need to create a MD file under "releases" directory -# like "submarine-release-0.3.0.md". The count of issues can be found -# from JIRA like "https://issues.apache.org/jira/projects/SUBMARINE/versions/12345556". -# And the details of issues can also get from "Release Notes" in that page. -cp release/submarine-release-0.3.0.md release/submarine-release-.md -vim release/submarine-release-.md -cd .. -docker run -it -p 4000:4000 -v $PWD/submarine-site:/submarine-site hadoopsubmarine/submarine-website:1.0.0 bash -cd /submarine-site -bundle exec jekyll serve --watch --host=0.0.0.0 -# Open another terminal, you can edit MD files and refresh the webpage to see changes instantly. -``` - -9. Send announcements to the user and developer lists once the site changes are visible. diff --git a/dev-support/cicd/README.md b/dev-support/cicd/README.md deleted file mode 100644 index 4ed4c3a..0000000 --- a/dev-support/cicd/README.md +++ /dev/null @@ -1,80 +0,0 @@ - -# CICD Introduction - -> Please note that cicd is a tool provided to submarine committers for PR merging and release. Only submarine committers have permission to execute. - -This cicd directory contains several scripts to ease code and release management. For how-to-release, check [here](./HowToRelease.md) - -To use them more easily, we provide a Docker image to help committer to handle tasks like committing code and release build. - -## Docker mode - -``` -./build_and_start_cicd_image.sh -``` - -Or - -``` -cd /dev-support/cicd -docker build -t submarine-cicd . -docker run -it --rm submarine-cicd -``` - -Jira username, password, apache id and apache username are required in the docker container. You can -add them to the local environment variable. - -``` -vi ~/.bash_profile -export JIRA_USERNAME='Your jira username' -export JIRA_PASSWORD='Your jira password' -export APACHE_ID='Your apache id' # Your apache email prefix -export APACHE_NAME='Your apache name' -``` - -And you'll see output like below and then you can decide what to accomplish. -``` -$ docker run -it -e JIRA_USERNAME="${JIRA_USERNAME}" -e JIRA_PASSWORD="${JIRA_PASSWORD}" -e APACHE_ID="${APACHE_ID}" -e APACHE_NAME="${APACHE_NAME}" -p 4000:4000 --rm submarine-cicd -``` - -The screen outputs the following information: - -``` -Menu: - 1. Merge PR - 2. Update Submarine Website -Enter Menu ID: -``` - -As you can see, the Docker mode support several features like merging PR and updating the web site. Choose the task you need to do and follow the popup tip to go on. - -## Manual mode (Not Recommended) - -First, You need install `python 2.7.13` and `pip insall jira` - -### The Procedure of Merging PR - -1. mkdir ${work_dir} -2. cd ${work_dir} -3. git clone https://gitbox.apache.org/repos/asf/submarine.git -4. cd submarine -5. git remote rename origin apache -6. git remote add apache-github https://github.com/apache/submarine.git -7. optional: git config --local --add user.name {name} -8. optional: git config --local --add user.email {username}@apache.org -9. optional: echo -e "JIRA_USERNAME={jira_username}\nJIRA_PASSWORD={jira_password}" >> ~/.bashrc -10. optional: source ~/.bashrc -11. dev-support/cicd/merge_submarine_pr.py - diff --git a/dev-support/cicd/build_and_start_cicd_image.sh b/dev-support/cicd/build_and_start_cicd_image.sh deleted file mode 100755 index a43600f..0000000 --- a/dev-support/cicd/build_and_start_cicd_image.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env bash -# 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. -set -euo pipefail - -printf "Building Submarine CI/CD Image.\n" -docker build -t submarine-cicd . -printf "Start Submarine CI/CD.\n" -docker run -it --rm -p 4000:4000 submarine-cicd diff --git a/dev-support/cicd/common_release.sh b/dev-support/cicd/common_release.sh deleted file mode 100755 index 517bc37..0000000 --- a/dev-support/cicd/common_release.sh +++ /dev/null @@ -1,65 +0,0 @@ -#!/usr/bin/env bash - -# -# 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. -# - -# common functions - -if [[ -z "${TAR:-}" ]]; then - TAR="/usr/bin/tar" -fi - -if [[ -z "${SHASUM:-}" ]]; then - SHASUM="/usr/bin/shasum" -fi - -if [[ -z "${WORKING_DIR:-}" ]]; then - WORKING_DIR="/tmp/submarine-release" -fi - -DEBUG_SUBMARINE_SCRIPT=false -if $DEBUG_SUBMARINE_SCRIPT; then - echo "DEBUGGING, skip remove ${WORKING_DIR}" -else - echo "Cleaning up ${WORKING_DIR}" - rm -rf "${WORKING_DIR}" - mkdir "${WORKING_DIR}" -fi - -# If set to 'yes', release script will deploy artifacts to SNAPSHOT repository. -DO_SNAPSHOT='no' - -usage() { - echo "usage) $0 [Release version] [Branch or Tag]" - echo " ex. $0 0.6.0 v0.6.0" - exit 1 -} - -function git_clone() { - echo "Clone the source" - # clone source - git clone https://git-wip-us.apache.org/repos/asf/submarine.git "${WORKING_DIR}/submarine" - - if [[ $? -ne 0 ]]; then - echo "Can not clone source repository" - exit 1 - fi - - cd "${WORKING_DIR}/submarine" - git checkout "${GIT_TAG}" - echo "Checked out ${GIT_TAG}" -} diff --git a/dev-support/cicd/create_release.sh b/dev-support/cicd/create_release.sh deleted file mode 100755 index fd83ef5..0000000 --- a/dev-support/cicd/create_release.sh +++ /dev/null @@ -1,105 +0,0 @@ -#!/usr/bin/env bash - -# -# 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 script helps making a release. -# You need to specify release version and branch|tag name. -# -# Here are some helpful documents for the release. -# http://www.apache.org/dev/release.html -# http://www.apache.org/dev/release-publishing -# http://www.apache.org/dev/release-signing.html - -set -euo pipefail - -BASEDIR="$(dirname "$0")" -. "${BASEDIR}/common_release.sh" -echo "${BASEDIR}/common_release.sh" - -if [[ $# -ne 2 ]]; then - usage -fi - -for var in GPG_PASSPHRASE; do - if [[ -z "${!var:-}" ]]; then - echo "You need ${var} variable set" - exit 1 - fi -done - -RELEASE_VERSION="$1" -GIT_TAG="$2" - -function compile_src_and_bin() { - cd ${WORKING_DIR}/submarine - echo "mvn versions:set -DnewVersion=${RELEASE_VERSION}" - mvn versions:set -DnewVersion="${RELEASE_VERSION}" - echo "mvn clean package -DskipTests -Psrc" - mvn clean package -DskipTests -Psrc - if [[ $? -ne 0 ]]; then - echo "Build failed. ${BUILD_FLAGS:-}" - exit 1 - fi -} - -function make_source_package() { - # create source package - cd ${WORKING_DIR}/submarine/submarine-dist/target - cd submarine-dist-*-src - # remove unneeded dir .github - rm -rf submarine-dist-${RELEASE_VERSION}-src/.github - ${TAR} cfz "submarine-dist-${RELEASE_VERSION}-src.tar.gz" "submarine-dist-${RELEASE_VERSION}-src" - mv "submarine-dist-${RELEASE_VERSION}-src.tar.gz" ${WORKING_DIR} - echo "Signing the source package" - cd "${WORKING_DIR}" - echo "${GPG_PASSPHRASE}" | gpg --passphrase-fd 0 --armor \ - --output "submarine-dist-${RELEASE_VERSION}-src.tar.gz.asc" \ - --detach-sig "${WORKING_DIR}/submarine-dist-${RELEASE_VERSION}-src.tar.gz" - ${SHASUM} -a 512 "submarine-dist-${RELEASE_VERSION}-src.tar.gz" > \ - "${WORKING_DIR}/submarine-dist-${RELEASE_VERSION}-src.tar.gz.sha512" -} - -function make_binary_release() { - R_DIR_NAME=submarine-dist-${RELEASE_VERSION}-hadoop-2.9 - cd ${WORKING_DIR}/submarine/submarine-dist/target - mv "${R_DIR_NAME}.tar.gz" ${WORKING_DIR} - # sign bin package - cd ${WORKING_DIR} - echo "${GPG_PASSPHRASE}" | gpg --passphrase-fd 0 --armor \ - --output "${R_DIR_NAME}.tar.gz.asc" \ - --detach-sig "${R_DIR_NAME}.tar.gz" - ${SHASUM} -a 512 "${R_DIR_NAME}.tar.gz" > \ - "${R_DIR_NAME}.tar.gz.sha512" -} - -if [ -d "${WORKING_DIR}/submarine/submarine-dist/target" ]; then - if $DEBUG_SUBMARINE_SCRIPT; then - echo "DEBUGGING, skip re-building submarine" - fi -else - git_clone - compile_src_and_bin -fi - -make_source_package -make_binary_release - -# remove non release files and dirs -echo "Deleting ${WORKING_DIR}/submarine" -rm -rf "${WORKING_DIR}/submarine" -echo "Release files are created under ${WORKING_DIR}" diff --git a/dev-support/cicd/entry.sh b/dev-support/cicd/entry.sh deleted file mode 100755 index 811683f..0000000 --- a/dev-support/cicd/entry.sh +++ /dev/null @@ -1,161 +0,0 @@ -#!/usr/bin/env bash -# 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. -set -euo pipefail -# activate python 2.7.13 environment -. ${PYTHON_VENV_PATH}/venv2.7/bin/activate - -function start_menu(){ - printf "Menu:\n" - printf "\t1. Merge PR\n" - printf "\t2. Update Submarine Website\n" - read -p "Enter Menu ID:" menu_id - case $menu_id in - "1") - merge_pr - ;; - "2") - update_submarine_site - ;; - "*") - printf "unknown. Exiting." - ;; - esac -} - -function merge_pr(){ - printf "==== Merge PR Begin ====\n" - jira_name="n" - jira_pwd="p" - apache_id="id" - apache_name="name" - - if [ -z "${JIRA_USERNAME:-}" ]; then - read -p "Enter Your Apache JIRA User name: " jira_name - else - jira_name=$JIRA_USERNAME - fi - echo "Got JIRA name: ${jira_name}" - - if [ -z "${JIRA_PASSWORD:-}" ]; then - read -s -p "Enter Your Apache JIRA User passwd: " jira_pwd - else - jira_pwd=$JIRA_PASSWORD - fi - - if [ -z "${APACHE_ID:-}" ]; then - printf "\n" - read -p "Enter Your Apache committer ID: " apache_id - else - apache_id=$APACHE_ID - fi - echo "Got Apache ID: ${apache_id}" - - if [ -z "${APACHE_NAME:-}" ]; then - read -p "Enter Your Apache committer name: " apache_name - else - apache_name=$APACHE_NAME - fi - echo "Got Apache name: ${apache_name}" - - cd $SUBMARINE_HOME - git checkout master - git pull - git config user.name "${apache_name}" - git config user.email "${apache_id}@apache.org" - export JIRA_USERNAME=${jira_name} - export JIRA_PASSWORD=${jira_pwd} - python dev-support/cicd/merge_submarine_pr.py - printf "==== Merge PR END ====\n" -} - -function update_submarine_site(){ - printf "==== Update Submarine Site Begin ====\n" - apache_id="id" - apache_name="name" - - if [ -z "${APACHE_ID:-}" ]; then - printf "\n" - read -p "Enter Your Apache committer ID: " apache_id - else - apache_id=$APACHE_ID - fi - echo "Got Apache ID: ${apache_id}" - - if [ -z "${APACHE_NAME:-}" ]; then - read -p "Enter Your Apache committer name: " apache_name - else - apache_name=$APACHE_NAME - fi - echo "Got Apache name: ${apache_name}" - - cd $SUBMARINE_SITE - git checkout master - git pull - git config user.name "${apache_name}" - git config user.email "${apache_id}@apache.org" - git config credential.helper store - bundle update - bundle exec jekyll serve --watch --host=0.0.0.0 > /tmp/jekyll.log 2>&1 & - echo "==== Please use vim to edit md files and check http://localhost:4000/ for the update ====" - while true; do - echo "==== Edit Mode: Type 'exit' when you finish the changes (you don't need to perform git commit/push). ====" - bash - read -p "Have you finished updating the MD files? y/n/quit " commit - case $commit in - "y") - echo "Start committing changes.." - cd $SUBMARINE_SITE - git add . - git status - read -p "Please input the commit message: " message - git commit -m "${message} (master branch)" - git push origin master - cp -r _site /_site - git checkout asf-site - cp -r /_site/* ./ - git add . - git status - git commit -m "${message} (asf-site branch)" - git push origin asf-site - echo "Exiting edit mode.." - break - ;; - "n") - continue - ;; - "quit") - printf "Exiting edit mode.." - break - ;; - "q") - printf "Exiting edit mode.." - break - ;; - "*") - printf "Unknown. Exiting edit mode.." - break - ;; - esac - done - printf "\n" - printf "==== Update Submarine Site END ====\n" - echo "==== Enter shell again incase any unexpected error happens ====" - bash - echo "Exiting CICD.." -} - -start_menu -deactivate diff --git a/dev-support/cicd/merge_submarine_pr.py b/dev-support/cicd/merge_submarine_pr.py deleted file mode 100755 index 7b5e57c..0000000 --- a/dev-support/cicd/merge_submarine_pr.py +++ /dev/null @@ -1,359 +0,0 @@ -#!/usr/bin/env python - -# -# 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. -# - -# Utility for creating well-formed pull request merges and pushing them to Apache. -# usage: ./merge-submarine-pr.py (see config env vars below) -# -# This utility assumes you already have local a Submarine git folder and that you -# have added remotes corresponding to both (i) the github apache Submarine -# mirror and (ii) the apache git repo. - -import json -import os -import re -import subprocess -import sys -import urllib2 - -try: - import jira.client - JIRA_IMPORTED = True -except ImportError: - JIRA_IMPORTED = False - -# Location of your Submarine git development area -SUBMARINE_HOME = os.environ.get("SUBMARINE_HOME", os.getcwd()) -# Remote name which points to the Github site -PR_REMOTE_NAME = os.environ.get("PR_REMOTE_NAME", "apache-github") -# Remote name which points to Apache git -PUSH_REMOTE_NAME = os.environ.get("PUSH_REMOTE_NAME", "apache") -# ASF JIRA username -JIRA_USERNAME = os.environ.get("JIRA_USERNAME", "you-jira-user-name") -# ASF JIRA password -JIRA_PASSWORD = os.environ.get("JIRA_PASSWORD", "you-jira-password") - -GITHUB_BASE = "https://github.com/apache/submarine/pull" -GITHUB_API_BASE = "https://api.github.com/repos/apache/submarine" -JIRA_BASE = "https://issues.apache.org/jira/browse" -JIRA_API_BASE = "https://issues.apache.org/jira" -# Prefix added to temporary branches -BRANCH_PREFIX = "PR_TOOL" - -os.chdir(SUBMARINE_HOME) - - -def get_json(url): - try: - return json.load(urllib2.urlopen(url)) - except urllib2.HTTPError as e: - print "Unable to fetch URL, exiting: %s" % url - sys.exit(-1) - - -def fail(msg): - print msg - clean_up() - sys.exit(-1) - - -def run_cmd(cmd): - print cmd - if isinstance(cmd, list): - return subprocess.check_output(cmd) - else: - return subprocess.check_output(cmd.split(" ")) - - -def continue_maybe(prompt): - result = raw_input("\n%s (y/n): " % prompt) - if result.lower() != "y": - fail("Okay, exiting") - - -original_head = run_cmd("git rev-parse HEAD")[:8] - - -def clean_up(): - print "Restoring head pointer to %s" % original_head - run_cmd("git checkout %s" % original_head) - - branches = run_cmd("git branch").replace(" ", "").split("\n") - - for branch in filter(lambda x: x.startswith(BRANCH_PREFIX), branches): - print "Deleting local branch %s" % branch - run_cmd("git branch -D %s" % branch) - - -# merge the requested PR and return the merge hash -def merge_pr(pr_num, target_ref): - pr_branch_name = "%s_MERGE_PR_%s" % (BRANCH_PREFIX, pr_num) - target_branch_name = "%s_MERGE_PR_%s_%s" % (BRANCH_PREFIX, pr_num, target_ref.upper()) - run_cmd("git fetch %s pull/%s/head:%s" % (PR_REMOTE_NAME, pr_num, pr_branch_name)) - run_cmd("git fetch %s %s:%s" % (PUSH_REMOTE_NAME, target_ref, target_branch_name)) - run_cmd("git checkout %s" % target_branch_name) - - had_conflicts = False - try: - run_cmd(['git', 'merge', pr_branch_name, '--squash']) - except Exception as e: - msg = "Error merging: %s\nWould you like to manually fix-up this merge?" % e - continue_maybe(msg) - msg = "Okay, please fix any conflicts and 'git add' conflicting files... Finished?" - continue_maybe(msg) - had_conflicts = True - - commit_authors = run_cmd(['git', 'log', 'HEAD..%s' % pr_branch_name, - '--pretty=format:%an <%ae>']).split("\n") - commit_date = run_cmd(['git', 'log', '%s' % pr_branch_name, '-1', - '--pretty=format:%ad']) - distinct_authors = sorted(set(commit_authors), - key=lambda x: commit_authors.count(x), reverse=True) - primary_author = distinct_authors[0] - commits = run_cmd(['git', 'log', 'HEAD..%s' % pr_branch_name, - '--pretty=format:%h [%an] %s']).split("\n\n") - - merge_message_flags = [] - - merge_message_flags += ["-m", title] - if body is not None: - # We remove @ symbols from the body to avoid triggering e-mails - # to people every time someone creates a public fork of Submarine. - if isinstance(body, unicode): - merge_message_flags += ["-m", body.encode("utf-8").replace("@", "")] - else: - merge_message_flags += ["-m", body.replace("@", "")] - - authors = "\n".join(["Author: %s" % a for a in distinct_authors]) - - merge_message_flags += ["-m", authors] - - if had_conflicts: - committer_name = run_cmd("git config --get user.name").strip() - committer_email = run_cmd("git config --get user.email").strip() - message = "This patch had conflicts when merged, resolved by\nCommitter: %s <%s>" % ( - committer_name, committer_email) - merge_message_flags += ["-m", message] - - # The string "Closes #%s" string is required for GitHub to correctly close the PR - merge_message_flags += [ - "-m", - "Closes #%s from %s and squashes the following commits:" % (pr_num, pr_repo_desc)] - for c in commits: - merge_message_flags += ["-m", c] - - run_cmd(['git', 'commit', '--author="%s"' % primary_author, '--date="%s"' % commit_date] + merge_message_flags) - - continue_maybe("Merge complete (local ref %s). Push to %s?" % ( - target_branch_name, PUSH_REMOTE_NAME)) - - try: - run_cmd('git push %s %s:%s' % (PUSH_REMOTE_NAME, target_branch_name, target_ref)) - except Exception as e: - clean_up() - fail("Exception while pushing: %s" % e) - - merge_hash = run_cmd("git rev-parse %s" % target_branch_name)[:8] - clean_up() - print("Pull request #%s merged!" % pr_num) - print("Merge hash: %s" % merge_hash) - return merge_hash - - -def cherry_pick(pr_num, merge_hash, default_branch): - pick_ref = raw_input("Enter a branch name [%s]: " % default_branch) - if pick_ref == "": - pick_ref = default_branch - - pick_branch_name = "%s_PICK_PR_%s_%s" % (BRANCH_PREFIX, pr_num, pick_ref.upper()) - - run_cmd("git fetch %s %s:%s" % (PUSH_REMOTE_NAME, pick_ref, pick_branch_name)) - run_cmd("git checkout %s" % pick_branch_name) - - try: - run_cmd("git cherry-pick -sx %s" % merge_hash) - except Exception as e: - msg = "Error cherry-picking: %s\nWould you like to manually fix-up this merge?" % e - continue_maybe(msg) - msg = "Okay, please fix any conflicts and finish the cherry-pick. Finished?" - continue_maybe(msg) - - continue_maybe("Pick complete (local ref %s). Push to %s?" % ( - pick_branch_name, PUSH_REMOTE_NAME)) - - try: - run_cmd('git push %s %s:%s' % (PUSH_REMOTE_NAME, pick_branch_name, pick_ref)) - except Exception as e: - clean_up() - fail("Exception while pushing: %s" % e) - - pick_hash = run_cmd("git rev-parse %s" % pick_branch_name)[:8] - clean_up() - - print("Pull request #%s picked into %s!" % (pr_num, pick_ref)) - print("Pick hash: %s" % pick_hash) - return pick_ref - - -def fix_version_from_branch(branch, versions): - # Note: Assumes this is a sorted (newest->oldest) list of un-released versions - if branch == "master": - return versions[0] - else: - branch_ver = branch.replace("branch-", "") - return filter(lambda x: x.name.startswith(branch_ver), versions)[-1] - - -def resolve_jira_issue(merge_branches, comment, default_jira_id=""): - asf_jira = jira.client.JIRA({'server': JIRA_API_BASE}, - basic_auth=(JIRA_USERNAME, JIRA_PASSWORD)) - - jira_id = raw_input("Enter a JIRA id [%s]: " % default_jira_id) - if jira_id == "": - jira_id = default_jira_id - - try: - issue = asf_jira.issue(jira_id) - except Exception as e: - fail("ASF JIRA could not find %s\n%s" % (jira_id, e)) - - cur_status = issue.fields.status.name - cur_summary = issue.fields.summary - cur_assignee = issue.fields.assignee - if cur_assignee is None: - cur_assignee = "NOT ASSIGNED!!!" - else: - cur_assignee = cur_assignee.displayName - - if cur_status == "Resolved" or cur_status == "Closed": - fail("JIRA issue %s already has status '%s'" % (jira_id, cur_status)) - print ("=== JIRA %s ===" % jira_id) - print ("summary\t\t%s\nassignee\t%s\nstatus\t\t%s\nurl\t\t%s/%s\n" % ( - cur_summary, cur_assignee, cur_status, JIRA_BASE, jira_id)) - - versions = asf_jira.project_versions("SUBMARINE") - versions = sorted(versions, key=lambda x: x.name, reverse=True) - versions = filter(lambda x: x.raw['released'] is False, versions) - # Consider only x.y.z versions - versions = filter(lambda x: re.match('\d+\.\d+\.\d+', x.name), versions) - - default_fix_versions = map(lambda x: fix_version_from_branch(x, versions).name, merge_branches) - for v in default_fix_versions: - # Handles the case where we have forked a release branch but not yet made the release. - # In this case, if the PR is committed to the master branch and the release branch, we - # only consider the release branch to be the fix version. E.g. it is not valid to have - # both 1.1.0 and 1.0.0 as fix versions. - (major, minor, patch) = v.split(".") - if patch == "0": - previous = "%s.%s.%s" % (major, int(minor) - 1, 0) - if previous in default_fix_versions: - default_fix_versions = filter(lambda x: x != v, default_fix_versions) - default_fix_versions = ",".join(default_fix_versions) - - fix_versions = raw_input("Enter comma-separated fix version(s) [%s]: " % default_fix_versions) - if fix_versions == "": - fix_versions = default_fix_versions - fix_versions = fix_versions.replace(" ", "").split(",") - - def get_version_json(version_str): - return filter(lambda v: v.name == version_str, versions)[0].raw - - jira_fix_versions = map(lambda v: get_version_json(v), fix_versions) - - resolve = filter(lambda a: a['name'] == "Resolve Issue", asf_jira.transitions(jira_id))[0] - asf_jira.transition_issue( - jira_id, resolve["id"], fixVersions=jira_fix_versions, comment=comment) - - print "Successfully resolved %s with fixVersions=%s!" % (jira_id, fix_versions) - - -def resolve_jira_issues(title, merge_branches, comment): - jira_ids = re.findall("SUBMARINE-[0-9]{3,5}", title) - - if len(jira_ids) == 0: - resolve_jira_issue(merge_branches, comment) - for jira_id in jira_ids: - resolve_jira_issue(merge_branches, comment, jira_id) - - -#branches = get_json("%s/branches" % GITHUB_API_BASE) -#branch_names = filter(lambda x: x.startswith("branch-"), [x['name'] for x in branches]) -# Assumes branch names can be sorted lexicographically -#latest_branch = sorted(branch_names, reverse=True)[0] -latest_branch = "master" - -pr_num = raw_input("Which pull request would you like to merge? (e.g. 23): ") -pr = get_json("%s/pulls/%s" % (GITHUB_API_BASE, pr_num)) -pr_events = get_json("%s/issues/%s/events" % (GITHUB_API_BASE, pr_num)) - -url = pr["url"] -title = pr["title"] -body = pr["body"] -target_ref = pr["base"]["ref"] -user_login = pr["user"]["login"] -base_ref = pr["head"]["ref"] -pr_repo_desc = "%s/%s" % (user_login, base_ref) - -# Merged pull requests don't appear as merged in the GitHub API; -# Instead, they're closed by asfgit. -merge_commits = \ - [e for e in pr_events if e["actor"]["login"] == "asfgit" and e["event"] == "closed"] - -if merge_commits: - merge_hash = merge_commits[0]["commit_id"] - message = get_json("%s/commits/%s" % (GITHUB_API_BASE, merge_hash))["commit"]["message"] - - print "Pull request %s has already been merged, assuming you want to backport" % pr_num - commit_is_downloaded = run_cmd(['git', 'rev-parse', '--quiet', '--verify', - "%s^{commit}" % merge_hash]).strip() != "" - if not commit_is_downloaded: - fail("Couldn't find any merge commit for #%s, you may need to update HEAD." % pr_num) - - print "Found commit %s:\n%s" % (merge_hash, message) - cherry_pick(pr_num, merge_hash, latest_branch) - sys.exit(0) - -if not bool(pr["mergeable"]): - msg = "Pull request %s is not mergeable in its current form.\n" % pr_num + \ - "Continue? (experts only!)" - continue_maybe(msg) - -print ("\n=== Pull Request #%s ===" % pr_num) -print ("title\t%s\nsource\t%s\ntarget\t%s\nurl\t%s" % ( - title, pr_repo_desc, target_ref, url)) -continue_maybe("Proceed with merging pull request #%s?" % pr_num) - -merged_refs = [target_ref] - -merge_hash = merge_pr(pr_num, target_ref) - -pick_prompt = "Would you like to pick %s into another branch?" % merge_hash -while raw_input("\n%s (y/n): " % pick_prompt).lower() == "y": - merged_refs = merged_refs + [cherry_pick(pr_num, merge_hash, latest_branch)] - -if JIRA_IMPORTED: - if JIRA_USERNAME and JIRA_PASSWORD: - continue_maybe("Would you like to update an associated JIRA?") - jira_comment = "Issue resolved by pull request %s\n[%s/%s]" % (pr_num, GITHUB_BASE, pr_num) - resolve_jira_issues(title, merged_refs, jira_comment) - else: - print "JIRA_USERNAME and JIRA_PASSWORD not set" - print "Exiting without trying to close the associated JIRA." -else: - print "Could not find jira library. Run 'sudo pip install jira' to install." - print "Exiting without trying to close the associated JIRA." diff --git a/dev-support/cicd/publish_release.sh b/dev-support/cicd/publish_release.sh deleted file mode 100755 index ac620f1..0000000 --- a/dev-support/cicd/publish_release.sh +++ /dev/null @@ -1,178 +0,0 @@ -#!/usr/bin/env bash -# -# 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 script helps publishing release to maven. -# You need to specify release version and branch|tag name. -# -# Here's some helpful documents for the release. -# http://www.apache.org/dev/publishing-maven-artifacts.html -set -euo pipefail -BASEDIR="$(dirname "$0")" -. "${BASEDIR}/common_release.sh" - -if [[ $# -ne 2 ]]; then - usage -fi - -for var in GPG_PASSPHRASE ASF_USERID ASF_PASSWORD; do - if [[ -z "${!var:-}" ]]; then - echo "You need ${var} variable set" - exit 1 - fi -done - -export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512m" -RED='\033[0;31m' -NC='\033[0m' # No Color - -RELEASE_VERSION="$1" -GIT_TAG="$2" -if [[ $RELEASE_VERSION == *"SNAPSHOT"* ]]; then - DO_SNAPSHOT="yes" -fi - -NEXUS_STAGING="https://repository.apache.org/service/local/staging" -# Get this from apache infra admin -NEXUS_PROFILE="2525cde13fad2a" - -function cleanup() { - echo "Remove working directory and maven local repository" - rm -rf ${WORKING_DIR} -} - -function curl_error() { - ret=${1} - if [[ $ret -ne 0 ]]; then - echo "curl response code is: ($ret)" - echo "See https://curl.haxx.se/libcurl/c/libcurl-errors.html to know the detailed cause of error." - echo -e "${RED}Failed to publish maven artifact to staging repository." - echo -e "IMPORTANT: You will have to re-run publish_release.sh to complete maven artifact publish.${NC}" - cleanup - exit 1 - fi -} - - -# -# Publishing Apache Submarine artifact to Apache snapshot repository. -# -function publish_snapshot_to_maven() { - cd "${WORKING_DIR}/submarine" - echo "Deploying Apache Submarine $RELEASE_VERSION version to snapshot repository." - - if [[ ! $RELEASE_VERSION == *"SNAPSHOT"* ]]; then - echo "ERROR: Snapshots must have a version containing 'SNAPSHOT'" - echo "ERROR: You gave version '$RELEASE_VERSION'" - exit 1 - fi - - tmp_repo="$(mktemp -d /tmp/submarine-repo-XXXXX)" - mvn versions:set -DnewVersion=$RELEASE_VERSION - tmp_settings="tmp-settings.xml" - echo "" > $tmp_settings - echo "apache.snapshots.https$ASF_USERID" >> $tmp_settings - echo "$ASF_PASSWORD" >> $tmp_settings - echo "" >> $tmp_settings - - mvn --settings $tmp_settings -Dmaven.repo.local="${tmp_repo}" -DskipTests deploy - - rm $tmp_settings - rm -rf $tmp_repo -} - -function publish_to_maven() { - cd "${WORKING_DIR}/submarine" - # Force release version - mvn versions:set -DnewVersion="${RELEASE_VERSION}" - - # Using Nexus API documented here: - # https://support.sonatype.com/hc/en-us/articles/213465868-Uploading-to-a-Staging-Repository-via-REST-API - echo "Creating Nexus staging repository" - repo_request="Apache Submarine ${RELEASE_VERSION}" - out="$(curl -X POST -d "${repo_request}" -u "${ASF_USERID}:${ASF_PASSWORD}" \ - -H 'Content-Type:application/xml' -v \ - "${NEXUS_STAGING}/profiles/${NEXUS_PROFILE}/start")" - create_ret=$? - curl_error $create_ret - staged_repo_id="$(echo ${out} | sed -e 's/.*\(orgapachesubmarine-[0-9]\{4\}\).*/\1/')" - if [[ -z "${staged_repo_id}" ]]; then - echo "Fail to create staging repository" - exit 1 - fi - - echo "Created Nexus staging repository: ${staged_repo_id}" - - rm -rf $HOME/.m2/repository/org/apache/submarine - - # build and install to local - echo "mvn clean install -DskipTests" - mvn clean install -DskipTests - if [[ $? -ne 0 ]]; then - echo "Mvn install failed." - exit 1 - fi - - pushd "${HOME}/.m2/repository/org/apache/submarine" - find . -type f | grep -v '\.jar$' | grep -v '\.pom$' |grep -v '\.war$' | xargs rm - - echo "Creating hash and signature files" - for file in $(find . -type f); do - echo "${GPG_PASSPHRASE}" | gpg --passphrase-fd 0 --output "${file}.asc" \ - --detach-sig --armor "${file}" - if [ $(command -v md5) ]; then - # Available on OS X; -q to keep only hash - md5 -q $file > $file.md5 - else - # Available on Linux; cut to keep only hash - md5sum $file | cut -f1 -d' ' > $file.md5 - fi - ${SHASUM} -a 1 "${file}" | cut -f1 -d' ' > "${file}.sha1" - done - - nexus_upload="${NEXUS_STAGING}/deployByRepositoryId/${staged_repo_id}" - echo "Uploading files to ${nexus_upload}" - for file in $(find . -type f); do - # strip leading ./ - file_short="$(echo "${file}" | sed -e 's/\.\///')" - dest_url="${nexus_upload}/org/apache/submarine/$file_short" - echo " Uploading ${file_short}" - curl -u "${ASF_USERID}:${ASF_PASSWORD}" --upload-file "${file_short}" "${dest_url}" - upload_ret=$? - curl_error $upload_ret - done - - echo "Closing nexus staging repository" - repo_request="${staged_repo_id}Apache Submarine ${RELEASE_VERSION}" - out="$(curl -X POST -d "${repo_request}" -u "${ASF_USERID}:${ASF_PASSWORD}" \ - -H 'Content-Type:application/xml' -v \ - "${NEXUS_STAGING}/profiles/${NEXUS_PROFILE}/finish")" - close_ret=$? - curl_error $close_ret - echo "Closed Nexus staging repository: ${staged_repo_id}" - popd - echo "Complete publishing maven artifacts to apache staging repository" - echo "Once release candidate pass the vote, do not forget to hit the release button in https://repository.apache.org" -} - -git_clone -if [[ "${DO_SNAPSHOT:-}" == 'yes' ]]; then - publish_snapshot_to_maven -else - publish_to_maven -fi -cleanup diff --git a/dev-support/docker-images/database/Dockerfile b/dev-support/docker-images/database/Dockerfile deleted file mode 100644 index 996bd23..0000000 --- a/dev-support/docker-images/database/Dockerfile +++ /dev/null @@ -1,26 +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. - -FROM submarinehub/mysql:5.7.27 -MAINTAINER Apache Software Foundation - -ENV AUTO_RUN_DIR /docker-entrypoint-initdb.d - -ADD database/* /tmp/database/ -ADD startup.sh ${AUTO_RUN_DIR}/ -RUN chmod +x ${AUTO_RUN_DIR}/startup.sh - -# mysql port -EXPOSE 3306 diff --git a/dev-support/docker-images/database/build.sh b/dev-support/docker-images/database/build.sh deleted file mode 100755 index d87c668..0000000 --- a/dev-support/docker-images/database/build.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env bash -# 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. - -set -euxo pipefail - -if [ -L ${BASH_SOURCE-$0} ]; then - PWD=$(dirname $(readlink "${BASH_SOURCE-$0}")) -else - PWD=$(dirname ${BASH_SOURCE-$0}) -fi -export CURRENT_PATH=$(cd "${PWD}">/dev/null; pwd) -SUBMARINE_HOME=${CURRENT_PATH}/../../.. - -SUBMARINE_VERSION="0.5.0" -SUBMARINE_IMAGE_NAME="apache/submarine:database-${SUBMARINE_VERSION}" - -cp -rf "${SUBMARINE_HOME}/docs/database" "${CURRENT_PATH}" - -# build image -echo "Start building the ${SUBMARINE_IMAGE_NAME} docker image ..." -cd ${CURRENT_PATH} -docker build -t ${SUBMARINE_IMAGE_NAME} . - -# clean template file -rm -rf ${CURRENT_PATH}/database diff --git a/dev-support/docker-images/database/startup.sh b/dev-support/docker-images/database/startup.sh deleted file mode 100755 index 884fab6..0000000 --- a/dev-support/docker-images/database/startup.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env bash -# 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. - -mysql -uroot -p$MYSQL_ROOT_PASSWORD <> /etc/environment && \ - echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && \ - echo "LANG=en_US.UTF-8" > /etc/locale.conf && \ - locale-gen en_US.UTF-8 - -ENV NB_USER=$NB_USER \ - NB_UID=$NB_UID \ - NB_PREFIX=$NB_PREFIX \ - NB_PORT=$NB_PORT \ - CONDA_DIR=/opt/conda \ - LANG=en_US.UTF-8 \ - LC_ALL=en_US.UTF-8 \ - LANGUAGE=en_US.UTF-8 -ENV PATH=$CONDA_DIR/bin:$PATH \ - HOME=/home/$NB_USER - -# Create NB_USER user with UID=1000 and in the 'users' group -RUN useradd -M -s /bin/bash -N -u $NB_UID $NB_USER && \ - chown -R ${NB_USER}:users /usr/local/bin && \ - mkdir -p $HOME && \ - chown -R ${NB_USER}:users ${HOME} && \ - mkdir -p ${CONDA_DIR} && \ - chown -R ${NB_USER}:users ${CONDA_DIR} && \ - chmod g+w /etc/passwd - -# Add Tini -ENV TINI_VERSION v0.19.0 -ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini -RUN mv /tini /usr/local/bin/tini && chmod +x /usr/local/bin/tini - -# Install conda -USER $NB_UID -ARG PYTHON_VERSION=default -ENV MINICONDA_VERSION=4.8.3 \ - MINICONDA_MD5=751786b92c00b1aeae3f017b781018df \ - CONDA_VERSION=4.8.3 - -WORKDIR /tmp -RUN wget --quiet https://repo.continuum.io/miniconda/Miniconda3-py37_${MINICONDA_VERSION}-Linux-x86_64.sh && \ - echo "${MINICONDA_MD5} *Miniconda3-py37_${MINICONDA_VERSION}-Linux-x86_64.sh" | md5sum -c - && \ - /bin/bash Miniconda3-py37_${MINICONDA_VERSION}-Linux-x86_64.sh -f -b -p $CONDA_DIR && \ - rm Miniconda3-py37_${MINICONDA_VERSION}-Linux-x86_64.sh && \ - echo "conda ${CONDA_VERSION}" >> $CONDA_DIR/conda-meta/pinned && \ - conda config --system --prepend channels conda-forge && \ - conda config --system --set auto_update_conda false && \ - conda config --system --set show_channel_urls true && \ - conda config --system --set channel_priority strict && \ - if [ ! $PYTHON_VERSION = 'default' ]; then conda install --yes python=$PYTHON_VERSION; fi && \ - conda list python | grep '^python ' | tr -s ' ' | cut -d '.' -f 1,2 | sed 's/$/.*/' >> $CONDA_DIR/conda-meta/pinned && \ - conda clean --all -f -y && \ - rm -rf /home/$NB_USER/.cache/yarn - -# Install latest sumbarine python sdk and notebook -RUN pip install notebook==6.1.3 && \ - git clone https://github.com/apache/submarine && \ - pip install submarine/submarine-sdk/pysubmarine && \ - cp submarine/submarine-sdk/pysubmarine/example/submarine_experiment_sdk.ipynb $HOME && \ - cp -r submarine/submarine-sdk/pysubmarine/example/{data,deepfm_example.ipynb,deepfm.json} $HOME && \ - rm submarine -rf - - - -EXPOSE $NB_PORT -ENTRYPOINT ["tini", "-g", "--"] -CMD ["start-notebook.sh"] -COPY --chown=${NB_USER}:users start-notebook.sh /usr/local/bin -WORKDIR ${HOME} diff --git a/dev-support/docker-images/jupyter/build.sh b/dev-support/docker-images/jupyter/build.sh deleted file mode 100755 index e2b083e..0000000 --- a/dev-support/docker-images/jupyter/build.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env bash -# 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. - -set -euxo pipefail - -JUPYTER_IMAGE="apache/submarine:jupyter-notebook-0.5.0" - -if [ -L ${BASH_SOURCE-$0} ]; then - PWD=$(dirname $(readlink "${BASH_SOURCE-$0}")) -else - PWD=$(dirname ${BASH_SOURCE-$0}) -fi -export CURRENT_PATH=$(cd "${PWD}">/dev/null; pwd) -SUBMARINE_HOME=${CURRENT_PATH}/../../.. - -# build image -echo "Start building the ${JUPYTER_IMAGE} docker image ..." -cd ${CURRENT_PATH} -docker build -t ${JUPYTER_IMAGE} . diff --git a/dev-support/docker-images/jupyter/start-notebook.sh b/dev-support/docker-images/jupyter/start-notebook.sh deleted file mode 100755 index fce5e33..0000000 --- a/dev-support/docker-images/jupyter/start-notebook.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env bash -# -# 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. -# -# description: Start and stop daemon script for. -# - -set -euo pipefail - -# Install conda dependency -if [[ -n "${INSTALL_ENVIRONMENT_COMMAND:-}" ]]; then - /bin/bash -c "${INSTALL_ENVIRONMENT_COMMAND}" -fi - -NOTEBOOK_ARGS="--ip=0.0.0.0 --no-browser --allow-root --NotebookApp.token='' --NotebookApp.password='' --NotebookApp.allow_origin='*'" -NB_USER="${NB_USER:-"jovyan"}" -NB_PREFIX="${NB_PREFIX:-"/"}" -NB_PORT="${NB_PORT:-8888}" - -if [[ -n "${NB_USER}" ]]; then - NOTEBOOK_ARGS="--notebook-dir=/home/${NB_USER} ${NOTEBOOK_ARGS}" -fi - -if [[ -n "${NB_PORT}" ]]; then - NOTEBOOK_ARGS="--port=${NB_PORT} ${NOTEBOOK_ARGS}" -fi - -if [[ -n "${NB_PREFIX}" ]]; then - NOTEBOOK_ARGS="--NotebookApp.base_url=${NB_PREFIX} ${NOTEBOOK_ARGS}" -fi - -/bin/bash -c "jupyter notebook ${NOTEBOOK_ARGS}" diff --git a/dev-support/docker-images/operator/Dockerfile b/dev-support/docker-images/operator/Dockerfile deleted file mode 100644 index d1a0080..0000000 --- a/dev-support/docker-images/operator/Dockerfile +++ /dev/null @@ -1,27 +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. - -FROM alpine:3.10 -MAINTAINER Apache Software Foundation - -# If you are in China, enabling the following two lines of code can speed up the build of the image, but it may cause failure in travis. -# So when submitting the code, please make sure the following 2 lines of code are in a commented state -# RUN echo "http://mirrors.ustc.edu.cn/alpine/v3.10/main" > /etc/apk/repositories -# RUN echo "http://mirrors.ustc.edu.cn/alpine/v3.10/community" >> /etc/apk/repositories - -RUN apk add tzdata --no-cache -ADD ./tmp/submarine-operator /usr/local/bin/submarine-operator - -ENTRYPOINT [ "/usr/local/bin/submarine-operator" ] diff --git a/dev-support/docker-images/operator/build.sh b/dev-support/docker-images/operator/build.sh deleted file mode 100755 index 5adbfe6..0000000 --- a/dev-support/docker-images/operator/build.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/env bash -# 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. - -set -euxo pipefail - -SUBMARINE_VERSION=0.5.0 -SUBMARINE_IMAGE_NAME="apache/submarine:operator-${SUBMARINE_VERSION}" - -if [ -L ${BASH_SOURCE-$0} ]; then - PWD=$(dirname $(readlink "${BASH_SOURCE-$0}")) -else - PWD=$(dirname ${BASH_SOURCE-$0}) -fi -export CURRENT_PATH=$(cd "${PWD}">/dev/null; pwd) -export SUBMARINE_HOME=${CURRENT_PATH}/../../.. - -if [ ! -d "${SUBMARINE_HOME}/submarine-cloud/bin" ]; then - mkdir "${SUBMARINE_HOME}/submarine-cloud/bin" -fi -submarine_operator_exists=$(find -L "${SUBMARINE_HOME}/submarine-cloud/bin" -name "submarine-operator") -# Build source code if the package doesn't exist. -if [[ -z "${submarine_operator_exists}" ]]; then - cd "${SUBMARINE_HOME}/submarine-cloud" - mvn package -fi - -mkdir -p "${CURRENT_PATH}/tmp" -cp ${SUBMARINE_HOME}/submarine-cloud/bin/submarine-operator "${CURRENT_PATH}/tmp" - -# build image -cd ${CURRENT_PATH} -echo "Start building the ${SUBMARINE_IMAGE_NAME} docker image ..." -docker build -t ${SUBMARINE_IMAGE_NAME} . - -# clean temp file -rm -rf "${CURRENT_PATH}/tmp" diff --git a/dev-support/docker-images/submarine/Dockerfile b/dev-support/docker-images/submarine/Dockerfile deleted file mode 100644 index 792080a..0000000 --- a/dev-support/docker-images/submarine/Dockerfile +++ /dev/null @@ -1,48 +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. - -FROM alpine:3.10 -MAINTAINER Apache Software Foundation - -# If you are in China, enabling the following two lines of code can speed up the build of the image, but it may cause failure in travis. -# So when submitting the code, please make sure the following 2 lines of code are in a commented state -# RUN echo "http://mirrors.ustc.edu.cn/alpine/v3.10/main" > /etc/apk/repositories -# RUN echo "http://mirrors.ustc.edu.cn/alpine/v3.10/community" >> /etc/apk/repositories - -# INSTALL openjdk -RUN apk update && \ - apk add --no-cache openjdk8 tzdata bash tini && \ - cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ - echo Asia/Shanghai > /etc/timezone && \ - apk del tzdata && \ - rm -rf /tmp/* /var/cache/apk/* - -ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk/jre - -# Install Submarine -ADD ./tmp/submarine-dist-*.tar.gz /opt/ -RUN ln -s /opt/submarine-dist-* "/opt/submarine-current" -ADD ./tmp/submarine-site.xml "/opt/submarine-current/conf/" -ADD ./tmp/submarine.sh "/opt/submarine-current/bin/" -ADD ./tmp/mysql-connector-java-5.1.39.jar "/opt/submarine-current/lib/" - -WORKDIR /opt/submarine-current - -# Submarine port -EXPOSE 8080 - -ENTRYPOINT ["/sbin/tini", "--"] - -CMD ["/bin/bash", "-c", "/opt/submarine-current/bin/submarine.sh start"] diff --git a/dev-support/docker-images/submarine/build.sh b/dev-support/docker-images/submarine/build.sh deleted file mode 100755 index 2fd3847..0000000 --- a/dev-support/docker-images/submarine/build.sh +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env bash -# 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. - -set -euxo pipefail - -SUBMARINE_VERSION=0.5.0 -SUBMARINE_IMAGE_NAME="apache/submarine:server-${SUBMARINE_VERSION}" - -if [ -L ${BASH_SOURCE-$0} ]; then - PWD=$(dirname $(readlink "${BASH_SOURCE-$0}")) -else - PWD=$(dirname ${BASH_SOURCE-$0}) -fi -export CURRENT_PATH=$(cd "${PWD}">/dev/null; pwd) -export SUBMARINE_HOME=${CURRENT_PATH}/../../.. - -if [ ! -d "${SUBMARINE_HOME}/submarine-dist/target" ]; then - mkdir "${SUBMARINE_HOME}/submarine-dist/target" -fi -submarine_dist_exists=$(find -L "${SUBMARINE_HOME}/submarine-dist/target" -name "submarine-dist-${SUBMARINE_VERSION}*.tar.gz") -# Build source code if the package doesn't exist. -if [[ -z "${submarine_dist_exists}" ]]; then - cd "${SUBMARINE_HOME}" - mvn clean package -DskipTests -fi - -mkdir -p "${CURRENT_PATH}/tmp" -cp ${SUBMARINE_HOME}/submarine-dist/target/submarine-dist-${SUBMARINE_VERSION}*.tar.gz "${CURRENT_PATH}/tmp" - -# download mysql connect java -MYSQL_VERSION=5.1.39 -MYSQL_JAR_URL="https://repo1.maven.org/maven2/mysql/mysql-connector-java/${MYSQL_VERSION}/mysql-connector-java-${MYSQL_VERSION}.jar" -tmpfile=$(mktemp) -trap "test -f $tmpfile && rm $tmpfile" RETURN -curl -L -o $tmpfile ${MYSQL_JAR_URL} -mv $tmpfile ${CURRENT_PATH}/tmp/mysql-connector-java-${MYSQL_VERSION}.jar - -# Replace the mysql jdbc.url in the submarine-site.xml file with the link name of the submarine container -# `submarine-database` is submarine database container name -cp ${SUBMARINE_HOME}/conf/submarine-site.xml "${CURRENT_PATH}/tmp/" -sed -i.bak 's/127.0.0.1:3306/submarine-database:3306/g' "${CURRENT_PATH}/tmp/submarine-site.xml" - -cp ${SUBMARINE_HOME}/bin/submarine.sh "${CURRENT_PATH}/tmp/" - -# build image -cd ${CURRENT_PATH} -echo "Start building the ${SUBMARINE_IMAGE_NAME} docker image ..." -docker build -t ${SUBMARINE_IMAGE_NAME} . - -# clean temp file -rm -rf "${CURRENT_PATH}/tmp" diff --git a/dev-support/k8s/deploy-kubeflow-operators.sh b/dev-support/k8s/deploy-kubeflow-operators.sh deleted file mode 100755 index ec12aa6..0000000 --- a/dev-support/k8s/deploy-kubeflow-operators.sh +++ /dev/null @@ -1,165 +0,0 @@ -#!/usr/bin/env bash -# -# 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. -# -set -euo pipefail - -readonly TF_OPERATOR_IMAGE="apache/submarine:tf_operator-v1.1.0-g92389064" -readonly PYTORCH_OPERATOR_IMAGE="apache/submarine:pytorch-operator-v1.1.0-gd596e904" -readonly TF_MNIST_IMAGE="apache/submarine:tf-mnist-with-summaries-1.0" -readonly PT_MNIST_IMAGE="apache/submarine:pytorch-dist-mnist-1.0" - -if [ -L "${BASH_SOURCE-$0}" ]; then - PWD=$(dirname "$(readlink "${BASH_SOURCE-$0}")") -else - PWD=$(dirname "${BASH_SOURCE-$0}") -fi -CURRENT_PATH=$(cd "${PWD}">/dev/null; pwd) -export CURRENT_PATH -export SUBMARINE_HOME=${CURRENT_PATH}/../.. -# lib.sh use the ROOT variable -export ROOT="${SUBMARINE_HOME}/submarine-cloud/" -export KUBECONFIG="${HOME}/.kube/kind-config-${clusterName:-kind}" - -# shellcheck source=./../../submarine-cloud/hack/lib.sh -source "${SUBMARINE_HOME}/submarine-cloud/hack/lib.sh" - -########################################### -# Load local docker image into registry -# Globals: -# KIND_BIN -# Arguments: -# image -########################################### -function load_image_to_registry() { - if [[ ! $(docker inspect "$1" > /dev/null) ]] ; then - docker pull "$1" - fi - ${KIND_BIN} load docker-image "$1" -} - -########################################### -# Deploy tf-operator on K8s -# Globals: -# KUBECTL_BIN -# CURRENT_PATH -# TF_OPERATOR_IMAGE -# Arguments: -# useSample -########################################### -function deploy_tf_operator() { - load_image_to_registry "${TF_OPERATOR_IMAGE}" - - ${KUBECTL_BIN} apply -f "${CURRENT_PATH}/tfjob/crd.yaml" - ${KUBECTL_BIN} kustomize "${CURRENT_PATH}/tfjob/operator" \ - | ${KUBECTL_BIN} apply -f - - - if [[ ${1:-} == "true" ]]; then - load_image_to_registry "${TF_MNIST_IMAGE}" - fi -} - -########################################### -# Deploy tf-operator on K8s -# Globals: -# KUBECTL_BIN -# CURRENT_PATH -# PYTORCH_OPERATOR_IMAGE -# Arguments: -# useSample -########################################### -function deploy_pytorch_operator() { - load_image_to_registry "${PYTORCH_OPERATOR_IMAGE}" - ${KUBECTL_BIN} apply -f "${CURRENT_PATH}/pytorchjob" - - if [[ ${1:-} == "true" ]]; then - load_image_to_registry "${PT_MNIST_IMAGE}" - fi -} - -########################################### -# Print the usage information -########################################### -function usage() { - cat </dev/null; pwd) -export CURRENT_PATH -export SUBMARINE_HOME=${CURRENT_PATH}/../.. -# lib.sh use the ROOT variable -export ROOT="${SUBMARINE_HOME}/submarine-cloud/" -export KUBECONFIG="${HOME}/.kube/kind-config-${clusterName:-kind}" - -# shellcheck source=./../../submarine-cloud/hack/lib.sh -source "${SUBMARINE_HOME}/submarine-cloud/hack/lib.sh" - -########################################### -# Load local docker image into registry -# Globals: -# KIND_BIN -# Arguments: -# image -########################################### -function load_image_to_registry() { - if [[ ! $(docker inspect "$1" > /dev/null) ]] ; then - docker pull "$1" - fi - ${KIND_BIN} load docker-image "$1" -} - - -function main() { - - hack::ensure_kubectl - - load_image_to_registry "${NOTEBOOK_CONTROLLER_IMAGE}" - ${KUBECTL_BIN} apply -k "${CURRENT_PATH}/notebook-controller" - -} - -main "$@" diff --git a/dev-support/k8s/deploy-traefik.sh b/dev-support/k8s/deploy-traefik.sh deleted file mode 100755 index 3fb8400..0000000 --- a/dev-support/k8s/deploy-traefik.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env bash -# -# 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. -# -set -euo pipefail - -readonly TRAEFIK_IMAGE="traefik:v2.2" - -if [ -L "${BASH_SOURCE-$0}" ]; then - PWD=$(dirname "$(readlink "${BASH_SOURCE-$0}")") -else - PWD=$(dirname "${BASH_SOURCE-$0}") -fi -CURRENT_PATH=$(cd "${PWD}">/dev/null; pwd) -export CURRENT_PATH -export SUBMARINE_HOME=${CURRENT_PATH}/../.. -# lib.sh use the ROOT variable -export ROOT="${SUBMARINE_HOME}/submarine-cloud/" -export KUBECONFIG="${HOME}/.kube/kind-config-${clusterName:-kind}" - -# shellcheck source=./../../submarine-cloud/hack/lib.sh -source "${SUBMARINE_HOME}/submarine-cloud/hack/lib.sh" - -########################################### -# Load local docker image into registry -# Globals: -# KIND_BIN -# Arguments: -# image -########################################### -function load_image_to_registry() { - if [[ ! $(docker inspect "$1" > /dev/null) ]] ; then - docker pull "$1" - fi - ${KIND_BIN} load docker-image "$1" -} - -function main() { - hack::ensure_kubectl - echo "Setting up ingress on a kind cluster." - load_image_to_registry "${TRAEFIK_IMAGE}" - ${KUBECTL_BIN} apply -k "${CURRENT_PATH}/traefik" -} - -main "@" diff --git a/dev-support/k8s/notebook-controller/cluster-role-binding.yaml b/dev-support/k8s/notebook-controller/cluster-role-binding.yaml deleted file mode 100644 index a1a3945..0000000 --- a/dev-support/k8s/notebook-controller/cluster-role-binding.yaml +++ /dev/null @@ -1,11 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - name: role-binding -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: role -subjects: -- kind: ServiceAccount - name: service-account diff --git a/dev-support/k8s/notebook-controller/cluster-role.yaml b/dev-support/k8s/notebook-controller/cluster-role.yaml deleted file mode 100644 index 16b6253..0000000 --- a/dev-support/k8s/notebook-controller/cluster-role.yaml +++ /dev/null @@ -1,107 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: role -rules: -- apiGroups: - - apps - resources: - - statefulsets - - deployments - verbs: - - '*' -- apiGroups: - - "" - resources: - - pods - verbs: - - get - - list - - watch -- apiGroups: - - "" - resources: - - services - verbs: - - '*' -- apiGroups: - - "" - resources: - - events - verbs: - - get - - list - - watch - - create -- apiGroups: - - kubeflow.org - resources: - - notebooks - - notebooks/status - - notebooks/finalizers - verbs: - - '*' -- apiGroups: - - networking.istio.io - resources: - - virtualservices - verbs: - - '*' - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-notebooks-admin - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-admin: "true" -aggregationRule: - clusterRoleSelectors: - - matchLabels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-notebooks-admin: "true" -rules: [] - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-notebooks-edit - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-edit: "true" - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-notebooks-admin: "true" -rules: -- apiGroups: - - kubeflow.org - resources: - - notebooks - - notebooks/status - verbs: - - get - - list - - watch - - create - - delete - - deletecollection - - patch - - update - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-notebooks-view - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-view: "true" -rules: -- apiGroups: - - kubeflow.org - resources: - - notebooks - - notebooks/status - verbs: - - get - - list - - watch diff --git a/dev-support/k8s/notebook-controller/crd.yaml b/dev-support/k8s/notebook-controller/crd.yaml deleted file mode 100644 index b6556bd..0000000 --- a/dev-support/k8s/notebook-controller/crd.yaml +++ /dev/null @@ -1,64 +0,0 @@ -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: notebooks.kubeflow.org -spec: - group: kubeflow.org - names: - kind: Notebook - plural: notebooks - singular: notebook - scope: Namespaced - subresources: - status: {} - versions: - - name: v1alpha1 - served: true - storage: false - - name: v1beta1 - served: true - storage: true - - name: v1 - served: true - storage: false - validation: - openAPIV3Schema: - properties: - apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources' - type: string - kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' - type: string - metadata: - type: object - spec: - properties: - template: - description: 'INSERT ADDITIONAL SPEC FIELDS - desired state of cluster - Important: Run "make" to regenerate code after modifying this file' - properties: - spec: - type: object - type: object - type: object - status: - properties: - conditions: - description: Conditions is an array of current conditions - items: - properties: - type: - description: Type of the confition/ - type: string - required: - - type - type: object - type: array - required: - - conditions - type: object diff --git a/dev-support/k8s/notebook-controller/deployment.yaml b/dev-support/k8s/notebook-controller/deployment.yaml deleted file mode 100644 index cb7c93c..0000000 --- a/dev-support/k8s/notebook-controller/deployment.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: deployment -spec: - template: - metadata: - annotations: - sidecar.istio.io/inject: "false" - spec: - containers: - - name: manager - image: apache/submarine:notebook-controller-v1.1.0-g253890cb - command: - - /manager - imagePullPolicy: IfNotPresent - livenessProbe: - httpGet: - path: /metrics - port: 8080 - initialDelaySeconds: 30 - periodSeconds: 30 - serviceAccountName: service-account diff --git a/dev-support/k8s/notebook-controller/deployment_patch.yaml b/dev-support/k8s/notebook-controller/deployment_patch.yaml deleted file mode 100644 index a7dfb43..0000000 --- a/dev-support/k8s/notebook-controller/deployment_patch.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: deployment -spec: - template: - spec: - containers: - - name: manager - env: - # We use a patch to set the USE_ISTIO because in other patches - # we want to set it to a configMapRef and so if we include the value - # in the base when we do the merge we end up with 2 fields setting the value. - - name: USE_ISTIO - value: "false" \ No newline at end of file diff --git a/dev-support/k8s/notebook-controller/kustomization.yaml b/dev-support/k8s/notebook-controller/kustomization.yaml deleted file mode 100644 index f0c75d5..0000000 --- a/dev-support/k8s/notebook-controller/kustomization.yaml +++ /dev/null @@ -1,42 +0,0 @@ -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: -- cluster-role-binding.yaml -- cluster-role.yaml -- crd.yaml -- deployment.yaml -- service-account.yaml -- service.yaml -namePrefix: notebook-controller- -namespace: default -patchesStrategicMerge: -- deployment_patch.yaml -commonLabels: - app: notebook-controller - kustomize.component: notebook-controller -images: -- name: apache/submarine - newName: apache/submarine - newTag: notebook-controller-v1.1.0-g253890cb -configMapGenerator: -- name: parameters - literals: - - USE_ISTIO=false - - ISTIO_GATEWAY= -generatorOptions: - disableNameSuffixHash: true -vars: -- fieldref: - fieldPath: data.USE_ISTIO - name: USE_ISTIO - objref: - apiVersion: v1 - kind: ConfigMap - name: parameters -- fieldref: - fieldPath: data.ISTIO_GATEWAY - name: ISTIO_GATEWAY - objref: - apiVersion: v1 - kind: ConfigMap - name: parameters diff --git a/dev-support/k8s/notebook-controller/service-account.yaml b/dev-support/k8s/notebook-controller/service-account.yaml deleted file mode 100644 index a36cbd8..0000000 --- a/dev-support/k8s/notebook-controller/service-account.yaml +++ /dev/null @@ -1,4 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: service-account diff --git a/dev-support/k8s/notebook-controller/service.yaml b/dev-support/k8s/notebook-controller/service.yaml deleted file mode 100644 index c7368f9..0000000 --- a/dev-support/k8s/notebook-controller/service.yaml +++ /dev/null @@ -1,7 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: service -spec: - ports: - - port: 443 diff --git a/dev-support/k8s/pytorchjob/crd.yaml b/dev-support/k8s/pytorchjob/crd.yaml deleted file mode 100644 index 4a8cf89..0000000 --- a/dev-support/k8s/pytorchjob/crd.yaml +++ /dev/null @@ -1,42 +0,0 @@ -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: pytorchjobs.kubeflow.org -spec: - additionalPrinterColumns: - - JSONPath: .status.conditions[-1:].type - name: State - type: string - - JSONPath: .metadata.creationTimestamp - name: Age - type: date - group: kubeflow.org - names: - kind: PyTorchJob - plural: pytorchjobs - singular: pytorchjob - scope: Namespaced - subresources: - status: {} - validation: - openAPIV3Schema: - properties: - spec: - properties: - pytorchReplicaSpecs: - properties: - Master: - properties: - replicas: - maximum: 1 - minimum: 1 - type: integer - Worker: - properties: - replicas: - minimum: 1 - type: integer - versions: - - name: v1 - served: true - storage: true diff --git a/dev-support/k8s/pytorchjob/deploy-pytorch-operator.sh b/dev-support/k8s/pytorchjob/deploy-pytorch-operator.sh deleted file mode 100755 index 07f7b07..0000000 --- a/dev-support/k8s/pytorchjob/deploy-pytorch-operator.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# -# 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. -# -# description: Start and stop daemon script for. -# - -kubectl apply -f ./namespace.yaml -sleep 5 -# there're two deployment yaml file. One for K8s version prior to 1.16. One for 1.16+ due to API incompatibility -kubectl apply -f ./ diff --git a/dev-support/k8s/pytorchjob/deployment.yaml b/dev-support/k8s/pytorchjob/deployment.yaml deleted file mode 100644 index 6ebcea7..0000000 --- a/dev-support/k8s/pytorchjob/deployment.yaml +++ /dev/null @@ -1,34 +0,0 @@ -apiVersion: extensions/v1beta1 -#apiVersion: apps/v1 -kind: Deployment -metadata: - name: pytorch-operator - namespace: default -spec: - replicas: 1 - selector: - matchLabels: - name: pytorch-operator - template: - metadata: - labels: - name: pytorch-operator - spec: - containers: - - command: - - /pytorch-operator.v1 - - --alsologtostderr - - -v=1 - - --monitoring-port=8443 - env: - - name: MY_POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - - name: MY_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - image: apache/submarine:pytorch-operator-v1.1.0-gd596e904 - name: pytorch-operator - serviceAccountName: pytorch-operator diff --git a/dev-support/k8s/pytorchjob/deployment_v1.16plus.yaml b/dev-support/k8s/pytorchjob/deployment_v1.16plus.yaml deleted file mode 100644 index 5db665b..0000000 --- a/dev-support/k8s/pytorchjob/deployment_v1.16plus.yaml +++ /dev/null @@ -1,57 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - creationTimestamp: null - labels: - name: pytorch-operator - name: pytorch-operator - namespace: default -spec: - progressDeadlineSeconds: 2147483647 - replicas: 1 - revisionHistoryLimit: 2147483647 - selector: - matchLabels: - name: pytorch-operator - strategy: - rollingUpdate: - maxSurge: 1 - maxUnavailable: 1 - type: RollingUpdate - template: - metadata: - creationTimestamp: null - labels: - name: pytorch-operator - spec: - containers: - - command: - - /pytorch-operator.v1 - - --alsologtostderr - - -v=1 - - --monitoring-port=8443 - env: - - name: MY_POD_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: MY_POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - image: apache/submarine:pytorch-operator-v1.1.0-gd596e904 - imagePullPolicy: IfNotPresent - name: pytorch-operator - resources: {} - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - dnsPolicy: ClusterFirst - restartPolicy: Always - schedulerName: default-scheduler - securityContext: {} - serviceAccount: pytorch-operator - serviceAccountName: pytorch-operator - terminationGracePeriodSeconds: 30 -status: {} diff --git a/dev-support/k8s/pytorchjob/namespace.yaml b/dev-support/k8s/pytorchjob/namespace.yaml deleted file mode 100644 index 559fbc3..0000000 --- a/dev-support/k8s/pytorchjob/namespace.yaml +++ /dev/null @@ -1,4 +0,0 @@ -apiVersion: v1 -kind: Namespace -metadata: - name: submarine diff --git a/dev-support/k8s/pytorchjob/podgroup.yaml b/dev-support/k8s/pytorchjob/podgroup.yaml deleted file mode 100644 index 1432fc1..0000000 --- a/dev-support/k8s/pytorchjob/podgroup.yaml +++ /dev/null @@ -1,39 +0,0 @@ -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: podgroups.scheduling.incubator.k8s.io -spec: - group: scheduling.incubator.k8s.io - names: - kind: PodGroup - plural: podgroups - scope: Namespaced - validation: - openAPIV3Schema: - properties: - apiVersion: - type: string - kind: - type: string - metadata: - type: object - spec: - properties: - minMember: - format: int32 - type: integer - type: object - status: - properties: - succeeded: - format: int32 - type: integer - failed: - format: int32 - type: integer - running: - format: int32 - type: integer - type: object - type: object - version: v1alpha1 diff --git a/dev-support/k8s/pytorchjob/rbac.yaml b/dev-support/k8s/pytorchjob/rbac.yaml deleted file mode 100644 index 0261c85..0000000 --- a/dev-support/k8s/pytorchjob/rbac.yaml +++ /dev/null @@ -1,53 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - app: pytorch-operator - name: pytorch-operator - namespace: default ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - labels: - app: pytorch-operator - name: pytorch-operator -rules: -- apiGroups: - - kubeflow.org - resources: - - pytorchjobs - - pytorchjobs/status - verbs: - - '*' -- apiGroups: - - apiextensions.k8s.io - resources: - - customresourcedefinitions - verbs: - - '*' -- apiGroups: - - "" - resources: - - pods - - services - - endpoints - - events - verbs: - - '*' ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - labels: - app: pytorch-operator - name: pytorch-operator -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: pytorch-operator -subjects: -- kind: ServiceAccount - name: pytorch-operator - namespace: default ---- diff --git a/dev-support/k8s/pytorchjob/service.yaml b/dev-support/k8s/pytorchjob/service.yaml deleted file mode 100644 index 8e57a49..0000000 --- a/dev-support/k8s/pytorchjob/service.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - annotations: - prometheus.io/path: /metrics - prometheus.io/port: "8443" - prometheus.io/scrape: "true" - labels: - app: pytorch-operator - name: pytorch-operator - namespace: default -spec: - ports: - - name: monitoring-port - port: 8443 - targetPort: 8443 - selector: - name: pytorch-operator - type: ClusterIP diff --git a/dev-support/k8s/tfjob/crd.yaml b/dev-support/k8s/tfjob/crd.yaml deleted file mode 100644 index 38f850b..0000000 --- a/dev-support/k8s/tfjob/crd.yaml +++ /dev/null @@ -1,42 +0,0 @@ -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: tfjobs.kubeflow.org -spec: - group: kubeflow.org - scope: Namespaced - names: - kind: TFJob - singular: tfjob - plural: tfjobs - versions: - - name: v1 - served: true - storage: true - subresources: - status: {} - validation: - openAPIV3Schema: - properties: - spec: - properties: - tfReplicaSpecs: - properties: - # The validation works when the configuration contains - # `Worker`, `PS` or `Chief`. Otherwise it will not be validated. - Worker: - properties: - replicas: - type: integer - minimum: 1 - PS: - properties: - replicas: - type: integer - minimum: 1 - Chief: - properties: - replicas: - type: integer - minimum: 1 - maximum: 1 diff --git a/dev-support/k8s/tfjob/operator/cluster-role-binding.yaml b/dev-support/k8s/tfjob/operator/cluster-role-binding.yaml deleted file mode 100644 index e05aad7..0000000 --- a/dev-support/k8s/tfjob/operator/cluster-role-binding.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - labels: - app: tf-job-operator - name: tf-job-operator -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: tf-job-operator -subjects: -- kind: ServiceAccount - name: tf-job-operator diff --git a/dev-support/k8s/tfjob/operator/cluster-role.yaml b/dev-support/k8s/tfjob/operator/cluster-role.yaml deleted file mode 100644 index 2740b98..0000000 --- a/dev-support/k8s/tfjob/operator/cluster-role.yaml +++ /dev/null @@ -1,96 +0,0 @@ ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - labels: - app: tf-job-operator - name: tf-job-operator -rules: - - apiGroups: - - kubeflow.org - resources: - - tfjobs - - tfjobs/status - - tfjobs/finalizers - verbs: - - '*' - - apiGroups: - - apiextensions.k8s.io - resources: - - customresourcedefinitions - verbs: - - '*' - - apiGroups: - - "" - resources: - - pods - - services - - endpoints - - events - verbs: - - '*' - - apiGroups: - - apps - - extensions - resources: - - deployments - verbs: - - '*' - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-tfjobs-admin - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-admin: "true" -aggregationRule: - clusterRoleSelectors: - - matchLabels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-tfjobs-admin: "true" -rules: [] - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-tfjobs-edit - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-edit: "true" - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-tfjobs-admin: "true" -rules: - - apiGroups: - - kubeflow.org - resources: - - tfjobs - - tfjobs/status - verbs: - - get - - list - - watch - - create - - delete - - deletecollection - - patch - - update - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-tfjobs-view - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-view: "true" -rules: - - apiGroups: - - kubeflow.org - resources: - - tfjobs - - tfjobs/status - verbs: - - get - - list - - watch diff --git a/dev-support/k8s/tfjob/operator/deployment.yaml b/dev-support/k8s/tfjob/operator/deployment.yaml deleted file mode 100644 index b4115b9..0000000 --- a/dev-support/k8s/tfjob/operator/deployment.yaml +++ /dev/null @@ -1,31 +0,0 @@ ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: tf-job-operator -spec: - replicas: 1 - template: - metadata: - labels: - name: tf-job-operator - annotations: - sidecar.istio.io/inject: "false" - spec: - containers: - - args: - - --alsologtostderr - - -v=1 - - --monitoring-port=8443 - env: - - name: MY_POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - - name: MY_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - image: apache/submarine:tf_operator-v1.1.0-g92389064 - name: tf-job-operator - serviceAccountName: tf-job-operator diff --git a/dev-support/k8s/tfjob/operator/kustomization.yaml b/dev-support/k8s/tfjob/operator/kustomization.yaml deleted file mode 100644 index 06f3f6e..0000000 --- a/dev-support/k8s/tfjob/operator/kustomization.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -namespace: default -resources: -- cluster-role-binding.yaml -- cluster-role.yaml -- deployment.yaml -- service-account.yaml -- service.yaml -commonLabels: - kustomize.component: tf-job-operator -images: -- name: apache/submarine - newName: apache/submarine - newTag: tf_operator-v1.1.0-g92389064 diff --git a/dev-support/k8s/tfjob/operator/service-account.yaml b/dev-support/k8s/tfjob/operator/service-account.yaml deleted file mode 100644 index c7be4e3..0000000 --- a/dev-support/k8s/tfjob/operator/service-account.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - app: tf-job-dashboard - name: tf-job-dashboard ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - app: tf-job-operator - name: tf-job-operator diff --git a/dev-support/k8s/tfjob/operator/service.yaml b/dev-support/k8s/tfjob/operator/service.yaml deleted file mode 100644 index 97f92e3..0000000 --- a/dev-support/k8s/tfjob/operator/service.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - annotations: - prometheus.io/path: /metrics - prometheus.io/scrape: "true" - prometheus.io/port: "8443" - labels: - app: tf-job-operator - name: tf-job-operator -spec: - ports: - - name: monitoring-port - port: 8443 - targetPort: 8443 - selector: - name: tf-job-operator - type: ClusterIP diff --git a/dev-support/k8s/traefik/cluster-role-binding.yaml b/dev-support/k8s/traefik/cluster-role-binding.yaml deleted file mode 100644 index fe86260..0000000 --- a/dev-support/k8s/traefik/cluster-role-binding.yaml +++ /dev/null @@ -1,29 +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. -# - -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: traefik-ingress-controller -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: traefik-ingress-controller -subjects: -- kind: ServiceAccount - name: traefik-ingress-controller - namespace: default diff --git a/dev-support/k8s/traefik/cluster-role.yaml b/dev-support/k8s/traefik/cluster-role.yaml deleted file mode 100644 index 74537de..0000000 --- a/dev-support/k8s/traefik/cluster-role.yaml +++ /dev/null @@ -1,61 +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. -# - -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: traefik-ingress-controller - -rules: -- apiGroups: - - "" - resources: - - services - - endpoints - - secrets - verbs: - - get - - list - - watch -- apiGroups: - - extensions - resources: - - ingresses - verbs: - - get - - list - - watch -- apiGroups: - - extensions - resources: - - ingresses/status - verbs: - - update -- apiGroups: - - traefik.containo.us - resources: - - middlewares - - ingressroutes - - traefikservices - - ingressroutetcps - - ingressrouteudps - - tlsoptions - - tlsstores - verbs: - - get - - list - - watch diff --git a/dev-support/k8s/traefik/crd.yaml b/dev-support/k8s/traefik/crd.yaml deleted file mode 100644 index 76776bd..0000000 --- a/dev-support/k8s/traefik/crd.yaml +++ /dev/null @@ -1,120 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ingressroutes.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: IngressRoute - plural: ingressroutes - singular: ingressroute - scope: Namespaced - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: middlewares.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: Middleware - plural: middlewares - singular: middleware - scope: Namespaced - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ingressroutetcps.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: IngressRouteTCP - plural: ingressroutetcps - singular: ingressroutetcp - scope: Namespaced - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ingressrouteudps.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: IngressRouteUDP - plural: ingressrouteudps - singular: ingressrouteudp - scope: Namespaced - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: tlsoptions.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: TLSOption - plural: tlsoptions - singular: tlsoption - scope: Namespaced - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: tlsstores.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: TLSStore - plural: tlsstores - singular: tlsstore - scope: Namespaced - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: traefikservices.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: TraefikService - plural: traefikservices - singular: traefikservice - scope: Namespaced diff --git a/dev-support/k8s/traefik/deployment.yaml b/dev-support/k8s/traefik/deployment.yaml deleted file mode 100644 index be670cb..0000000 --- a/dev-support/k8s/traefik/deployment.yaml +++ /dev/null @@ -1,50 +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. -# - -kind: Deployment -apiVersion: apps/v1 -metadata: - namespace: default - name: traefik - labels: - app: traefik -spec: - replicas: 1 - selector: - matchLabels: - app: traefik - template: - metadata: - labels: - app: traefik - spec: - serviceAccountName: traefik-ingress-controller - containers: - - name: traefik - image: traefik:v2.2 - args: - - --accesslog - - --entrypoints.web.Address=:80 - - --entrypoints.websecure.Address=:443 - - --ping=true - - --providers.kubernetescrd - - --providers.kubernetesingress - ports: - - name: web - containerPort: 80 - - name: websecure - containerPort: 443 diff --git a/dev-support/k8s/traefik/kustomization.yaml b/dev-support/k8s/traefik/kustomization.yaml deleted file mode 100644 index e7f05d0..0000000 --- a/dev-support/k8s/traefik/kustomization.yaml +++ /dev/null @@ -1,34 +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. -# - -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: -- cluster-role.yaml -- cluster-role-binding.yaml -- crd.yaml -- deployment.yaml -- service-account.yaml -- service.yaml -namespace: default -commonLabels: - kustomize.component: traefik - -images: -- name: traefik - newName: traefik - newTag: v2.2 diff --git a/dev-support/k8s/traefik/service-account.yaml b/dev-support/k8s/traefik/service-account.yaml deleted file mode 100644 index fee03de..0000000 --- a/dev-support/k8s/traefik/service-account.yaml +++ /dev/null @@ -1,21 +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. -# - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: traefik-ingress-controller diff --git a/dev-support/k8s/traefik/service.yaml b/dev-support/k8s/traefik/service.yaml deleted file mode 100644 index d00005a..0000000 --- a/dev-support/k8s/traefik/service.yaml +++ /dev/null @@ -1,34 +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. -# - -apiVersion: v1 -kind: Service -metadata: - name: traefik -spec: - type: NodePort - ports: - - protocol: TCP - name: web - port: 80 - nodePort: 32080 - - protocol: TCP - name: websecure - port: 443 - nodePort: 32443 - selector: - app: traefik diff --git a/dev-support/maven-config/checkstyle.xml b/dev-support/maven-config/checkstyle.xml deleted file mode 100644 index e31aabf..0000000 --- a/dev-support/maven-config/checkstyle.xml +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/dev-support/maven-config/scalastyle-config.xml b/dev-support/maven-config/scalastyle-config.xml deleted file mode 100644 index 0deecf9..0000000 --- a/dev-support/maven-config/scalastyle-config.xml +++ /dev/null @@ -1,288 +0,0 @@ - - - - Scalastyle standard configuration - - - - - - - - - - - - - - - - - - - - - - - - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ARROW, EQUALS, ELSE, TRY, CATCH, FINALLY, LARROW, RARROW - - - - - - ARROW, EQUALS, COMMA, COLON, IF, ELSE, DO, WHILE, FOR, MATCH, TRY, CATCH, FINALLY, LARROW, RARROW - - - - - - - - Runtime\.getRuntime\.addShutdownHook - - - - - mutable\.SynchronizedBuffer - - - - - (\.toUpperCase|\.toLowerCase)(?!(\(|\(Locale.ROOT\))) - - - - - throw new \w+Error\( - - - - - JavaConversions - Instead of importing implicits in scala.collection.JavaConversions._, import - scala.collection.JavaConverters._ and use .asScala / .asJava methods - - - - org\.apache\.commons\.lang\. - Use Commons Lang 3 classes (package org.apache.commons.lang3.*) instead - of Commons Lang 2 (package org.apache.commons.lang.*) - - - - extractOpt - Use jsonOption(x).map(.extract[T]) instead of .extractOpt[T], as the latter - is slower. - - - - - java,scala,3rdParty,submarine - javax?\..* - scala\..* - (?!org\.apache\.submarine\.).* - org\.apache\.submarine\..* - false - - - - - - COMMA - - - - - \)\{ - - - - - (?m)^(\s*)/[*][*].*$(\r|)\n^\1 [*] - Use Javadoc style indentation for multiline comments - - - - case[^\n>]*=>\s*\{ - Omit braces in case clauses. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 800> - - - - - 30 - - - - - 10 - - - - - 50 - - - - - - - - - - - -1,0,1,2,3 - - - diff --git a/dev-support/mini-submarine/Dockerfile b/dev-support/mini-submarine/Dockerfile deleted file mode 100644 index 80e066b..0000000 --- a/dev-support/mini-submarine/Dockerfile +++ /dev/null @@ -1,144 +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. - -FROM ubuntu:18.04 -#INSTALL JAVA -RUN apt-get -q update \ - && apt-get install -y wget software-properties-common \ - && add-apt-repository -y ppa:webupd8team/java \ - && apt-get update \ - && wget http://archive.ubuntu.com/ubuntu/pool/main/m/mesa/libgl1-mesa-dri_19.2.8-0ubuntu0~18.04.2_amd64.deb \ - && wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu60_60.2-3ubuntu3.1_amd64.deb \ - && apt-get install -y ./libgl1-mesa-dri_19.2.8-0ubuntu0~18.04.2_amd64.deb \ - && apt-get install -y ./libicu60_60.2-3ubuntu3.1_amd64.deb \ - && apt-get -q install -y --no-install-recommends openjdk-8-jdk libbcprov-java \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* - -ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/jre - -# INSTALL Docker -RUN \ - apt-get update && \ - apt-get -y install apt-transport-https ca-certificates curl software-properties-common && \ - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \ - add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" && \ - apt-get update && \ - apt-get -y install docker-ce -# So no need to mount host's /var/run/docker.sock, dockerd will create in local fs -VOLUME /var/lib/docker - -#INSTALL user tools -RUN \ - apt-get update && \ - apt-get -y install vim - -# Install libgomp1 for MXNet -RUN \ - apt-get update && \ - apt-get -y install libgomp1 - -#INSTALL HADOOP -# Add native libs -ARG HADOOP_VERSION= -ADD hadoop-${HADOOP_VERSION}.tar.gz /usr/local -#ADD hadoop-native-${HADOOP_VERSION}.tar /usr/local/hadoop-${HADOOP_VERSION}/lib/native - -ENV HADOOP_PREFIX=/usr/local/hadoop \ - HADOOP_COMMON_HOME=/usr/local/hadoop \ - HADOOP_HDFS_HOME=/usr/local/hadoop \ - HADOOP_MAPRED_HOME=/usr/local/hadoop \ - HADOOP_YARN_HOME=/usr/local/hadoop \ - HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop \ - YARN_CONF_DIR=/usr/local/hadoop/etc/hadoop \ - PATH=${PATH}:/usr/local/hadoop/bin - -RUN \ - cd /usr/local && mv ./hadoop-${HADOOP_VERSION} hadoop && \ - rm -f ${HADOOP_PREFIX}/logs/* - -ARG ZK_VERSION=3.4.14 -ADD zookeeper-${ZK_VERSION}.tar.gz /usr/local -RUN mv /usr/local/zookeeper-${ZK_VERSION} /usr/local/zookeeper -RUN sed "s#/tmp/zookeeper#/tmp/staging/zookeeper#" /usr/local/zookeeper/conf/zoo_sample.cfg > /usr/local/zookeeper/conf/zoo.cfg - -WORKDIR $HADOOP_PREFIX - -# Hdfs ports -EXPOSE 50010 50020 50070 50075 50090 8020 9000 -# Mapred ports -EXPOSE 19888 -#Yarn ports -EXPOSE 8030 8031 8032 8033 8040 8042 8088 -# ZK ports -EXPOSE 2181 2888 3888 -#Other ports -EXPOSE 49707 2122 -# Workbench port -EXPOSE 8080 - -#Add spark dynamic allocation jar -#ADD spark-2.4.0-yarn-shuffle.jar /usr/local/hadoop/share/hadoop/yarn/spark-2.4.0-yarn-shuffle.jar - -# Create users -RUN \ - groupadd -g 1007 hadoop && \ - useradd -m -G hadoop -u 1008 -s /bin/bash yarn && \ - chown -R root:hadoop /usr/local/hadoop && \ - chown -R yarn:hadoop /usr/local/zookeeper - -# Copy Config -COPY conf /tmp/hadoop-config - -ENV HADOOP_VER=${HADOOP_VERSION} - -#Install Spark -ARG SPARK_VERSION= -ENV SPARK_VER=${SPARK_VERSION} -ADD spark-${SPARK_VERSION}-bin-hadoop2.7.tgz /opt -ADD spark-defaults-dynamic-allocation.conf /opt/spark-${SPARK_VERSION}/conf/spark-defaults.conf -RUN apt-get update && apt-get install -y vim python python-numpy wget zip python3 python3-distutils - -# Add pyspark sample -ADD spark-script /home/yarn/spark-script -RUN chown -R yarn /home/yarn/spark-script && \ - chmod +x -R /home/yarn/spark-script - -# Add distributedShell example -ADD conf/yarn-ds-docker.sh /home/yarn -RUN chown -R yarn /home/yarn/yarn-ds-docker.sh && \ - chmod +x /home/yarn/yarn-ds-docker.sh - -# set image name env -ARG IMAGE_NAME= -ENV IMAGE_N=${IMAGE_NAME} - -# Install Submarine -ARG SUBMARINE_VERSION= -ENV SUBMARINE_VER=${SUBMARINE_VERSION} -ADD submarine-dist-${SUBMARINE_VER}-hadoop*.tar.gz /opt -ADD pysubmarine /opt/pysubmarine -RUN ln -s /opt/submarine-dist-${SUBMARINE_VER}* /opt/submarine-current -ADD submarine /home/yarn/submarine -ADD database /home/yarn/database - -# Build virtual python env -RUN cd /home/yarn/submarine && \ - chmod +x /home/yarn/submarine/* && \ - /home/yarn/submarine/build_python_virtual_env.sh - -# Grant read permission for submarine job -RUN chown -R yarn /home/yarn/submarine -RUN chown -R yarn /opt/* diff --git a/dev-support/mini-submarine/README.md b/dev-support/mini-submarine/README.md deleted file mode 100644 index 063bbee..0000000 --- a/dev-support/mini-submarine/README.md +++ /dev/null @@ -1,337 +0,0 @@ - - -# Mini-submarine - -This is a docker image built for submarine development and quick start test. - -**Please Note: don't use the image in production environment. It's only for test purpose.** - -## Start mini-submarine - -### Use the image we provide - -``` -docker pull apache/submarine:mini-0.5.0 -``` - -### Create image by yourself - -> You may need a VPN if your network is limited - -1.Clone the source code of Submarine -``` -git clone https://github.com/apache/submarine.git -``` - -2.Build Submarine -``` -cd ./submarine -mvn clean package -DskipTests -``` - -3.Build image of mini-submarine -> You can download in advance of these three kind of compressed file for building : -> zookeeper-3.4.14.tar.gz , hadoop-2.9.2.tar.gz , spark-2.4.4-bin-hadoop2.7.tgz -> and put them into "submarine/dev-support/mini-submarine/" - -``` -cd submarine/dev-support/mini-submarine/ -./build_mini-submarine.sh -``` -#### Package An Existing Release Candidates -When doing release, the release manager might needs to package a artifact candidates in this docker image and public the image candidate for a vote. -In this scenario, we can do this: - -Put submarine candidate artifacts to a folder like "~/releases/submarine-release" -``` -$ ls $release_candidates_path -submarine-dist-0.5.0-hadoop-2.9.tar.gz submarine-dist-0.5.0-src.tar.gz.asc -submarine-dist-0.5.0-hadoop-2.9.tar.gz.asc submarine-dist-0.5.0-src.tar.gz.sha512 -submarine-dist-0.5.0-hadoop-2.9.tar.gz.sha512 submarine-dist-0.5.0-src.tar.gz -``` -``` -export submarine_version=0.5.0 -export release_candidates_path=~/releases/submarine-release -./build_mini-submarine.sh -#docker run -it -h submarine-dev --net=bridge --privileged -P local/mini-submarine:0.5.0 /bin/bash -docker tag local/mini-submarine:0.5.0 apache/mini-submarine:0.5.0:RC0 -docker push apache/mini-submarine:0.5.0:RC0 -``` -In the container, we can verify that the submarine jar version is the expected 0.5.0. Then we can upload this image with a "RC" tag for a vote. - -### Run mini-submarine image - -``` -docker run -it -h submarine-dev --name mini-submarine --net=bridge --privileged -P local/mini-submarine:0.5.0 /bin/bash - -# In the container, use root user to bootstrap hdfs and yarn -/tmp/hadoop-config/bootstrap.sh - -# Two commands to check if yarn and hdfs is running as expected -yarn node -list -showDetails -``` - -If you pull the image directly, please replace "local/mini-submarine:0.5.0" with "apache/submarine:mini-0.5.0". - -### You should see info like this: - -``` -Total Nodes:1 - Node-Id Node-State Node-Http-Address Number-of-Running-Containers -submarine-dev:35949 RUNNING submarine-dev:8042 0 -Detailed Node Information : - Configured Resources : - Allocated Resources : - Resource Utilization by Node : PMem:4144 MB, VMem:4189 MB, VCores:0.25308025 - Resource Utilization by Containers : PMem:0 MB, VMem:0 MB, VCores:0.0 - Node-Labels : -``` - -``` -hdfs dfs -ls /user -``` - -> drwxr-xr-x - yarn supergroup 0 2019-07-22 07:59 /user/yarn - -## Run workbench server - -1. Setup mysql mariadb server -> Because mysql and mariadb use the GPL license, So there is no binary file containing mysql in the image, you need to manually execute the script to install it. - -``` -/tmp/hadoop-config/setup-mysql.sh -``` - -You can execute command `mysql -uroot` login mysql mariadb. - -2. Start submarine server -``` -su yarn -/opt/submarine-current/bin/submarine-daemon.sh start getMysqlJar -``` - -3. Login submarine workbench - -Execute the following command in your host machine, Get the access URL of the submarine workbench running in docker - -```shell -echo "http://localhost:$(docker inspect --format='{{(index (index .NetworkSettings.Ports "8080/tcp") 0).HostPort}}' mini-submarine)" -``` -The URL returned by the command (like to: http://localhost:32819) is opened through a browser. The username and initial password of the workbench are both `admin`. - -## Run a submarine job - -### Switch to user yarn - -``` -su yarn -``` - -### Navigate to submarine example directory -``` -cd /home/yarn/submarine/ -``` - -### Run a mnist TF job with submarine + TonY runtime -``` -# run TF 1 distributed training job -./run_submarine_mnist_tony.sh - -# run TF 2 distributed training job -./run_submarine_mnist_tf2_tony.sh -``` -When run_submarine_mnist_tony.sh is executed, mnist data is download from the url, [google mnist](https://storage.googleapis.com/cvdf-datasets/mnist/), by default. If the url is unaccessible, you can use parameter "-d" to specify a customized url. -For example, if you are in mainland China, you can use the following command -``` -./run_submarine_mnist_tony.sh -d http://yann.lecun.com/exdb/mnist/ -``` - -### Run a mnist TF job via submarine server - -Submarine server is supposed to manage jobs lifecycle. Clients can just submit -job parameters or yaml file to submarine server instead of submitting jobs -directly by themselves. Submarine server can handle the rest of the work. - -Set submarine.server.rpc.enabled to true in the file of -/opt/submarine-current/conf/submarine-site -``` - - submarine.server.rpc.enabled - true - Run jobs using rpc server. - -``` -Run the following command to submit a job via submarine server -``` -./run_submarine_mnist_tony_rpc.sh -``` - -### Try your own submarine program - -Run container with your source code. You can also use "docker cp" to an existing running container - -1. `docker run -it -h submarine-dev --net=bridge --privileged -v pathToMyScrit.py:/home/yarn/submarine/myScript.py local/hadoop-docker:submarine /bin/bash` - -2. Refer to the `run_submarine_mnist_tony.sh` and modify the script to your script - -3. Try to run it. Since this is a single node environment, keep in mind that the workers could have conflicts with each other. For instance, the mnist_distributed.py example has a workaround to fix the conflicts when two workers are using same "data_dir" to download data set. - - -## Update Submarine Version - -You can follow the documentation instructions to update your own modified and compiled submarine package to the submarine container. - -### Build Submarine - -``` -cd submarine-project-dir/ -mvn clean package -DskipTests -``` - -### Copy submarine jar to mini-submarine container - -``` -docker cp submarine-all/target/submarine-all--hadoop-.jar :/tmp/ -``` - -### Modify environment variables - -``` -cd /home/yarn/submarine -vi run_customized_submarine-all_mnist.sh - -# Need to modify environment variables based on hadoop and submarine version numbers -SUBMARINE_VERSION= -HADOOP_VERSION= # default 2.9 -``` - -### Test submarine jar package in container - -``` -cd /home/yarn/submarine -./run_customized_submarine-all_mnist.sh -``` - -## Debug Submarine - -When using mini-submarine, you can debug submarine client, applicationMaster and executor for trouble shooting. - -### Debug submarine client - -Run the following command to start mini-submarine. - -``` -docker run -it -P -h submarine-dev --net=bridge --expose=8000 --privileged local/mini-submarine: /bin/bash -``` - -Debug submarine client with the parameter "--debug" - -``` -./run_submarine_mnist_tony.sh --debug -``` - -Port 8000 is used in the mini-submarine. -You need to find the debug port mapping between mini-submarine and the host on which run mini-subamrine. - -``` -docker port -``` - -For example, we can get some info like this - -``` -8000/tcp -> 0.0.0.0:32804 -``` - -Then port 32804 can be used for remote debug. - -### Debug submarine job applicationMaster - -Run the following command to start mini-submarine. - -``` -docker run -it -P -h submarine-dev --net=bridge --expose=8001 --privileged local/mini-submarine: /bin/bash -``` - -Add the following configuration in the file /usr/local/hadoop/etc/hadoop/tony.xml. - -``` - - tony.task.am.jvm.opts - -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8001 - -``` - -You can use run_submarine_mnist_tony.sh to submit a job. Port 8001 is used for AM debugging in mini-submarine. -And the debug port mapping can be obtained using the way as [Debug submarine client](#debug) shows. - -### Debug submarine job executor - -Run the following command to start mini-submarine. - -``` -docker run -it -P -h submarine-dev --net=bridge --expose=8002 --privileged local/mini-submarine: /bin/bash -``` - -Add the following configuration in the file /usr/local/hadoop/etc/hadoop/tony.xml. - -``` - - tony.task.executor.jvm.opts - -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8002 - -``` - -Port 8002 is used for executor debugging in mini-submarine. -To avoid port confliction, you need to use only one executor, which means the parameter of -submarine job should be like this - -``` ---num_workers 1 \ ---num_ps 0 \ -``` - -You can get the debug port mapping using the way as [Debug submarine client](#debug) shows. - -## Run a distributedShell job with docker container - -You can also run a distributedShell job in mini-submarine. - -``` -cd && ./yarn-ds-docker.sh -``` - -## Run a spark job - -Spark jobs are supported as well. - -``` -cd && cd spark-script && ./run_spark.sh -``` - -## Question and answer - -1. Submarine package name error - - Because the package name of submarine 0.3.0 or higher has been changed from `apache.hadoop.yarn.submarine` to `apache.submarine`, So you need to set the Runtime settings in the `/usr/local/hadoop/etc/hadoop/submarine-site.xml` file. - - ``` - -    -      submarine.runtime.class - org.apache.submarine.server.submitter.yarn.YarnRuntimeFactory -    - - ``` diff --git a/dev-support/mini-submarine/build_mini-submarine.sh b/dev-support/mini-submarine/build_mini-submarine.sh deleted file mode 100755 index 43bd8ab..0000000 --- a/dev-support/mini-submarine/build_mini-submarine.sh +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/env bash -# 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. -set -euo pipefail -hadoop_v=2.9.2 -spark_v=2.3.4 - -submarine_v=${submarine_version:-"0.5.0"} -echo "Using submarine version: $submarine_v" - -image_name="local/mini-submarine:${submarine_v}" - -if [ -L ${BASH_SOURCE-$0} ]; then - PWD=$(dirname $(readlink "${BASH_SOURCE-$0}")) -else - PWD=$(dirname ${BASH_SOURCE-$0}) -fi -export MINI_PATH=$(cd "${PWD}">/dev/null; pwd) -SUBMARINE_PROJECT_PATH=${MINI_PATH}/../.. - -download_package() { - if [ -f "$1" ]; then - echo "Found $1" - else - echo "Start downloading the package $1 from $2" - if type wget >/dev/null 2>&1; then - wget $2/$1 - elif type curl >/dev/null 2>&1; then - curl -O $2/$1 - else - echo 'We need a tool to transfer data from or to a server. Such as wget/curl.' - echo 'Bye, bye!' - exit -1 - fi - fi -} - -is_empty_dir(){ - return `ls -A $1|wc -w` -} - -# download hadoop -download_package "hadoop-${hadoop_v}.tar.gz" "http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-${hadoop_v}" -# download spark -download_package "spark-${spark_v}-bin-hadoop2.7.tgz" "http://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-${spark_v}" -# download zookeeper -download_package "zookeeper-3.4.14.tar.gz" "http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14" - - -if [ ! -d "${SUBMARINE_PROJECT_PATH}/submarine-dist/target" ]; then - mkdir "${SUBMARINE_PROJECT_PATH}/submarine-dist/target" -fi - -submarine_dist_exists=$(find -L "${SUBMARINE_PROJECT_PATH}/submarine-dist/target" -name "submarine-dist-${submarine_v}*.tar.gz") - -# If exists, use the release candidate artifacts to build image -if [[ ! -z "${release_candidates_path:-}" ]]; then - submarine_dist_exists=${release_candidates_path} - echo "Using release candidates artifacts: ${release_candidates_path}" - cp ${release_candidates_path}/submarine-dist-${submarine_v}-hadoop*.tar.gz ${MINI_PATH} -fi - -# Build source code if the package doesn't exist. -if [[ -z "${submarine_dist_exists}" ]]; then - cd "${SUBMARINE_PROJECT_PATH}" - mvn clean package -DskipTests -fi - -cp ${SUBMARINE_PROJECT_PATH}/submarine-dist/target/submarine-dist-${submarine_v}*.tar.gz ${MINI_PATH} -cp -r ${SUBMARINE_PROJECT_PATH}/submarine-sdk/pysubmarine ${MINI_PATH} -cp -r ${SUBMARINE_PROJECT_PATH}/docs/database ${MINI_PATH} - -# build image -echo "Start building the mini-submarine docker image..." -cd ${MINI_PATH} -docker build --build-arg HADOOP_VERSION=${hadoop_v} --build-arg SPARK_VERSION=${spark_v} --build-arg SUBMARINE_VERSION=${submarine_v} --build-arg IMAGE_NAME=${image_name} -t ${image_name} . - -# clean template file -rm -rf ${MINI_PATH}/database -rm -rf ${MINI_PATH}/pysubmarine -rm -rf ${MINI_PATH}/submarine-dist-${submarine_v}*.tar.gz diff --git a/dev-support/mini-submarine/conf/bootstrap.sh b/dev-support/mini-submarine/conf/bootstrap.sh deleted file mode 100755 index 3152c6a..0000000 --- a/dev-support/mini-submarine/conf/bootstrap.sh +++ /dev/null @@ -1,148 +0,0 @@ -#!/usr/bin/env bash -# 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. - -# start dockerd -nohup dockerd --host=unix:///var/run/docker.sock > /var/log/dockerd.log 2>&1 & - -: ${HADOOP_PREFIX:=/usr/local/hadoop} - -. $HADOOP_PREFIX/etc/hadoop/hadoop-env.sh - -# Directory to find config artifacts -CONFIG_DIR="/tmp/hadoop-config" - - -# Copy config files from volume mount - -for f in slaves core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml container-executor.cfg capacity-scheduler.xml node-resources.xml resource-types.xml; do - if [[ -e ${CONFIG_DIR}/$f ]]; then - cp ${CONFIG_DIR}/$f $HADOOP_PREFIX/etc/hadoop/$f - else - echo "ERROR: Could not find $f in $CONFIG_DIR" - exit 1 - fi -done - -# Copy submarine config -for f in slaves submarine-site.xml submarine-env.sh; do - if [[ -e ${CONFIG_DIR}/$f ]]; then - cp ${CONFIG_DIR}/$f /opt/submarine-current/conf/$f - else - echo "ERROR: Could not find $f in $CONFIG_DIR" - exit 1 - fi -done - -# create cgroups -mkdir -p /sys/fs/cgroup/cpu/hadoop-yarn -chown -R yarn /sys/fs/cgroup/cpu/hadoop-yarn -mkdir -p /sys/fs/cgroup/memory/hadoop-yarn -chown -R yarn /sys/fs/cgroup/memory/hadoop-yarn -mkdir -p /sys/fs/cgroup/blkio/hadoop-yarn -chown -R yarn /sys/fs/cgroup/blkio/hadoop-yarn -mkdir -p /sys/fs/cgroup/net_cls/hadoop-yarn -chown -R yarn /sys/fs/cgroup/net_cls/hadoop-yarn -mkdir -p /sys/fs/cgroup/devices/hadoop-yarn -chown -R yarn /sys/fs/cgroup/devices/hadoop-yarn - -# set container-executor permission -chmod 6050 /usr/local/hadoop/bin/container-executor -chmod 0400 /usr/local/hadoop/etc/hadoop/container-executor.cfg - -# creat log and app dir -mkdir ${HADOOP_PREFIX}/logs -chown yarn:hadoop ${HADOOP_PREFIX}/logs -mkdir /var/lib/hadoop-yarn -chown yarn:hadoop /var/lib/hadoop-yarn -mkdir /var/log/hadoop-yarn -chown yarn:hadoop /var/log/hadoop-yarn -# installing libraries if any - (resource urls added comma separated to the ACP system variable) -cd $HADOOP_PREFIX/share/hadoop/common ; for cp in ${ACP//,/ }; do echo == $cp; curl -LO $cp ; done; cd - - -if [[ "${HOSTNAME}" =~ "submarine-dev" ]]; then - mkdir -p /root/hdfs/namenode - $HADOOP_PREFIX/bin/hdfs namenode -format -force -nonInteractive - sed -i s/hdfs-nn/0.0.0.0/ /usr/local/hadoop/etc/hadoop/core-site.xml - nohup $HADOOP_PREFIX/sbin/hadoop-daemon.sh start namenode > /tmp/nn.log 2>&1 & -fi - -if [[ "${HOSTNAME}" =~ "submarine-dev" ]]; then - mkdir -p /root/hdfs/datanode - # wait up to 30 seconds for namenode - # count=0 && while [[ $count -lt 15 && -z `curl -sf http://submarine-dev:50070` ]]; do echo "Waiting for hdfs-nn" ; ((count=count+1)) ; sleep 2; done - #[[ $count -eq 15 ]] && echo "Timeout waiting for hdfs-nn, exiting." && exit 1 - sleep 5 - nohup $HADOOP_PREFIX/sbin/hadoop-daemon.sh start datanode > /tmp/dn.log 2>&1 & -fi - -#add yarn to hdfs user group, create hdfs folder and export hadoop path -groupadd supergroup -usermod -aG supergroup yarn -usermod -aG docker yarn -su yarn -c "/usr/local/hadoop/bin/hadoop fs -mkdir -p /user/yarn" -echo "export PATH=$PATH:/usr/local/hadoop/bin" >> /home/yarn/.bashrc - -if [[ "${HOSTNAME}" =~ "submarine-dev" ]]; then - sed -i s/yarn-rm/0.0.0.0/ $HADOOP_PREFIX/etc/hadoop/yarn-site.xml - - # start zk - su yarn -c "cd /usr/local/zookeeper && /usr/local/zookeeper/bin/zkServer.sh start >/dev/null 2>&1" - - cp ${CONFIG_DIR}/start-yarn-rm.sh $HADOOP_PREFIX/sbin/ - cd $HADOOP_PREFIX/sbin - chmod +x start-yarn-rm.sh - su yarn -c "/usr/local/hadoop/sbin/start-yarn-rm.sh" -fi - -if [[ "${HOSTNAME}" =~ "submarine-dev" ]]; then - sed -i '/<\/configuration>/d' $HADOOP_PREFIX/etc/hadoop/yarn-site.xml - cat >> $HADOOP_PREFIX/etc/hadoop/yarn-site.xml <<- EOM - - yarn.nodemanager.resource.memory-mb - 8192 - - - - yarn.nodemanager.resource.cpu-vcores - 16 - -EOM - echo '' >> $HADOOP_PREFIX/etc/hadoop/yarn-site.xml - cp ${CONFIG_DIR}/start-yarn-nm.sh $HADOOP_PREFIX/sbin/ - cd $HADOOP_PREFIX/sbin - chmod +x start-yarn-nm.sh - - #copy the distributed shell script for debug purpose - cp ${CONFIG_DIR}/yarn-ds-docker.sh /home/yarn/ - chown yarn /home/yarn/yarn-ds-docker.sh - chmod +x /home/yarn/yarn-ds-docker.sh - - # wait up to 30 seconds for resourcemanager - count=0 && while [[ $count -lt 30 && -z `curl -sf http://submarine-dev:8088/ws/v1/cluster/info` ]]; do echo "Waiting for yarn-rm" ; ((count=count+1)) ; sleep 1; done - [[ $count -eq 30 ]] && echo "Timeout waiting for yarn-rm, exiting." && exit 1 - - su yarn -c "/usr/local/hadoop/sbin/start-yarn-nm.sh" -fi - -if [[ $1 == "-d" ]]; then - until find ${HADOOP_PREFIX}/logs -mmin -1 | egrep -q '.*'; echo "`date`: Waiting for logs..." ; do sleep 2 ; done - tail -F ${HADOOP_PREFIX}/logs/* & - while true; do sleep 1000; done -fi - -if [[ $1 == "-bash" ]]; then - /bin/bash -fi diff --git a/dev-support/mini-submarine/conf/capacity-scheduler.xml b/dev-support/mini-submarine/conf/capacity-scheduler.xml deleted file mode 100644 index cc5ccb1..0000000 --- a/dev-support/mini-submarine/conf/capacity-scheduler.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - - yarn.scheduler.capacity.root.queues - default - - - yarn.scheduler.capacity.root.default.capacity - 100 - - - yarn.scheduler.capacity.maximum-am-resource-percent - 1 - - - yarn.scheduler.capacity.per-node-heartbeat.maximum-container-assignments - 100 - - - - yarn.scheduler.capacity.per-node-heartbeat.maximum-offswitch-assignments - 100 - - - - - yarn.scheduler.capacity.resource-calculator - org.apache.hadoop.yarn.util.resource.DominantResourceCalculator - - - - yarn.scheduler.capacity.multi-node-placement-enabled - true - - - - yarn.scheduler.capacity.multi-node-sorting.policy.names - resource-based - - - - yarn.scheduler.capacity.multi-node-sorting.policy - resource-based - - - - yarn.scheduler.capacity.multi-node-sorting.policy.resource-based.class - org.apache.hadoop.yarn.server.resourcemanager.scheduler.placement.ResourceUsageMultiNodeLookupPolicy - - diff --git a/dev-support/mini-submarine/conf/container-executor.cfg b/dev-support/mini-submarine/conf/container-executor.cfg deleted file mode 100644 index 4feaeca..0000000 --- a/dev-support/mini-submarine/conf/container-executor.cfg +++ /dev/null @@ -1,51 +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. - -yarn.nodemanager.linux-container-executor.group=hadoop -banned.users=test -min.user.id=1000 -#allowed.system.users=##comma separated list of system users who CAN run applications -feature.tc.enabled=false - -# The configs below deal with settings for Docker -[docker] - module.enabled=true - docker.binary=/usr/bin/docker -# docker.allowed.devices=## comma separated list of devices that can be mounted into a container - docker.privileged-containers.enabled=false -# docker.allowed.volume-drivers=## comma seperated list of allowed volume-drivers -# docker.no-new-privileges.enabled=## enable/disable the no-new-privileges flag for docker run. Set to "true" to enable, disabled by default - docker.allowed.capabilities=SYS_CHROOT,MKNOD,SETFCAP,SETPCAP,FSETID,CHOWN,AUDIT_WRITE,SETGID,NET_RAW,FOWNER,SETUID,DAC_OVERRIDE,KILL,NET_BIND_SERVICE - docker.allowed.networks=bridge,host,none - docker.trusted.registries=tangzhankun,library - docker.allowed.ro-mounts=/sys/fs/cgroup,/etc/passwd,/var/lib/hadoop-yarn/cache/yarn/nm-local-dir/filecache,/var/lib/hadoop-yarn/cache/yarn/nm-local-dir/usercache/yarn/filecache,/etc/passwd - docker.allowed.rw-mounts=/var/log/hadoop-yarn/containers,/var/lib/hadoop-yarn/cache/yarn/nm-local-dir/usercache/yarn,/var/lib/hadoop-yarn/cache/yarn/nm-local-dir/filecache - docker.allowed.runtimes=runc,nvidia - docker.allowed.devices=/dev/nvidiactl,/dev/nvidia-uvm,/dev/nvidia-uvm-tools,/dev/nvidia0,/dev/nvidia-modeset -# docker.allowed.rw-mounts=/opt/code/hadoop/hadoop-dist/target/hadoop-3.3.0-SNAPSHOT/logs,/tmp/hadoop-yarn/nm-local-dir,/home/yarn/apache-hadoop-install-dir/logs/yarn/userlogs - -# The configs below deal with settings for FPGA resource -#[fpga] -# module.enabled=## Enable/Disable the FPGA resource handler module. set to "true" to enable, disabled by default -# fpga.major-device-number=## Major device number of FPGA, by default is 246. Strongly recommend setting this -# fpga.allowed-device-minor-numbers=## Comma separated allowed minor device numbers, empty means all FPGA devices managed by -[cgroups] - root=/sys/fs/cgroup - yarn-hierarchy=hadoop-yarn -#[gpu] -# module.enabled=true -#[devices] -# module.enabled=true -# devices.allowed-numbers=8:32,8:48 diff --git a/dev-support/mini-submarine/conf/core-site.xml b/dev-support/mini-submarine/conf/core-site.xml deleted file mode 100644 index 1af90a7..0000000 --- a/dev-support/mini-submarine/conf/core-site.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - fs.defaultFS - hdfs://hdfs-nn:9000/ - NameNode URI - - diff --git a/dev-support/mini-submarine/conf/exclude-nodes.txt b/dev-support/mini-submarine/conf/exclude-nodes.txt deleted file mode 100644 index 09697dc..0000000 --- a/dev-support/mini-submarine/conf/exclude-nodes.txt +++ /dev/null @@ -1,15 +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. - diff --git a/dev-support/mini-submarine/conf/excludeNodes.txt b/dev-support/mini-submarine/conf/excludeNodes.txt deleted file mode 100644 index e69de29..0000000 diff --git a/dev-support/mini-submarine/conf/hdfs-site.xml b/dev-support/mini-submarine/conf/hdfs-site.xml deleted file mode 100644 index a1d46b2..0000000 --- a/dev-support/mini-submarine/conf/hdfs-site.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - dfs.datanode.use.datanode.hostname - false - - - - dfs.client.use.datanode.hostname - false - - - - dfs.replication - 3 - - - - dfs.datanode.data.dir - file:///root/hdfs/datanode - DataNode directory - - - - dfs.namenode.name.dir - file:///root/hdfs/namenode - NameNode directory for namespace and transaction logs storage. - - - - dfs.namenode.datanode.registration.ip-hostname-check - false - - diff --git a/dev-support/mini-submarine/conf/include-nodes.txt b/dev-support/mini-submarine/conf/include-nodes.txt deleted file mode 100644 index 09697dc..0000000 --- a/dev-support/mini-submarine/conf/include-nodes.txt +++ /dev/null @@ -1,15 +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. - diff --git a/dev-support/mini-submarine/conf/mapred-site.xml b/dev-support/mini-submarine/conf/mapred-site.xml deleted file mode 100644 index 22b86b9..0000000 --- a/dev-support/mini-submarine/conf/mapred-site.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - mapreduce.framework.name - yarn - - - mapreduce.jobhistory.address - yarn-rm-0.yarn-rm.yarn-cluster.svc.cluster.local:10020 - - - mapreduce.jobhistory.webapp.address - yarn-rm-0.yarn-rm.yarn-cluster.svc.cluster.local:19888 - - diff --git a/dev-support/mini-submarine/conf/node-resources.xml b/dev-support/mini-submarine/conf/node-resources.xml deleted file mode 100644 index 743c6d8..0000000 --- a/dev-support/mini-submarine/conf/node-resources.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - diff --git a/dev-support/mini-submarine/conf/resource-types.xml b/dev-support/mini-submarine/conf/resource-types.xml deleted file mode 100644 index 4bc43c4..0000000 --- a/dev-support/mini-submarine/conf/resource-types.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - diff --git a/dev-support/mini-submarine/conf/setup-mysql.sh b/dev-support/mini-submarine/conf/setup-mysql.sh deleted file mode 100755 index d59632b..0000000 --- a/dev-support/mini-submarine/conf/setup-mysql.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env bash -# 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. - -# Install mariadb -apt-get -y install mariadb-server -service mysql start -mysql -e "CREATE DATABASE submarine_test;" -mysql -e "CREATE USER 'submarine_test'@'%' IDENTIFIED BY 'password_test';" -mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'submarine_test'@'%';" -mysql -e "use submarine_test; source /home/yarn/database/submarine.sql; source /home/yarn/database/submarine-data.sql;" - -mysql -e "CREATE DATABASE submarine;" -mysql -e "CREATE USER 'submarine'@'%' IDENTIFIED BY 'password';" -mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'submarine'@'%';" -mysql -e "use submarine; source /home/yarn/database/submarine.sql; source /home/yarn/database/submarine-data.sql;" - -mysql -e "CREATE DATABASE metastore_test;" -mysql -e "CREATE USER 'metastore_test'@'%' IDENTIFIED BY 'password_test';" -mysql -e "GRANT ALL PRIVILEGES ON * . * TO 'metastore_test'@'%';" -mysql -e "use metastore_test; source /home/yarn/database/metastore.sql;" - -mysql -e "CREATE DATABASE metastore;" -mysql -e "CREATE USER 'metastore'@'%' IDENTIFIED BY 'password';" -mysql -e "GRANT ALL PRIVILEGES ON * . * TO 'metastore'@'%';" -mysql -e "use metastore; source /home/yarn/database/metastore.sql;" diff --git a/dev-support/mini-submarine/conf/slaves b/dev-support/mini-submarine/conf/slaves deleted file mode 100644 index 63fb8bb..0000000 --- a/dev-support/mini-submarine/conf/slaves +++ /dev/null @@ -1,16 +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. - -localhost diff --git a/dev-support/mini-submarine/conf/start-yarn-nm.sh b/dev-support/mini-submarine/conf/start-yarn-nm.sh deleted file mode 100755 index 7fb683f..0000000 --- a/dev-support/mini-submarine/conf/start-yarn-nm.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env bash - -# 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. - - -# Start all yarn daemons. Run this on master node. - -echo "starting yarn daemons" - -bin=`dirname "${BASH_SOURCE-$0}"` -bin=`cd "$bin"; pwd` - -DEFAULT_LIBEXEC_DIR="$bin"/../libexec -HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR} -. $HADOOP_LIBEXEC_DIR/yarn-config.sh - -# start resourceManager -# "$bin"/yarn-daemon.sh --config $YARN_CONF_DIR start resourcemanager -# start nodeManager -"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR start nodemanager -# start proxyserver -#"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR start proxyserver diff --git a/dev-support/mini-submarine/conf/start-yarn-rm.sh b/dev-support/mini-submarine/conf/start-yarn-rm.sh deleted file mode 100755 index 419e70c..0000000 --- a/dev-support/mini-submarine/conf/start-yarn-rm.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env bash - -# 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. - - -# Start all yarn daemons. Run this on master node. - -echo "starting yarn daemons" - -bin=`dirname "${BASH_SOURCE-$0}"` -bin=`cd "$bin"; pwd` - -DEFAULT_LIBEXEC_DIR="$bin"/../libexec -HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR} -. $HADOOP_LIBEXEC_DIR/yarn-config.sh - -# start resourceManager -"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR start resourcemanager -# start nodeManager -# "$bin"/yarn-daemons.sh --config $YARN_CONF_DIR start nodemanager -# start proxyserver -"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR start proxyserver diff --git a/dev-support/mini-submarine/conf/stop-yarn-nm.sh b/dev-support/mini-submarine/conf/stop-yarn-nm.sh deleted file mode 100755 index 03b57d6..0000000 --- a/dev-support/mini-submarine/conf/stop-yarn-nm.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash - -# 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. - - -# Start all yarn daemons. Run this on master node. - -echo "starting yarn daemons" - -bin=`dirname "${BASH_SOURCE-$0}"` -bin=`cd "$bin"; pwd` - -DEFAULT_LIBEXEC_DIR="$bin"/../libexec -HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR} -. $HADOOP_LIBEXEC_DIR/yarn-config.sh - -# Stop nodeManager -"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR stop nodemanager diff --git a/dev-support/mini-submarine/conf/stop-yarn-rm.sh b/dev-support/mini-submarine/conf/stop-yarn-rm.sh deleted file mode 100755 index b5b42a6..0000000 --- a/dev-support/mini-submarine/conf/stop-yarn-rm.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env bash - -# 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. - - -# Start all yarn daemons. Run this on master node. - -echo "starting yarn daemons" - -bin=`dirname "${BASH_SOURCE-$0}"` -bin=`cd "$bin"; pwd` - -DEFAULT_LIBEXEC_DIR="$bin"/../libexec -HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR} -. $HADOOP_LIBEXEC_DIR/yarn-config.sh - -# stop resourceManager -"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR stop resourcemanager -# stop proxyserver -"$bin"/yarn-daemon.sh --config $YARN_CONF_DIR stop proxyserver diff --git a/dev-support/mini-submarine/conf/submarine-env.sh b/dev-support/mini-submarine/conf/submarine-env.sh deleted file mode 100644 index 64ea565..0000000 --- a/dev-support/mini-submarine/conf/submarine-env.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env bash -# -# 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. -# - -# export JAVA_HOME=java - -# Debug Submarine server -# export SUBMARINE_SERVER_JAVA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8000" - -# Set Submarine server memory -# export SUBMARINE_SERVER_MEM="-Xms1024m -Xmx1024m -XX:MaxPermSize=512m" - -# Set Submarine server classpath. If you want to visit hdfs, just add hadoop -# configuration path. -export SUBMARINE_SERVER_CLASSPATH+=":/usr/local/hadoop/etc/hadoop" diff --git a/dev-support/mini-submarine/conf/submarine-site.xml b/dev-support/mini-submarine/conf/submarine-site.xml deleted file mode 100644 index f2236ae..0000000 --- a/dev-support/mini-submarine/conf/submarine-site.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - - submarine.cluster.addr - - submarine cluster address list, e.g. ip1:port1;ip2:port2;ip3:port3 - - - - submarine.server.addr - 0.0.0.0 - Server address - - - - submarine.server.port - 8080 - Server port. - - - - submarine.server.ssl - false - Should SSL be used by the submarine server? - - - - submarine.server.ssl.port - 8443 - Server ssl port. (used when ssl property is set to true) - - - - submarine.server.ssl.client.auth - false - Should client authentication be used for SSL connections? - - - - submarine.server.ssl.keystore.path - keystore - Path to keystore relative to submarine configuration directory - - - - submarine.server.ssl.keystore.type - JKS - The format of the given keystore (e.g. JKS or PKCS12) - - - - submarine.server.ssl.keystore.password - change me - Keystore password. Can be obfuscated by the Jetty Password tool - - - - - - submarine.server.ssl.truststore.path - truststore - Path to truststore relative to submarine configuration directory. Defaults to the keystore path - - - - submarine.server.ssl.truststore.type - JKS - The format of the given truststore (e.g. JKS or PKCS12). Defaults to the same type as the keystore type - - - - - - workbench.web.war - ../submarine-workbench-web.war - Submarine workbench web war file path. - - - - submarine.runtime.class - org.apache.submarine.server.submitter.yarn.YarnRuntimeFactory - RuntimeFactory for Submarine jobs - - - - submarine.server.rpc.enabled - false - Run jobs using rpc server. - - - diff --git a/dev-support/mini-submarine/conf/tony.xml b/dev-support/mini-submarine/conf/tony.xml deleted file mode 100644 index f8c3ef8..0000000 --- a/dev-support/mini-submarine/conf/tony.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - diff --git a/dev-support/mini-submarine/conf/yarn-ds-docker.sh b/dev-support/mini-submarine/conf/yarn-ds-docker.sh deleted file mode 100755 index 5232e03..0000000 --- a/dev-support/mini-submarine/conf/yarn-ds-docker.sh +++ /dev/null @@ -1,18 +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. - -#!/usr/bin/env bash -DS=/usr/local/hadoop/share/hadoop/yarn/hadoop-yarn-applications-distributedshell-${HADOOP_VER}.jar -/usr/local/hadoop/bin/yarn jar ${DS} -jar ${DS} -shell_command "cat /proc/1/cgroup" -shell_env YARN_CONTAINER_RUNTIME_TYPE=docker -shell_env YARN_CONTAINER_RUNTIME_DOCKER_IMAGE=library/ubuntu diff --git a/dev-support/mini-submarine/conf/yarn-site.xml b/dev-support/mini-submarine/conf/yarn-site.xml deleted file mode 100644 index 1da453d..0000000 --- a/dev-support/mini-submarine/conf/yarn-site.xml +++ /dev/null @@ -1,185 +0,0 @@ - - - - - - - yarn.resourcemanager.hostname - yarn-rm - - - - yarn.resourcemanager.scheduler.class - org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler - - - - yarn.nodemanager.vmem-check-enabled - false - - - - yarn.nodemanager.aux-services - mapreduce_shuffle - - - - yarn.nodemanager.aux-services.mapreduce_shuffle.class - org.apache.hadoop.mapred.ShuffleHandler - - - - List of directories to store localized files in. - yarn.nodemanager.local-dirs - /var/lib/hadoop-yarn/cache/${user.name}/nm-local-dir - - - - Where to store container logs. - yarn.nodemanager.log-dirs - /var/log/hadoop-yarn/containers - - - - Where to aggregate logs to. - yarn.nodemanager.remote-app-log-dir - /var/log/hadoop-yarn/apps - - - - yarn.application.classpath - - /usr/local/hadoop/etc/hadoop, - /usr/local/hadoop/share/hadoop/common/*, - /usr/local/hadoop/share/hadoop/common/lib/*, - /usr/local/hadoop/share/hadoop/hdfs/*, - /usr/local/hadoop/share/hadoop/hdfs/lib/*, - /usr/local/hadoop/share/hadoop/mapreduce/*, - /usr/local/hadoop/share/hadoop/mapreduce/lib/*, - /usr/local/hadoop/share/hadoop/yarn/*, - /usr/local/hadoop/share/hadoop/yarn/lib/* - - - - yarn.log-aggregation-enable - true - - - - yarn.log-aggregation.retain-seconds - 259200 - - - yarn.log-aggregation.retain-check-interval-seconds - 3600 - - - yarn.nodemanager.delete.debug-delay-sec - 86400 - - - yarn.nodemanager.container-executor.class - org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor - - - - - yarn.nodemanager.linux-container-executor.group - hadoop - - - yarn.nodemanager.linux-container-executor.nonsecure-mode.local-user - yarn - - - - yarn.nodemanager.linux-container-executor.nonsecure-mode.limit-users - false - - - - yarn.nodemanager.runtime.linux.allowed-runtimes - default,docker - - - - yarn.nodemanager.runtime.linux.docker.allowed-container-networks - host,none,bridge - - - yarn.nodemanager.runtime.linux.docker.default-container-network - host - - - - yarn.nodemanager.runtime.linux.docker.privileged-containers.allowed - false - - - yarn.nodemanager.runtime.linux.docker.privileged-containers.acl - - - - - yarn.nodemanager.runtime.linux.docker.capabilities - CHOWN,DAC_OVERRIDE,FSETID,FOWNER,MKNOD,NET_RAW,SETGID,SETUID,SETFCAP,SETPCAP,NET_BIND_SERVICE,SYS_CHROOT,KILL,AUDIT_WRITE - - - - yarn.nodemanager.linux-container-executor.resources-handler.class - org.apache.hadoop.yarn.server.nodemanager.util.CgroupsLCEResourcesHandler - - - yarn.nodemanager.linux-container-executor.cgroups.mount - false - - - yarn.nodemanager.linux-container-executor.cgroups.hierarchy - /hadoop-yarn - - - yarn.nodemanager.linux-container-executor.cgroups.mount-path - /sys/fs/cgroup - - - yarn.nodemanager.resource.percentage-physical-cpu-limit - 100 - - - yarn.nodemanager.linux-container-executor.cgroups.strict-resource-usage - false - - - - - - yarn.webapp.api-service.enable - true - - - diff --git a/dev-support/mini-submarine/spark-defaults-dynamic-allocation.conf b/dev-support/mini-submarine/spark-defaults-dynamic-allocation.conf deleted file mode 100644 index 1cc360e..0000000 --- a/dev-support/mini-submarine/spark-defaults-dynamic-allocation.conf +++ /dev/null @@ -1,33 +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. -# - -# Default system properties included when running spark-submit. -# This is useful for setting default environmental settings. - -#spark.yarn.stagingDir /tmp/staging -spark.yarn.preserve.staging.files true -#spark.dynamicAllocation.enabled true -spark.shuffle.service.enabled true -spark.dynamicAllocation.minExecutors 1 - -# Example: -# spark.master spark://master:7077 -# spark.eventLog.enabled true -# spark.eventLog.dir hdfs://namenode:8021/directory -# spark.serializer org.apache.spark.serializer.KryoSerializer -# spark.driver.memory 5g -# spark.executor.extraJavaOptions -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three" diff --git a/dev-support/mini-submarine/spark-script/pyspark-yarn.py b/dev-support/mini-submarine/spark-script/pyspark-yarn.py deleted file mode 100755 index a28a5a2..0000000 --- a/dev-support/mini-submarine/spark-script/pyspark-yarn.py +++ /dev/null @@ -1,32 +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. - - -from pyspark import SparkConf -from pyspark import SparkContext - -conf = SparkConf() -conf.setMaster('yarn-client') -conf.setAppName('spark-yarn') -sc = SparkContext(conf=conf) - - -def mod(x): - #import time - #time.sleep(120) - return x - -rdd = sc.parallelize(range(1000)).map(mod).take(10) -print rdd diff --git a/dev-support/mini-submarine/spark-script/run_gpu_ds.sh b/dev-support/mini-submarine/spark-script/run_gpu_ds.sh deleted file mode 100755 index 26321a4..0000000 --- a/dev-support/mini-submarine/spark-script/run_gpu_ds.sh +++ /dev/null @@ -1,20 +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. - -#!/usr/bin/env bash - -#JAR_PATH=/usr/local/hadoop/share/hadoop/yarn/hadoop-yarn-applications-distributedshell-${HADOOP_VER}.jar - -#yarn jar $JAR_PATH -jar $JAR_PATH -shell_command "sleep 5" -master_resources memory-mb=512,vcores=2,nvidia.com/gpu=1 -container_resources memory-mb=512,vcores=1 diff --git a/dev-support/mini-submarine/spark-script/run_pyspark.sh b/dev-support/mini-submarine/spark-script/run_pyspark.sh deleted file mode 100755 index d834c87..0000000 --- a/dev-support/mini-submarine/spark-script/run_pyspark.sh +++ /dev/null @@ -1,25 +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. - -#!/usr/bin/env bash -SPARK_HOME=/opt/spark-${SPARK_VER}-bin-hadoop2.7 -${SPARK_HOME}/bin/spark-submit \ ---master yarn \ ---deploy-mode client \ ---driver-memory 1g \ ---executor-memory 2g \ ---num-executors 1 \ ---executor-cores 4 \ -./pyspark-yarn.py diff --git a/dev-support/mini-submarine/spark-script/run_pyspark_docker.sh b/dev-support/mini-submarine/spark-script/run_pyspark_docker.sh deleted file mode 100755 index f4156c3..0000000 --- a/dev-support/mini-submarine/spark-script/run_pyspark_docker.sh +++ /dev/null @@ -1,27 +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. - -#!/usr/bin/env bash -SPARK_HOME=/opt/spark-${SPARK_VER}-bin-hadoop2.7 -${SPARK_HOME}/bin/spark-submit \ ---master yarn \ ---deploy-mode client \ ---driver-memory 1g \ ---executor-memory 1g \ ---executor-cores 1 \ ---conf spark.executorEnv.YARN_CONTAINER_RUNTIME_TYPE=docker \ ---conf spark.executorEnv.YARN_CONTAINER_RUNTIME_DOCKER_IMAGE= \ ---conf spark.executorEnv.YARN_CONTAINER_RUNTIME_DOCKER_MOUNTS=/etc/passwd:/etc/passwd:ro \ -./pyspark-yarn.py diff --git a/dev-support/mini-submarine/spark-script/run_spark.sh b/dev-support/mini-submarine/spark-script/run_spark.sh deleted file mode 100755 index f44b12c..0000000 --- a/dev-support/mini-submarine/spark-script/run_spark.sh +++ /dev/null @@ -1,26 +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. - -#!/usr/bin/env bash - -SPARK_HOME=/opt/spark-${SPARK_VER}-bin-hadoop2.7 -${SPARK_HOME}/bin/spark-submit --class org.apache.spark.examples.SparkPi \ ---master yarn \ ---deploy-mode client \ ---driver-memory 512m \ ---executor-memory 512m \ ---executor-cores 1 \ -${SPARK_HOME}/examples/jars/spark-examples*.jar \ -10 diff --git a/dev-support/mini-submarine/spark-script/run_spark_docker.sh b/dev-support/mini-submarine/spark-script/run_spark_docker.sh deleted file mode 100755 index 8b1078f..0000000 --- a/dev-support/mini-submarine/spark-script/run_spark_docker.sh +++ /dev/null @@ -1,29 +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. - -#!/usr/bin/env bash -SPARK_HOME=/opt/spark-${SPARK_VER}-bin-hadoop2.7 -${SPARK_HOME}/bin/spark-submit --class org.apache.spark.examples.SparkPi \ ---master yarn \ ---deploy-mode client \ ---driver-memory 512m \ ---executor-memory 512m \ ---executor-cores 1 \ ---conf spark.executorEnv.YARN_CONTAINER_RUNTIME_TYPE=docker \ ---conf spark.executorEnv.YARN_CONTAINER_RUNTIME_DOCKER_IMAGE= \ ---conf spark.executorEnv.YARN_CONTAINER_RUNTIME_DOCKER_MOUNTS=/etc/passwd:/etc/passwd:ro \ ---conf spark.dynamicAllocation.enabled=false \ -${SPARK_HOME}/examples/jars/spark-examples*.jar \ -10 diff --git a/dev-support/mini-submarine/submarine/build_python_virtual_env.sh b/dev-support/mini-submarine/submarine/build_python_virtual_env.sh deleted file mode 100755 index fcb9d14..0000000 --- a/dev-support/mini-submarine/submarine/build_python_virtual_env.sh +++ /dev/null @@ -1,37 +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. - -#!/usr/bin/env bash -wget https://files.pythonhosted.org/packages/33/bc/fa0b5347139cd9564f0d44ebd2b147ac97c36b2403943dbee8a25fd74012/virtualenv-16.0.0.tar.gz -tar xf virtualenv-16.0.0.tar.gz - -# Make sure to install using Python 3, as TensorFlow only provides Python 3 artifacts -python3 virtualenv-16.0.0/virtualenv.py venv -. venv/bin/activate -pip3 install tensorflow==1.13.1 -pip3 install torch==0.4.1 -pip3 install torchvision==0.1.8 -pip3 install mxnet==1.5.1 -pip3 install /opt/pysubmarine/. -zip -r myvenv.zip venv -deactivate - -# Building a Python virtual environment with TensorFlow 2 -python3 virtualenv-16.0.0/virtualenv.py tf2-venv -. tf2-venv/bin/activate -pip3 install tensorflow==2.1.0 -pip3 install tensorflow-datasets==2.1.0 -zip -r tf2-venv.zip tf2-venv -deactivate diff --git a/dev-support/mini-submarine/submarine/image_classification.py b/dev-support/mini-submarine/submarine/image_classification.py deleted file mode 100644 index 14eb68c..0000000 --- a/dev-support/mini-submarine/submarine/image_classification.py +++ /dev/null @@ -1,465 +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. - -from __future__ import division - -import argparse -import time -import os -import logging -import random -import tarfile - -import mxnet as mx -from mxnet import gluon -from mxnet import profiler -from mxnet.gluon import nn -from mxnet.gluon.model_zoo import vision as models -from mxnet.gluon.data.vision import ImageFolderDataset -from mxnet.gluon.data import DataLoader -from mxnet.contrib.io import DataLoaderIter -from mxnet import autograd as ag -from mxnet.test_utils import get_mnist_iterator, get_cifar10 -from mxnet.metric import Accuracy, TopKAccuracy, CompositeEvalMetric -import numpy as np - -# logging -logging.basicConfig(level=logging.INFO) -fh = logging.FileHandler('image-classification.log') -logger = logging.getLogger() -logger.addHandler(fh) -formatter = logging.Formatter('%(message)s') -fh.setFormatter(formatter) -fh.setLevel(logging.DEBUG) -logging.debug('\n%s', '-' * 100) -formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s') -fh.setFormatter(formatter) - -# CLI -parser = argparse.ArgumentParser(description='Train a model for image classification.') -parser.add_argument('--dataset', type=str, default='cifar10', - help='dataset to use. options are mnist, cifar10, caltech101, imagenet and dummy.') -parser.add_argument('--data-dir', type=str, default='', - help='training directory of imagenet images, contains train/val subdirs.') -parser.add_argument('--num-worker', '-j', dest='num_workers', default=4, type=int, - help='number of workers for dataloader') -parser.add_argument('--batch-size', type=int, default=32, - help='training batch size per device (CPU/GPU).') -parser.add_argument('--gpus', type=str, default='', - help='ordinates of gpus to use, can be "0,1,2" or empty for cpu only.') -parser.add_argument('--epochs', type=int, default=120, - help='number of training epochs.') -parser.add_argument('--lr', type=float, default=0.1, - help='learning rate. default is 0.1.') -parser.add_argument('--momentum', type=float, default=0.9, - help='momentum value for optimizer, default is 0.9.') -parser.add_argument('--wd', type=float, default=0.0001, - help='weight decay rate. default is 0.0001.') -parser.add_argument('--seed', type=int, default=123, - help='random seed to use. Default=123.') -parser.add_argument('--mode', type=str, - help='mode in which to train the model. options are symbolic, imperative, hybrid') -parser.add_argument('--model', type=str, required=True, - help='type of model to use. see vision_model for options.') -parser.add_argument('--use_thumbnail', action='store_true', - help='use thumbnail or not in resnet. default is false.') -parser.add_argument('--batch-norm', action='store_true', - help='enable batch normalization or not in vgg. default is false.') -parser.add_argument('--use-pretrained', action='store_true', - help='enable using pretrained model from gluon.') -parser.add_argument('--prefix', default='', type=str, - help='path to checkpoint prefix, default is current working dir') -parser.add_argument('--start-epoch', default=0, type=int, - help='starting epoch, 0 for fresh training, > 0 to resume') -parser.add_argument('--resume', type=str, default='', - help='path to saved weight where you want resume') -parser.add_argument('--lr-factor', default=0.1, type=float, - help='learning rate decay ratio') -parser.add_argument('--lr-steps', default='30,60,90', type=str, - help='list of learning rate decay epochs as in str') -parser.add_argument('--dtype', default='float32', type=str, - help='data type, float32 or float16 if applicable') -parser.add_argument('--save-frequency', default=10, type=int, - help='epoch frequence to save model, best model will always be saved') -parser.add_argument('--kvstore', type=str, default='device', - help='kvstore to use for trainer/module.') -parser.add_argument('--log-interval', type=int, default=50, - help='Number of batches to wait before logging.') -parser.add_argument('--profile', action='store_true', - help='Option to turn on memory profiling for front-end, '\ - 'and prints out the memory usage by python function at the end.') -parser.add_argument('--builtin-profiler', type=int, default=0, help='Enable built-in profiler (0=off, 1=on)') -opt = parser.parse_args() - -# global variables -logger.info('Starting new image-classification task:, %s',opt) -mx.random.seed(opt.seed) -model_name = opt.model -dataset_classes = {'mnist': 10, 'cifar10': 10, 'caltech101':101, 'imagenet': 1000, 'dummy': 1000} -batch_size, dataset, classes = opt.batch_size, opt.dataset, dataset_classes[opt.dataset] -context = [mx.gpu(int(i)) for i in opt.gpus.split(',')] if opt.gpus.strip() else [mx.cpu()] -num_gpus = len(context) -batch_size *= max(1, num_gpus) -lr_steps = [int(x) for x in opt.lr_steps.split(',') if x.strip()] -metric = CompositeEvalMetric([Accuracy(), TopKAccuracy(5)]) -kv = mx.kv.create(opt.kvstore) - - -def get_cifar10_iterator(batch_size, data_shape, resize=-1, num_parts=1, part_index=0): - get_cifar10() - - train = mx.io.ImageRecordIter( - path_imgrec = "data/cifar/train.rec", - resize = resize, - data_shape = data_shape, - batch_size = batch_size, - rand_crop = True, - rand_mirror = True, - num_parts=num_parts, - part_index=part_index) - - val = mx.io.ImageRecordIter( - path_imgrec = "data/cifar/test.rec", - resize = resize, - rand_crop = False, - rand_mirror = False, - data_shape = data_shape, - batch_size = batch_size, - num_parts=num_parts, - part_index=part_index) - - return train, val - -def get_imagenet_transforms(data_shape=224, dtype='float32'): - def train_transform(image, label): - image, _ = mx.image.random_size_crop(image, (data_shape, data_shape), 0.08, (3/4., 4/3.)) - image = mx.nd.image.random_flip_left_right(image) - image = mx.nd.image.to_tensor(image) - image = mx.nd.image.normalize(image, mean=(0.485, 0.456, 0.406), std=(0.229, 0.224, 0.225)) - return mx.nd.cast(image, dtype), label - - def val_transform(image, label): - image = mx.image.resize_short(image, data_shape + 32) - image, _ = mx.image.center_crop(image, (data_shape, data_shape)) - image = mx.nd.image.to_tensor(image) - image = mx.nd.image.normalize(image, mean=(0.485, 0.456, 0.406), std=(0.229, 0.224, 0.225)) - return mx.nd.cast(image, dtype), label - return train_transform, val_transform - -def get_imagenet_iterator(root, batch_size, num_workers, data_shape=224, dtype='float32'): - """Dataset loader with preprocessing.""" - train_dir = os.path.join(root, 'train') - train_transform, val_transform = get_imagenet_transforms(data_shape, dtype) - logging.info("Loading image folder %s, this may take a bit long...", train_dir) - train_dataset = ImageFolderDataset(train_dir, transform=train_transform) - train_data = DataLoader(train_dataset, batch_size, shuffle=True, - last_batch='discard', num_workers=num_workers) - val_dir = os.path.join(root, 'val') - if not os.path.isdir(os.path.expanduser(os.path.join(root, 'val', 'n01440764'))): - user_warning = 'Make sure validation images are stored in one subdir per category, a helper script is available at https://git.io/vNQv1' - raise ValueError(user_warning) - logging.info("Loading image folder %s, this may take a bit long...", val_dir) - val_dataset = ImageFolderDataset(val_dir, transform=val_transform) - val_data = DataLoader(val_dataset, batch_size, last_batch='keep', num_workers=num_workers) - return DataLoaderIter(train_data, dtype), DataLoaderIter(val_data, dtype) - -def get_caltech101_data(): - url = "https://s3.us-east-2.amazonaws.com/mxnet-public/101_ObjectCategories.tar.gz" - dataset_name = "101_ObjectCategories" - data_folder = "data" - if not os.path.isdir(data_folder): - os.makedirs(data_folder) - tar_path = mx.gluon.utils.download(url, path=data_folder) - if (not os.path.isdir(os.path.join(data_folder, "101_ObjectCategories")) or - not os.path.isdir(os.path.join(data_folder, "101_ObjectCategories_test"))): - tar = tarfile.open(tar_path, "r:gz") - tar.extractall(data_folder) - tar.close() - print('Data extracted') - training_path = os.path.join(data_folder, dataset_name) - testing_path = os.path.join(data_folder, "{}_test".format(dataset_name)) - return training_path, testing_path - -def get_caltech101_iterator(batch_size, num_workers, dtype): - def transform(image, label): - # resize the shorter edge to 224, the longer edge will be greater or equal to 224 - resized = mx.image.resize_short(image, 224) - # center and crop an area of size (224,224) - cropped, crop_info = mx.image.center_crop(resized, (224, 224)) - # transpose the channels to be (3,224,224) - transposed = mx.nd.transpose(cropped, (2, 0, 1)) - return transposed, label - - training_path, testing_path = get_caltech101_data() - dataset_train = ImageFolderDataset(root=training_path, transform=transform) - dataset_test = ImageFolderDataset(root=testing_path, transform=transform) - - train_data = DataLoader(dataset_train, batch_size, shuffle=True, num_workers=num_workers) - test_data = DataLoader(dataset_test, batch_size, shuffle=False, num_workers=num_workers) - return DataLoaderIter(train_data), DataLoaderIter(test_data) - -class DummyIter(mx.io.DataIter): - def __init__(self, batch_size, data_shape, batches = 100): - super(DummyIter, self).__init__(batch_size) - self.data_shape = (batch_size,) + data_shape - self.label_shape = (batch_size,) - self.provide_data = [('data', self.data_shape)] - self.provide_label = [('softmax_label', self.label_shape)] - self.batch = mx.io.DataBatch(data=[mx.nd.zeros(self.data_shape)], - label=[mx.nd.zeros(self.label_shape)]) - self._batches = 0 - self.batches = batches - - def next(self): - if self._batches < self.batches: - self._batches += 1 - return self.batch - else: - self._batches = 0 - raise StopIteration - -def dummy_iterator(batch_size, data_shape): - return DummyIter(batch_size, data_shape), DummyIter(batch_size, data_shape) - -class ImagePairIter(mx.io.DataIter): - def __init__(self, path, data_shape, label_shape, batch_size=64, flag=0, input_aug=None, target_aug=None): - super(ImagePairIter, self).__init__(batch_size) - self.data_shape = (batch_size,) + data_shape - self.label_shape = (batch_size,) + label_shape - self.input_aug = input_aug - self.target_aug = target_aug - self.provide_data = [('data', self.data_shape)] - self.provide_label = [('label', self.label_shape)] - is_image_file = lambda fn: any(fn.endswith(ext) for ext in [".png", ".jpg", ".jpeg"]) - self.filenames = [os.path.join(path, x) for x in os.listdir(path) if is_image_file(x)] - self.count = 0 - self.flag = flag - random.shuffle(self.filenames) - - def next(self): - from PIL import Image - if self.count + self.batch_size <= len(self.filenames): - data = [] - label = [] - for i in range(self.batch_size): - fn = self.filenames[self.count] - self.count += 1 - image = Image.open(fn).convert('YCbCr').split()[0] - if image.size[0] > image.size[1]: - image = image.transpose(Image.TRANSPOSE) - image = mx.nd.expand_dims(mx.nd.array(image), axis=2) - target = image.copy() - for aug in self.input_aug: - image = aug(image) - for aug in self.target_aug: - target = aug(target) - data.append(image) - label.append(target) - - data = mx.nd.concat(*[mx.nd.expand_dims(d, axis=0) for d in data], dim=0) - label = mx.nd.concat(*[mx.nd.expand_dims(d, axis=0) for d in label], dim=0) - data = [mx.nd.transpose(data, axes=(0, 3, 1, 2)).astype('float32')/255] - label = [mx.nd.transpose(label, axes=(0, 3, 1, 2)).astype('float32')/255] - - return mx.io.DataBatch(data=data, label=label) - else: - raise StopIteration - - def reset(self): - self.count = 0 - random.shuffle(self.filenames) - -def get_model(model, ctx, opt): - """Model initialization.""" - kwargs = {'ctx': ctx, 'pretrained': opt.use_pretrained, 'classes': classes} - if model.startswith('resnet'): - kwargs['thumbnail'] = opt.use_thumbnail - elif model.startswith('vgg'): - kwargs['batch_norm'] = opt.batch_norm - - net = models.get_model(model, **kwargs) - if opt.resume: - net.load_parameters(opt.resume) - elif not opt.use_pretrained: - if model in ['alexnet']: - net.initialize(mx.init.Normal()) - else: - net.initialize(mx.init.Xavier(magnitude=2)) - net.cast(opt.dtype) - return net - -net = get_model(opt.model, context, opt) - -def get_data_iters(dataset, batch_size, opt): - """get dataset iterators""" - if dataset == 'mnist': - train_data, val_data = get_mnist_iterator(batch_size, (1, 28, 28), - num_parts=kv.num_workers, part_index=kv.rank) - elif dataset == 'cifar10': - train_data, val_data = get_cifar10_iterator(batch_size, (3, 32, 32), - num_parts=kv.num_workers, part_index=kv.rank) - elif dataset == 'imagenet': - shape_dim = 299 if model_name == 'inceptionv3' else 224 - - if not opt.data_dir: - raise ValueError('Dir containing raw images in train/val is required for imagenet.' - 'Please specify "--data-dir"') - - train_data, val_data = get_imagenet_iterator(opt.data_dir, batch_size, - opt.num_workers, shape_dim, opt.dtype) - elif dataset == 'caltech101': - train_data, val_data = get_caltech101_iterator(batch_size, opt.num_workers, opt.dtype) - elif dataset == 'dummy': - shape_dim = 299 if model_name == 'inceptionv3' else 224 - train_data, val_data = dummy_iterator(batch_size, (3, shape_dim, shape_dim)) - return train_data, val_data - -def test(ctx, val_data): - metric.reset() - val_data.reset() - for batch in val_data: - data = gluon.utils.split_and_load(batch.data[0].astype(opt.dtype, copy=False), - ctx_list=ctx, batch_axis=0) - label = gluon.utils.split_and_load(batch.label[0].astype(opt.dtype, copy=False), - ctx_list=ctx, batch_axis=0) - outputs = [net(X) for X in data] - metric.update(label, outputs) - return metric.get() - -def update_learning_rate(lr, trainer, epoch, ratio, steps): - """Set the learning rate to the initial value decayed by ratio every N epochs.""" - new_lr = lr * (ratio ** int(np.sum(np.array(steps) < epoch))) - trainer.set_learning_rate(new_lr) - return trainer - -def save_checkpoint(epoch, top1, best_acc): - if opt.save_frequency and (epoch + 1) % opt.save_frequency == 0: - fname = os.path.join(opt.prefix, '%s_%d_acc_%.4f.params' % (opt.model, epoch, top1)) - net.save_parameters(fname) - logger.info('[Epoch %d] Saving checkpoint to %s with Accuracy: %.4f', epoch, fname, top1) - if top1 > best_acc[0]: - best_acc[0] = top1 - fname = os.path.join(opt.prefix, '%s_best.params' % (opt.model)) - net.save_parameters(fname) - logger.info('[Epoch %d] Saving checkpoint to %s with Accuracy: %.4f', epoch, fname, top1) - -def train(opt, ctx): - if isinstance(ctx, mx.Context): - ctx = [ctx] - - train_data, val_data = get_data_iters(dataset, batch_size, opt) - net.collect_params().reset_ctx(ctx) - trainer = gluon.Trainer(net.collect_params(), 'sgd', - optimizer_params={'learning_rate': opt.lr, - 'wd': opt.wd, - 'momentum': opt.momentum, - 'multi_precision': True}, - kvstore=kv) - loss = gluon.loss.SoftmaxCrossEntropyLoss() - - total_time = 0 - num_epochs = 0 - best_acc = [0] - for epoch in range(opt.start_epoch, opt.epochs): - trainer = update_learning_rate(opt.lr, trainer, epoch, opt.lr_factor, lr_steps) - tic = time.time() - train_data.reset() - metric.reset() - btic = time.time() - for i, batch in enumerate(train_data): - data = gluon.utils.split_and_load(batch.data[0].astype(opt.dtype), ctx_list=ctx, batch_axis=0) - label = gluon.utils.split_and_load(batch.label[0].astype(opt.dtype), ctx_list=ctx, batch_axis=0) - outputs = [] - Ls = [] - with ag.record(): - for x, y in zip(data, label): - z = net(x) - L = loss(z, y) - # store the loss and do backward after we have done forward - # on all GPUs for better speed on multiple GPUs. - Ls.append(L) - outputs.append(z) - ag.backward(Ls) - trainer.step(batch.data[0].shape[0]) - metric.update(label, outputs) - if opt.log_interval and not (i+1)%opt.log_interval: - name, acc = metric.get() - logger.info('Epoch[%d] Batch [%d]\tSpeed: %f samples/sec\t%s=%f, %s=%f'%( - epoch, i, batch_size/(time.time()-btic), name[0], acc[0], name[1], acc[1])) - btic = time.time() - - epoch_time = time.time()-tic - - # First epoch will usually be much slower than the subsequent epics, - # so don't factor into the average - if num_epochs > 0: - total_time = total_time + epoch_time - num_epochs = num_epochs + 1 - - name, acc = metric.get() - logger.info('[Epoch %d] training: %s=%f, %s=%f'%(epoch, name[0], acc[0], name[1], acc[1])) - logger.info('[Epoch %d] time cost: %f'%(epoch, epoch_time)) - name, val_acc = test(ctx, val_data) - logger.info('[Epoch %d] validation: %s=%f, %s=%f'%(epoch, name[0], val_acc[0], name[1], val_acc[1])) - - # save model if meet requirements - save_checkpoint(epoch, val_acc[0], best_acc) - if num_epochs > 1: - print('Average epoch time: {}'.format(float(total_time)/(num_epochs - 1))) - -def main(): - if opt.builtin_profiler > 0: - profiler.set_config(profile_all=True, aggregate_stats=True) - profiler.set_state('run') - if opt.mode == 'symbolic': - data = mx.sym.var('data') - if opt.dtype == 'float16': - data = mx.sym.Cast(data=data, dtype=np.float16) - out = net(data) - if opt.dtype == 'float16': - out = mx.sym.Cast(data=out, dtype=np.float32) - softmax = mx.sym.SoftmaxOutput(out, name='softmax') - mod = mx.mod.Module(softmax, context=context) - train_data, val_data = get_data_iters(dataset, batch_size, opt) - mod.fit(train_data, - eval_data=val_data, - num_epoch=opt.epochs, - kvstore=kv, - batch_end_callback = mx.callback.Speedometer(batch_size, max(1, opt.log_interval)), - epoch_end_callback = mx.callback.do_checkpoint('image-classifier-%s'% opt.model), - optimizer = 'sgd', - optimizer_params = {'learning_rate': opt.lr, 'wd': opt.wd, 'momentum': opt.momentum, 'multi_precision': True}, - initializer = mx.init.Xavier(magnitude=2)) - mod.save_parameters('image-classifier-%s-%d-final.params'%(opt.model, opt.epochs)) - else: - if opt.mode == 'hybrid': - net.hybridize() - train(opt, context) - if opt.builtin_profiler > 0: - profiler.set_state('stop') - print(profiler.dumps()) - -if __name__ == '__main__': - if opt.profile: - import hotshot, hotshot.stats - prof = hotshot.Profile('image-classifier-%s-%s.prof'%(opt.model, opt.mode)) - prof.runcall(main) - prof.close() - stats = hotshot.stats.load('image-classifier-%s-%s.prof'%(opt.model, opt.mode)) - stats.strip_dirs() - stats.sort_stats('cumtime', 'calls') - stats.print_stats() - else: - main() diff --git a/dev-support/mini-submarine/submarine/mnist_distributed.py b/dev-support/mini-submarine/submarine/mnist_distributed.py deleted file mode 100644 index dfa0beb..0000000 --- a/dev-support/mini-submarine/submarine/mnist_distributed.py +++ /dev/null @@ -1,275 +0,0 @@ -# Copyright 2015 The TensorFlow Authors. All Rights Reserved. -# -# Licensed 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. -# ============================================================================== - -"""A deep MNIST classifier using convolutional layers. - -This example was adapted from -https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/tutorials/mnist/mnist_deep.py. - -Each worker reads the full MNIST dataset and asynchronously trains a CNN with dropout and using the Adam optimizer, -updating the model parameters on shared parameter servers. - -The current training accuracy is printed out after every 100 steps. -""" - -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - -from tensorflow.examples.tutorials.mnist import input_data - -import json -import logging -import os -import sys - -import tensorboard.program as tb_program -import tensorflow as tf -# import submarine - -# Environment variable containing port to launch TensorBoard on, set by TonY. -TB_PORT_ENV_VAR = 'TB_PORT' - -# mnist data url -tf.flags.DEFINE_string('mnist_data_url', '', - 'Url for mnist handwritten digits dataset') - -# Input/output directories -tf.flags.DEFINE_string('data_dir', '/tmp/tensorflow/mnist/input_data', - 'Directory for storing input data') -tf.flags.DEFINE_string('working_dir', '/tmp/tensorflow/mnist/working_dir', - 'Directory under which events and output will be ' - 'stored (in separate subdirectories).') - -# Training parameters -tf.flags.DEFINE_integer("steps", 1500, - "The number of training steps to execute.") -tf.flags.DEFINE_integer("batch_size", 64, "The batch size per step.") - -FLAGS = tf.flags.FLAGS - - -def deepnn(x): - """deepnn builds the graph for a deep net for classifying digits. - - Args: - x: an input tensor with the dimensions (N_examples, 784), where 784 is the - number of pixels in a standard MNIST image. - - Returns: - A tuple (y, keep_prob). y is a tensor of shape (N_examples, 10), with values - equal to the logits of classifying the digit into one of 10 classes (the - digits 0-9). keep_prob is a scalar placeholder for the probability of - dropout. - """ - # Reshape to use within a convolutional neural net. - # Last dimension is for "features" - there is only one here, since images are - # grayscale -- it would be 3 for an RGB image, 4 for RGBA, etc. - with tf.name_scope('reshape'): - x_image = tf.reshape(x, [-1, 28, 28, 1]) - - # First convolutional layer - maps one grayscale image to 32 feature maps. - with tf.name_scope('conv1'): - W_conv1 = weight_variable([5, 5, 1, 32]) - b_conv1 = bias_variable([32]) - h_conv1 = tf.nn.relu(conv2d(x_image, W_conv1) + b_conv1) - - # Pooling layer - downsamples by 2X. - with tf.name_scope('pool1'): - h_pool1 = max_pool_2x2(h_conv1) - - # Second convolutional layer -- maps 32 feature maps to 64. - with tf.name_scope('conv2'): - W_conv2 = weight_variable([5, 5, 32, 64]) - b_conv2 = bias_variable([64]) - h_conv2 = tf.nn.relu(conv2d(h_pool1, W_conv2) + b_conv2) - - # Second pooling layer. - with tf.name_scope('pool2'): - h_pool2 = max_pool_2x2(h_conv2) - - # Fully connected layer 1 -- after 2 round of downsampling, our 28x28 image - # is down to 7x7x64 feature maps -- maps this to 1024 features. - with tf.name_scope('fc1'): - W_fc1 = weight_variable([7 * 7 * 64, 1024]) - b_fc1 = bias_variable([1024]) - - h_pool2_flat = tf.reshape(h_pool2, [-1, 7 * 7 * 64]) - h_fc1 = tf.nn.relu(tf.matmul(h_pool2_flat, W_fc1) + b_fc1) - - # Dropout - controls the complexity of the model, prevents co-adaptation of - # features. - with tf.name_scope('dropout'): - keep_prob = tf.placeholder(tf.float32) - h_fc1_drop = tf.nn.dropout(h_fc1, keep_prob) - - # Map the 1024 features to 10 classes, one for each digit - with tf.name_scope('fc2'): - W_fc2 = weight_variable([1024, 10]) - b_fc2 = bias_variable([10]) - - y_conv = tf.matmul(h_fc1_drop, W_fc2) + b_fc2 - return y_conv, keep_prob - - -def conv2d(x, W): - """conv2d returns a 2d convolution layer with full stride.""" - return tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding='SAME') - - -def max_pool_2x2(x): - """max_pool_2x2 downsamples a feature map by 2X.""" - return tf.nn.max_pool(x, ksize=[1, 2, 2, 1], - strides=[1, 2, 2, 1], padding='SAME') - - -def weight_variable(shape): - """weight_variable generates a weight variable of a given shape.""" - initial = tf.truncated_normal(shape, stddev=0.1) - return tf.Variable(initial) - - -def bias_variable(shape): - """bias_variable generates a bias variable of a given shape.""" - initial = tf.constant(0.1, shape=shape) - return tf.Variable(initial) - - -def create_model(): - """Creates our model and returns the target nodes to be run or populated""" - # Create the model - x = tf.placeholder(tf.float32, [None, 784]) - - # Define loss and optimizer - y_ = tf.placeholder(tf.int64, [None]) - - # Build the graph for the deep net - y_conv, keep_prob = deepnn(x) - - with tf.name_scope('loss'): - cross_entropy = tf.losses.sparse_softmax_cross_entropy(labels=y_, - logits=y_conv) - cross_entropy = tf.reduce_mean(cross_entropy) - - global_step = tf.train.get_or_create_global_step() - with tf.name_scope('adam_optimizer'): - train_step = tf.train.AdamOptimizer(1e-4).minimize(cross_entropy, - global_step=global_step) - - with tf.name_scope('accuracy'): - correct_prediction = tf.equal(tf.argmax(y_conv, 1), y_) - correct_prediction = tf.cast(correct_prediction, tf.float32) - accuracy = tf.reduce_mean(correct_prediction) - - tf.summary.scalar('cross_entropy_loss', cross_entropy) - tf.summary.scalar('accuracy', accuracy) - - merged = tf.summary.merge_all() - - return x, y_, keep_prob, global_step, train_step, accuracy, merged - - -def start_tensorboard(logdir): - tb = tb_program.TensorBoard() - port = int(os.getenv(TB_PORT_ENV_VAR, 6006)) - tb.configure(logdir=logdir, port=port) - tb.launch() - logging.info("Starting TensorBoard with --logdir=%s" % logdir) - - -def main(_): - logging.getLogger().setLevel(logging.INFO) - - cluster_spec_str = os.environ["CLUSTER_SPEC"] - cluster_spec = json.loads(cluster_spec_str) - ps_hosts = cluster_spec['ps'] - worker_hosts = cluster_spec['worker'] - - # Create a cluster from the parameter server and worker hosts. - cluster = tf.train.ClusterSpec({"ps": ps_hosts, "worker": worker_hosts}) - - # Create and start a server for the local task. - job_name = os.environ["JOB_NAME"] - task_index = int(os.environ["TASK_INDEX"]) - server = tf.train.Server(cluster, job_name=job_name, task_index=task_index) - - if job_name == "ps": - server.join() - elif job_name == "worker": - # Create our model graph. Assigns ops to the local worker by default. - with tf.device(tf.train.replica_device_setter( - worker_device="/job:worker/task:%d" % task_index, - cluster=cluster)): - features, labels, keep_prob, global_step, train_step, accuracy, \ - merged = create_model() - - if task_index is 0: # chief worker - tf.gfile.MakeDirs(FLAGS.working_dir) - start_tensorboard(FLAGS.working_dir) - - # The StopAtStepHook handles stopping after running given steps. - hooks = [tf.train.StopAtStepHook(num_steps=FLAGS.steps)] - - # Filter all connections except that between ps and this worker to - # avoid hanging issues when one worker finishes. We are using - # asynchronous training so there is no need for the workers to - # communicate. - config_proto = tf.ConfigProto( - device_filters=['/job:ps', '/job:worker/task:%d' % task_index]) - - with tf.train.MonitoredTrainingSession(master=server.target, - is_chief=(task_index == 0), - checkpoint_dir=FLAGS.working_dir, - hooks=hooks, - config=config_proto) as sess: - # Import data - logging.info('Extracting and loading input data...') - # Use a different data dir name to workaround "file already exists issue" when downloading dataset in the same single node - if FLAGS.mnist_data_url == '': - logging.info('Getting mnist data from default url') - mnist = input_data.read_data_sets(FLAGS.data_dir + str(task_index)) - else: - logging.info('Getting mnist data from ' + FLAGS.mnist_data_url) - mnist = input_data.read_data_sets(FLAGS.data_dir + str(task_index), - source_url=FLAGS.mnist_data_url) - - # Train - logging.info('Starting training') - i = 0 - while not sess.should_stop(): - # Before use submarine-sdk, start Mysql server first - # submarine.log_param("batch_size", FLAGS.batch_size) - batch = mnist.train.next_batch(FLAGS.batch_size) - if i % 100 == 0: - step, _, train_accuracy = sess.run( - [global_step, train_step, accuracy], - feed_dict={features: batch[0], labels: batch[1], - keep_prob: 1.0}) - logging.info('Step %d, training accuracy: %g' % ( - step, train_accuracy)) - # Before use submarine-sdk, start Mysql server first - # submarine.log_metric("accuracy", train_accuracy, i) - else: - sess.run([global_step, train_step], - feed_dict={features: batch[0], labels: batch[1], - keep_prob: 0.5}) - i += 1 - - logging.info('Done training!') - sys.exit() - - -if __name__ == '__main__': - tf.app.run() diff --git a/dev-support/mini-submarine/submarine/mnist_distributed_tf2.py b/dev-support/mini-submarine/submarine/mnist_distributed_tf2.py deleted file mode 100644 index 2f880e6..0000000 --- a/dev-support/mini-submarine/submarine/mnist_distributed_tf2.py +++ /dev/null @@ -1,98 +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. - -import os -import json -import tensorflow as tf -import tensorflow_datasets as tfds - -BATCH_SIZE = 64 -BUFFER_SIZE = 10000 -LEARNING_RATE = 1e-4 - -def get_task_name(): - cluster_spec = os.environ.get("CLUSTER_SPEC", None) - task_name = '' - if cluster_spec: - cluster_spec = json.loads(cluster_spec) - job_index = os.environ["TASK_INDEX"] - job_name = os.environ["JOB_NAME"] - task_name = job_name + '_' + job_index - - return task_name - -def input_fn(mode, input_context=None): - datasets, info = tfds.load(name='mnist', - data_dir='/tmp/' + get_task_name() + '/data', - with_info=True, - as_supervised=True) - - mnist_dataset = (datasets['train'] if mode == tf.estimator.ModeKeys.TRAIN - else datasets['test']) - - def scale(image, label): - image = tf.cast(image, tf.float32) - image /= 255 - return image, label - - if input_context: - mnist_dataset = mnist_dataset.shard( - input_context.num_input_pipelines, - input_context.input_pipeline_id) - - return mnist_dataset.map(scale).cache().shuffle(BUFFER_SIZE).batch(BATCH_SIZE) - -def model_fn(features, labels, mode): - model = tf.keras.Sequential([ - tf.keras.layers.Conv2D(32, 3, activation='relu', input_shape=(28, 28, 1)), - tf.keras.layers.MaxPooling2D(), - tf.keras.layers.Flatten(), - tf.keras.layers.Dense(64, activation='relu'), - tf.keras.layers.Dense(10) - ]) - - logits = model(features, training=False) - - if mode == tf.estimator.ModeKeys.PREDICT: - predictions = {'logits': logits} - return tf.estimator.EstimatorSpec(labels=labels, predictions=predictions) - - optimizer = tf.compat.v1.train.GradientDescentOptimizer( - learning_rate=LEARNING_RATE) - loss = tf.keras.losses.SparseCategoricalCrossentropy( - from_logits=True, reduction=tf.keras.losses.Reduction.NONE)(labels, logits) - loss = tf.reduce_sum(loss) * (1. / BATCH_SIZE) - if mode == tf.estimator.ModeKeys.EVAL: - return tf.estimator.EstimatorSpec(mode, loss=loss) - - return tf.estimator.EstimatorSpec( - mode=mode, - loss=loss, - train_op=optimizer.minimize( - loss, tf.compat.v1.train.get_or_create_global_step())) - -if __name__ == '__main__': - strategy = tf.distribute.experimental.ParameterServerStrategy() - config = tf.estimator.RunConfig(train_distribute=strategy) - estimator = tf.estimator.Estimator( - model_fn=model_fn, - model_dir='/tmp/model', - config=config) - train_spec = tf.estimator.TrainSpec(input_fn) - eval_spec = tf.estimator.EvalSpec(input_fn) - tf.estimator.train_and_evaluate( - estimator, - train_spec, - eval_spec) diff --git a/dev-support/mini-submarine/submarine/pytorch_mnist_distributed.py b/dev-support/mini-submarine/submarine/pytorch_mnist_distributed.py deleted file mode 100644 index 667603a..0000000 --- a/dev-support/mini-submarine/submarine/pytorch_mnist_distributed.py +++ /dev/null @@ -1,242 +0,0 @@ -# Licensed 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. -# ============================================================================== - -"""A deep MNIST classifier using convolutional layers. - -This example was adapted from -https://pytorch.org/docs/master/distributed.html -https://pytorch.org/tutorials/intermediate/dist_tuto.html -https://github.com/narumiruna/pytorch-distributed-example/blob/master/mnist/main.py - -Each worker reads the full MNIST dataset and asynchronously trains a CNN with dropout and using the Adam optimizer, -updating the model parameters on shared parameter servers. - -The current training accuracy is printed out after every 100 steps. -""" - -from __future__ import division, print_function - -import argparse - -import os -import torch -import torch.nn.functional as F -from torch import distributed, nn -from torch.utils import data -from torch.utils.data.distributed import DistributedSampler -from torchvision import datasets, transforms - - -class AverageMeter(object): - - def __init__(self): - self.sum = 0 - self.count = 0 - - def update(self, value, number): - self.sum += value * number - self.count += number - - @property - def average(self): - return self.sum / self.count - - -class AccuracyMeter(object): - - def __init__(self): - self.correct = 0 - self.count = 0 - - def update(self, output, label): - predictions = output.data.argmax(dim=1) - correct = predictions.eq(label.data).sum().item() - - self.correct += correct - self.count += output.size(0) - - @property - def accuracy(self): - return self.correct / self.count - - -class Trainer(object): - - def __init__(self, net, optimizer, train_loader, test_loader, device): - self.net = net - self.optimizer = optimizer - self.train_loader = train_loader - self.test_loader = test_loader - self.device = device - - def train(self): - train_loss = AverageMeter() - train_acc = AccuracyMeter() - - self.net.train() - - for data, label in self.train_loader: - data = data.to(self.device) - label = label.to(self.device) - - output = self.net(data) - loss = F.cross_entropy(output, label) - - self.optimizer.zero_grad() - loss.backward() - # average the gradients - self.average_gradients() - self.optimizer.step() - - train_loss.update(loss.item(), data.size(0)) - train_acc.update(output, label) - - return train_loss.average, train_acc.accuracy - - def evaluate(self): - test_loss = AverageMeter() - test_acc = AccuracyMeter() - - self.net.eval() - - with torch.no_grad(): - for data, label in self.test_loader: - data = data.to(self.device) - label = label.to(self.device) - - output = self.net(data) - loss = F.cross_entropy(output, label) - - test_loss.update(loss.item(), data.size(0)) - test_acc.update(output, label) - - return test_loss.average, test_acc.accuracy - - def average_gradients(self): - world_size = distributed.get_world_size() - - for p in self.net.parameters(): - group = distributed.new_group(ranks=list(range(world_size))) - - tensor = p.grad.data.cpu() - - distributed.all_reduce( - tensor, op=distributed.reduce_op.SUM, group=group) - - tensor /= float(world_size) - - p.grad.data = tensor.to(self.device) - - -class Net(nn.Module): - - def __init__(self): - super(Net, self).__init__() - self.fc = nn.Linear(784, 10) - - def forward(self, x): - return self.fc(x.view(x.size(0), -1)) - - -def get_dataloader(root, batch_size): - transform = transforms.Compose([ - transforms.ToTensor(), - transforms.Normalize((0.13066047740239478,), (0.3081078087569972,)) - ]) - - train_set = datasets.MNIST( - root, train=True, transform=transform, download=True) - sampler = DistributedSampler(train_set) - - train_loader = data.DataLoader( - train_set, - batch_size=batch_size, - shuffle=(sampler is None), - sampler=sampler) - - test_loader = data.DataLoader( - datasets.MNIST(root, train=False, transform=transform, download=True), - batch_size=batch_size, - shuffle=False) - - return train_loader, test_loader - - -def solve(args): - device = torch.device('cuda' if args.cuda else 'cpu') - - net = Net().to(device) - - optimizer = torch.optim.Adam(net.parameters(), lr=args.learning_rate) - - train_loader, test_loader = get_dataloader(args.root, args.batch_size) - - trainer = Trainer(net, optimizer, train_loader, test_loader, device) - - for epoch in range(1, args.epochs + 1): - train_loss, train_acc = trainer.train() - test_loss, test_acc = trainer.evaluate() - - print( - 'Epoch: {}/{},'.format(epoch, args.epochs), - 'train loss: {:.6f}, train acc: {:.6f}, test loss: {:.6f}, test acc: {:.6f}.'. - format(train_loss, train_acc, test_loss, test_acc)) - - -def init_process(args): - distributed.init_process_group( - backend=args.backend, - init_method=args.init_method, - rank=args.rank, - world_size=args.world_size) - - -def main(): - parser = argparse.ArgumentParser() - parser.add_argument( - '--backend', - type=str, - default='tcp', - help='Name of the backend to use.') - parser.add_argument( - '--init-method', - '-i', - type=str, - default=os.environ.get('INIT_METHOD', 'tcp://127.0.0.1:23456'), - help='URL specifying how to initialize the package.') - parser.add_argument( - '--rank', '-r', - type=int, - default=int(os.environ.get('RANK')), - help='Rank of the current process.') - parser.add_argument( - '--world-size', - '-s', - type=int, - default=int(os.environ.get('WORLD')), - help='Number of processes participating in the job.') - parser.add_argument('--epochs', type=int, default=20) - parser.add_argument('--no-cuda', action='store_true') - parser.add_argument('--learning-rate', '-lr', type=float, default=1e-3) - parser.add_argument('--root', type=str, default='data') - parser.add_argument('--batch-size', type=int, default=128) - args = parser.parse_args() - args.cuda = torch.cuda.is_available() and not args.no_cuda - print(args) - - init_process(args) - solve(args) - - -if __name__ == '__main__': - main() \ No newline at end of file diff --git a/dev-support/mini-submarine/submarine/run_customized_submarine-all_mnist.sh b/dev-support/mini-submarine/submarine/run_customized_submarine-all_mnist.sh deleted file mode 100755 index d08a7b9..0000000 --- a/dev-support/mini-submarine/submarine/run_customized_submarine-all_mnist.sh +++ /dev/null @@ -1,68 +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. - -#!/usr/bin/env bash - -# Need to modify environment variables based on version -while [ $# -gt 0 ]; do - case "$1" in - --debug*) - DEBUG=$1 - shift - ;; - *) - break - ;; - esac -done - -DEBUG_PORT=8000 -if [ "$DEBUG" ]; then - JAVA_CMD="java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=${DEBUG_PORT}" -else - JAVA_CMD="java" -fi - -while getopts 'd:' OPT; do - case $OPT in - d) - DATA_URL="$OPTARG";; - esac -done -shift $(($OPTIND - 1)) - -if [[ -n "$DATA_URL" ]]; then - WORKER_CMD="myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode --mnist_data_url ${DATA_URL}" -else - WORKER_CMD="myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode" -fi - -SUBMARINE_VERSION=${SUBMARINE_VER:-"0.5.0"} - -HADOOP_VERSION=2.9 - -${JAVA_CMD} -cp /tmp/submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar:/usr/local/hadoop/etc/hadoop \ -org.apache.submarine.client.cli.Cli job run --name tf-job-002 \ ---framework tensorflow \ ---verbose \ ---input_path "" \ ---num_workers 2 \ ---worker_resources memory=1G,vcores=1 \ ---num_ps 1 \ ---ps_resources memory=1G,vcores=1 \ ---worker_launch_cmd "${WORKER_CMD}" \ ---ps_launch_cmd "myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode" \ ---insecure \ ---conf tony.containers.resources=/home/yarn/submarine/myvenv.zip#archive,/home/yarn/submarine/mnist_distributed.py,/tmp/submarine-dist-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}/submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar diff --git a/dev-support/mini-submarine/submarine/run_submarine_mnist_tf2_tony.sh b/dev-support/mini-submarine/submarine/run_submarine_mnist_tf2_tony.sh deleted file mode 100755 index b12efbf..0000000 --- a/dev-support/mini-submarine/submarine/run_submarine_mnist_tf2_tony.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env bash -# 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. - -while [ $# -gt 0 ]; do - case "$1" in - --debug*) - DEBUG=$1 - if [ -n "$2" ]; then - DEBUG_PORT=$2 - shift - fi - shift - ;; - *) - break - ;; - esac -done - -if [ "$DEBUG" ]; then - if [ -z "$DEBUG_PORT" ]; then - DEBUG_PORT=8000 - fi - JAVA_CMD="java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=${DEBUG_PORT}" -else - JAVA_CMD="java" -fi - -SUBMARINE_VERSION=0.5.0 -HADOOP_VERSION=2.9 -SUBMARINE_PATH=/opt/submarine-current -HADOOP_CONF_PATH=/usr/local/hadoop/etc/hadoop - -${JAVA_CMD} -cp "$("${HADOOP_COMMON_HOME}"/bin/hadoop classpath --glob)":${SUBMARINE_PATH}/submarine-all-${SUBMARINE_VERSION}-hadoop-"${HADOOP_VERSION}".jar:${HADOOP_CONF_PATH} \ - org.apache.submarine.client.cli.Cli job run --name tf2-job-001 \ - --framework tensorflow \ - --input_path "" \ - --num_workers 2 \ - --worker_resources memory=1G,vcores=1 \ - --num_ps 1 \ - --ps_resources memory=1G,vcores=1 \ - --worker_launch_cmd "tf2-venv.zip/tf2-venv/bin/python mnist_distributed_tf2.py" \ - --ps_launch_cmd "tf2-venv.zip/tf2-venv/bin/python mnist_distributed_tf2.py" \ - --insecure \ - --verbose \ - --conf tony.containers.resources=/home/yarn/submarine/tf2-venv.zip#archive,/home/yarn/submarine/mnist_distributed_tf2.py,${SUBMARINE_PATH}/submarine-all-${SUBMARINE_VERSION}-hadoop-"${HADOOP_VERSION}".jar diff --git a/dev-support/mini-submarine/submarine/run_submarine_mnist_tony.sh b/dev-support/mini-submarine/submarine/run_submarine_mnist_tony.sh deleted file mode 100755 index 272ac32..0000000 --- a/dev-support/mini-submarine/submarine/run_submarine_mnist_tony.sh +++ /dev/null @@ -1,90 +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. - -#!/usr/bin/env bash - -# Below are configurable variables, please adapt base on your local environment. -# Version of submarine jar -SUBMARINE_VERSION=${SUBMARINE_VER:-"0.5.0"} - -# Version of affiliated Hadoop version for this Submarine jar. -SUBMARINE_HADOOP_VERSION=2.9 - -# Path to the submarine jars. -SUBMARINE_PATH=/opt/submarine-current - -# Similar to HADOOP_CONF_DIR, location of the Hadoop configuration directory -HADOOP_CONF_PATH=/usr/local/hadoop/etc/hadoop - -# Path to the MNIST example. -MNIST_PATH=/home/yarn/submarine - -while [ $# -gt 0 ]; do - case "$1" in - --debug*) - DEBUG=$1 - shift - ;; - *) - break - ;; - esac -done - -DEBUG_PORT=8000 -if [ "$DEBUG" ]; then - JAVA_CMD="java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=${DEBUG_PORT}" -else - JAVA_CMD="java" -fi - -while getopts 'd:c' OPT; do - case $OPT in - d) - DATA_URL="$OPTARG";; - c) - USE_DOCKER=1;; - esac -done -shift $(($OPTIND - 1)) - -if [[ -n "$DATA_URL" ]]; then - WORKER_CMD="venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode --mnist_data_url ${DATA_URL}" -else - WORKER_CMD="venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode" -fi - -if [[ -n "$USE_DOCKER" ]]; then - WORKER_CMD="/opt/$WORKER_CMD" - # tony-mnist-tf-1.13.1:0.0.1 is built from the Dockerfile.tony.tf.mnist.tf_1.13.1 under docs/helper/docker/tensorflow/mnist - DOCKER_CONF="--conf tony.docker.containers.image=tony-mnist-tf-1.13.1:0.0.1 --conf tony.docker.enabled=true" -else - WORKER_CMD="myvenv.zip/$WORKER_CMD" -fi - -${JAVA_CMD} -cp $(${HADOOP_COMMON_HOME}/bin/hadoop classpath --glob):${SUBMARINE_PATH}/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar:${HADOOP_CONF_PATH} \ - org.apache.submarine.client.cli.Cli job run --name tf-job-001 \ - --framework tensorflow \ - --verbose \ - --input_path "" \ - --num_workers 2 \ - --worker_resources memory=1G,vcores=1 \ - --num_ps 1 \ - --ps_resources memory=1G,vcores=1 \ - --worker_launch_cmd "${WORKER_CMD}" \ - --ps_launch_cmd "myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode" \ - --insecure \ - --conf tony.containers.resources=${MNIST_PATH}/myvenv.zip#archive,${MNIST_PATH}/mnist_distributed.py,${SUBMARINE_PATH}/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar \ - $DOCKER_CONF diff --git a/dev-support/mini-submarine/submarine/run_submarine_mnist_tony_rpc.sh b/dev-support/mini-submarine/submarine/run_submarine_mnist_tony_rpc.sh deleted file mode 100644 index 602e9d8..0000000 --- a/dev-support/mini-submarine/submarine/run_submarine_mnist_tony_rpc.sh +++ /dev/null @@ -1,66 +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. - -#!/usr/bin/env bash -while [ $# -gt 0 ]; do - case "$1" in - --debug*) - DEBUG=$1 - shift - ;; - *) - break - ;; - esac -done - -DEBUG_PORT=8000 -if [ "$DEBUG" ]; then - JAVA_CMD="java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=${DEBUG_PORT}" -else - JAVA_CMD="java" -fi - -while getopts 'd:' OPT; do - case $OPT in - d) - DATA_URL="$OPTARG";; - esac -done -shift $(($OPTIND - 1)) - -if [[ -n "$DATA_URL" ]]; then - WORKER_CMD="myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode --mnist_data_url ${DATA_URL}" -else - WORKER_CMD="myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode" -fi - -SUBMARINE_VERSION=${SUBMARINE_VER:-"0.5.0"} - -HADOOP_VERSION=2.9 - -${JAVA_CMD} -cp /opt/submarine-dist-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}/submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar:/usr/local/hadoop/etc/hadoop:/opt/submarine-dist-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}/conf \ - org.apache.submarine.client.cli.Cli job run --name tf-job-001 \ - --framework tensorflow \ - --verbose \ - --input_path "" \ - --num_workers 2 \ - --worker_resources memory=1G,vcores=1 \ - --num_ps 1 \ - --ps_resources memory=1G,vcores=1 \ - --worker_launch_cmd "${WORKER_CMD}" \ - --ps_launch_cmd "myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode" \ - --insecure \ - --conf tony.containers.resources=/home/yarn/submarine/myvenv.zip#archive,/home/yarn/submarine/mnist_distributed.py,/opt/submarine-dist-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}/submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar diff --git a/dev-support/mini-submarine/submarine/run_submarine_mxnet_cifar10_tony.sh b/dev-support/mini-submarine/submarine/run_submarine_mxnet_cifar10_tony.sh deleted file mode 100755 index 4dec868..0000000 --- a/dev-support/mini-submarine/submarine/run_submarine_mxnet_cifar10_tony.sh +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/env bash -# 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. - -while [ $# -gt 0 ]; do - case "$1" in - --debug*) - DEBUG=$1 - if [ -n "$2" ]; then - DEBUG_PORT=$2 - shift - fi - shift - ;; - *) - break - ;; - esac -done - -if [ "$DEBUG" ]; then - if [ -z "$DEBUG_PORT" ]; then - DEBUG_PORT=8000 - fi - JAVA_CMD="java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=${DEBUG_PORT}" -else - JAVA_CMD="java" -fi - -SUBMARINE_VERSION=0.5.0 -HADOOP_VERSION=2.9 -SUBMARINE_PATH=/opt/submarine-current -HADOOP_CONF_PATH=/usr/local/hadoop/etc/hadoop - -${JAVA_CMD} -cp ${SUBMARINE_PATH}/submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar:${HADOOP_CONF_PATH} \ - org.apache.submarine.client.cli.Cli job run \ - --name mx-job-001 \ - --framework mxnet \ - --input_path "" \ - --num_ps 1 \ - --ps_resources memory=1G,vcores=1 \ - --ps_launch_cmd "myvenv.zip/venv/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --num_workers 2 \ - --worker_resources memory=2G,vcores=1 \ - --worker_launch_cmd "myvenv.zip/venv/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --num_schedulers 1 \ - --scheduler_resources memory=1G,vcores=1 \ - --scheduler_launch_cmd "myvenv.zip/venv/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --insecure \ - --verbose \ - --conf tony.containers.resources=/home/yarn/submarine/myvenv.zip#archive,/home/yarn/submarine/image_classification.py,${SUBMARINE_PATH}/submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar diff --git a/dev-support/mini-submarine/submarine/run_submarine_pytorch_mnist_tony.sh b/dev-support/mini-submarine/submarine/run_submarine_pytorch_mnist_tony.sh deleted file mode 100755 index b57dd56..0000000 --- a/dev-support/mini-submarine/submarine/run_submarine_pytorch_mnist_tony.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/usr/bin/env bash -# 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. - -while [ $# -gt 0 ]; do - case "$1" in - --debug*) - DEBUG=$1 - if [ -n "$2" ]; then - DEBUG_PORT=$2 - shift - fi - shift - ;; - *) - break - ;; - esac -done - -if [ "$DEBUG" ]; then - if [ -z "$DEBUG_PORT" ]; then - DEBUG_PORT=8000 - fi - JAVA_CMD="java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=${DEBUG_PORT}" -else - JAVA_CMD="java" -fi - -SUBMARINE_VERSION=0.5.0 -HADOOP_VERSION=2.9 -SUBMARINE_PATH=/opt/submarine-current -HADOOP_CONF_PATH=/usr/local/hadoop/etc/hadoop -MNIST_PATH=/home/yarn/submarine - -${JAVA_CMD} -cp ${SUBMARINE_PATH}/submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar:${HADOOP_CONF_PATH} \ - org.apache.submarine.client.cli.Cli job run \ - --name pytorch-job-001 \ - --framework pytorch \ - --input_path "" \ - --num_workers 2 \ - --worker_resources memory=1G,vcores=1 \ - --worker_launch_cmd "myvenv.zip/venv/bin/python pytorch_mnist_distributed.py" \ - --insecure \ - --verbose \ - --conf tony.containers.resources=${MNIST_PATH}/myvenv.zip#archive,${MNIST_PATH}/pytorch_mnist_distributed.py,${SUBMARINE_PATH}/submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar diff --git a/dev-support/pysubmarine/Dockerfile b/dev-support/pysubmarine/Dockerfile deleted file mode 100644 index 90878f4..0000000 --- a/dev-support/pysubmarine/Dockerfile +++ /dev/null @@ -1,53 +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. - -FROM ubuntu:18.04 - -RUN apt-get update && apt-get install -y --no-install-recommends apt-utils -# Install JAVA -RUN apt-get -q update \ - && apt-get -q install -y --no-install-recommends openjdk-8-jdk libbcprov-java \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* - -# Install Docker -RUN apt-get update && \ - apt-get -y install apt-transport-https ca-certificates curl software-properties-common && \ - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \ - add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" && \ - apt-get update && \ - apt-get -y install docker-ce -# So no need to mount host's /var/run/docker.sock, dockerd will create in local fs -VOLUME /var/lib/docker -VOLUME /var/lib/docker.sock - -ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64 -ENV JRE_HOME /usr/lib/jvm/java-8-openjdk-amd64/jre - -# Install user tools -RUN apt-get update && apt-get install -y --no-install-recommends \ - git make libgtest-dev cmake wget unzip libtinfo-dev libz-dev \ - libcurl4-openssl-dev libopenblas-dev g++ sudo \ - apt-transport-https curl vim ca-certificates maven - -WORKDIR /root - -# Intstall conda -ADD install-conda.sh /usr/local -ADD bootstrap.sh /usr/local -RUN chmod 755 /usr/local/install-conda.sh && \ - bash /usr/local/install-conda.sh - -WORKDIR /workspace diff --git a/dev-support/pysubmarine/bootstrap.sh b/dev-support/pysubmarine/bootstrap.sh deleted file mode 100755 index d4e3105..0000000 --- a/dev-support/pysubmarine/bootstrap.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env bash -# 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. - - -set -euo pipefail - -COMMAND=("$@") - -getent group "${CI_BUILD_GID}" || addgroup --gid "${CI_BUILD_GID}" "${CI_BUILD_GROUP}" -getent passwd "${CI_BUILD_UID}" || adduser --gid "${CI_BUILD_GID}" --uid "${CI_BUILD_UID}" \ - --gecos "${CI_BUILD_USER} (generated by with_the_same_user script)" \ - --disabled-password --home "${CI_BUILD_HOME}" --quiet "${CI_BUILD_USER}" -usermod -a -G sudo "${CI_BUILD_USER}" -echo "${CI_BUILD_USER} ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/90-nopasswd-sudo -# shellcheck disable=SC2024 -sudo nohup dockerd --host=unix:///var/run/docker.sock > /var/log/dockerd.log 2>&1 & -sudo usermod -aG docker "${CI_BUILD_USER}" - -sudo -u "#${CI_BUILD_UID}" --preserve-env \ -HOME="${CI_BUILD_HOME}" \ -PATH="${PATH}" \ -PYTHONPATH="${PYTHONPATH}" \ -"${COMMAND[@]}" diff --git a/dev-support/pysubmarine/gen-sdk.sh b/dev-support/pysubmarine/gen-sdk.sh deleted file mode 100755 index b83eab1..0000000 --- a/dev-support/pysubmarine/gen-sdk.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/bin/env bash -# 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. - -FWDIR="$(cd "$(dirname "$0")"; pwd)" -cd "$FWDIR" - -SUBMARINE_PROJECT_PATH="$FWDIR/../.." -SWAGGER_JAR_URL="https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar" -SWAGGER_CODEGEN_JAR="openapi-generator-cli.jar" -SWAGGER_CODEGEN_CONF="swagger_config.json" -SWAGGER_CODEGEN_FILE="openapi.json" -SDK_OUTPUT_PATH="sdk/python" - -submarine_dist_exists=$(find -L "${SUBMARINE_PROJECT_PATH}/submarine-dist/target" -name "submarine-dist-*.tar.gz") -# Build source code if the package doesn't exist. -if [[ -z "${submarine_dist_exists}" ]]; then - cd "${SUBMARINE_PROJECT_PATH}" - mvn clean package -DskipTests - cd "$FWDIR" # go back to FWDIR after packaging -fi - -echo "Generating openAPI 3.0 definition file ..." -# TODO(pingsutw): generate openapi.json without starting submarine server -bash ${SUBMARINE_PROJECT_PATH}/submarine-dist/target//submarine-dist-*/submarine-dist-*/bin/submarine-daemon.sh start getMysqlJar -sleep 5 -rm openapi.json -wget http://localhost:8080/v1/openapi.json -bash ${SUBMARINE_PROJECT_PATH}/submarine-dist/target//submarine-dist-*/submarine-dist-*/bin/submarine-daemon.sh stop - -openapi_generator_cli_exists=$(find -L "${FWDIR}" -name "openapi-generator-cli*") -if [[ -z "${openapi_generator_cli_exists}" ]]; then - echo "Downloading the swagger-codegen JAR package ..." - wget -O "${SWAGGER_CODEGEN_JAR}" "${SWAGGER_JAR_URL}" -fi - -echo "Generating Python SDK for Submarine ..." -rm -r sdk/ -java -jar ${SWAGGER_CODEGEN_JAR} generate \ - -i "${SWAGGER_CODEGEN_FILE}" \ - -g python \ - -o ${SDK_OUTPUT_PATH} \ - -c ${SWAGGER_CODEGEN_CONF} - -echo "Insert apache license at the top of file ..." -for filename in $(find ${SDK_OUTPUT_PATH}/submarine/experiment -type f); do - echo "$filename" - sed -i -e '1 e cat license-header.txt' "$filename" -done - -echo "Move Experiment API to pysubmarine" -cp -r sdk/python/submarine/experiment ${SUBMARINE_PROJECT_PATH}/submarine-sdk/pysubmarine/submarine/ - -echo "Fix Python SDK code style" -${SUBMARINE_PROJECT_PATH}/submarine-sdk/pysubmarine/github-actions/auto-format.sh diff --git a/dev-support/pysubmarine/gen-ts-sdk.sh b/dev-support/pysubmarine/gen-ts-sdk.sh deleted file mode 100755 index 96c5437..0000000 --- a/dev-support/pysubmarine/gen-ts-sdk.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env bash -# 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. - -FWDIR="$(cd "$(dirname "$0")"; pwd)" -cd "$FWDIR" - -SUBMARINE_PROJECT_PATH="$FWDIR/../.." -SWAGGER_JAR_URL="https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar" -SWAGGER_CODEGEN_JAR="openapi-generator-cli.jar" -SWAGGER_CODEGEN_CONF="swagger_config.json" -SWAGGER_CODEGEN_FILE="openapi.json" -SDK_OUTPUT_PATH="sdk/typescript-angular" - -submarine_dist_exists=$(find -L "${SUBMARINE_PROJECT_PATH}/submarine-dist/target" -name "submarine-dist-*.tar.gz") -# Build source code if the package doesn't exist. -if [[ -z "${submarine_dist_exists}" ]]; then - cd "${SUBMARINE_PROJECT_PATH}" - mvn clean package -DskipTests - cd "$FWDIR" # go back to FWDIR after packaging -fi - -echo "Generating openAPI 3.0 definition file ..." -# TODO(pingsutw): generate openapi.json without starting submarine server -bash ${SUBMARINE_PROJECT_PATH}/submarine-dist/target//submarine-dist-*/submarine-dist-*/bin/submarine-daemon.sh start getMysqlJar -sleep 5 -rm openapi.json -wget http://localhost:8080/v1/openapi.json -bash ${SUBMARINE_PROJECT_PATH}/submarine-dist/target//submarine-dist-*/submarine-dist-*/bin/submarine-daemon.sh stop - -openapi_generator_cli_exists=$(find -L "${FWDIR}" -name "openapi-generator-cli*") -if [[ -z "${openapi_generator_cli_exists}" ]]; then - echo "Downloading the swagger-codegen JAR package ..." - wget -O "${SWAGGER_CODEGEN_JAR}" "${SWAGGER_JAR_URL}" -fi - -echo "Generating typescript-angular SDK for Submarine ..." -rm -r sdk/ -java -jar ${SWAGGER_CODEGEN_JAR} generate \ - -i "${SWAGGER_CODEGEN_FILE}" \ - -g typescript-angular \ - -o ${SDK_OUTPUT_PATH} \ - -c ${SWAGGER_CODEGEN_CONF} diff --git a/dev-support/pysubmarine/install-conda.sh b/dev-support/pysubmarine/install-conda.sh deleted file mode 100644 index be6a7cd..0000000 --- a/dev-support/pysubmarine/install-conda.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env bash -# 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. - -set -euo pipefail -set -x - -wget https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh -O "$HOME"/anaconda.sh; -bash "$HOME"/anaconda.sh -b -p /usr/bin/anaconda -export PATH="/usr/bin/anaconda/bin:$PATH" -cd "$HOME" -# Useful for debugging any issues with conda -conda info -a -if [[ -n "${PYTHON_VERSION:-}" ]]; then - conda create -q -n submarine-dev python="$PYTHON_VERSION" -else - conda create -q -n submarine-dev python=3.6 -fi - -source activate submarine-dev -python --version -pip install --upgrade pip - -# Install pysubmarine -git clone https://github.com/apache/submarine.git -cd submarine/submarine-sdk/pysubmarine -pip install . -pip install -r github-actions/lint-requirements.txt -pip install -r github-actions/test-requirements.txt diff --git a/dev-support/pysubmarine/license-header.txt b/dev-support/pysubmarine/license-header.txt deleted file mode 100644 index 09697dc..0000000 --- a/dev-support/pysubmarine/license-header.txt +++ /dev/null @@ -1,15 +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. - diff --git a/dev-support/pysubmarine/openapi.json b/dev-support/pysubmarine/openapi.json deleted file mode 100644 index 9ab79b2..0000000 --- a/dev-support/pysubmarine/openapi.json +++ /dev/null @@ -1,409 +0,0 @@ -{ - "openapi" : "3.0.1", - "info" : { - "title" : "Submarine Experiment API", - "description" : "The Submarine REST API allows you to create, list, and get experiments. The\nAPI is hosted under the /v1/experiment route on the Submarine server. For example,\nto list experiments on a server hosted at http://localhost:8080, access\nhttp://localhost:8080/api/v1/experiment/", - "termsOfService" : "http://swagger.io/terms/", - "contact" : { - "email" : "dev@submarine.apache.org" - }, - "license" : { - "name" : "Apache 2.0", - "url" : "http://www.apache.org/licenses/LICENSE-2.0.html" - }, - "version" : "0.5.0" - }, - "servers" : [ { - "url" : "/api" - } ], - "paths" : { - "/v1/experiment/{id}" : { - "get" : { - "tags" : [ "experiment" ], - "summary" : "Get the experiment's detailed info by id", - "operationId" : "getExperiment", - "parameters" : [ { - "name" : "id", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "default" : { - "description" : "successful operation", - "content" : { - "application/json; charset=utf-8" : { - "schema" : { - "$ref" : "#/components/schemas/JsonResponse" - } - } - } - }, - "404" : { - "description" : "Experiment not found" - } - } - }, - "delete" : { - "tags" : [ "experiment" ], - "summary" : "Delete the experiment", - "operationId" : "deleteExperiment", - "parameters" : [ { - "name" : "id", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "default" : { - "description" : "successful operation", - "content" : { - "application/json; charset=utf-8" : { - "schema" : { - "$ref" : "#/components/schemas/JsonResponse" - } - } - } - }, - "404" : { - "description" : "Experiment not found" - } - } - }, - "patch" : { - "tags" : [ "experiment" ], - "summary" : "Update the experiment in the submarine server with spec", - "operationId" : "patchExperiment", - "parameters" : [ { - "name" : "id", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/yaml" : { - "schema" : { - "$ref" : "#/components/schemas/ExperimentSpec" - } - }, - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExperimentSpec" - } - } - } - }, - "responses" : { - "default" : { - "description" : "successful operation", - "content" : { - "application/json; charset=utf-8" : { - "schema" : { - "$ref" : "#/components/schemas/JsonResponse" - } - } - } - }, - "404" : { - "description" : "Experiment not found" - } - } - } - }, - "/v1/experiment/logs" : { - "get" : { - "tags" : [ "experiment" ], - "summary" : "List experiment's log", - "operationId" : "listLog", - "parameters" : [ { - "name" : "status", - "in" : "query", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "default" : { - "description" : "successful operation", - "content" : { - "application/json; charset=utf-8" : { - "schema" : { - "$ref" : "#/components/schemas/JsonResponse" - } - } - } - } - } - } - }, - "/v1/experiment" : { - "get" : { - "tags" : [ "experiment" ], - "summary" : "List experiments", - "operationId" : "listExperiments", - "parameters" : [ { - "name" : "status", - "in" : "query", - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "default" : { - "description" : "successful operation", - "content" : { - "application/json; charset=utf-8" : { - "schema" : { - "$ref" : "#/components/schemas/JsonResponse" - } - } - } - } - } - }, - "post" : { - "tags" : [ "experiment" ], - "summary" : "Create an experiment", - "operationId" : "createExperiment", - "requestBody" : { - "content" : { - "application/yaml" : { - "schema" : { - "$ref" : "#/components/schemas/ExperimentSpec" - } - }, - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/ExperimentSpec" - } - } - } - }, - "responses" : { - "default" : { - "description" : "successful operation", - "content" : { - "application/json; charset=utf-8" : { - "schema" : { - "$ref" : "#/components/schemas/JsonResponse" - } - } - } - } - } - } - }, - "/v1/experiment/logs/{id}" : { - "get" : { - "tags" : [ "experiment" ], - "summary" : "Log experiment by id", - "operationId" : "getLog", - "parameters" : [ { - "name" : "id", - "in" : "path", - "required" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "default" : { - "description" : "successful operation", - "content" : { - "application/json; charset=utf-8" : { - "schema" : { - "$ref" : "#/components/schemas/JsonResponse" - } - } - } - }, - "404" : { - "description" : "Experiment not found" - } - } - } - }, - "/v1/experiment/ping" : { - "get" : { - "tags" : [ "experiment" ], - "summary" : "Ping submarine server", - "description" : "Return the Pong message for test the connectivity", - "operationId" : "ping", - "responses" : { - "200" : { - "description" : "successful operation", - "content" : { - "application/json; charset=utf-8" : { - "schema" : { - "type" : "string" - } - } - } - } - } - } - } - }, - "components" : { - "schemas" : { - "JsonResponse" : { - "type" : "object", - "properties" : { - "code" : { - "type" : "integer", - "format" : "int32" - }, - "success" : { - "type" : "boolean" - }, - "result" : { - "type" : "object" - }, - "attributes" : { - "type" : "object", - "additionalProperties" : { - "type" : "object" - } - } - } - }, - "CodeSpec" : { - "type" : "object", - "properties" : { - "syncMode" : { - "type" : "string" - }, - "url" : { - "type" : "string" - } - } - }, - "EnvironmentSpec" : { - "type" : "object", - "properties" : { - "name" : { - "type" : "string" - }, - "dockerImage" : { - "type" : "string" - }, - "kernelSpec" : { - "$ref" : "#/components/schemas/KernelSpec" - }, - "description" : { - "type" : "string" - }, - "image" : { - "type" : "string" - } - } - }, - "ExperimentMeta" : { - "type" : "object", - "properties" : { - "name" : { - "type" : "string" - }, - "namespace" : { - "type" : "string" - }, - "framework" : { - "type" : "string" - }, - "cmd" : { - "type" : "string" - }, - "envVars" : { - "type" : "object", - "additionalProperties" : { - "type" : "string" - } - } - } - }, - "ExperimentSpec" : { - "type" : "object", - "properties" : { - "meta" : { - "$ref" : "#/components/schemas/ExperimentMeta" - }, - "environment" : { - "$ref" : "#/components/schemas/EnvironmentSpec" - }, - "spec" : { - "type" : "object", - "additionalProperties" : { - "$ref" : "#/components/schemas/ExperimentTaskSpec" - } - }, - "code" : { - "$ref" : "#/components/schemas/CodeSpec" - } - } - }, - "ExperimentTaskSpec" : { - "type" : "object", - "properties" : { - "replicas" : { - "type" : "integer", - "format" : "int32" - }, - "resources" : { - "type" : "string" - }, - "name" : { - "type" : "string" - }, - "image" : { - "type" : "string" - }, - "cmd" : { - "type" : "string" - }, - "envVars" : { - "type" : "object", - "additionalProperties" : { - "type" : "string" - } - }, - "cpu" : { - "type" : "string" - }, - "gpu" : { - "type" : "string" - }, - "memory" : { - "type" : "string" - } - } - }, - "KernelSpec" : { - "type" : "object", - "properties" : { - "name" : { - "type" : "string" - }, - "channels" : { - "type" : "array", - "items" : { - "type" : "string" - } - }, - "dependencies" : { - "type" : "array", - "items" : { - "type" : "string" - } - } - } - } - } - } -} diff --git a/dev-support/pysubmarine/run-pysubmarine-ci.sh b/dev-support/pysubmarine/run-pysubmarine-ci.sh deleted file mode 100755 index 317e491..0000000 --- a/dev-support/pysubmarine/run-pysubmarine-ci.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/env bash -# 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. - -FWDIR="$(cd "$(dirname "$0")"; pwd)" -cd "$FWDIR" - -# shellcheck disable=SC2034 -SUBMARINE_PROJECT_PATH="$FWDIR/../.." - -# build image -echo "Start building the mini-submarine docker image..." -docker build --tag pysubmarine-ci . - -docker run --rm --pid=host \ - --privileged \ - -v "$SUBMARINE_PROJECT_PATH":/workspace \ - -e "CI_BUILD_HOME=/" \ - -e "CI_BUILD_USER=$(id -u -n)" \ - -e "CI_BUILD_UID=$(id -u)" \ - -e "CI_BUILD_GROUP=$(id -g -n)" \ - -e "CI_BUILD_GID=$(id -g)" \ - -e "PATH=/usr/bin/anaconda/envs/submarine-dev/bin:${PATH}" \ - -e "PYTHONPATH=python:/usr/bin/anaconda/envs/submarine-dev/bin/python"\ - -it pysubmarine-ci \ - /bin/bash --login /usr/local/bootstrap.sh bash diff --git a/dev-support/pysubmarine/swagger_config.json b/dev-support/pysubmarine/swagger_config.json deleted file mode 100644 index d7e0772..0000000 --- a/dev-support/pysubmarine/swagger_config.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "packageName" : "submarine.experiment", - "projectName" : "submarine.experiment", - "packageVersion": "0.5.0" -} diff --git a/dev-support/style-check/lint-angular.sh b/dev-support/style-check/lint-angular.sh deleted file mode 100755 index e6af29b..0000000 --- a/dev-support/style-check/lint-angular.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env bash - -# -# 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. -# - -npm install prettier@^2.0.5 - -WORKBENCH_NG=./submarine-workbench/workbench-web - -PRETTIER_ERRORS=$(./node_modules/.bin/prettier --check --trailing-comma none "$WORKBENCH_NG/src/**/*.{ts,html}" | grep "Forgot to run Prettier?") - - -if test "$PRETTIER_ERRORS"; then - echo -e "prettier checks failed at following occurrences:\n$PRETTIER_ERRORS\n" - echo -e "Please use \\033[31m"./node_modules/.bin/prettier --write --trailing-comma none "$WORKBENCH_NG/src/**/*.{ts,html}""\\033[0m to format code automatically\n" - exit 1 -else - echo -e "Checkstyle checks passed." -fi - diff --git a/dev-support/style-check/lint-java.sh b/dev-support/style-check/lint-java.sh deleted file mode 100755 index 6b1dea6..0000000 --- a/dev-support/style-check/lint-java.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash - -# -# 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. -# - -export MAVEN_OPTS="-Xmx2g -XX:ReservedCodeCacheSize=512m -Dorg.slf4j.simpleLogger.defaultLogLevel=WARN" -mvn --no-transfer-progress install -DskipTests -pl "!org.apache.submarine:submarine-cloud" - -ERRORS=$(mvn checkstyle:check | grep ERROR) - -if test ! -z "$ERRORS"; then - echo -e "Checkstyle checks failed at following occurrences:\n$ERRORS" - find . -name checkstyle-output.xml | xargs cat | grep -v checkstyle | grep -v " -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -The binary distribution of this product bundles binaries of leveldbjni -(https://github.com/fusesource/leveldbjni), which is available under the -following license: - -Copyright (c) 2011 FuseSource Corp. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of FuseSource Corp. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -For hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/compat/{fstatat|openat|unlinkat}.h: - -Copyright (c) 2012 The FreeBSD Foundation -All rights reserved. - -This software was developed by Pawel Jakub Dawidek under sponsorship from -the FreeBSD Foundation. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -SUCH DAMAGE. - -============= - -The binary distribution of this product bundles binaries of leveldb -(http://code.google.com/p/leveldb/), which is available under the following -license: - -Copyright (c) 2011 The LevelDB Authors. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -The binary distribution of this product bundles binaries of snappy -(http://code.google.com/p/snappy/), which is available under the following -license: - -Copyright 2011, Google Inc. -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -For: -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/dataTables.bootstrap.js -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/dataTables.bootstrap.css -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/jquery.dataTables.min.js -hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/webapps/static/dt-1.10.18/ --------------------------------------------------------------------------------- -Copyright (C) 2008-2016, SpryMedia Ltd. - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -For: -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/dust-full-2.0.0.min.js -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/dust-helpers-1.1.1.min.js --------------------------------------------------------------------------------- - -Copyright (c) 2010 Aleksander Williams - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -For: -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/moment.min.js --------------------------------------------------------------------------------- - -Copyright (c) 2011-2016 Tim Wood, Iskren Chernev, Moment.js contributors - -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -The binary distribution of this product bundles these dependencies under the -following license: -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/bootstrap-3.3.7 -hadoop-tools/hadoop-sls/src/main/html/js/thirdparty/bootstrap.min.js -hadoop-tools/hadoop-sls/src/main/html/css/bootstrap.min.css -hadoop-tools/hadoop-sls/src/main/html/css/bootstrap-responsive.min.css -bootstrap v3.3.6 -broccoli-asset-rev v2.4.2 -broccoli-funnel v1.0.1 -datatables v1.10.8 -em-helpers v0.5.13 -em-table v0.1.6 -ember v2.2.0 -ember-array-contains-helper v1.0.2 -ember-bootstrap v0.5.1 -ember-cli v1.13.13 -ember-cli-app-version v1.0.0 -ember-cli-babel v5.1.6 -ember-cli-content-security-policy v0.4.0 -ember-cli-dependency-checker v1.2.0 -ember-cli-htmlbars v1.0.2 -ember-cli-htmlbars-inline-precompile v0.3.1 -ember-cli-ic-ajax v0.2.1 -ember-cli-inject-live-reload v1.4.0 -ember-cli-jquery-ui v0.0.20 -ember-cli-qunit v1.2.1 -ember-cli-release v0.2.8 -ember-cli-shims v0.0.6 -ember-cli-sri v1.2.1 -ember-cli-test-loader v0.2.1 -ember-cli-uglify v1.2.0 -ember-d3 v0.1.0 -ember-data v2.1.0 -ember-disable-proxy-controllers v1.0.1 -ember-export-application-global v1.0.5 -ember-load-initializers v0.1.7 -ember-qunit v0.4.16 -ember-qunit-notifications v0.1.0 -ember-resolver v2.0.3 -ember-spin-spinner v0.2.3 -ember-truth-helpers v1.2.0 -jquery v2.1.4 -jquery-ui v1.11.4 -loader.js v3.3.0 -momentjs v2.10.6 -qunit v1.19.0 -select2 v4.0.0 -snippet-ss v1.11.0 -spin.js v2.3.2 -Azure Data Lake Store - Java client SDK 2.0.11 -JCodings 1.0.8 -Joni 2.1.2 -Mockito 1.8.5 -JUL to SLF4J bridge 1.7.25 -SLF4J API Module 1.7.25 -SLF4J LOG4J-12 Binding 1.7.25 --------------------------------------------------------------------------------- - -The MIT License (MIT) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - -For: -./hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/nvd3-1.8.5.* (css and js files) --------------------------------------------------------------------------------- -Copyright (c) 2011-2014 Novus Partners, Inc. - -Licensed 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. - - - -For: -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/angular-nvd3-1.0.9.min.js --------------------------------------------------------------------------------- -The MIT License (MIT) -Copyright (c) 2014 Konstantin Skipor - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software -and associated documentation files (the "Software"), to deal in the Software without restriction, -including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT -LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE -OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - -For: -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/angular-1.6.4.min.js -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/angular-route-1.6.4.min.js --------------------------------------------------------------------------------- -The MIT License - -Copyright (c) 2010-2017 Google, Inc. http://angularjs.org - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - - - -For: -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/jquery-3.3.1.min.js -hadoop-tools/hadoop-sls/src/main/html/js/thirdparty/jquery.js -hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/webapps/static/jquery -Apache HBase - Server which contains JQuery minified javascript library version 1.8.3 -Microsoft JDBC Driver for SQLServer - version 6.2.1.jre7 --------------------------------------------------------------------------------- - -MIT License - -Copyright (c) 2003-2017 Optimatika - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -For: -oj! Algorithms - version 43.0 --------------------------------------------------------------------------------- - -Copyright 2005, 2012, 2013 jQuery Foundation and other contributors, https://jquery.org/ - -This software consists of voluntary contributions made by many -individuals. For exact contribution history, see the revision history -available at https://github.com/jquery/jquery - -The following license applies to all parts of this software except as -documented below: - -==== - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -==== - -All files located in the node_modules and external directories are -externally maintained libraries used by this software which have their -own licenses; we recommend you read them, as their terms may differ from -the terms above. - -For: -hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/resources/webapps/static/jt/jquery.jstree.js --------------------------------------------------------------------------------- - -Copyright (c) 2014 Ivan Bozhanov - -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -For: -hadoop-tools/hadoop-sls/src/main/html/js/thirdparty/d3.v3.js -hadoop-hdfs-project/hadoop-hdfs/src/main/webapps/static/d3-3.5.17.min.js --------------------------------------------------------------------------------- - -D3 is available under a 3-clause BSD license. For details, see: -hadoop-tools/hadoop-sls/src/main/html/js/thirdparty/d3-LICENSE - -The binary distribution of this product bundles these dependencies under the -following license: -HSQLDB Database 2.3.4 --------------------------------------------------------------------------------- -(HSQL License) -"COPYRIGHTS AND LICENSES (based on BSD License) - -For work developed by the HSQL Development Group: - -Copyright (c) 2001-2016, The HSQL Development Group -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -Redistributions of source code must retain the above copyright notice, this -list of conditions and the following disclaimer. - -Redistributions in binary form must reproduce the above copyright notice, -this list of conditions and the following disclaimer in the documentation -and/or other materials provided with the distribution. - -Neither the name of the HSQL Development Group nor the names of its -contributors may be used to endorse or promote products derived from this -software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ""AS IS"" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL HSQL DEVELOPMENT GROUP, HSQLDB.ORG, -OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -For work originally developed by the Hypersonic SQL Group: - -Copyright (c) 1995-2000 by the Hypersonic SQL Group. -All rights reserved. -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -Redistributions of source code must retain the above copyright notice, this -list of conditions and the following disclaimer. - -Redistributions in binary form must reproduce the above copyright notice, -this list of conditions and the following disclaimer in the documentation -and/or other materials provided with the distribution. - -Neither the name of the Hypersonic SQL Group nor the names of its -contributors may be used to endorse or promote products derived from this -software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ""AS IS"" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE HYPERSONIC SQL GROUP, -OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -This software consists of voluntary contributions made by many individuals on behalf of the -Hypersonic SQL Group." - -The binary distribution of this product bundles these dependencies under the -following license: -Java Servlet API 3.1.0 -servlet-api 2.5 -jsp-api 2.1 -jsr311-api 1.1.1 -Glassfish Jasper 6.1.14 -Servlet Specification 2.5 API 6.1.14 --------------------------------------------------------------------------------- -(CDDL 1.0) -COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0 -1. Definitions.  - -1.1. Contributor means each individual or entity -that creates or contributes to the creation of -Modifications.  - -1.2. Contributor Version means the combination of the -Original Software, prior Modifications used by a Contributor (if any), and the -Modifications made by that particular Contributor.  - -1.3. Covered -Software means (a) the Original Software, or (b) Modifications, or (c) the -combination of files containing Original Software with files containing -Modifications, in each case including portions -thereof.  - -1.4. Executable means the Covered Software in any form other -than Source Code.  - -1.5. Initial Developer means the individual or entity -that first makes Original Software available under this -License.  - -1.6. Larger Work means a work which combines Covered Software or -portions thereof with code not governed by the terms of this -License.  - -1.7. License means this document.  - -1.8. Licensable means -having the right to grant, to the maximum extent possible, whether at the time -of the initial grant or subsequently acquired, any and all of the rights -conveyed herein.  - -1.9. Modifications means the Source Code and Executable -form of any of the following: -A. Any file that results from an addition to, -deletion from or modification of the contents of a file containing Original -Software or previous Modifications; -B. Any new file that contains any part of the Original Software -or previous Modification; or -C. Any new file that is contributed or otherwise made available -under the terms of this License.  - -1.10. Original Software means the Source Code and Executable form of -computer software code that is originally released under this License.  - -1.11. Patent Claims means any patent claim(s), now owned or -hereafter acquired, including without limitation, method, process, and apparatus -claims, in any patent Licensable by grantor.  - -1.12. Source Code means (a) the common form of computer software code in which -modifications are made and (b) associated documentation included in or -with such code.  - -1.13. You (or Your) means an individual or a legal entity exercising rights -under, and complying with all of the terms of, this License. For legal entities, -You includes any entity which controls, is controlled by, or is under common control -with You. For purposes of this definition, control means (a) the power, direct -or indirect, to cause the direction or management of such entity, whether by -contract or otherwise, or (b) ownership of more than fifty percent (50%) of the -outstanding shares or beneficial ownership of such entity.  - -2. License Grants. - -2.1. The Initial Developer Grant. Conditioned upon Your compliance -with Section 3.1 below and subject to third party intellectual property claims, -the Initial Developer hereby grants You a world-wide, royalty-free, -non-exclusive license:  - -(a) under intellectual property rights (other than -patent or trademark) Licensable by Initial Developer, to use, reproduce, modify, -display, perform, sublicense and distribute the Original Software (or portions -thereof), with or without Modifications, and/or as part of a Larger Work; -and  - -(b) under Patent Claims infringed by the making, using or selling of -Original Software, to make, have made, use, practice, sell, and offer for sale, -and/or otherwise dispose of the Original Software (or portions -thereof); - -(c) The licenses granted in Sections 2.1(a) and (b) are -effective on the date Initial Developer first distributes or otherwise makes the -Original Software available to a third party under the terms of this -License; - -(d) Notwithstanding Section 2.1(b) above, no patent license is -granted: (1) for code that You delete from the Original Software, or (2) for -infringements caused by: (i) the modification of the Original Software, or -(ii) the combination of the Original Software with other software or -devices.  - -2.2. Contributor Grant. Conditioned upon Your compliance with -Section 3.1 below and subject to third party intellectual property claims, each -Contributor hereby grants You a world-wide, royalty-free, non-exclusive -license:  - -(a) under intellectual property rights (other than patent or -trademark) Licensable by Contributor to use, reproduce, modify, display, -perform, sublicense and distribute the Modifications created by such Contributor -(or portions thereof), either on an unmodified basis, with other Modifications, -as Covered Software and/or as part of a Larger Work; and  - -(b) under Patent -Claims infringed by the making, using, or selling of Modifications made by that -Contributor either alone and/or in combination with its Contributor Version (or -portions of such combination), to make, use, sell, offer for sale, have made, -and/or otherwise dispose of: (1) Modifications made by that Contributor (or -portions thereof); and (2) the combination of Modifications made by that -Contributor with its Contributor Version (or portions of such -combination).  - -(c) The licenses granted in Sections 2.2(a) and 2.2(b) are -effective on the date Contributor first distributes or otherwise makes the -Modifications available to a third party. - -(d) Notwithstanding Section 2.2(b) -above, no patent license is granted: (1) for any code that Contributor has -deleted from the Contributor Version; (2) for infringements caused by: -(i) third party modifications of Contributor Version, or (ii) the combination -of Modifications made by that Contributor with other software (except as part of -the Contributor Version) or other devices; or (3) under Patent Claims infringed -by Covered Software in the absence of Modifications made by that -Contributor.  - -3. Distribution Obligations.  - -3.1. Availability of Source -Code. Any Covered Software that You distribute or otherwise make available in -Executable form must also be made available in Source Code form and that Source -Code form must be distributed only under the terms of this License. You must -include a copy of this License with every copy of the Source Code form of the -Covered Software You distribute or otherwise make available. You must inform -recipients of any such Covered Software in Executable form as to how they can -obtain such Covered Software in Source Code form in a reasonable manner on or -through a medium customarily used for software exchange.  - -3.2. -Modifications. The Modifications that You create or to which You contribute are -governed by the terms of this License. You represent that You believe Your -Modifications are Your original creation(s) and/or You have sufficient rights to -grant the rights conveyed by this License.  - -3.3. Required Notices. You must -include a notice in each of Your Modifications that identifies You as the -Contributor of the Modification. You may not remove or alter any copyright, -patent or trademark notices contained within the Covered Software, or any -notices of licensing or any descriptive text giving attribution to any -Contributor or the Initial Developer.  - -3.4. Application of Additional Terms. -You may not offer or impose any terms on any Covered Software in Source Code -form that alters or restricts the applicable version of this License or the -recipients rights hereunder. You may choose to offer, and to charge a fee for, -warranty, support, indemnity or liability obligations to one or more recipients -of Covered Software. However, you may do so only on Your own behalf, and not on -behalf of the Initial Developer or any Contributor. You must make it absolutely -clear that any such warranty, support, indemnity or liability obligation is -offered by You alone, and You hereby agree to indemnify the Initial Developer -and every Contributor for any liability incurred by the Initial Developer or -such Contributor as a result of warranty, support, indemnity or liability terms -You offer. - -3.5. Distribution of Executable Versions. You may distribute the -Executable form of the Covered Software under the terms of this License or under -the terms of a license of Your choice, which may contain terms different from -this License, provided that You are in compliance with the terms of this License -and that the license for the Executable form does not attempt to limit or alter -the recipients rights in the Source Code form from the rights set forth in this -License. If You distribute the Covered Software in Executable form under a -different license, You must make it absolutely clear that any terms which differ -from this License are offered by You alone, not by the Initial Developer or -Contributor. You hereby agree to indemnify the Initial Developer and every -Contributor for any liability incurred by the Initial Developer or such -Contributor as a result of any such terms You offer.  - -3.6. Larger Works. You -may create a Larger Work by combining Covered Software with other code not -governed by the terms of this License and distribute the Larger Work as a single -product. In such a case, You must make sure the requirements of this License are -fulfilled for the Covered Software.  - -4. Versions of the License.  - -4.1. -New Versions. Sun Microsystems, Inc. is the initial license steward and may -publish revised and/or new versions of this License from time to time. Each -version will be given a distinguishing version number. Except as provided in -Section 4.3, no one other than the license steward has the right to modify this -License.  - -4.2. Effect of New Versions. You may always continue to use, -distribute or otherwise make the Covered Software available under the terms of -the version of the License under which You originally received the Covered -Software. If the Initial Developer includes a notice in the Original Software -prohibiting it from being distributed or otherwise made available under any -subsequent version of the License, You must distribute and make the Covered -Software available under the terms of the version of the License under which You -originally received the Covered Software. Otherwise, You may also choose to use, -distribute or otherwise make the Covered Software available under the terms of -any subsequent version of the License published by the license -steward.  - -4.3. Modified Versions. When You are an Initial Developer and You -want to create a new license for Your Original Software, You may create and use -a modified version of this License if You: (a) rename the license and remove -any references to the name of the license steward (except to note that the -license differs from this License); and (b) otherwise make it clear that the -license contains terms which differ from this License.  - -5. DISCLAIMER OF WARRANTY. - -COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN AS IS BASIS, -WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT -LIMITATION, WARRANTIES THAT THE COVERED SOFTWARE IS FREE OF DEFECTS, -MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY -COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER -OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR -CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS -LICENSE. NO USE OF ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER -THIS DISCLAIMER.  - -6. TERMINATION.  - -6.1. This License and the rights -granted hereunder will terminate automatically if You fail to comply with terms -herein and fail to cure such breach within 30 days of becoming aware of the -breach. Provisions which, by their nature, must remain in effect beyond the -termination of this License shall survive.  - -6.2. If You assert a patent -infringement claim (excluding declaratory judgment actions) against Initial -Developer or a Contributor (the Initial Developer or Contributor against whom -You assert such claim is referred to as Participant) alleging that the -Participant Software (meaning the Contributor Version where the Participant is a -Contributor or the Original Software where the Participant is the Initial -Developer) directly or indirectly infringes any patent, then any and all rights -granted directly or indirectly to You by such Participant, the Initial Developer -(if the Initial Developer is not the Participant) and all Contributors under -Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from -Participant terminate prospectively and automatically at the expiration of such -60 day notice period, unless if within such 60 day period You withdraw Your -claim with respect to the Participant Software against such Participant either -unilaterally or pursuant to a written agreement with Participant.  - -6.3. In -the event of termination under Sections 6.1 or 6.2 above, all end user licenses -that have been validly granted by You or any distributor hereunder prior to -termination (excluding licenses granted to You by any distributor) shall survive -termination.  - -7. LIMITATION OF LIABILITY. -UNDER NO CIRCUMSTANCES AND UNDER -NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, -SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF -COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY -PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY -CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF -GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER -COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE -POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO -LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTYS NEGLIGENCE TO -THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT -ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO -THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.  - -8. U.S. GOVERNMENT END USERS. - -The Covered Software is a commercial item, as that term is defined in -48 C.F.R. 2.101 (Oct. 1995), consisting of commercial computer software (as -that term is defined at 48 C.F.R.  252.227-7014(a)(1)) and commercial computer -software documentation as such terms are used in 48 C.F.R. 12.212 (Sept. -1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through -227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Software -with only those rights set forth herein. This U.S. Government Rights clause is -in lieu of, and supersedes, any other FAR, DFAR, or other clause or provision -that addresses Government rights in computer software under this -License.  - -9. MISCELLANEOUS. -This License represents the complete agreement -concerning subject matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent necessary to -make it enforceable. This License shall be governed by the law of the -jurisdiction specified in a notice contained within the Original Software -(except to the extent applicable law, if any, provides otherwise), excluding -such jurisdictions conflict-of-law provisions. Any litigation relating to this -License shall be subject to the jurisdiction of the courts located in the -jurisdiction and venue specified in a notice contained within the Original -Software, with the losing party responsible for costs, including, without -limitation, court costs and reasonable attorneys fees and expenses. The -application of the United Nations Convention on Contracts for the International -Sale of Goods is expressly excluded. Any law or regulation which provides that -the language of a contract shall be construed against the drafter shall not -apply to this License. You agree that You alone are responsible for compliance -with the United States export administration regulations (and the export control -laws and regulation of any other countries) when You use, distribute or -otherwise make available any Covered Software.  - -10. RESPONSIBILITY FOR CLAIMS. -As between Initial Developer and the Contributors, each party is -responsible for claims and damages arising, directly or indirectly, out of its -utilization of rights under this License and You agree to work with Initial -Developer and Contributors to distribute such responsibility on an equitable -basis. Nothing herein is intended or shall be deemed to constitute any admission -of liability.  - -The binary distribution of this product bundles these dependencies under the -following license: -jersey-client 1.19 -jersey-core 1.19 -jersey-grizzly2 1.19 -jersey-grizzly2-servlet 1.19 -jersey-json 1.19 -jersey-server 1.19 -jersey-servlet 1.19 -jersey-guice 1.19 -Jersey Test Framework - Grizzly 2 Module 1.19 -JAXB RI 2.2.3 -Java Architecture for XML Binding 2.2.11 -grizzly-framework 2.2.21 -grizzly-http 2.2.21 -grizzly-http-server 2.2.21 -grizzly-http-servlet 2.2.21 -grizzly-rcm 2.2.21 -JavaBeans Activation Framework 1.2.0 --------------------------------------------------------------------------------- -(CDDL 1.1) -COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL)Version 1.1 - -1. Definitions. - -1.1. “Contributor” means each individual or entity that creates or -contributes to the creation of Modifications. -1.2. “Contributor Version” means the combination of the Original Software, -prior Modifications used by a Contributor (if any), and the Modifications made -by that particular Contributor. -1.3. “Covered Software” means (a) the Original Software, or (b) -Modifications, or (c) the combination of files containing Original Software with -files containing Modifications, in each case including portions thereof. -1.4. “Executable” means the Covered Software in any form other than Source -Code. -1.5. “Initial Developer” means the individual or entity that first makes -Original Software available under this License. -1.6. “Larger Work” means a work which combines Covered Software or portions -thereof with code not governed by the terms of this License. -1.7. “License” means this document. -1.8. “Licensable” means having the right to grant, to the maximum extent -possible, whether at the time of the initial grant or subsequently acquired, any -and all of the rights conveyed herein. -1.9. “Modifications” means the Source Code and Executable form of any of the -following: -A. Any file that results from an addition to, deletion from or modification of -the contents of a file containing Original Software or previous Modifications; -B. Any new file that contains any part of the Original Software or previous -Modification; or -C. Any new file that is contributed or otherwise made available under the terms -of this License. -1.10. “Original Software” means the Source Code and Executable form of -computer software code that is originally released under this License. -1.11. “Patent Claims” means any patent claim(s), now owned or hereafter -acquired, including without limitation, method, process, and apparatus claims, -in any patent Licensable by grantor. -1.12. “Source Code” means (a) the common form of computer software code in -which modifications are made and (b) associated documentation included in or -with such code. -1.13. “You” (or “Your”) means an individual or a legal entity exercising -rights under, and complying with all of the terms of, this License. For legal -entities, “You” includes any entity which controls, is controlled by, or is -under common control with You. For purposes of this definition, “control” -means (a) the power, direct or indirect, to cause the direction or management of -such entity, whether by contract or otherwise, or (b) ownership of more than -fifty percent (50%) of the outstanding shares or beneficial ownership of such -entity. - -2. License Grants. - -2.1. The Initial Developer Grant. - -Conditioned upon Your compliance with Section 3.1 below and subject to -third party intellectual property claims, the Initial Developer hereby grants -You a world-wide, royalty-free, non-exclusive license: -(a) under intellectual -property rights (other than patent or trademark) Licensable by Initial -Developer, to use, reproduce, modify, display, perform, sublicense and -distribute the Original Software (or portions thereof), with or without -Modifications, and/or as part of a Larger Work; and -(b) under Patent Claims -infringed by the making, using or selling of Original Software, to make, have -made, use, practice, sell, and offer for sale, and/or otherwise dispose of the -Original Software (or portions thereof). -(c) The licenses granted in Sections -2.1(a) and (b) are effective on the date Initial Developer first distributes or -otherwise makes the Original Software available to a third party under the terms -of this License. -(d) Notwithstanding Section 2.1(b) above, no patent license is -granted: (1) for code that You delete from the Original Software, or (2) for -infringements caused by: (i) the modification of the Original Software, or (ii) -the combination of the Original Software with other software or devices. - -2.2. Contributor Grant. - -Conditioned upon Your compliance with Section 3.1 below and -subject to third party intellectual property claims, each Contributor hereby -grants You a world-wide, royalty-free, non-exclusive license: -(a) under -intellectual property rights (other than patent or trademark) Licensable by -Contributor to use, reproduce, modify, display, perform, sublicense and -distribute the Modifications created by such Contributor (or portions thereof), -either on an unmodified basis, with other Modifications, as Covered Software -and/or as part of a Larger Work; and -(b) under Patent Claims infringed by the -making, using, or selling of Modifications made by that Contributor either alone -and/or in combination with its Contributor Version (or portions of such -combination), to make, use, sell, offer for sale, have made, and/or otherwise -dispose of: (1) Modifications made by that Contributor (or portions thereof); -and (2) the combination of Modifications made by that Contributor with its -Contributor Version (or portions of such combination). -(c) The licenses granted -in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first -distributes or otherwise makes the Modifications available to a third -party. -(d) Notwithstanding Section 2.2(b) above, no patent license is granted: -(1) for any code that Contributor has deleted from the Contributor Version; (2) -for infringements caused by: (i) third party modifications of Contributor -Version, or (ii) the combination of Modifications made by that Contributor with -other software (except as part of the Contributor Version) or other devices; or -(3) under Patent Claims infringed by Covered Software in the absence of -Modifications made by that Contributor. - -3. Distribution Obligations. - -3.1. Availability of Source Code. -Any Covered Software that You distribute or -otherwise make available in Executable form must also be made available in -Source Code form and that Source Code form must be distributed only under the -terms of this License. You must include a copy of this License with every copy -of the Source Code form of the Covered Software You distribute or otherwise make -available. You must inform recipients of any such Covered Software in Executable -form as to how they can obtain such Covered Software in Source Code form in a -reasonable manner on or through a medium customarily used for software -exchange. -3.2. Modifications. -The Modifications that You create or to which -You contribute are governed by the terms of this License. You represent that You -believe Your Modifications are Your original creation(s) and/or You have -sufficient rights to grant the rights conveyed by this License. -3.3. Required Notices. -You must include a notice in each of Your Modifications that -identifies You as the Contributor of the Modification. You may not remove or -alter any copyright, patent or trademark notices contained within the Covered -Software, or any notices of licensing or any descriptive text giving attribution -to any Contributor or the Initial Developer. -3.4. Application of Additional Terms. -You may not offer or impose any terms on any Covered Software in Source -Code form that alters or restricts the applicable version of this License or the -recipients' rights hereunder. You may choose to offer, and to charge a fee for, -warranty, support, indemnity or liability obligations to one or more recipients -of Covered Software. However, you may do so only on Your own behalf, and not on -behalf of the Initial Developer or any Contributor. You must make it absolutely -clear that any such warranty, support, indemnity or liability obligation is -offered by You alone, and You hereby agree to indemnify the Initial Developer -and every Contributor for any liability incurred by the Initial Developer or -such Contributor as a result of warranty, support, indemnity or liability terms -You offer. -3.5. Distribution of Executable Versions. -You may distribute the -Executable form of the Covered Software under the terms of this License or under -the terms of a license of Your choice, which may contain terms different from -this License, provided that You are in compliance with the terms of this License -and that the license for the Executable form does not attempt to limit or alter -the recipient's rights in the Source Code form from the rights set forth in -this License. If You distribute the Covered Software in Executable form under a -different license, You must make it absolutely clear that any terms which differ -from this License are offered by You alone, not by the Initial Developer or -Contributor. You hereby agree to indemnify the Initial Developer and every -Contributor for any liability incurred by the Initial Developer or such -Contributor as a result of any such terms You offer. -3.6. Larger Works. -You -may create a Larger Work by combining Covered Software with other code not -governed by the terms of this License and distribute the Larger Work as a single -product. In such a case, You must make sure the requirements of this License are -fulfilled for the Covered Software. - -4. Versions of the License. - -4.1. New Versions. -Oracle is the initial license steward and may publish revised and/or -new versions of this License from time to time. Each version will be given a -distinguishing version number. Except as provided in Section 4.3, no one other -than the license steward has the right to modify this License. -4.2. Effect of New Versions. -You may always continue to use, distribute or otherwise make the -Covered Software available under the terms of the version of the License under -which You originally received the Covered Software. If the Initial Developer -includes a notice in the Original Software prohibiting it from being distributed -or otherwise made available under any subsequent version of the License, You -must distribute and make the Covered Software available under the terms of the -version of the License under which You originally received the Covered Software. -Otherwise, You may also choose to use, distribute or otherwise make the Covered -Software available under the terms of any subsequent version of the License -published by the license steward. -4.3. Modified Versions. -When You are an -Initial Developer and You want to create a new license for Your Original -Software, You may create and use a modified version of this License if You: (a) -rename the license and remove any references to the name of the license steward -(except to note that the license differs from this License); and (b) otherwise -make it clear that the license contains terms which differ from this -License. - -5. DISCLAIMER OF WARRANTY. - -COVERED SOFTWARE IS PROVIDED UNDER THIS -LICENSE ON AN “AS IS” BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED SOFTWARE -IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR -NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED -SOFTWARE IS WITH YOU. SHOULD ANY COVERED SOFTWARE PROVE DEFECTIVE IN ANY -RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE -COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF -WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED -SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. - -6. TERMINATION. - -6.1. This License and the rights granted hereunder will -terminate automatically if You fail to comply with terms herein and fail to cure -such breach within 30 days of becoming aware of the breach. Provisions which, by -their nature, must remain in effect beyond the termination of this License shall -survive. -6.2. If You assert a patent infringement claim (excluding declaratory -judgment actions) against Initial Developer or a Contributor (the Initial -Developer or Contributor against whom You assert such claim is referred to as -“Participant”) alleging that the Participant Software (meaning the -Contributor Version where the Participant is a Contributor or the Original -Software where the Participant is the Initial Developer) directly or indirectly -infringes any patent, then any and all rights granted directly or indirectly to -You by such Participant, the Initial Developer (if the Initial Developer is not -the Participant) and all Contributors under Sections 2.1 and/or 2.2 of this -License shall, upon 60 days notice from Participant terminate prospectively and -automatically at the expiration of such 60 day notice period, unless if within -such 60 day period You withdraw Your claim with respect to the Participant -Software against such Participant either unilaterally or pursuant to a written -agreement with Participant. -6.3. If You assert a patent infringement claim -against Participant alleging that the Participant Software directly or -indirectly infringes any patent where such claim is resolved (such as by license -or settlement) prior to the initiation of patent infringement litigation, then -the reasonable value of the licenses granted by such Participant under Sections -2.1 or 2.2 shall be taken into account in determining the amount or value of any -payment or license. -6.4. In the event of termination under Sections 6.1 or 6.2 -above, all end user licenses that have been validly granted by You or any -distributor hereunder prior to termination (excluding licenses granted to You by -any distributor) shall survive termination. - -7. LIMITATION OF LIABILITY. - -UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT -(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL -DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED SOFTWARE, OR ANY -SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, -SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, -WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER -FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN -IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS -LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL -INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW -PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR -LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND -LIMITATION MAY NOT APPLY TO YOU. - -8. U.S. GOVERNMENT END USERS. - -The Covered -Software is a “commercial item,” as that term is defined in 48 C.F.R. 2.101 -(Oct. 1995), consisting of “commercial computer software” (as that term is -defined at 48 C.F.R. § 252.227-7014(a)(1)) and “commercial computer software -documentation” as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). -Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 -(June 1995), all U.S. Government End Users acquire Covered Software with only -those rights set forth herein. This U.S. Government Rights clause is in lieu of, -and supersedes, any other FAR, DFAR, or other clause or provision that addresses -Government rights in computer software under this License. - -9. MISCELLANEOUS. - -This License represents the complete agreement concerning -subject matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent necessary to -make it enforceable. This License shall be governed by the law of the -jurisdiction specified in a notice contained within the Original Software -(except to the extent applicable law, if any, provides otherwise), excluding -such jurisdiction's conflict-of-law provisions. Any litigation relating to this -License shall be subject to the jurisdiction of the courts located in the -jurisdiction and venue specified in a notice contained within the Original -Software, with the losing party responsible for costs, including, without -limitation, court costs and reasonable attorneys' fees and expenses. The -application of the United Nations Convention on Contracts for the International -Sale of Goods is expressly excluded. Any law or regulation which provides that -the language of a contract shall be construed against the drafter shall not -apply to this License. You agree that You alone are responsible for compliance -with the United States export administration regulations (and the export control -laws and regulation of any other countries) when You use, distribute or -otherwise make available any Covered Software. - -10. RESPONSIBILITY FOR CLAIMS. - -As between Initial Developer and the Contributors, each party is -responsible for claims and damages arising, directly or indirectly, out of its -utilization of rights under this License and You agree to work with Initial -Developer and Contributors to distribute such responsibility on an equitable -basis. Nothing herein is intended or shall be deemed to constitute any admission -of liability. - -The binary distribution of this product bundles these dependencies under the -following license: -Protocol Buffer Java API 2.5.0 --------------------------------------------------------------------------------- -This license applies to all parts of Protocol Buffers except the following: - - - Atomicops support for generic gcc, located in - src/google/protobuf/stubs/atomicops_internals_generic_gcc.h. - This file is copyrighted by Red Hat Inc. - - - Atomicops support for AIX/POWER, located in - src/google/protobuf/stubs/atomicops_internals_power.h. - This file is copyrighted by Bloomberg Finance LP. - -Copyright 2014, Google Inc. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -Code generated by the Protocol Buffer compiler is owned by the owner -of the input file used when generating it. This code is not -standalone and requires a support library to be linked with it. This -support library is itself covered by the above license. - -For: -XML Commons External Components XML APIs 1.3.04 --------------------------------------------------------------------------------- -By obtaining, using and/or copying this work, you (the licensee) agree that you -have read, understood, and will comply with the following terms and conditions. - -Permission to copy, modify, and distribute this software and its documentation, -with or without modification, for any purpose and without fee or royalty is -hereby granted, provided that you include the following on ALL copies of the -software and documentation or portions thereof, including modifications: -- The full text of this NOTICE in a location viewable to users of the -redistributed or derivative work. -- Any pre-existing intellectual property disclaimers, notices, or terms and -conditions. If none exist, the W3C Software Short Notice should be included -(hypertext is preferred, text is permitted) within the body of any redistributed -or derivative code. -- Notice of any changes or modifications to the files, including the date changes -were made. (We recommend you provide URIs to the location from which the code is -derived.) - -The binary distribution of this product bundles these dependencies under the -following license: -JUnit 4.11 -Eclipse JDT Core 3.1.1 --------------------------------------------------------------------------------- -(EPL v1.0) -Eclipse Public License - v 1.0 - -THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC -LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM -CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. - -1. DEFINITIONS - -"Contribution" means: - -a) in the case of the initial Contributor, the initial code and documentation -distributed under this Agreement, and -b) in the case of each subsequent Contributor: -i) changes to the Program, and -ii) additions to the Program; -where such changes and/or additions to the Program originate from and are -distributed by that particular Contributor. A Contribution 'originates' from a -Contributor if it was added to the Program by such Contributor itself or anyone -acting on such Contributor's behalf. Contributions do not include additions to -the Program which: (i) are separate modules of software distributed in -conjunction with the Program under their own license agreement, and (ii) are not -derivative works of the Program. -"Contributor" means any person or entity that distributes the Program. - -"Licensed Patents" mean patent claims licensable by a Contributor which are -necessarily infringed by the use or sale of its Contribution alone or when -combined with the Program. - -"Program" means the Contributions distributed in accordance with this Agreement. - -"Recipient" means anyone who receives the Program under this Agreement, -including all Contributors. - -2. GRANT OF RIGHTS - -a) Subject to the terms of this Agreement, each Contributor hereby grants -Recipient a non-exclusive, worldwide, royalty-free copyright license to -reproduce, prepare derivative works of, publicly display, publicly perform, -distribute and sublicense the Contribution of such Contributor, if any, and such -derivative works, in source code and object code form. -b) Subject to the terms of this Agreement, each Contributor hereby grants -Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed -Patents to make, use, sell, offer to sell, import and otherwise transfer the -Contribution of such Contributor, if any, in source code and object code form. -This patent license shall apply to the combination of the Contribution and the -Program if, at the time the Contribution is added by the Contributor, such -addition of the Contribution causes such combination to be covered by the -Licensed Patents. The patent license shall not apply to any other combinations -which include the Contribution. No hardware per se is licensed hereunder. -c) Recipient understands that although each Contributor grants the licenses to -its Contributions set forth herein, no assurances are provided by any -Contributor that the Program does not infringe the patent or other intellectual -property rights of any other entity. Each Contributor disclaims any liability to -Recipient for claims brought by any other entity based on infringement of -intellectual property rights or otherwise. As a condition to exercising the -rights and licenses granted hereunder, each Recipient hereby assumes sole -responsibility to secure any other intellectual property rights needed, if any. -For example, if a third party patent license is required to allow Recipient to -distribute the Program, it is Recipient's responsibility to acquire that license -before distributing the Program. -d) Each Contributor represents that to its knowledge it has sufficient copyright -rights in its Contribution, if any, to grant the copyright license set forth in -this Agreement. -3. REQUIREMENTS - -A Contributor may choose to distribute the Program in object code form under its -own license agreement, provided that: - -a) it complies with the terms and conditions of this Agreement; and -b) its license agreement: -i) effectively disclaims on behalf of all Contributors all warranties and -conditions, express and implied, including warranties or conditions of title and -non-infringement, and implied warranties or conditions of merchantability and -fitness for a particular purpose; -ii) effectively excludes on behalf of all Contributors all liability for -damages, including direct, indirect, special, incidental and consequential -damages, such as lost profits; -iii) states that any provisions which differ from this Agreement are offered by -that Contributor alone and not by any other party; and -iv) states that source code for the Program is available from such Contributor, -and informs licensees how to obtain it in a reasonable manner on or through a -medium customarily used for software exchange. -When the Program is made available in source code form: - -a) it must be made available under this Agreement; and -b) a copy of this Agreement must be included with each copy of the Program. -Contributors may not remove or alter any copyright notices contained within the -Program. - -Each Contributor must identify itself as the originator of its Contribution, if -any, in a manner that reasonably allows subsequent Recipients to identify the -originator of the Contribution. - -4. COMMERCIAL DISTRIBUTION - -Commercial distributors of software may accept certain responsibilities with -respect to end users, business partners and the like. While this license is -intended to facilitate the commercial use of the Program, the Contributor who -includes the Program in a commercial product offering should do so in a manner -which does not create potential liability for other Contributors. Therefore, if -a Contributor includes the Program in a commercial product offering, such -Contributor ("Commercial Contributor") hereby agrees to defend and indemnify -every other Contributor ("Indemnified Contributor") against any losses, damages -and costs (collectively "Losses") arising from claims, lawsuits and other legal -actions brought by a third party against the Indemnified Contributor to the -extent caused by the acts or omissions of such Commercial Contributor in -connection with its distribution of the Program in a commercial product -offering. The obligations in this section do not apply to any claims or Losses -relating to any actual or alleged intellectual property infringement. In order -to qualify, an Indemnified Contributor must: a) promptly notify the Commercial -Contributor in writing of such claim, and b) allow the Commercial Contributor to -control, and cooperate with the Commercial Contributor in, the defense and any -related settlement negotiations. The Indemnified Contributor may participate in -any such claim at its own expense. - -For example, a Contributor might include the Program in a commercial product -offering, Product X. That Contributor is then a Commercial Contributor. If that -Commercial Contributor then makes performance claims, or offers warranties -related to Product X, those performance claims and warranties are such -Commercial Contributor's responsibility alone. Under this section, the -Commercial Contributor would have to defend claims against the other -Contributors related to those performance claims and warranties, and if a court -requires any other Contributor to pay any damages as a result, the Commercial -Contributor must pay those damages. - -5. NO WARRANTY - -EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN -"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR -IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, -NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each -Recipient is solely responsible for determining the appropriateness of using and -distributing the Program and assumes all risks associated with its exercise of -rights under this Agreement , including but not limited to the risks and costs -of program errors, compliance with applicable laws, damage to or loss of data, -programs or equipment, and unavailability or interruption of operations. - -6. DISCLAIMER OF LIABILITY - -EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY -CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST -PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS -GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -7. GENERAL - -If any provision of this Agreement is invalid or unenforceable under applicable -law, it shall not affect the validity or enforceability of the remainder of the -terms of this Agreement, and without further action by the parties hereto, such -provision shall be reformed to the minimum extent necessary to make such -provision valid and enforceable. - -If Recipient institutes patent litigation against any entity (including a -cross-claim or counterclaim in a lawsuit) alleging that the Program itself -(excluding combinations of the Program with other software or hardware) -infringes such Recipient's patent(s), then such Recipient's rights granted under -Section 2(b) shall terminate as of the date such litigation is filed. - -All Recipient's rights under this Agreement shall terminate if it fails to -comply with any of the material terms or conditions of this Agreement and does -not cure such failure in a reasonable period of time after becoming aware of -such noncompliance. If all Recipient's rights under this Agreement terminate, -Recipient agrees to cease use and distribution of the Program as soon as -reasonably practicable. However, Recipient's obligations under this Agreement -and any licenses granted by Recipient relating to the Program shall continue and -survive. - -Everyone is permitted to copy and distribute copies of this Agreement, but in -order to avoid inconsistency the Agreement is copyrighted and may only be -modified in the following manner. The Agreement Steward reserves the right to -publish new versions (including revisions) of this Agreement from time to time. -No one other than the Agreement Steward has the right to modify this Agreement. -The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation -may assign the responsibility to serve as the Agreement Steward to a suitable -separate entity. Each new version of the Agreement will be given a -distinguishing version number. The Program (including Contributions) may always -be distributed subject to the version of the Agreement under which it was -received. In addition, after a new version of the Agreement is published, -Contributor may elect to distribute the Program (including its Contributions) -under the new version. Except as expressly stated in Sections 2(a) and 2(b) -above, Recipient receives no rights or licenses to the intellectual property of -any Contributor under this Agreement, whether expressly, by implication, -estoppel or otherwise. All rights in the Program not expressly granted under -this Agreement are reserved. - -This Agreement is governed by the laws of the State of New York and the -intellectual property laws of the United States of America. No party to this -Agreement will bring a legal action under this Agreement more than one year -after the cause of action arose. Each party waives its rights to a jury trial in -any resulting litigation. - -The binary distribution of this product bundles these dependencies under the -following license: -JSch 0.1.54 -ParaNamer Core 2.3 -JLine 0.9.94 -leveldbjni-all 1.8 -Hamcrest Core 1.3 -ASM Core 5.0.4 -ASM Commons 5.0.2 -ASM Tree 5.0.2 --------------------------------------------------------------------------------- -(3-clause BSD) -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of the nor the - names of its contributors may be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -The binary distribution of this product bundles these dependencies under the -following license: -FindBugs-jsr305 3.0.0 -dnsjava 2.1.7, Copyright (c) 1998-2011, Brian Wellington. All rights reserved. --------------------------------------------------------------------------------- -(2-clause BSD) -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -The views and conclusions contained in the software and documentation are those -of the authors and should not be interpreted as representing official policies, -either expressed or implied, of the FreeBSD Project. - -The binary distribution of this product bundles these dependencies under the -following license: -"Java Concurrency in Practice" book annotations 1.0 --------------------------------------------------------------------------------- -(CCAL v2.5) -THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS -PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR -OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS -LICENSE OR COPYRIGHT LAW IS PROHIBITED. - -BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE -BOUND BY THE TERMS OF THIS LICENSE. THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED -HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS. - -1. Definitions - -"Collective Work" means a work, such as a periodical issue, anthology or -encyclopedia, in which the Work in its entirety in unmodified form, along with a -number of other contributions, constituting separate and independent works in -themselves, are assembled into a collective whole. A work that constitutes a -Collective Work will not be considered a Derivative Work (as defined below) for -the purposes of this License. -"Derivative Work" means a work based upon the Work or upon the Work and other -pre-existing works, such as a translation, musical arrangement, dramatization, -fictionalization, motion picture version, sound recording, art reproduction, -abridgment, condensation, or any other form in which the Work may be recast, -transformed, or adapted, except that a work that constitutes a Collective Work -will not be considered a Derivative Work for the purpose of this License. For -the avoidance of doubt, where the Work is a musical composition or sound -recording, the synchronization of the Work in timed-relation with a moving image -("synching") will be considered a Derivative Work for the purpose of this -License. -"Licensor" means the individual or entity that offers the Work under the terms -of this License. -"Original Author" means the individual or entity who created the Work. -"Work" means the copyrightable work of authorship offered under the terms of -this License. -"You" means an individual or entity exercising rights under this License who has -not previously violated the terms of this License with respect to the Work, or -who has received express permission from the Licensor to exercise rights under -this License despite a previous violation. -2. Fair Use Rights. Nothing in this license is intended to reduce, limit, or -restrict any rights arising from fair use, first sale or other limitations on -the exclusive rights of the copyright owner under copyright law or other -applicable laws. - -3. License Grant. Subject to the terms and conditions of this License, Licensor -hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the -duration of the applicable copyright) license to exercise the rights in the Work -as stated below: - -to reproduce the Work, to incorporate the Work into one or more Collective -Works, and to reproduce the Work as incorporated in the Collective Works; -to create and reproduce Derivative Works; -to distribute copies or phonorecords of, display publicly, perform publicly, and -perform publicly by means of a digital audio transmission the Work including as -incorporated in Collective Works; -to distribute copies or phonorecords of, display publicly, perform publicly, and -perform publicly by means of a digital audio transmission Derivative Works. -For the avoidance of doubt, where the work is a musical composition: - -Performance Royalties Under Blanket Licenses. Licensor waives the exclusive -right to collect, whether individually or via a performance rights society (e.g. -ASCAP, BMI, SESAC), royalties for the public performance or public digital -performance (e.g. webcast) of the Work. -Mechanical Rights and Statutory Royalties. Licensor waives the exclusive right -to collect, whether individually or via a music rights agency or designated -agent (e.g. Harry Fox Agency), royalties for any phonorecord You create from the -Work ("cover version") and distribute, subject to the compulsory license created -by 17 USC Section 115 of the US Copyright Act (or the equivalent in other -jurisdictions). -Webcasting Rights and Statutory Royalties. For the avoidance of doubt, where the -Work is a sound recording, Licensor waives the exclusive right to collect, -whether individually or via a performance-rights society (e.g. SoundExchange), -royalties for the public digital performance (e.g. webcast) of the Work, subject -to the compulsory license created by 17 USC Section 114 of the US Copyright Act -(or the equivalent in other jurisdictions). -The above rights may be exercised in all media and formats whether now known or -hereafter devised. The above rights include the right to make such modifications -as are technically necessary to exercise the rights in other media and formats. -All rights not expressly granted by Licensor are hereby reserved. - -4. Restrictions.The license granted in Section 3 above is expressly made subject -to and limited by the following restrictions: - -You may distribute, publicly display, publicly perform, or publicly digitally -perform the Work only under the terms of this License, and You must include a -copy of, or the Uniform Resource Identifier for, this License with every copy or -phonorecord of the Work You distribute, publicly display, publicly perform, or -publicly digitally perform. You may not offer or impose any terms on the Work -that alter or restrict the terms of this License or the recipients' exercise of -the rights granted hereunder. You may not sublicense the Work. You must keep -intact all notices that refer to this License and to the disclaimer of -warranties. You may not distribute, publicly display, publicly perform, or -publicly digitally perform the Work with any technological measures that control -access or use of the Work in a manner inconsistent with the terms of this -License Agreement. The above applies to the Work as incorporated in a Collective -Work, but this does not require the Collective Work apart from the Work itself -to be made subject to the terms of this License. If You create a Collective -Work, upon notice from any Licensor You must, to the extent practicable, remove -from the Collective Work any credit as required by clause 4(b), as requested. If -You create a Derivative Work, upon notice from any Licensor You must, to the -extent practicable, remove from the Derivative Work any credit as required by -clause 4(b), as requested. -If you distribute, publicly display, publicly perform, or publicly digitally -perform the Work or any Derivative Works or Collective Works, You must keep -intact all copyright notices for the Work and provide, reasonable to the medium -or means You are utilizing: (i) the name of the Original Author (or pseudonym, -if applicable) if supplied, and/or (ii) if the Original Author and/or Licensor -designate another party or parties (e.g. a sponsor institute, publishing entity, -journal) for attribution in Licensor's copyright notice, terms of service or by -other reasonable means, the name of such party or parties; the title of the Work -if supplied; to the extent reasonably practicable, the Uniform Resource -Identifier, if any, that Licensor specifies to be associated with the Work, -unless such URI does not refer to the copyright notice or licensing information -for the Work; and in the case of a Derivative Work, a credit identifying the use -of the Work in the Derivative Work (e.g., "French translation of the Work by -Original Author," or "Screenplay based on original Work by Original Author"). -Such credit may be implemented in any reasonable manner; provided, however, that -in the case of a Derivative Work or Collective Work, at a minimum such credit -will appear where any other comparable authorship credit appears and in a manner -at least as prominent as such other comparable authorship credit. -5. Representations, Warranties and Disclaimer - -UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR OFFERS -THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING -THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT -LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR -PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, -OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME -JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH -EXCLUSION MAY NOT APPLY TO YOU. - -6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN -NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, -INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS -LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - -7. Termination - -This License and the rights granted hereunder will terminate automatically upon -any breach by You of the terms of this License. Individuals or entities who have -received Derivative Works or Collective Works from You under this License, -however, will not have their licenses terminated provided such individuals or -entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, -and 8 will survive any termination of this License. -Subject to the above terms and conditions, the license granted here is perpetual -(for the duration of the applicable copyright in the Work). Notwithstanding the -above, Licensor reserves the right to release the Work under different license -terms or to stop distributing the Work at any time; provided, however that any -such election will not serve to withdraw this License (or any other license that -has been, or is required to be, granted under the terms of this License), and -this License will continue in full force and effect unless terminated as stated -above. -8. Miscellaneous - -Each time You distribute or publicly digitally perform the Work or a Collective -Work, the Licensor offers to the recipient a license to the Work on the same -terms and conditions as the license granted to You under this License. -Each time You distribute or publicly digitally perform a Derivative Work, -Licensor offers to the recipient a license to the original Work on the same -terms and conditions as the license granted to You under this License. -If any provision of this License is invalid or unenforceable under applicable -law, it shall not affect the validity or enforceability of the remainder of the -terms of this License, and without further action by the parties to this -agreement, such provision shall be reformed to the minimum extent necessary to -make such provision valid and enforceable. -No term or provision of this License shall be deemed waived and no breach -consented to unless such waiver or consent shall be in writing and signed by the -party to be charged with such waiver or consent. -This License constitutes the entire agreement between the parties with respect -to the Work licensed here. There are no understandings, agreements or -representations with respect to the Work not specified here. Licensor shall not -be bound by any additional provisions that may appear in any communication from -You. This License may not be modified without the mutual written agreement of -the Licensor and You. - -The binary distribution of this product bundles these dependencies under the -following license: -jamon-runtime 2.4.1 --------------------------------------------------------------------------------- -(MPL 2.0) - Mozilla Public License - Version 2.0 - -1. Definitions - -1.1. “Contributor” -means each individual or legal entity that creates, contributes to the creation -of, or owns Covered Software. - -1.2. “Contributor Version” -means the combination of the Contributions of others (if any) used by a -Contributor and that particular Contributor’s Contribution. - -1.3. “Contribution” -means Covered Software of a particular Contributor. - -1.4. “Covered Software” -means Source Code Form to which the initial Contributor has attached the notice -in Exhibit A, the Executable Form of such Source Code Form, and Modifications of -such Source Code Form, in each case including portions thereof. - -1.5. “Incompatible With Secondary Licenses” -means - -that the initial Contributor has attached the notice described in Exhibit B to -the Covered Software; or - -that the Covered Software was made available under the terms of version 1.1 or -earlier of the License, but not also under the terms of a Secondary License. - -1.6. “Executable Form” -means any form of the work other than Source Code Form. - -1.7. “Larger Work” -means a work that combines Covered Software with other material, in a separate -file or files, that is not Covered Software. - -1.8. “License” -means this document. - -1.9. “Licensable” -means having the right to grant, to the maximum extent possible, whether at the -time of the initial grant or subsequently, any and all of the rights conveyed by -this License. - -1.10. “Modifications” -means any of the following: - -any file in Source Code Form that results from an addition to, deletion from, or -modification of the contents of Covered Software; or - -any new file in Source Code Form that contains any Covered Software. - -1.11. “Patent Claims” of a Contributor -means any patent claim(s), including without limitation, method, process, and -apparatus claims, in any patent Licensable by such Contributor that would be -infringed, but for the grant of the License, by the making, using, selling, -offering for sale, having made, import, or transfer of either its Contributions -or its Contributor Version. - -1.12. “Secondary License” -means either the GNU General Public License, Version 2.0, the GNU Lesser General -Public License, Version 2.1, the GNU Affero General Public License, Version 3.0, -or any later versions of those licenses. - -1.13. “Source Code Form” -means the form of the work preferred for making modifications. - -1.14. “You” (or “Your”) -means an individual or a legal entity exercising rights under this License. For -legal entities, “You” includes any entity that controls, is controlled by, -or is under common control with You. For purposes of this definition, -“control” means (a) the power, direct or indirect, to cause the direction or -management of such entity, whether by contract or otherwise, or (b) ownership of -more than fifty percent (50%) of the outstanding shares or beneficial ownership -of such entity. - -2. License Grants and Conditions - -2.1. Grants - -Each Contributor hereby grants You a world-wide, royalty-free, non-exclusive -license: - -under intellectual property rights (other than patent or trademark) Licensable -by such Contributor to use, reproduce, make available, modify, display, perform, -distribute, and otherwise exploit its Contributions, either on an unmodified -basis, with Modifications, or as part of a Larger Work; and - -under Patent Claims of such Contributor to make, use, sell, offer for sale, have -made, import, and otherwise transfer either its Contributions or its Contributor -Version. - -2.2. Effective Date - -The licenses granted in Section 2.1 with respect to any Contribution become -effective for each Contribution on the date the Contributor first distributes -such Contribution. - -2.3. Limitations on Grant Scope - -The licenses granted in this Section 2 are the only rights granted under this -License. No additional rights or licenses will be implied from the distribution -or licensing of Covered Software under this License. Notwithstanding Section -2.1(b) above, no patent license is granted by a Contributor: - -for any code that a Contributor has removed from Covered Software; or - -for infringements caused by: (i) Your and any other third party’s -modifications of Covered Software, or (ii) the combination of its Contributions -with other software (except as part of its Contributor Version); or - -under Patent Claims infringed by Covered Software in the absence of its -Contributions. - -This License does not grant any rights in the trademarks, service marks, or -logos of any Contributor (except as may be necessary to comply with the notice -requirements in Section 3.4). - -2.4. Subsequent Licenses - -No Contributor makes additional grants as a result of Your choice to distribute -the Covered Software under a subsequent version of this License (see Section -10.2) or under the terms of a Secondary License (if permitted under the terms of -Section 3.3). - -2.5. Representation - -Each Contributor represents that the Contributor believes its Contributions are -its original creation(s) or it has sufficient rights to grant the rights to its -Contributions conveyed by this License. - -2.6. Fair Use - -This License is not intended to limit any rights You have under applicable -copyright doctrines of fair use, fair dealing, or other equivalents. - -2.7. Conditions - -Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted in -Section 2.1. - -3. Responsibilities - -3.1. Distribution of Source Form - -All distribution of Covered Software in Source Code Form, including any -Modifications that You create or to which You contribute, must be under the -terms of this License. You must inform recipients that the Source Code Form of -the Covered Software is governed by the terms of this License, and how they can -obtain a copy of this License. You may not attempt to alter or restrict the -recipients’ rights in the Source Code Form. - -3.2. Distribution of Executable Form - -If You distribute Covered Software in Executable Form then: - -such Covered Software must also be made available in Source Code Form, as -described in Section 3.1, and You must inform recipients of the Executable Form -how they can obtain a copy of such Source Code Form by reasonable means in a -timely manner, at a charge no more than the cost of distribution to the -recipient; and - -You may distribute such Executable Form under the terms of this License, or -sublicense it under different terms, provided that the license for the -Executable Form does not attempt to limit or alter the recipients’ rights in -the Source Code Form under this License. - -3.3. Distribution of a Larger Work - -You may create and distribute a Larger Work under terms of Your choice, provided -that You also comply with the requirements of this License for the Covered -Software. If the Larger Work is a combination of Covered Software with a work -governed by one or more Secondary Licenses, and the Covered Software is not -Incompatible With Secondary Licenses, this License permits You to additionally -distribute such Covered Software under the terms of such Secondary License(s), -so that the recipient of the Larger Work may, at their option, further -distribute the Covered Software under the terms of either this License or such -Secondary License(s). - -3.4. Notices - -You may not remove or alter the substance of any license notices (including -copyright notices, patent notices, disclaimers of warranty, or limitations of -liability) contained within the Source Code Form of the Covered Software, except -that You may alter any license notices to the extent required to remedy known -factual inaccuracies. - -3.5. Application of Additional Terms - -You may choose to offer, and to charge a fee for, warranty, support, indemnity -or liability obligations to one or more recipients of Covered Software. However, -You may do so only on Your own behalf, and not on behalf of any Contributor. You -must make it absolutely clear that any such warranty, support, indemnity, or -liability obligation is offered by You alone, and You hereby agree to indemnify -every Contributor for any liability incurred by such Contributor as a result of -warranty, support, indemnity or liability terms You offer. You may include -additional disclaimers of warranty and limitations of liability specific to any -jurisdiction. - -4. Inability to Comply Due to Statute or Regulation - -If it is impossible for You to comply with any of the terms of this License with -respect to some or all of the Covered Software due to statute, judicial order, -or regulation then You must: (a) comply with the terms of this License to the -maximum extent possible; and (b) describe the limitations and the code they -affect. Such description must be placed in a text file included with all -distributions of the Covered Software under this License. Except to the extent -prohibited by statute or regulation, such description must be sufficiently -detailed for a recipient of ordinary skill to be able to understand it. - -5. Termination - -5.1. The rights granted under this License will terminate automatically if You -fail to comply with any of its terms. However, if You become compliant, then the -rights granted under this License from a particular Contributor are reinstated -(a) provisionally, unless and until such Contributor explicitly and finally -terminates Your grants, and (b) on an ongoing basis, if such Contributor fails -to notify You of the non-compliance by some reasonable means prior to 60 days -after You have come back into compliance. Moreover, Your grants from a -particular Contributor are reinstated on an ongoing basis if such Contributor -notifies You of the non-compliance by some reasonable means, this is the first -time You have received notice of non-compliance with this License from such -Contributor, and You become compliant prior to 30 days after Your receipt of the -notice. - -5.2. If You initiate litigation against any entity by asserting a patent -infringement claim (excluding declaratory judgment actions, counter-claims, and -cross-claims) alleging that a Contributor Version directly or indirectly -infringes any patent, then the rights granted to You by any and all Contributors -for the Covered Software under Section 2.1 of this License shall terminate. - -5.3. In the event of termination under Sections 5.1 or 5.2 above, all end user -license agreements (excluding distributors and resellers) which have been -validly granted by You or Your distributors under this License prior to -termination shall survive termination. - -6. Disclaimer of Warranty - -Covered Software is provided under this License on an “as is” basis, without -warranty of any kind, either expressed, implied, or statutory, including, -without limitation, warranties that the Covered Software is free of defects, -merchantable, fit for a particular purpose or non-infringing. The entire risk as -to the quality and performance of the Covered Software is with You. Should any -Covered Software prove defective in any respect, You (not any Contributor) -assume the cost of any necessary servicing, repair, or correction. This -disclaimer of warranty constitutes an essential part of this License. No use of -any Covered Software is authorized under this License except under this -disclaimer. - -7. Limitation of Liability - -Under no circumstances and under no legal theory, whether tort (including -negligence), contract, or otherwise, shall any Contributor, or anyone who -distributes Covered Software as permitted above, be liable to You for any -direct, indirect, special, incidental, or consequential damages of any character -including, without limitation, damages for lost profits, loss of goodwill, work -stoppage, computer failure or malfunction, or any and all other commercial -damages or losses, even if such party shall have been informed of the -possibility of such damages. This limitation of liability shall not apply to -liability for death or personal injury resulting from such party’s negligence -to the extent applicable law prohibits such limitation. Some jurisdictions do -not allow the exclusion or limitation of incidental or consequential damages, so -this exclusion and limitation may not apply to You. - -8. Litigation - -Any litigation relating to this License may be brought only in the courts of a -jurisdiction where the defendant maintains its principal place of business and -such litigation shall be governed by laws of that jurisdiction, without -reference to its conflict-of-law provisions. Nothing in this Section shall -prevent a party’s ability to bring cross-claims or counter-claims. - -9. Miscellaneous - -This License represents the complete agreement concerning the subject matter -hereof. If any provision of this License is held to be unenforceable, such -provision shall be reformed only to the extent necessary to make it enforceable. -Any law or regulation which provides that the language of a contract shall be -construed against the drafter shall not be used to construe this License against -a Contributor. - -10. Versions of the License - -10.1. New Versions - -Mozilla Foundation is the license steward. Except as provided in Section 10.3, -no one other than the license steward has the right to modify or publish new -versions of this License. Each version will be given a distinguishing version -number. - -10.2. Effect of New Versions - -You may distribute the Covered Software under the terms of the version of the -License under which You originally received the Covered Software, or under the -terms of any subsequent version published by the license steward. - -10.3. Modified Versions - -If you create software not governed by this License, and you want to create a -new license for such software, you may create and use a modified version of this -License if you rename the license and remove any references to the name of the -license steward (except to note that such modified license differs from this -License). - -10.4. Distributing Source Code Form that is Incompatible With Secondary Licenses - -If You choose to distribute Source Code Form that is Incompatible With Secondary -Licenses under the terms of this version of the License, the notice described in -Exhibit B of this License must be attached. - -Exhibit A - Source Code Form License Notice - -This Source Code Form is subject to the terms of the Mozilla Public License, v. -2.0. If a copy of the MPL was not distributed with this file, You can obtain one -at https://mozilla.org/MPL/2.0/. - -If it is not possible or desirable to put the notice in a particular file, then -You may include the notice in a location (such as a LICENSE file in a relevant -directory) where a recipient would be likely to look for such a notice. - -You may add additional accurate notices of copyright ownership. - -Exhibit B - “Incompatible With Secondary Licenses” Notice - -This Source Code Form is “Incompatible With Secondary Licenses”, as defined -by the Mozilla Public License, v. 2.0. - -The binary distribution of this product bundles these dependencies under the -following license: -JDOM 1.1 --------------------------------------------------------------------------------- -/*-- - - Copyright (C) 2000-2004 Jason Hunter & Brett McLaughlin. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions, and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions, and the disclaimer that follows - these conditions in the documentation and/or other materials - provided with the distribution. - - 3. The name "JDOM" must not be used to endorse or promote products - derived from this software without prior written permission. For - written permission, please contact . - - 4. Products derived from this software may not be called "JDOM", nor - may "JDOM" appear in their name, without prior written permission - from the JDOM Project Management . - - In addition, we request (but do not require) that you include in the - end-user documentation provided with the redistribution and/or in the - software itself an acknowledgement equivalent to the following: - "This product includes software developed by the - JDOM Project (http://www.jdom.org/)." - Alternatively, the acknowledgment may be graphical using the logos - available at http://www.jdom.org/images/logos. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED - WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - DISCLAIMED. IN NO EVENT SHALL THE JDOM AUTHORS OR THE PROJECT - CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT - OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - SUCH DAMAGE. - - This software consists of voluntary contributions made by many - individuals on behalf of the JDOM Project and was originally - created by Jason Hunter and - Brett McLaughlin . For more information - on the JDOM Project, please see . - - */ - -The binary distribution of this product bundles these dependencies under the -following license: -Hbase Server 1.2.4 --------------------------------------------------------------------------------- -This project bundles a derivative image for our Orca Logo. This image is -available under the Creative Commons By Attribution 3.0 License. - - Creative Commons Legal Code - - Attribution 3.0 Unported - - CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE - LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN - ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS - INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES - REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR - DAMAGES RESULTING FROM ITS USE. - - License - - THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE - COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY - COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS - AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. - - BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE - TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY - BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS - CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND - CONDITIONS. - - 1. Definitions - - a. "Adaptation" means a work based upon the Work, or upon the Work and - other pre-existing works, such as a translation, adaptation, - derivative work, arrangement of music or other alterations of a - literary or artistic work, or phonogram or performance and includes - cinematographic adaptations or any other form in which the Work may be - recast, transformed, or adapted including in any form recognizably - derived from the original, except that a work that constitutes a - Collection will not be considered an Adaptation for the purpose of - this License. For the avoidance of doubt, where the Work is a musical - work, performance or phonogram, the synchronization of the Work in - timed-relation with a moving image ("synching") will be considered an - Adaptation for the purpose of this License. - b. "Collection" means a collection of literary or artistic works, such as - encyclopedias and anthologies, or performances, phonograms or - broadcasts, or other works or subject matter other than works listed - in Section 1(f) below, which, by reason of the selection and - arrangement of their contents, constitute intellectual creations, in - which the Work is included in its entirety in unmodified form along - with one or more other contributions, each constituting separate and - independent works in themselves, which together are assembled into a - collective whole. A work that constitutes a Collection will not be - considered an Adaptation (as defined above) for the purposes of this - License. - c. "Distribute" means to make available to the public the original and - copies of the Work or Adaptation, as appropriate, through sale or - other transfer of ownership. - d. "Licensor" means the individual, individuals, entity or entities that - offer(s) the Work under the terms of this License. - e. "Original Author" means, in the case of a literary or artistic work, - the individual, individuals, entity or entities who created the Work - or if no individual or entity can be identified, the publisher; and in - addition (i) in the case of a performance the actors, singers, - musicians, dancers, and other persons who act, sing, deliver, declaim, - play in, interpret or otherwise perform literary or artistic works or - expressions of folklore; (ii) in the case of a phonogram the producer - being the person or legal entity who first fixes the sounds of a - performance or other sounds; and, (iii) in the case of broadcasts, the - organization that transmits the broadcast. - f. "Work" means the literary and/or artistic work offered under the terms - of this License including without limitation any production in the - literary, scientific and artistic domain, whatever may be the mode or - form of its expression including digital form, such as a book, - pamphlet and other writing; a lecture, address, sermon or other work - of the same nature; a dramatic or dramatico-musical work; a - choreographic work or entertainment in dumb show; a musical - composition with or without words; a cinematographic work to which are - assimilated works expressed by a process analogous to cinematography; - a work of drawing, painting, architecture, sculpture, engraving or - lithography; a photographic work to which are assimilated works - expressed by a process analogous to photography; a work of applied - art; an illustration, map, plan, sketch or three-dimensional work - relative to geography, topography, architecture or science; a - performance; a broadcast; a phonogram; a compilation of data to the - extent it is protected as a copyrightable work; or a work performed by - a variety or circus performer to the extent it is not otherwise - considered a literary or artistic work. - g. "You" means an individual or entity exercising rights under this - License who has not previously violated the terms of this License with - respect to the Work, or who has received express permission from the - Licensor to exercise rights under this License despite a previous - violation. - h. "Publicly Perform" means to perform public recitations of the Work and - to communicate to the public those public recitations, by any means or - process, including by wire or wireless means or public digital - performances; to make available to the public Works in such a way that - members of the public may access these Works from a place and at a - place individually chosen by them; to perform the Work to the public - by any means or process and the communication to the public of the - performances of the Work, including by public digital performance; to - broadcast and rebroadcast the Work by any means including signs, - sounds or images. - i. "Reproduce" means to make copies of the Work by any means including - without limitation by sound or visual recordings and the right of - fixation and reproducing fixations of the Work, including storage of a - protected performance or phonogram in digital form or other electronic - medium. - - 2. Fair Dealing Rights. Nothing in this License is intended to reduce, - limit, or restrict any uses free from copyright or rights arising from - limitations or exceptions that are provided for in connection with the - copyright protection under copyright law or other applicable laws. - - 3. License Grant. Subject to the terms and conditions of this License, - Licensor hereby grants You a worldwide, royalty-free, non-exclusive, - perpetual (for the duration of the applicable copyright) license to - exercise the rights in the Work as stated below: - - a. to Reproduce the Work, to incorporate the Work into one or more - Collections, and to Reproduce the Work as incorporated in the - Collections; - b. to create and Reproduce Adaptations provided that any such Adaptation, - including any translation in any medium, takes reasonable steps to - clearly label, demarcate or otherwise identify that changes were made - to the original Work. For example, a translation could be marked "The - original work was translated from English to Spanish," or a - modification could indicate "The original work has been modified."; - c. to Distribute and Publicly Perform the Work including as incorporated - in Collections; and, - d. to Distribute and Publicly Perform Adaptations. - e. For the avoidance of doubt: - - i. Non-waivable Compulsory License Schemes. In those jurisdictions in - which the right to collect royalties through any statutory or - compulsory licensing scheme cannot be waived, the Licensor - reserves the exclusive right to collect such royalties for any - exercise by You of the rights granted under this License; - ii. Waivable Compulsory License Schemes. In those jurisdictions in - which the right to collect royalties through any statutory or - compulsory licensing scheme can be waived, the Licensor waives the - exclusive right to collect such royalties for any exercise by You - of the rights granted under this License; and, - iii. Voluntary License Schemes. The Licensor waives the right to - collect royalties, whether individually or, in the event that the - Licensor is a member of a collecting society that administers - voluntary licensing schemes, via that society, from any exercise - by You of the rights granted under this License. - - The above rights may be exercised in all media and formats whether now - known or hereafter devised. The above rights include the right to make - such modifications as are technically necessary to exercise the rights in - other media and formats. Subject to Section 8(f), all rights not expressly - granted by Licensor are hereby reserved. - - 4. Restrictions. The license granted in Section 3 above is expressly made - subject to and limited by the following restrictions: - - a. You may Distribute or Publicly Perform the Work only under the terms - of this License. You must include a copy of, or the Uniform Resource - Identifier (URI) for, this License with every copy of the Work You - Distribute or Publicly Perform. You may not offer or impose any terms - on the Work that restrict the terms of this License or the ability of - the recipient of the Work to exercise the rights granted to that - recipient under the terms of the License. You may not sublicense the - Work. You must keep intact all notices that refer to this License and - to the disclaimer of warranties with every copy of the Work You - Distribute or Publicly Perform. When You Distribute or Publicly - Perform the Work, You may not impose any effective technological - measures on the Work that restrict the ability of a recipient of the - Work from You to exercise the rights granted to that recipient under - the terms of the License. This Section 4(a) applies to the Work as - incorporated in a Collection, but this does not require the Collection - apart from the Work itself to be made subject to the terms of this - License. If You create a Collection, upon notice from any Licensor You - must, to the extent practicable, remove from the Collection any credit - as required by Section 4(b), as requested. If You create an - Adaptation, upon notice from any Licensor You must, to the extent - practicable, remove from the Adaptation any credit as required by - Section 4(b), as requested. - b. If You Distribute, or Publicly Perform the Work or any Adaptations or - Collections, You must, unless a request has been made pursuant to - Section 4(a), keep intact all copyright notices for the Work and - provide, reasonable to the medium or means You are utilizing: (i) the - name of the Original Author (or pseudonym, if applicable) if supplied, - and/or if the Original Author and/or Licensor designate another party - or parties (e.g., a sponsor institute, publishing entity, journal) for - attribution ("Attribution Parties") in Licensor's copyright notice, - terms of service or by other reasonable means, the name of such party - or parties; (ii) the title of the Work if supplied; (iii) to the - extent reasonably practicable, the URI, if any, that Licensor - specifies to be associated with the Work, unless such URI does not - refer to the copyright notice or licensing information for the Work; - and (iv) , consistent with Section 3(b), in the case of an Adaptation, - a credit identifying the use of the Work in the Adaptation (e.g., - "French translation of the Work by Original Author," or "Screenplay - based on original Work by Original Author"). The credit required by - this Section 4 (b) may be implemented in any reasonable manner; - provided, however, that in the case of a Adaptation or Collection, at - a minimum such credit will appear, if a credit for all contributing - authors of the Adaptation or Collection appears, then as part of these - credits and in a manner at least as prominent as the credits for the - other contributing authors. For the avoidance of doubt, You may only - use the credit required by this Section for the purpose of attribution - in the manner set out above and, by exercising Your rights under this - License, You may not implicitly or explicitly assert or imply any - connection with, sponsorship or endorsement by the Original Author, - Licensor and/or Attribution Parties, as appropriate, of You or Your - use of the Work, without the separate, express prior written - permission of the Original Author, Licensor and/or Attribution - Parties. - c. Except as otherwise agreed in writing by the Licensor or as may be - otherwise permitted by applicable law, if You Reproduce, Distribute or - Publicly Perform the Work either by itself or as part of any - Adaptations or Collections, You must not distort, mutilate, modify or - take other derogatory action in relation to the Work which would be - prejudicial to the Original Author's honor or reputation. Licensor - agrees that in those jurisdictions (e.g. Japan), in which any exercise - of the right granted in Section 3(b) of this License (the right to - make Adaptations) would be deemed to be a distortion, mutilation, - modification or other derogatory action prejudicial to the Original - Author's honor and reputation, the Licensor will waive or not assert, - as appropriate, this Section, to the fullest extent permitted by the - applicable national law, to enable You to reasonably exercise Your - right under Section 3(b) of this License (right to make Adaptations) - but not otherwise. - - 5. Representations, Warranties and Disclaimer - - UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR - OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY - KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, - INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, - FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF - LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, - WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION - OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU. - - 6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE - LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR - ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES - ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS - BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - - 7. Termination - - a. This License and the rights granted hereunder will terminate - automatically upon any breach by You of the terms of this License. - Individuals or entities who have received Adaptations or Collections - from You under this License, however, will not have their licenses - terminated provided such individuals or entities remain in full - compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will - survive any termination of this License. - b. Subject to the above terms and conditions, the license granted here is - perpetual (for the duration of the applicable copyright in the Work). - Notwithstanding the above, Licensor reserves the right to release the - Work under different license terms or to stop distributing the Work at - any time; provided, however that any such election will not serve to - withdraw this License (or any other license that has been, or is - required to be, granted under the terms of this License), and this - License will continue in full force and effect unless terminated as - stated above. - - 8. Miscellaneous - - a. Each time You Distribute or Publicly Perform the Work or a Collection, - the Licensor offers to the recipient a license to the Work on the same - terms and conditions as the license granted to You under this License. - b. Each time You Distribute or Publicly Perform an Adaptation, Licensor - offers to the recipient a license to the original Work on the same - terms and conditions as the license granted to You under this License. - c. If any provision of this License is invalid or unenforceable under - applicable law, it shall not affect the validity or enforceability of - the remainder of the terms of this License, and without further action - by the parties to this agreement, such provision shall be reformed to - the minimum extent necessary to make such provision valid and - enforceable. - d. No term or provision of this License shall be deemed waived and no - breach consented to unless such waiver or consent shall be in writing - and signed by the party to be charged with such waiver or consent. - e. This License constitutes the entire agreement between the parties with - respect to the Work licensed here. There are no understandings, - agreements or representations with respect to the Work not specified - here. Licensor shall not be bound by any additional provisions that - may appear in any communication from You. This License may not be - modified without the mutual written agreement of the Licensor and You. - f. The rights granted under, and the subject matter referenced, in this - License were drafted utilizing the terminology of the Berne Convention - for the Protection of Literary and Artistic Works (as amended on - September 28, 1979), the Rome Convention of 1961, the WIPO Copyright - Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 - and the Universal Copyright Convention (as revised on July 24, 1971). - These rights and subject matter take effect in the relevant - jurisdiction in which the License terms are sought to be enforced - according to the corresponding provisions of the implementation of - those treaty provisions in the applicable national law. If the - standard suite of rights granted under applicable copyright law - includes additional rights not granted under this License, such - additional rights are deemed to be included in the License; this - License is not intended to restrict the license of any rights under - applicable law. - - - Creative Commons Notice - - Creative Commons is not a party to this License, and makes no warranty - whatsoever in connection with the Work. Creative Commons will not be - liable to You or any party on any legal theory for any damages - whatsoever, including without limitation any general, special, - incidental or consequential damages arising in connection to this - license. Notwithstanding the foregoing two (2) sentences, if Creative - Commons has expressly identified itself as the Licensor hereunder, it - shall have all rights and obligations of Licensor. - - Except for the limited purpose of indicating to the public that the - Work is licensed under the CCPL, Creative Commons does not authorize - the use by either party of the trademark "Creative Commons" or any - related trademark or logo of Creative Commons without the prior - written consent of Creative Commons. Any permitted use will be in - compliance with Creative Commons' then-current trademark usage - guidelines, as may be published on its website or otherwise made - available upon request from time to time. For the avoidance of doubt, - this trademark restriction does not form part of this License. - - Creative Commons may be contacted at https://creativecommons.org/. - --------------------------------------------------------------------------------- - -For: /hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server -/hadoop-yarn-server-nodemanager/src/main/resources/TERMINAL - -xterm.js 3.8.0 -The source and binary distribution of this product bundles these dependencies -under the following license: - -Copyright (c) 2017-2018, The xterm.js authors (https://github.com/xtermjs/xterm.js) -Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com) -Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - --------------------------------------------------------------------------------- - -For: hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs -/server/datanode/checker/AbstractFuture.java and -hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs -/server/datanode/checker/TimeoutFuture.java - -Copyright (C) 2007 The Guava Authors - -Licensed 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. - --------------------------------------------------------------------------------- - -Jline 3.9.0 -The binary distribution of this product bundles these dependencies under the -following license: - -Copyright (c) 2002-2018, the original author or authors. -All rights reserved. - -http://www.opensource.org/licenses/bsd-license.php - -Redistribution and use in source and binary forms, with or -without modification, are permitted provided that the following -conditions are met: - -Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - -Redistributions in binary form must reproduce the above copyright -notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with -the distribution. - -Neither the name of JLine nor the names of its contributors -may be used to endorse or promote products derived from this -software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, -BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, -OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED -AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/dev-support/submarine-installer/README-CN.md b/dev-support/submarine-installer/README-CN.md deleted file mode 100644 index 82a3baf..0000000 --- a/dev-support/submarine-installer/README-CN.md +++ /dev/null @@ -1,228 +0,0 @@ -# submarine installer - -## 项目介绍 - -介绍 **submarine-installer** 项目之前,首先要说明一下 **Submarine** 这个项目,**Submarine** 是 apache 顶级的机器学习平台项目。他将致力于支持 `Tensorflow`、`MXNet`、`Caffe`、`Spark` 等多种深度学习框架,提供了机器学习算法开发、分布式模型训练、模型管理和模型发布等全功能的系统框架,结合 hadoop 与身俱来的数据存储和数据处理能力,让数据科学家们能够更好的挖掘和发挥出数据的价值。 - -hadoop 在 2.9 版本中就已经让 YARN 支持了 Docker 容器的资源调度模式,**Submarine** 在此基础之上通过 YARN 把分布式深度学习框架以 Docker 容器的方式进行调度和运行起来。 - -由于分布式深度学习框架需要运行在多个 Docker 的容器之中,并且需要能够让运行在容器之中的各个服务相互协调,完成分布式机器学习的模型训练和模型发布等服务,这其中就会牵涉到 `DNS`、`Docker` 、 `GPU`、`Network`、`显卡`、`操作系统内核` 修改等多个系统工程问题,正确的部署好 **Hadoop {Submarine}** 的运行环境是一件很困难和耗时的事情。 - -为了降低 hadoop 2.9 以上版本的 docker 等组件的部署难度,所以我们专门开发了这个用来部署 `Submarine` 运行时环境的 `submarine-installer` 项目,提供一键安装脚本,也可以分步执行安装、卸载、启动和停止各个组件,同时讲解每一步主要参数配置和注意事项。我们同时提供了 [中文手册](project/github/submarine/docs/userdocs/yarn/InstallationGuideChineseVersion.md) 和 [英文手册](project/github/submarine/docs/userdocs/yarn/InstallationGuide.md) ,帮助用户更容易的部署,发现问题也可以及时解决。 - -## 先决条件 - -**submarine-installer** 目前只支持 `centos-release-7-3.1611.el7.centos.x86_64` 以上版本的操作系统中进行使用。 - -## 配置说明 - -使用 **submarine-installer** 进行部署之前,你可以参考 [install.conf](install.conf) 文件中已有的配置参数和格式,根据你的使用情况进行如下的参数配置: - -+ **DNS 配置项** - - LOCAL_DNS_HOST:服务器端本地 DNS IP 地址配置,可以从 `/etc/resolv.conf` 中查看 - - YARN_REGISTRY_DNS_HOST:yarn dns server 启动的 IP 地址 - -+ **ETCD 配置项** - - 机器学习是一个计算密度型系统,对数据传输性能要求非常高,所以我们使用了网络效率损耗最小的 ETCD 网络组件,它可以通过 BGP 路由方式支持 overlay 网络,同时在跨机房部署时支持隧道模式。 - - 你需要选择至少三台以上的服务器作为 ETCD 的运行服务器,这样可以让 `Submarine` 有较好的容错性和稳定性。 - - 在 **ETCD_HOSTS** 配置项中输入作为 ETCD 服务器的IP数组,参数配置一般是这样: - - ETCD_HOSTS=(hostIP1 hostIP2 hostIP3),注意多个 hostIP 之间请使用空格进行隔开。 - -+ **DOCKER_REGISTRY 配置项** - - 你首先需要安装好一个可用的 docker 的镜像管理仓库,这个镜像仓库用来存放你所需要的各种深度学习框架的镜像文件,然后将镜像仓库的 IP 地址和端口配置进来,参数配置一般是这样:DOCKER_REGISTRY="10.120.196.232:5000" - -+ **DOWNLOAD_SERVER 配置项** - - `submarine-installer` 默认都是从网络上直接下载所有的依赖包(例如:GCC、Docker、Nvidia 驱动等等),这往往需要消耗大量的时间,并且在有些服务器不能连接互联网的环境中将无法部署,所以我们在 `submarine-installer` 中内置了 HTTP 下载服务,只需要在一台能够连接互联网的服务器中运行 `submarine-installer` ,就可以为所有其他服务器提供依赖包的下载,只需要你按照以下配置进行操作: - - 1. 首先,你需要将 `DOWNLOAD_SERVER_IP` 配置为一台能够连接互联网的服务器IP地址,将 `DOWNLOAD_SERVER_PORT` 配置为一个不会不太常用的端口。 - 2. 在 `DOWNLOAD_SERVER_IP` 所在的那台服务器中运行 `submarine-installer/install.sh` 命令后,在安装界面中选择 `[start download server]` 菜单项,`submarine-installer` 将会把部署所有的依赖包全部下载到 `submarine-installer/downloads` 目录中,然后通过 `python -m SimpleHTTPServer ${DOWNLOAD_SERVER_PORT}` 命令启动一个 HTTP 下载服务,不要关闭这台服务器中运行着的 `submarine-installer` 。 - 3. 在其他服务器中同样运行 `submarine-installer/install.sh` 命令 ,按照安装界面中的 `[install component]` 菜单依次进行各个组件的安装时,会自动从 `DOWNLOAD_SERVER_IP` 所在的那台服务器下载依赖包进行安装部署。 - 4. **DOWNLOAD_SERVER** 另外还有一个用处是,你可以自行把各个依赖包手工下载下来,然后放到其中一台服务器的 `submarine-installer/downloads` 目录中,然后开启 `[start download server]` ,这样就可以为整个集群提供离线安装部署的能力。 - -+ **YARN_CONTAINER_EXECUTOR_PATH 配置项** - - 如何编译 YARN 的 container-executor:你进入到 `hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager` 目录中执行 `mvn package -Pnative -DskipTests` 命令,将会编译出 `./target/native/target/usr/local/bin/container-executor` 文件。 - - 你需要将 `container-executor` 文件的完整路径填写在 YARN_CONTAINER_EXECUTOR_PATH 配置项中。 - -+ **YARN_HIERARCHY 配置项** - - 请保持和你所使用的 YARN 集群的 `yarn-site.xml` 配置文件中的 `yarn.nodemanager.linux-container-executor.cgroups.hierarchy` 相同的配置,`yarn-site.xml` 中如果未配置该项,那么默认为 `/hadoop-yarn`。 - -+ **YARN_NODEMANAGER_LOCAL_DIRS 配置项** - - 请保持和你所使用的 YARN 集群的 `yarn-site.xml` 配置文件中的 `yarn.nodemanager.local-dirs` 相同的配置。 - -+ **YARN_NODEMANAGER_LOG_DIRS 配置项** - - 请保持和你所使用的 YARN 集群的 `yarn-site.xml` 配置文件中的 `yarn.nodemanager.log-dirs` 相同的配置。 - -## 使用说明 - -**submarine-installer** 完全使用 Shell 脚本编写,不需要安装 ansible 等任何部署工具,避免了不同公司用户的服务器管理规范不同而导致程序不通用,例如:有些机房是不容许 ROOT 用户通过 SHELL 直接进行远程服务器操作等。 - -**submarine-installer** 的部署过程,完全是通过在菜单中进行选择的操作方式进行的,避免了误操作的同时,你还可以通过各个菜单项目对任意一个组件进行分步执行安装、卸载、启动和停止各个组件,具有很好的灵活性,在部分组件出现问题后,也可以通过 **submarine-installer** 对系统进行诊断和修复。 - -**submarine-installer** 部署过程中屏幕中会显示日志信息,日志信息一共有三种字体颜色: - -+ 红色字体颜色:说明组件安装出现了错误,部署已经终止。 - -+ 绿色文字颜色:说明组件安装正常,部署正常运行。 - -+ 蓝色文字颜色:需要你按照提示信息在另外一个 SHELL 终端中进行手工输入命令,一般是修改操作系统内核配置操作,按照提示信息依次操作就可以了。 - -**启动 submarine-installer** - -运行 `submarine-installer/install.sh` 命令启动,部署程序首先会检测服务器中的网卡 IP 地址,如果服务器有多个网卡或配置了多个 IP ,会以列表的形式显示,选择你实际使用的 IP 地址。 - -**submarine-installer** 菜单说明: - -![alt text](./assets/submarine-installer.gif "Submarine Installer") - -## 部署说明 - -部署流程如下所示: - -1. 参照配置说明,根据你的服务器使用情况配置好 install.conf 文件 - -2. 将整个 `submarine-installer` 文件夹打包复制到所有的服务器节点中 - -3. 首先在配置为 **DOWNLOAD_SERVER** 的服务器中 - - + 运行 `submarine-installer/install.sh` 命令 - - + 在安装界面中选择 `[start download server]` 菜单项,等待下载完各个依赖包后,启动 HTTP 服务 - -4. 在其他需要进行部署的服务器中 - - 运行 `submarine-installer/install.sh` 命令,显示的主菜单 **[Main menu]** 中有以下菜单: - - + prepare system environment - + install component - + uninstall component - + start component - + stop component - + start download server - -5. **prepare system environment** - - + **prepare operation system** - - 检查部署服务器的操作系统和版本; - - + **prepare operation system kernel** - - 显示操作系统内核更新的操作命令的提示信息,根据你的选择是否自动更新内核版本; - - + **prepare GCC version** - - 显示操作系统中现在的 GCC 版本内核更新的操作命令的提示信息和根据你的选择是否自动更新 GCC 版本; - - + **check GPU** - - 检查服务器是否能够检测到 GPU 显卡; - - + **prepare user&group** - - 显示添加 hadoop 和 docker 的用户和用户组操作命令的提示信息,需要你自己根据提示信息检查服务器中是否存在所需要的用户和用户组; - - + **prepare nvidia environment** - - 自动进行操作系统内核和头文件的更新,自动安装 `epel-release` 和 `dkms` ; - - 显示修改系统内核参数配置的操作命令的提示信息,需要你另外打开一个终端根据命令顺序执行; - -6. install component - - + **install etcd** - - 下载 etcd 的 bin 文件,并安装到 `/usr/bin` 目录中; - - 根据 **ETCD_HOSTS** 配置项生成 `etcd.service` 文件, 安装到 `/etc/systemd/system/` 目录中; - - + **install docker** - - 下载 docker 的 RPM 包进行本地安装; - - 生成 `daemon.json` 配置文件,安装到 `/etc/docker/` 目录中; - - 生成 `docker.service` 配置文件,安装到 `/etc/systemd/system/` 目录中; - - + **install calico network** - - 下载 `calico` 、`calicoctl` 和 `calico-ipam` 文件,安装到 `/usr/bin` 目录中; - - 生成 `calicoctl.cfg` 配置文件,安装到 `/etc/calico/` 目录中; - - 生成 `calico-node.service` 配置文件,安装到 `/etc/systemd/system/` 目录中; - - 安装完毕后,会在容器中会根据 **CALICO_NETWORK_NAME** 配置项自动创建 calico network,并自动创建 2 个 Docker 容器,检查 2 个容器是否能偶互相 PING 通; - - + **install nvidia driver** - - 下载 `nvidia-detect` 文件,在服务器中检测显卡版本; - - 根据显卡版本号下载 Nvidia 显卡驱动安装包; - - 检测本服务器中是否 `disabled Nouveau` ,如果没有停止安装,那么你需要执行 **[prepare system environment]** 菜单中的 **[prepare nvidia environment]** 子菜单项,按照提示进行操作; - - 如果本服务器中已经 `disabled Nouveau` ,那么就会进行本地安装; - - + **install nvidia docker** - - 下载 `nvidia-docker` 的 RPM 安装包并进行安装; - - 显示检测 `nvidia-docker` 是否可用的命令提示信息,需要你另外打开一个终端根据命令顺序执行; - - + **install yarn container-executor** - - 根据 **YARN_CONTAINER_EXECUTOR_PATH 配置项**,将 `container-executor` 文件复制到 `/etc/yarn/sbin/Linux-amd64-64/` 目录中; - - 根据配置生成 `container-executor.cfg` 文件,复制到 `/etc/yarn/sbin/etc/hadoop/` 目录中; - - + **install submarine autorun script** - - 复制 `submarine.sh` 文件到 `/etc/rc.d/init.d/` 目录中; - - 将 `/etc/rc.d/init.d/submarine.sh` 添加到 `/etc/rc.d/rc.local` 系统自启动文件中; - -7. uninstall component - - 删除指定组件的 BIN 文件和配置文件,不在复述 - - - uninstall etcd - - uninstall docker - - uninstall calico network - - uninstall nvidia driver - - uninstall nvidia docker - - uninstall yarn container-executor - - uninstall submarine autorun script - -8. start component - - 重启指定组件,不在复述 - - - start etcd - - start docker - - start calico network - -9. stop component - - 停止指定组件,不在复述 - - - stop etcd - - stop docker - - stop calico network - -10. start download server - - 只能在 **DOWNLOAD_SERVER_IP 配置项** 所在的服务器中才能执行本操作; - diff --git a/dev-support/submarine-installer/README.md b/dev-support/submarine-installer/README.md deleted file mode 100644 index 9acd420..0000000 --- a/dev-support/submarine-installer/README.md +++ /dev/null @@ -1,236 +0,0 @@ - -# submarine installer - -## Introduction - -Submarine is the latest machine learning framework. It aims to support `Tensorflow`, `MXNet`,` Caffe`, `Spark`, etc. A variety of deep learning frameworks provide a full-featured system framework for machine learning algorithm development, distributed model training, model management, and model publishing, combined with hadoop's intrinsic data storage and data processing capabilities to enable data scientists to Good mining and the value of the data. - -Hadoop has enabled YARN to support Docker container since 2.x. **Submarine** then uses YARN to schedule and run the distributed deep learning framework in the form of a Docker container. - -Since the distributed deep learning framework needs to run in multiple Docker containers and needs to be able to coordinate the various services running in the container, complete the services of model training and model publishing for distributed machine learning. Involving multiple system engineering problems such as `DNS`, `Docker`, `GPU`, `Network`, `graphics card`, `operating system kernel` modification, etc. It is very difficult and time-consuming to properly deploy the **Submarine** runtime environment. - -In order to reduce the difficulty of deploying components, we have developed this **submarine-installer** project to deploy the **Submarine** runtime environment, providing a one-click installation script or step-by-step installation. Unload, start, and stop individual components, and explain the main parameter configuration and considerations for each step. We also provides a [Chinese manual](project/github/submarine/docs/userdocs/yarn/InstallationGuideChineseVersion.md) and an [English manual](project/github/submarine/docs/userdocs/yarn/InstallationGuide.md) for the **Submarine** runtime environment to help users deploy more easily and find problems in a timely manner. - -This installer is just created for your convenience and for test purpose only. You can choose to install required libraries by yourself, please don't run this script in your production environment before fully validate it in a sandbox environment. - -## prerequisites - -**submarine-installer** currently only supports operating systems based on `centos-release-7-3.1611.el7.centos.x86_64` and above. - -## Configuration instructions - -Before deploying with submarine-installer, you can refer to the existing configuration parameters and format in the `install.conf` file, and configure the following parameters according to your usage: - -+ **DNS Configuration** - - LOCAL_DNS_HOST: server-side local DNS IP address configuration, which can be viewed from `/etc/resolv.conf` - - YARN_REGISTRY_DNS_HOST: yarn dns server started IP address - -+ **ETCD Configuration** - - Machine learning is a computationally-density system that requires very high data transmission performance. Therefore, we use the ETCD network component with the least network efficiency loss. It can support the overlay network through BGP routing and support tunnel mode when deployed across the equipment room. - - Please note that you can choose to use different Docker networks. ETCD is not the only network solution supported by Submarine. - - You need to select at least three servers as the running server for ETCD, which will make **Submarine** better fault tolerant and stable. - - Enter the IP array as the ETCD server in the ETCD_HOSTS configuration item. The parameter configuration is generally like this: - - ETCD_HOSTS=(hostIP1 hostIP2 hostIP3). Note that spaces between multiple hostIPs should be separated by spaces. - -+ **DOCKER_REGISTRY Configuration** - - You can follow the following step to setup your Docker registry. But it is not a hard requirement since you can use a pre-setup Docker registry instead. - - You first need to install an image management repository for the available docker. This image repository is used to store the image files of the various deep learning frameworks you need, and then configure the IP address and port of the mirror repository. The parameter configuration is generally the same : - - DOCKER_REGISTRY="10.120.196.232:5000" - -+ **DOWNLOAD_SERVER Configuration** - - By default, **submarine-installer** downloads all dependencies directly from the network (eg GCC, Docker, Nvidia drivers, etc.), which often takes a lot of time and cannot be used in environments where some servers cannot connect to the Internet. Deployment, so we built the HTTP download service in **submarine-installer**, you only need to run **submarine-installer** on a server that can connect to the Internet, you can download the dependencies for all other servers, you only need Follow these configurations: - - 1. First, you need to configure `DOWNLOAD_SERVER_IP` as a server IP address that can connect to the Internet, and configure `DOWNLOAD_SERVER_PORT` as a port that is not very common. - 2. After running the `submarine-installer/install.sh` command on the server where `DOWNLOAD_SERVER_IP` is located, select the `[start download server]` menu item in the installation interface. **submarine-installer** will download all the dependencies of the deployment to the server. In the `submarine-installer/downloads` directory, start an HTTP download service with the `python -m SimpleHTTPServer ${DOWNLOAD_SERVER_PORT}` command. Do not close the **submarine-installer** running on this server. - 3. When you run the `submarine-installer/install.sh` command on other servers and follow the `[install component]` menu in the installation interface to install each component in turn, it will automatically download the dependencies from the server where `DOWNLOAD_SERVER_IP` is located for installation and deployment. . - 4. **DOWNLOAD_SERVER** Another useful thing is that you can manually download the dependencies by hand, put them in the `submarine-installer/downloads` directory of one of the servers, and then open `[start download server]`, so that you can The cluster provides the ability to deploy offline deployments. - -+ **YARN_CONTAINER_EXECUTOR_PATH Configuration** - - You can get container-executor binary from either binary release package or build from source. - You need to fill in the full path of the container-executor file in the `YARN_CONTAINER_EXECUTOR_PATH` configuration item. - -+ **YARN_HIERARCHY Configuration** - - Please keep the same configuration as `yarn.nodemanager.linux-container-executor.cgroups.hierarchy` in the `yarn-site.xml` configuration file of the YARN cluster you are using. If this is not configured in `yarn-site.xml`, Then the default is `/hadoop-yarn`. - -+ **YARN_NODEMANAGER_LOCAL_DIRS Configuration** - - Please keep the same configuration as `yarn.nodemanager.local-dirs` in the `yarn-site.xml` configuration file of the YARN cluster you are using. - -+ **YARN_NODEMANAGER_LOG_DIRS Configuration** - - Please keep the same configuration as `yarn.nodemanager.log-dirs` in the `yarn-site.xml` configuration file of the YARN cluster you are using. - -## Instructions for use - -**submarine-installer** is completely written in shell script. It does not need to install any deployment tools such as ansible. It avoids different server management specifications of different company users and causes the program to be uncommon. For example, some computer rooms do not allow ROOT users to directly remotely through SHELL. Server operation, etc. - -The deployment process of **submarine-installer** is completely performed by selecting the operation in the menu. It avoids misoperations. You can also install, uninstall, and start any component in each step through various menu items. And the various components are stopped, and the flexibility is very good. After some components have problems, the system can also be diagnosed and repaired by **submarine-installer**. - -**submarine-installer** The log information is displayed on the screen during the deployment process. The log information has three font colors: - -+ Red font color: Indicates that the component installation has an error and the deployment has terminated. - -+ Green text color: The component is installed properly and the deployment is working properly. - -+ Blue text color: You need to manually enter the command in another SHELL terminal according to the prompt information. Generally, modify the operating system kernel configuration operation, and follow the prompt information to operate it. - -**Start submarine-installer** - -Run the `submarine-installer/install.sh` command to start. The deployment program first detects the IP address of the network card in the server. If the server has multiple network cards or multiple IP addresses configured, it will be displayed in the form of a list. Select the one you actually use. IP address. - -**submarine-installer** Menu description: - -![alt text](./assets/submarine-installer.gif "Submarine Installer") - -## Deployment instructions - -The deployment process is as follows: - -1. Refer to the configuration instructions to configure the `install.conf` file based on your server usage. - -2. Copy the entire **submarine-installer** folder to all server nodes - -3. First in the server configured as **DOWNLOAD_SERVER** - - + Run the `submarine-installer/install.sh` command - - + Select the `[start download server]` menu item in the installation interface, and wait for the download of each dependency package to start the HTTP service. - -4. **In other servers that need to be deployed** - - Run the `submarine-installer/install.sh` command to display the following menu in the main menu **[Main menu]**: - - + prepare system environment - + install component - + uninstall component - + start component - + stop component - + start download server - -5. **prepare system environment** - - - **prepare operation system** - - Check the operating system and version of the deployment server; - - - **prepare operation system kernel** - - Display the prompt information of the operation command of the operating system kernel update, and automatically update the kernel version according to your choice; - - - **prepare GCC version** - - Display the prompt information of the operation command of the current GCC version kernel update in the operating system and whether to automatically update the GCC version according to your choice; - - - **check GPU** - - Check if the server can detect the GPU graphics card; - - - **prepare user&group** - - Display the prompts for adding user and user group operation commands for hadoop and docker. You need to check whether there are any required users and user groups in the server according to the prompt information. - - - **prepare nvidia environment** - - Automatically update the operating system kernel and header files, and automatically install `epel-release` and `dkms`; - - Display the prompt information for modifying the operation command of the system kernel parameter configuration, you need to open another terminal according to the command sequence; - -6. **install component** - - - **install etcd** - - Download the bin file for etcd and install it in the `/usr/bin` directory; - - Generate the `etcd.service` file according to the **ETCD_HOSTS** configuration item and install it into the `/etc/systemd/system/` directory. - - - **install docker** - - Download docker's RPM package for local installation; - - Generate the `daemon.json` configuration file and install it into the `/etc/docker/` directory. - - Generate the `docker.service` configuration file and install it into the `/etc/systemd/system/` directory. - - - **install calico network** - - Download the `calico`, `calicoctl`, and `calico-ipam` files and install them in the `/usr/bin` directory. - - Generate the `calicoctl.cfg` configuration file and install it into the `/etc/calico/` directory. - - Generate the `calico-node.service` configuration file and install it into the `/etc/systemd/system/` directory. - - After the installation is complete, the calico network will be automatically created in the container according to the **CALICO_NETWORK_NAME** configuration item, and two Docker containers will be created automatically to check whether the two containers can even ping each other. - - - **install nvidia driver** - - Download the `nvidia-detect` file to detect the graphics card version in the server;Download the `nvidia-detect` file to detect the graphics card version in the server; - - Download the Nvidia graphics driver installation package according to the graphics card version number; - - Check if the Nouveau is disabled in this server. If the installation is not stopped, you need to execute the **[prepare nvidia environment]** submenu item in the **[prepare system environment]** menu and follow the prompts. - - If Nouveau has been disabled in this server, it will be installed locally; - - - **install nvidia docker** - - Download the nvidia-docker RPM installation package and install it; - - Display the command prompt information to detect whether nvidia-docker is available. You need to open another terminal to execute according to the command sequence. - - - **install yarn container-executor** - - Copy the `container-executor` file to the `/etc/yarn/sbin/Linux-amd64-64/` directory according to the **YARN_CONTAINER_EXECUTOR_PATH** configuration item; - - Generate the `container-executor.cfg` file according to the configuration and copy it to the `/etc/yarn/sbin/etc/hadoop/` directory. - - - **install submarine autorun script** - - Copy the submarine.sh file to the `/etc/rc.d/init.d/` directory; - - Add `/etc/rc.d/init.d/submarine.sh` to the `/etc/rc.d/rc.local` system self-starting file; - -7. uninstall component - - Delete the BIN file and configuration file of the specified component, not in the retelling - - - uninstall etcd - - uninstall docker - - uninstall calico network - - uninstall nvidia driver - - uninstall nvidia docker - - uninstall yarn container-executor - - uninstall submarine autorun script - -8. start component - - Restart the specified component, not repeat - - - start etcd - - start docker - - start calico network - -9. stop component - - Stop specifying component, not repeating - - - stop etcd - - stop docker - - stop calico network - -10. start download server - - This operation can only be performed on the server where the **DOWNLOAD_SERVER_IP** configuration item is located; - diff --git a/dev-support/submarine-installer/assets/submarine-installer.gif b/dev-support/submarine-installer/assets/submarine-installer.gif deleted file mode 100644 index 56b3b690f0ad4fd4f4d21c461bee6e1714070fbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 546547 zcmafa19)BC*6vPY7HNzojm^fkZQE+xxUn01$F^VL zj5*evGs%vqxCk4&elE-*WDVfY_5S^P0dbD+?qKi)P@yp3c{c-U}_Rsylue*7`A0L1jn*W{u-_rl% z3DL;d!4Lp|fCJNQjT{WE!Ppf5fKD^Cvv&l?_ZduQb8)o$ga5?v*&ZAq80-DPrvJcT z9^kXVKXCA0GD-@9V3{;9Mlm$gHv;2QFs3&654x$60_a~t{|Evs0yZRSY-4P1Zbcm7r2o3UfJY<;OGQcWogAFJzmdMsA506zrH1;# zieO9(#>>v;Dl-4XZ+4CX3SdkM0KEI^WU0&##*|9mSQv7;FfV$KF=qj{-Od zNE0JtAz?742IEjmTgg8`fQ>@dJ2)%;q5lbJ(alWoPoRJ3qZaxSa$t-N#@ohLqJQMU zz93)h9OeEQ1QfoFmCPT%U|&!|#twfa47LM>?`WnZ2Bw4kLRmT5EB#X!D$2xMMEsxf z)n@i$f9QX7m+h?n>QZoQ(C_S>6#gU+_61F=Z!atg#$cP!a>h2we+v2sI|D!}5c&XP zfGxlPJQ@OQ0IvW7fC4}iAOODG0qnsX6M#9u3QREubB)0iWAM}8GBkhbIRGrdbaR07 zUpxo!DEF7-KQ#ZAB>RVN-F#RD?0Qp^da;dcwB;B{g({_=oRQy@YfQ!IR8$@_TT(}mif2BpSjalaHpnK(X2?+h0c0m+7i0%yKV$`D%fICRUtRRC z*$4cI{7+~7iTh7~{hi`}78~5NC;})rC`2eiC|^)WP^A8r0s#n6Fi;p!#8AkkLB%=COlE z;s1zj<4=qHOXR;&HFh+1{j;qA1a0kp*qfW0ITA3^)3XxrgLgn<0&yEdT51A)D=UJ( zSPlgC#tz2z&c;TxfIr*kA3XrzTH&v45dwYU-!w;Q0D$`(yZ}!Ao2KCe0F*ia02s{w zrjdgeOtcIDppnJU$=>-N_5ctNV*r4I2@~UA&k#rg;6-d51iA( zz2<=JuL1y_R)3ah0N~Fl0ssYy67!90V>=mZ0qK!P8kwh?6_;C`wA)cnI9hMGmS1>W zfI2hn#Hg`<4d&VpSslaq!FS1h*Qi)5bsjl$>)5Pxm7-0ZIIMLWGvOzjtM`zpSh;v; z^_sYN2KoH-)wJ~s3^_a`$Xf5~_@-ySbkfD%m2tM-P&3BOV&H&(~NM@Gj~ygWJ>H;o%fut}r$Xx*wz zp?pKcvKmrX4~b6zc`CID5GejG`?To=|0bFs2zPw2!TG*;VN*l7Z7v}Y7r~5B3r_-W z)Af-??W=cT5@xnHg~_4;2c^#9P*_hdrf#s~UcsgrhgTjp#JVTht^rgn`ZCS|&=lV@ zmvDYP_KcwjPbvgxx*VU|rvE8g(HToUUKqiJSV$)!Bqm`lx4H@k|)w-2tEXg661INOV}~u`xYm^!xGhf`O7qdrtCyWHNSgyA zQf->*#-B+HXO>53jdt+oD%!{ApI1A&w{X^)TJW{bY}Z3Y^Xj*pT4-8J-KgwRBickY zd!+g~N~!@DEtK&w$-9@OU&wIL%bO|TPxFf+k55LS(-3Nk*@E003j1`H7{wT3EwB@v z>`zE1INVblCfIvC9A_lRkZ)(jiKK4F)rcZ6`xIQ-l;(*sEHCS4e7UJV8|lDb%=Cz8 zQ}?1ma^Lhmq)W5b%eYuO&ua~rG_1&@dfJqU&NR3TslwvjuIl5bH%>&;mNyn#A-2`- z#$}8&f|hjeH6J!YbZr`UHBrYM3%DC1o;Kp&msjst2ca}Cx3DP_}M*AQn_h%;Z$ z0i|X-A9LT6siaD^3(ez}-;(+f;%JreWn)^^nJB!c1`gZBQb+MwDQ?Iif7p-tjQP1R<7 z>!8fv^xA3Ch##-J$9gNdn7D?J#}d1b`NI8SQitl6T@x7QFPN9z1V7(33R6Bsvq%dN zzC#roU{RJ+jeed6d|fONkP!7#$kdA|zyIc6Ci~6PDBGx%jpI)FmtB9$=AQFn`?K|a zK#A)jKa9OA8GnmAs{ip&b9a~Xe`a^N1zrtC0B#zmUtDq=^Z;Rqd2 zx`%Y!8yh5~4--jbn-(*hnA)XwlMRuQc9_4rk*Z=IYwmp<5X9Q|@q1CD!g3X(_&f_r z4l~+~rM18ldpfd;MnZhg`Pg<9&+O1RlAN(GT>Hy;+?Ng-n~ca@EU8>3tdlZ`Ftc(JI|=n<@{dy>BzolrKk0>{gAIV@oECW+^q z$*f;-i>YZOXFIPZgIBx1D3&G4`46jbSfXZ2U9m|?X;c+7Sd$Ch<~7#?PdVR#;Cvh* z0rDF0^-Zx^X2KK>+NTzdCX2`wu6?N`Y-dw}D%cey-c2KC@)DZnmK*yXq-OQb+LU?Ry@R-t^@ow_5rBjJ2V@rHkD5mt8%V1)J(JkygHT2 z%B=M#p+5%iMt=KO2$>+sF7*dKF$U{~u)--mPKdKGrhBICaYACZq$`?%((a||$vZyj zn~`2T?&fdO1gUmUp=QOyhnv4sZJIEey=>xIUHjnvG+B6V7b6@Yi&=tVk;TK{B?~;( zSb3Un9Ip$BP3%09X=v_SOLcBQoNx0~^#$M(=m;X@|6+OWQXkQa2nhRR@}yk;tKRO7 z4`>ByV)VWy&d6>+E(M*}dRgRGM%8c~_J4?2PD!tMHn5~}IIxdgG0=|C2M&C9uWfma zyn_bbRaDI(dsF8(Q2&6vkW+iEk?t!i)lBPna8q2v?q`cw!`O8iP+2{5upgv(-4(Tc zUMFLH9MTkRvgRe7x|x4S6P20#eHPodv(DHhgRDF9Prt{L?|%0=ET6j4 z%uK8g*EUqcQM9`U?%<{|&T|7DhSoPz-EM1jczl$DhNqF$cF(RoRwYmNGs`a{7sr}6 zb;399n%AFB_Ze}$FU$?^yqCQcQSW9`b7;dRE<;b zJ{J<)mHVSG*s?D_k=cLKa09K9Z4UGZ4WFdDs2$=o4a-BkxT zrO}L*Ro%Zl_&x-AlVf_0DH}kjc>4wVVdVRAsrhc9`LUY#vcU1Q2kDmHdkACxBxdt8 z@AtPSRay|Wr*$>w!8BvcH5{7$F6gQsSMTW05}=0}XrShvW%whBRXgQ?H?2XN8AsN*=ABaAWu{x9EcqV}c-=FVH&O2FrcXrBbR$xu+MOk z%ZBqM3HrIc!!Z`i&b)6o70e~3EWvlHe&8H=kxK$h@`#IhID)qqQ8-+IxPKa zVNW?aNa}x#9$88=A4<~NPpl}gz)?$W9SRT*1WvI#7s97ilLCvI5^@F-_gGV5RZ^aA zQ#P8M0*<`RDNKFu!Uu+eb=lHJ?>%ep)1R6^881z`a#-<-6grk_@-*a3YL8g2kNQgJ zNy{*v9P^0|MQM8GiNXo?=o$tH!2#%foV6@j-dNwgkAT;8w4+$kDTYCZ{OKId76)BE ziG=3Nqi-mLe_6U#!jkS+OPyg%e7!RT`kl6F*(tJ3VJfSGsh zDuRZcU(t|j;pXR@9A%bl7P^=RFv}`wGNoHak{)!qF za>a#-3E98q6S<0ue#sZnYq;_-K`?26QU%C7eTNU>Ca2&hW!Afu zJW+^EIt3=EX69(bqdUdJ9%I1|XBO>e@oA(VFQwKmB_AXg`*D0XfG^-!$RayTT+B|( znFkh&XIFj7CX*;*9xggV&j96l7Bm-rLr8s$H?zBrdFU$`ZYo6&44X;uJ6FzKaMP~9 zt{As)!oown7MD!SCqH+7`+_IdKXySZJO>KS|;LlGBG%rk+_8sZtgrB-M~nHDtH=IXzc=PIZ-H zD`E^}BwoyggZcyojejq0w0Ye;nvy4ST|;SFbf~NoMP#2Z*=VxtmAu$^+>{sDUm=c7 zTq7XR&1kG}E&xH{6b2v^?M zq_fWP^P;{R$k|}soV@wyneg1D!j{2Ll||bWKL4rRvea+1YgA|nM_$! z?sly8(vUZe(1}D<96g*(KAPZ)+E+|wVL00JdstGKy4UrwS7Wt2gsty(rpO7h<1RRH z47Ps(AyvOL-j=w(Z>3>p&nGve&8;~PYSC}_q{J^Ugv~NzX}^4r!e5ozlnUFErO{Vo zb)cE0hnc!CKA9oh4J4`6l>gCVxX{X=nWGEe%7D72p}4fmno8UyIH~GKL*QvuIi!VA z_=rJD!odoVUObplESQSCjnu3+9aZq1iogkMMJmTorczppWf;;+hiCBsT5IM#e2s{O zU)D&!LkL~#OK(AHZUZXEpIvlX=ymaDY${_6HcomithG+U@ zX%ChAWPMN`vl);seBxqgn$;?+lB{oC$`3h#-8OBQqiv?9cewVQnOm5cw+H~%tpvCn zuY}%Bo#yn)0t%U@b{}pTYeXNdb!*)V_o2%7R>yNG=P3A$f$!^_aECKB6JA%1F{}}+ zjl*3~^jsXS1yp%XCJQS+ES-A@1-(}uwDiPpJr3a{#>`DIL?f~V#A>G&nC9<1iF z;9%0Pwwd{{nKp^8F7Lqu1(D8_^P!pn=AhzpfZ0{V#;#^w9hAnXVsk!er zP5YKsh}o6d{|BJ2F)>BMg-tp`(&Wm^JiQL7`m4ry)ZNtu%PjTj|A zFCr{swDN-BS*uf5Of;(a$~W2HR)kr;2-tMCBW)bkZ{x^RrY#J_{e6p8t=%ByM_g^c5P`3xBYnksE|X_et^e%s{Ob#(*6m*8Wk@P z4kw9yt#kX_G0Nuf11N2@WUc6KgLh`FyI5W)EJl7gcGvpo&>1TTaZFf^6`!)!U~z9f z+c>*l(Q(Q-(sP)Fuva`(kh9k-<;n2xDe%>`NSU@dBFaxDGk{k3#H&|1*o4` zw_MTgipFy5UPf-gcn3MBBEZd-Tee1jxLO86fG4wi7O2UeZmD)+xX>OL7P7RQ8LB3j@}WIvU2QA8M>D3TwE zm1X98KWm6TG2j-%oyIrv4%T_s8^S$x=vwybz9>1rpiK-7ZoG{128_SH^jSO?)4n$H z9uWi-0xzsM@LuLYuXU`~%eIzrgfu(4mu=b4(c|%}vizH%w`cYnUtQaDs zxUD}%jd*??>^Z(Ap=IF_kx|hxv2peaj7%^|E3a?wAD>^}Kfil}d5`ghjE4Qm)P}joEab zbcP5}5!Mfc6)=@xXhF_57P@_KuH1;Ntu zLBJAM@4A6sAaMgYyY*CUKQP&1GWLq;>BEK^*HW6YdtGt!(}9*W~^M`^Ks z9G9(%6I_q0GZQ?l4~mm~@OZP60w1}R{DiQyXQxC6J(Z@#n386vB^cV2W~A8HKKse= zzbehjiQ~=9D$ubh&nc;E&&{dmd(Qc)nFHtMHNLkgFKB_N7Uvdpe!eO%>V@DX_!>lW zt1KBMYtJurqp$&fT78^MSg~muQyH~xc&%Tx+reJYv|kYB)3TcjxYu?Wi)dK+vE-?$ z<9MB?x&fHpOI&k5L37>kI>KYqb4BHOSoKCzNz(T?`{ugs`^Cm}D-?bn(=dz^hRra9 z9iM$Wf-ry4F!B}oaVO>@kNR$sc6#z|inI!ragb&`yJ@m#KGtFSkN#w{qySnC)2Mip zP1V^t&PDx{*YkN}kBXaJ8={Nmc{}m}&i76bnhV!Ozjwl_Z6hjK>xvZ}zLmom z@BItFMG#i|dPb#+Rf#o~s1-V_;cze5F zwPb*vpL#mHJ#I=0+Fx&Wcr$L_5_um!%6UCse*rDRcHXkn{d{kf`HY0w`6g`V16P~* z4ljuxPNwqb-i{s|H#t92= zRAy2ZdQDjBnxt)-fSfYrDe*Z6 zI`2>vt9dHu3N?r1mRyt{TQ*uFE*I6fNJ7+YIy5CNhupJBM37Q3ak@5-h2&7mFmwj^ z={Emc+o8M@hf)&dO##KXV#OZ_O1b;BIVfco@~NS7c@lGl6xv0q4aYMj7EVQaXvJzR z!*kV)x20CdR9Z8X3+c^uWoBh18Y{&MjWJGnu6f6bWy`90>+$73fffpWDGNOUPNe}P zrv@LN=lW5c%e~sDjRFwV`b_4^qi?BAX-3pWV^nJVqqp9fy9(lz&({^LZCYv~YNAco z2h{YPAz52?tZi2`JdKoDcx!fU;e+TKt7vGU1Kd}a8Sm?xooH=yPF9ZIVSo=&w9e6* z+S~REjmy@wt{JJ?S2n7x)7*4UGnQ*tfemdt-!9yzsB~|q6WcEPD%`InJH{dC9QaFc zcc{tOM)4x;y%FtxlELahu|C-UdcK&%mC^&BXu96Z*acuv>m$j!en-In9rO)%d+KC@YuO^pavZdSTx=Hmq?321qp=m>wMh)+-QpQ{N=}NH1Y-Jph zw_Z$GYaU0P(rc0~tqxd5k|#iJcMj>#T=~4eeoXlCFlV509|+epO*x`CW_|HI5F=`y z4sB=7VLCgM7EGD+g}Es}#50xmOBu~ea4evRu#l|5o++PaE@h{&luhNBt;c6B7cV{N&8d10Xcwk8(O+E5l}X&)6R6?;h@8`V0SHeWt9ww<~R za5_TyltKF2(?V`O1AYqttbbt9xgT(DTy|n~#*SY&o4*|3(_!?I>0HvAAwg6^b3nqS z(}p%6ZdL6)5^L~W0xQDydvNckgOYEG=vpDJ44y{5q~GO}wLz(Taa)+kyJ|S#Jb6## z)^j0zo94}}9r=Z0c4qIs(=`3Kh1%oj%jRuyf#>y^0l<1_{lO!HYmfgICYJyBQ|J$# zn}7_LyM_!#_Y0m~5G%%81c~ko?uok&+y%`WQRj2k1@GH4@5WB@qbAaMDyB^c=R;4z z8B-^IH?MUQ&sZ|oIV8rDBGz*l;)7z66+AD>OOl8IpEZ03EfN1aCG36qaL1|6rpit? z`OY)WB+Q$(_7EO~(lCrsUbtB-WL%8?5g_gjI?_uRL?*_2DI}CpOf<(1Qb&OSJ}xLY zULxGK768{67T>#7yr-OQnC(AG`gGaX3VYyctKj6p0U_WUs^jr3ZHw=3@^j6;S_S z!cI+n=Zc*2#Qn{c{TxW}3=q9TD;;=_J%(KH{U3zwuv$%4J57~%oGx3gI8&dmJ6v)_ ztf_mQE;;2thgc#BvYdu}{LI55)z>j8ywAXIBOV^R$ZO@_7uGx25!}su+Ks--Wf$EG z2<{$m2dCFh%_Y8f(uc1x}4GZMK?bbJ{Cp)OonmVxA`CQycb+nk!|s zb>O52B=T91m|1Yryw4q1R8nZT|AT~;IXc&pT)*=U!xM|K?hC{Ar3GL(1*b3uEqR3Y(zLal(Ec+baO5z$;JloyG< zMgfYKQD>vkHaY2t)r7fHsW(MQB5JOTQn9U?PN5h64$Q=b>$GC1@X%3F`zq<~#i16* z@q^YLtF6KA8NO|z+QjhjMMv?07mU8#uv%i7_Sh~;sIj5e;m*R=z0X6J4#QkG!s5(A zAdVYe)SFhR@QJ(H;b|ydrnu3mIGGkP*`866do9_9G^CT4?&)yxb}`vyX1Ui`nWvk+ z=Q!Di-0=%2;f_NAeQK_+j)P^?;^+PYC;{W2>Ldqq5!Y5Fn_PQ_9g_s5dbX%1+|xup zTaUCci<}{iVxS@6#J9Xr_s%#@c^b*vb@ie+jf|=H{w^6KMC18Vmei^y^qMS`l?l zv2{gE!DCo3Et_O-0_5MuyC%nLJSvDRE#NeSsXfyfB?*HzN$@&@5YaMN(<62B4s@y2 z2eZocY}m=?ImY9}L!hmMr#%76RqRfi8iZ30c9Uk&o>~fci%cY zgW3(_I0v{yfz= z+0|Y$vd=uxRyx?*Gv+BIXHYw#>LgLkoJ8+GjS((^mZxB_Caf(r4j@i6R6_DiQ^o2X zXigJ~f`VC!!$z@IL=<{w^Amzu8N=x|u`y1RwQOvYxFdd6nBOTplzGtvO}#=;WtMP~ z(Q*b4ZAwO1nbJr!ajr9(8N6rBCf-a5w<_Nl;Xw`#EA*kW`hWd5^2E+caTJ>%ZXY}-G2d#MoY3*%dNJX?sYZ)^WsYH)b#Cw8uR4T z-pF*@>XLF&2QknGYjPr@V-inc;s-{t(o7t5f&G+1fb{f(;cCB{PKVQa<%(ELrd%+B zM*Wz8g0y^B+LFZBxaagbf5ccdGTwXcaWO49)*Bg#_=TD_-#au>P+c!iTwel3^U9f% z?8&YA68krbSDlOi&7oYm3ab`}w87(uwk{@J5$QIld3gxh5E>kj$1&c7v7x)McPyW$ z%F)7OMirHJr;*OY2E;~Cyw*RZH`80MceW01AZbRf_I*y5|7E?^PmOn`iKG)ec>QhR zB2Eo^RzjmzruFs9Mx6xdte)2k?%Ro;hqYFtwrJPRLLb*UGRw5Aza|g!yDI1z>hq41 zGnH3JeW#^Q8)stoWV3aeS~utuvHCZhx~K_;r9JB%h#Jd;0g+{0%hJQQc{)7n zbB}B53EX9|qUnH-c;qtF@I+vkr3O2^U*EX#R$j2s8*VInEH& zA5P1f$WvwL*UD_yogiE+dEFlUy+(v@8g+*rou5QtV^9Tka2b6pAUv0Byzfvi0g@am zOOTk0nRTt_rj9?+h|^?5vGgTTV5aRhH9^7~6<{Hj&^rs;INi%PvC7CXYnzkGc2*A~ zmB%likACCIqTLRdwTj3`8Wh3!^(IRCV*U+n{b5fKGU0R>Wj8HA5+pRovnq7$&OO1> zCorzVe~vi0Z*&!R1VleOrEL+qBR6Hz{u-GxahcZ)Gr+F3Oj1j^ttyZ*%B{ zGBkE)MAxWi|0pGE+Y~yI;)b+Y zn%Y`yYd6w*PMI1EufUY!1=PZ*JC7ZL?mQ^;rGw}IlfU-2UxX#kfb?6sBUFb10`KDD zh(5QeMwHNv3)ZUB>w?prmgbt4p_huV%bIT!MQFc>4Yw= z=>^pi2XVJ0bH`Qr5h?m@yPh5+tnR$L=q6StUB(`l(%rbDWPM%-P)PLPWA7%9eOW@f z#ru0FjUh|kyU9D?C($EZm-Bh&Lm-~4?C4n?J`XdL;^Y>11K%(ZeMqcvu(RD^vz6$4 zUGgh1H))^ZUj2?F%4^JwfrBpKz<>OrA|n)eBUn12gDlZEYi1lN5O-vvcxK8uCIe)D z;1a#qQkK+loj(s#k1%ad@^t)(dj@K;S@FYKAs+yW&>bXWgbVi$eCZQx2b}sRy0r-T z7B9$oYn1KWD5q;@Zed#lO>34Y<2znVzd>JZu8E$wP8F(38 zco{o*8NYv-fPJ0Bc%349oo0QV5q+IieVsFXop*U%2zp&id|fJdU2b??8F*b?cwIYq zUB7?bfPLG+5q;ZLecLmA+jn_82zonAd^;+5J8pP88F)Kgcso0IJHLOs zfCc@=09}%Su2@0WqM#d95a`wvbms!P4+1?Tf*uP%PYs~w0np0===A{fcJB=bXFqL0 zH|}`zfrSh_OhEF?F1bnG&c_GEc=) zvS#11PRB-#A3L(o#8IYGvvSVLMVm2ma>vP2v2p$U#;cdPNuZy#MQD({{napMhsY>* zm)JOOkHjQ@pVYMAfXuA$kleiJh{B@yn9{POq@>g5v{Ur7v@?N^+9tY;x+3TtKtFX# zAAE5s$yf!$RQ;Vv*S`Gwt#vM-yX)soapnDl!`Zn!GxOcmj{(=;Pm`SP>`nH+U#NKE z0rwDHeVz4?wbV$Ppn952USudFd^Xq4PCj_VNBL5*DF7k_3=)^rVR(+xcJ7 zJ#imcqmZzspv7%S89vxy{w4{8fUz3Z%3{jviN}DF+NDtPlSzLaKCLnH0gR_1eN-_E zC9qKTgJR)1b=D^oP2>C$N)A^`7L>9|Z(yeJok#^ucmf}|Id33r;JPp#r{`RxR10x_ zzL)QEF@p}>5D?2WRRUWV6=eT8Ez4LUnx5HSDs8J^s?k|~9d~H1Mj$VnjF=md4ce^v zdx(s3)AGe)l&7NId6LRE$>~+_=g?oLZqGc1-HTolt8JyBSn_JxqBPwEkEVYX&85E* zIA2i41XiS@wt~ji$OgYK>k>BKJxtHR0v_w*}4?v4=^Ik({`LtC;JMG6c9z|hN2RsEm#8)u*vcmZHMQ! zqTHA1K>;zdJniym=M^fWGw=OjmzI(Ti%O7!ZP`3WB@&zo2Llhj2VIs z7@7&7CLSsB&cm-IYA7|qmSd~`s$MR=8)}&hzbHUKoR3F6Yl3=jVPY#GKa@gQblQE~ z)q(GIdy=?}jyT(i_nDepJD$Xfzq}_u)0S^v#mBn84JI|YuQJQxH}pr@x#R9Q`=sh3 zgv4gLT!!~kS$>P-MjzTC^uke-N$YBJ7^)AcQ(C3&C(TmSBsov} z^d><`Uk5slPjY;Y22QU^;?eVBk?+qceuJD;uXTjTa| zpKi(uDcLKC;~XwVn%x>T`KO-yeh@ym5CfDs;eaaxxBhP91?kWOptw zqj;|HQ~bS%Te3FPq!2c&Z#p+KR2Rn6pQGUKt|bfyZd|$y@O&=boAkf&Gp^9}9>vyE zM;~lLQiGn0r`wR@phyS1=i?<@k}xm#eQKUUZzK}RM#d_HP^lq)5nS;h()*iYAOR}% zD$#7|d*ufWH$xE;VM<1K6~-nL-Sr+CuG(O=B`%lk#`_}P4^DdEXhmDLMt8veFxA25 z1Hm7`G**MY`vj;jWqLNN6hYBM8$mozZR_RaERxVNYAXrUx)w4b)WiNvEZT&USnOnc zoAmg&y9teE#{W5;z|W)?AgJ@u^`TwQ|5GjztlTsP4|Y_9l)oY15q6M2%QCWpaHnP( zQc;<%(By~-9 zI9fgUCP4*ybD7XQq-;2;mdt6oWh@g+<|09^S82}lQv;Vw;!K;?qv+o)1Ytar;z9}& zbW7~3a?43LsLdgX)JI=9C&eMipix|sE%3?nTtys2s#2W^)#hLXeLN}UHJg3DG=m%o z<-E7w*}cOf=YQ><_=y$mv)HsISZ6GuJuMV(gtT`-sxhi&?PyiEN)BI3*q~Ugkc_*0 zNas#4s)6g^j%jU7Au1ssknE5jYD7w;OZhQuUn#U!D_e$vViuc?L6$u(H;!DSh%nNp z2&Yqx`q^9|Px#Z1bFQCCqD#GBiY2{NzwxV#{a`O9uPa_)wnWKylhJXmLzW3J;(XM{ z+ZjBuN3@VXl*KD14hwCQlc93a(0V1NE)~o6yV-G;BfoU*+^u zxPgRU&6HEc)wnF0NyS+DSQbc96cz}aV^RN+aFpqjY;6D!oDW4O9N*Sj+GBAYxNdgfQwzBPGK$T_@$pS!miF- zD42&)G+5%v!?*bY1C@@9Nkd5?3Wy%5RFFDqq^EL=?9^*@Kb$1w25Q>`6LAQq?ay-C z0!>3>Q-(Ln)nsz6F3f&}<}-W3lI88e2i7C{t|B#g9U)nS?2g2K?6~j6A-BVh_dqAj zh>b_gwsmefS;x)&oDqd)=SwAFIH>;E@nt3~4$pTVBEw}Ej%CBU5O>5kP7k+MS}26pNU%zq8_T*!)=|Dvczd*6&DWtGMww+A6j*Uc)!oynU$(gRysOdv-ZqyCcHT zE|sxVn~b8hv?e>Fc2>QZrd@%N*#%;e;^AOvcs8Jr<=8|ZH*@TgexiIYa}Z!kEY6j` z6K`4H#luemweR#h0mxu6red1H;y2Wf*UTHqin?*vzu7-Fl6})Z2$IZC>$-m8Wb9-RF;w_>1iI02$)_K)UTcL}o`Yj&d_L+iSFm3%cL|Z3 zU<_ogPQ6;8S<15gRN5s{ztm)reR%0NImg4`9oQq{cJHUFaj63Tf6V}zSiRKp{nb^Q zu9qp>@k~f1f~@>8%ihQ8CoFm+o`x#lek%bv%P&O>m#a+m*_!qn6>B5xtJAl)3JxCk zJb@mXj!pM1xV8bZ7hVU3r+b$Dz8@E#1$D}ciJ1rB*yvik)N4U)=WS?0DyW_9+|?D^ zX40akv-8dcL}V<)I~~<-QymO-iJ|V=Y2&4Rah({Ja-Wg{dJNf?NR_bx90Z{uE7gbV zx5+r}@V`Ezp+VopyPD61#mfjqr51?ko-%KA-vq&3`GcxdGR5^Cee@0p=3&mmG%Nd% z0`xdZm z6HZr043YFwM`uenv6FtN7Xp=XAXYWucPY^~d$KYmhy}TF3A~wMcz;KHK1UbL7o@8i z!C{AFYgaKb|I)0#OS+8B@@bYg{u9JjG(F=DGu!Ht{uHW zLnQ1(R^#=PPSlK3L-{*HZqhCO=uE)ZJdwp-E*mjfgB=bVbYU56d5bOPbYm!%%v<3c zz^A@B!1~9?iBC4U4Cp!{0G*0>oG~PAMFE0gEP^m{@xzY_`j5u%uar=w6@{+Eba8>0 zNr^biB-_fNad3kw=)oFR8Jq!dG*FrzU3iiRS!mL+2~|s*&<2yia=$EffTDP)paRBYodjPateh6fC-}Ul@0kXZJ4W~iq6m-| zmAicYMjFNGtA}Qv0{OI$qKcDDvLO_sC35vO(k{NKv8|`8K$)E+@BCs}`YCfH?MD8y ze|qo+lGl;M{=0b(P-oU$8y{;fFjT?M>&S3Z&sVO9;TFwzm?Al4aTm@EdYnu{z=TFb z>odBU^OUF-i=4Q!;?it3=Q1grzCJO`2Wk*UilssLDz*6$6s5~M6>m~?fVM@tQXzWM zg6q5D3VQkIRYckTLA3|Jg7aBt*L@vsEN8J*!dJBvk2pJN#eA5UZ2a`gsrmTTP}!8l zN(NQGP<<8w2M`%lFS9FqH0Cn^g=%tcU!}Z>5SQqFZRh7IMjzMHVnGU z>_XSdAf)cSnoD^)ptq)mkS-(Dpa_wto^vZr|4yR-U!2s3gKSLw%zdOcYm}N?_LalP zS}SR|mxeUdx}zV-XxXyHE$!@M@p667h|W+#2+LVe^MPPU(@`#acWtv7ZUtyJ=1!HL56Z7_$f^S zKZol5Z5f>%lf#`DnktF%P;R3l(ACy0%%^ja{(TeNW}V3E&gT#?glGl0(+np zw;KgtkOxyO>2xulWbyWP@at}^5kq1Njz9%d@ed6Rv&AtSA1nVdoS!OeN8Rt=&)S39s_&l8b`52!X4ZHSt}#ACcSaY+JMylk|85sjoXO^nQTw_TrwD_ z6=}TC9tRbC3|QQ-MUha?d?5~_f?5m}lV=L&X=YdP&WInI*$jKJg9(~q)^5Q1FfOXd zFn*gfG%ct}--j_v{eg1CM)Dnsk#t6FxzXmFbo4_VahI&Ss@R_McYkAzeipCpKsw5 z)_$`$+pl)M|^TO%$^t`D+Ng(vEZRAq_0^5F?t9Zk){ncJ7^-LoP4SjXgz4UTsXc0GHN-CY* zAO*;*opPx(9yKwo;B{M+G%g|3F^Xj24w_!u1z$_gNq^o|fP+kbbk2|oMU(Mf3j;>S z0<@%bW;nsjd?GcJOqvZxX5$k(Ib*ic&c!AWa!x2b9se0(f?#rJs|9E6XWaRcWum#46R zY?O7lj}3@;2d4j(H)nxr4WT&vndc%U8*?jagEKOPGl)r89(pTps@z9*Yx9gVcxS8b zeRzY5D`jmyv8E78(w$*fcnNz41(9Q%jGrft%*4>hF7aNsB4R6+!+2j}xtZ$roW=0< zjZDU|OsvtT7jbqYzYN@zil8`REP15LkhyE5HORa_9C|!-1;RJ2?b>~iwmfG zn;dDhS{JQ=T}!#-$B$W4vH=IWskMq~lQ#Dno1=EQ;JKi$`OLlqr)QkZs@DR;@1E=K z2-Z5m6|9=uGNTvz%pQ8mV92jad!_SvsjOhHGduU5IFBJXnBNa?OI@*x8{-|5)qQy} zn;= zZ9#{S=^17JL1A%7D~F&;h_?vOKUK{;>%gA5yW6;eRFjM#a_hdkNgR2<=ljB|bCmac zmS>NT2z<6nv5|{-xqy#<8)mUrZM#D<*ULJjx?#pUinBexjyv2dl;pt5-9QCY zkf0I}#oXtD-8(#Q%zeex0zU;l{z%SU1;gO`eHj40;;U5OXMrvBJ>CmdUFkjHs{jCN zaBeTdzxlVn`@cW@$NwHQTea1HwKYB_ISKg7KmYf?|3g5K zlU93i)|+?#!B8B@(mc^rUD?)s;aHyO+QtM!7w+EwfkEMrSTr7yN#&B+bUvX`>6BWv zUa?v2mfQ7y!C~>3TsEK4Y4w`jcE90q`J7(2-|>0`85Fe$P z@A32X_xby=bN~hv2#`kr0s|2elyER1!h#GN3VaxG;6#c6EneKQP@_VF9XEainNcIj zizX?ejHt39%Y-f+avUkMBg~34OX57KGbPWJK3f8PDKw_YnnZ6J&8c)J)1FR$LJcZ) zDAl46mtt+I^(oh=UZ;YsD)uT!12!chO=~qN*|uiUVpJ=a?OL~X;m-AVmoDGEdF%EC z>^CIgvw8~;Ry;HCU&e;xIzHMs@#DplAtOFad2?pYkt<`qyp+U&0|-v1M!g!r>Vl?M ztCsCr0_@qUTc3V?J9h8gy?N`d9UM4<-^6npA6}gIapu046Ibn=cXH~_g$JCnA%w;r8)_U+%V6HniJeE9F?-*-RHeLZgZ@!^-huRlNX{qgH7F2LCaZ0$e&3Y?BS z^cF0xz4_E@Fhchbl#smx8Kf{n2%jtPLHv}{kUk5WBat->M-*{F4og(=!u~3Bu|*aI zH1V_#`3sRo0&N6uM+0Hp5X1ygoDD|+dsI-y8kfAW$PSZya>nnDjPXY$uaxq{AXChe z%N42AlE)@}9J0qM?HjYS91nPnO*ip_lRr7%qq96arNa|DJ%i(uIX`a$6gWX;BQ!Qc zQ$rLrMcb_HO-JK|bWTa@r1VZp^Tc#dP5b2ZPfr5{bx=_YCG}8K6Ge6ZQB@n&?on4G zg>_O{E2Z^PTQkLVQ(Zgd^;2I%1$I>8;n^c_+A6-+J@ici(>fy%*qs z`CW)$dj~$4fP@cbm|%wkhS*<;|20@)d@a71VtqFjIAeu7M)>1~M}D~Eh)uBwI`tWnWL{7chkckfBEpy_n!OhYiGap^xqfW{n6=%-~Q3R z51{mL8IH$e4;PJXc~;Pd>~z}r3WfVu16|DYGZ{aG-92-F`0G3dVw zQc!>%Bw*gwWG)q|YlYG=&9&Z@EBw5WTQS_#44>6Pc-ip(HZ=Se4}XP280t`l{PAJC zc1T3#91)1YLSk^3sKj19afvx(;T7HWo+x55iCl!D6|?BY8yXReT@2$Hv9m=q7Ey}8 zQKK2*$j0)#QI2aIqZZ3p$2i_`j(Oyx9j8dfA&N1OcpM}kgDA)vwlP?xNfVGD>833~ z@bJ++-r8SRIQ6GuGX1H~eyS6p44q~|`Poo_2GgJcUFbxW`A~=c)0`HSXh$h}QIKYoqxAHsMls6H zh@y0)DjlduO&ZdV#+0P(B!K}AfK#33l&3r0j8A(SRGk(Cs7385QH7e+p-RB0O+{)` zh5A&bMwO{kEvi(Zy3_z=dVr(`{9Rl}Oov1WCxR&A?O(Q4MRrgg4z zeXCOMdeyjwHLqZmt6KL;*1n20uxu@?TMr9YuhMm}XI-pa6N}f#>h-aFovdFOds)I( zR$;qjc zv7BWsALGaeAl(28vIYTsImuf#^O@2AdrVa)`&6Lv|XF1QA6kTrfY2Zv}J@1*% zlUVZs+Wh7|51P=0K7^g=P-a6fn$eB6!=E)E03P6YUIhVNk26p@OkY6K1)+4MW#Hy3 zJDSv`HnkZLeStsAW&olV^aTb0p-mqzQEQG()hH0_Wl=!XdA0yf5#Z}n51ZJ9T1IVCy{F+BEZ` z_N;ZSnsgV7*1MiSuQ#CRaPOPn{e}UuF97UD#T(GhMhyi703=+qy8_qF&30WKZHI>_ z+pQrtQ@ibNjc=UeA4s(Y)~saz0hs0hOVc%+1s?5kdpXysDfk3No^k&ri`%2l0I)CK zah>nH-v9?Wp6`vC9w(g55{S9YE07vEU;8vF*LK6PJpp}V0N*^f`qg_5^kjFN!^ z$juFrgQ&aZLjSeQ;~nOpBmDwX$NJmhZfc)b0OxC8TFgVF>vg`|e+Fu{+b6E}<>b8T zaX0+o4gK*7g#6y8@%plu-p8_UckOwOwGV4fc&#Iz^PQjb+_@cWyBi%gmd*_U#@uPu zcRJTmA3W5vQ*qI2pzxlz{q3==cnUCnI4lpq(M|7o5TyO=Y$rb5Wo`ktJn2YRCc z+3o~=@COfU0?Td6*6#uZugjK5?K)8YY!Ex{FXwThM zjqw9HPH?jF0&9`$h_^RXZ2u^)Xe9q%z90g@jD(jfIw zAqx^A5Aq)u(jg-fA{&w->5(BXQX(soAT!b;CR0J5!cE(=$UeltxoDOLLM=(==0alU7qTTN9FA(=}r=Ic8Hf zYjZVj(>8Mx3lozvrw=lN6F7epGl$bSi<2{tQ#q3pG?&vko0Bx3Q#zv)HK)@$tCKaa zQ#-T&6E?TgJG+xMzf(NJ6F0}xJj;_e&r?0qQ#X4P0d~_p*Hb>*(>ED&KJ8OD>k~fT zGd}Z^IPY^m{gXfOlRyQuKM}M*2XsLb^gtD~K?5{G^;1FtbV7yGF!5t)*sVM?lubG` zL+z12K2$_Q^gTw@L`#%IQ&c)mR7J~;L|+s|W7I`Altot*J6hC6XH-XP6i06~IC9iS zcT`Aw6i9!RIfB$khg3<66iJWtHj>mymsCod6iS~IIHJ@_r&LR;6icsEHnP-9w^U5K z6imPL*3K0B#?(yL6iwSyP0Q3x;}lLkG)-A>PVcl%-!xA_bWb(VPs5Z=@$^pzHBjaM zR8I@lP6-uJ8MRLn6;Kt`Q0dfB8x=+$^-?QUMlqFAIn`1#l}106NA;8h#_Y>X^;Eyi z(@=F)Q`P8Ll~q;sRZ%roWz|$^wN^>zR&iBVYn4}J)mL8?SYg#wakW){uUL(>RFPF! zSCv_3l~|V*T8q_LPnBA2Ra$oyTYFVof0bK<)mw-4Sdq03#Wh;Xby~r-S=04d&ox`y zbz9%HTjTXx=QUiF6ZZo%U&=Hfp7IYN@tr zt@diMHfyzZYq_>-z4mLtHf+UqY{|B4&Gu~3Hf_~*ZP~VM-S%zaHg4s1Zt1pe?e=c* zHgENIZ~3-w{ZcfO2O7#vq|8@F-`AaX}> zakp>Z1|V@Cu@^X(^@u?A9#?ZcQ2;78bSFnyLE&=?fOR9mb!*^sm%w&WHxpGCb7ePj zaF-Kcw|5`mcVmEfkHC0yml9!jbvFljF+tKYR}-AK1*UfhsyBHLQE@;2cXwmAc`X;d zu2%)Z7YN1|d;9Qv13-Icpwq}T1XeH7-q!=zw{tBZa7on)3o!Kx7X~B^%=T9f^_PAt zpnQ!ke&Kh2@wWx~mvrSfftkR7ISqn2V1Wg=fDxF1aX^AMK!YuSfK9-IZvceNcM1hh zeOZ8extDVz&2llf0JblMRk(f?7lsp;erY&{ae##}_k~-yf=RW7U3mV`w}WR`hI?3u zff$F8xN>=Thb#AlkJyMaw}quR1BmyAg_nENcZa3eadVh)sd$MUmxjNXi8)P&pID5O z*oR3#gll(*M>rErcm-~Faog7dmKTTxua0ZDi=(*VlK74RIf;Y+7~$5K1qeBMVGenT zH<8s?kI%S;1v!rinT_T5kRKUymzaL9n0GmVlDU`y0=bC^d5{yikPR7ZFqIRtdCn6bo*C{f6sAqS(yC?baOR!otK79)t8OVj)S>~ zQy_)?H-(9qal2TItC@J4S$i!um4SK8lsJWP*_u&+nxom7pBb9P8IHFYn>V?Bd)b!D z*qcd5orzg>^VpAz8IH+0pMMvf+gY85nVt8!;pQ2cDVBQO`FIYBh zlnq%4ao3{38J^#{djWa-j2U`Zd6+eNh&dVsmUoXmS^|v!d8JL6r4{)C!uOzE+Lo7h zow0eAD|(~p8HPn!ntQsXNt&pyS$Hvek=2f(ZOqer@_ zXIch$x_BQNq9swHPk?)yEvF-ypszWqbz1Gr8jr&o)YQ4|N5gb0C&w9oL^b0L)WTb`=Lj>uRVaV)mpbf;CdMuePK7u zgu1mkAh63Asnhj+qlVB#LwFe(|ZIc9K>1M zzx}wBJDjH7d7wR6uJb#qIlQcSxvtSSwmTY`ExCI6Sd)u7vr(DE>-okje8IC>r&(Od zHvp|Sz<4P<#jzW@vAVe7ImkXl-boW*^+o`3JuC+*aixXovpiBlc4OFgYKH`Qrf zfs@#ZAsfnNy`gndECkyoq(yF$Bh@-t31j*eFe7v8ihevvZou|Mc%*x{;-Wa(NSJ~%NON^ebF<0 z+LgWMH|^RZe!FG9&-7&rc(j41ue(SHg+pBoz!ydD>p2c~a)R}wji@w!w-r+5N<^B5Tt)A80 zUh1d*_Nw0ArTDBLn&{~)|nlfTD3qoi>xwC1|=~;QKGD1hO1^LN|9ZN*&}5mU#intyWRWx?L#C(qh1Q2vNohFA+3EQS8Y((U zT55WVnyR|W+UoiW8!J0YTWfoZo2$E9+Tkn7qZsE41MCNc=0oi0w|s}UoHvYo_Vi<_ zbFEaQls!^SY#id9b*w@Ecs^FDOiZ2j2kj26J{L`4{31UTt7>rOJe9(>`HmAo9A1F{8$f96Nga2r{I|kt9o+Jh{rA!w;9ZjQPb7pr&vM3BhbZ zY!5S+`W`J4_o<;ooI{)WnshToG)XTCIV=ilX-#-wWP+gRQYAjC+j0&os6uAbbS20V zrP-`e&qYa5eE}NG;zYSF2!ch4H?Q8keEa(S3plXg!G!nvbAtF4VkheZ}UyM7Hjw(Qv#6>hXmn-q=QynB~Ex(l`M z;lzs@KaM=P^5uO0ac6YSTq(ln)T^hWqvi5sElsR@{|-L9`0?b+cZ6OWYIG+$%)5UN zKfe6=^y}Ndk3XwN^y`7={|{h*0uD%Efd(FkAX`*v#2<6kBnV-I5>7~Ag%)0j;Vd$I zv|)JIJ(FRGB92I6i6)+iVu~uR$YP5wz6fKCGR{b2jW*thV~#rR$YYN_{s?4{LJmn} zkwzYgWRglQ$z+pGJ_%()mhoa4V^Lm-WtLiQ$>o#6-STCZVvb2>nKhE;N+hvyr$skx z#$cu>Vb(HdoOa%cXPyKKm02r+v?f$n{^@B6A&Kp>7+r)e%4nmG_Qy|}Tp`-wDuKo{ zXpz{-q9`x_ojwX`sG^Pv+7I6NIq7NYxwR@wt@ijSs|#inE2*~LifgVM-J{?@syNXn zMzxwUELnFASu82Z()p^c&OQrmw5OPGRE5R2!Nt zOj%L5?9O!TT=8C~t_$_rOUAvCnV{Vv`mX!$BK%sZ$7k|_JFBqan#*v*4(B@EI=-yM zNS!*h^^R6qWqL4D3w!d@x?u|SU^5LtcBy_All;}ia`7oeN*^OU@546VjI*ORtmR2V z6sr`kN|@PW%t1_Ox9qnCM|zbrz!=?wQD`;Y&Q?Ny^@G*+3@w!^O2hJX&SH;EHj})X zf?YZPB4@!KU5FqiS0XTQS2PnB&{1pBGZ)IXGV+WdLVHHBV*xk49!J2*^MRGB?LVRRRN&Fzt2ijB9j;579U+Co&R)3POgj;8+yn9T9fWxg!&sn8?!c zagwz9;~-Co%2Wnsi-!DJC=UsGNHtbY z%gN6R+CZWPoFFiRdbst0rG1;2DOu-$nWMTBruhu%Q|Ag+Xi{~rdMH&Go)Hvm5A6_6zi`463nYU`-u*yfJu#rjUSBBMC|h%6TEOc56vREsIDTtYIjSU|eC1 zBDc1F^tWmvol~iYSD5lswcPEl3Ypki?%~l_&rMxBz=1IYnh~+FN?CB%Yb`7^cJ`%{~a+0OUyNTZWskfo3KQ8IEC#hc*ZoYF(}?;ses|dU~|xM&&YHqWe-)!bG!+Fkhu5*(sW#>HWdCz?Av!DMA=s*j4(1b3up%0DdL@RpH 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

7y3+qh6{=&r>MtsOQ-T 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≫>h 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 diff --git a/dev-support/submarine-installer/install.conf b/dev-support/submarine-installer/install.conf deleted file mode 100644 index 69a7dbc..0000000 --- a/dev-support/submarine-installer/install.conf +++ /dev/null @@ -1,181 +0,0 @@ -#!/usr/bin/env bash -# 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. - -################################ DOWNLOAD CONFIGURATION #################################################### -# Start the http download service on the specified server, -# Will download all the dependencies in the http server, -# Run the install script on other servers. -# Automatically download dependencies from http, -# Solve the problem that all servers are slow to download online. -# At the same time, you can also manually download the dependencies to the downloads directory. -# Offline installation of the system -# The host ip on which download service is started. -DOWNLOAD_SERVER_IP="10.196.69.175" -DOWNLOAD_SERVER_PORT="19000" - -################################ DNS CONFIGURATION ################################################# -# The default DNS ip for the cluster -LOCAL_DNS_HOST="172.17.0.9" # /etc/resolv.conf -# see YARN_REGISTRY_DNS_HOST - -# determine whether install an security yarn ,value is "true" or "false",default is "true" -YARN_SECURITY="true" - -################################# YARN CONFIGURATION ############################################# -# The resourcemanager hosts. For example, YARN_RESOURCE_MANAGER_HOSTS=(hostname1 hostname2) -YARN_RESOURCE_MANAGER_HOSTS=() -# The hosts should not install nodemanager. Multiple hosts should be split by spaces. For example, YARN_NODE_MANAGER_EXCLUDE_HOSTS=(hostname1 hostname2) -YARN_NODE_MANAGER_EXCLUDE_HOSTS=() -# hadoop.registry.dns.bind-port & hadoop.registry.dns.bind-address in yarn-site.xml -YARN_REGISTRY_DNS_HOST="" # yarn registry dns host -YARN_REGISTRY_DNS_HOST_PORT="53" -YARN_TIMELINE_HOST="" # timeline-v1.5 & v2.0 -YARN_JOB_HISTORY_HOST="" -YARN_SPARK_HISTORY_HOST="" - -# Kerberos realm used in core-site.xml -LOCAL_REALM="" -# The namenode hosts. For example, HDFS_NAMENODE_HOSTS=(hostname1 hostname2) -HDFS_NAMENODE_HOSTS=() - -# fs.defaultFS in core-site.xml. For example, FS_DEFAULTFS="hdfs://machine-learning" -FS_DEFAULTFS="" - -# local.cluster-id in yarn-site.xml -LOCAL_CLUSTER_ID="ml-yarn" - -# yarn.app.mapreduce.am.staging-dir in mapred-site.xml -YARN_APP_MAPREDUCE_AM_STAGING_DIR="/tmp/ml-yarn-staging" - -# yarn container-executor config -# How to compile container-executor: -# Go to the hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager -# path and enter the command: `mvn package -Pnative -DskipTests` -# Only the nodemanager is compiled. The path of the compiled container-executor is: -# ./target/native/target/usr/local/bin/container-executor -YARN_CONTAINER_EXECUTOR_PATH="/etc/yarn/sbin/Linux-amd64-64/container-executor" - -# Keep the same configuration as 'yarn.nodemanager.linux-container-executor.cgroups.hierarchy' -# in yarn-site.xml, default '/hadoop-yarn' -YARN_HIERARCHY="/hadoop-yarn" - -# The home paths for container dir -YARN_NODEMANAGER_LOCAL_HOME_PATHS="/home/hadoop/disk/1/yarn,/home/hadoop/disk/2/yarn,/home/hadoop/disk/3/yarn" - -# Keep the same configuration as 'yarn.nodemanager.local-dirs' in yarn-site.xml -YARN_NODEMANAGER_LOCAL_DIRS="/home/hadoop/disk/1/yarn/local,/home/hadoop/disk/2/yarn/local,/home/hadoop/disk/3/yarn/local" - -# Keep the same configuration as 'yarn.nodemanager.log-dirs' in yarn-site.xml -YARN_NODEMANAGER_LOG_DIRS="/home/hadoop/disk/1/yarn/logs,/home/hadoop/disk/2/yarn/logs,/home/hadoop/disk/3/yarn/logs" - -# Create '/app-logs' path on hdfs, Owner is 'yarn', group is 'hadoop', -# and 'hadoop' group needs to include 'hdfs, yarn, mapred' yarn-site.xml users, etc. -# `yarn.nodemanager.remote-app-log-dir` in yarn-site.xml -YARN_AGGREGATED_LOG_DIR="/ml-app-logs" - -# time line v1.5 store path on hdfs -YARN_TIMELINE_FS_STORE_DIR="/tmp/ml-entity-file-history" - -# hbase client -YARN_TIMELINE_SERVICE_HBASE_CONFIGURATION_FILE="file:/home/hadoop/hbase-current/conf/hbase-site.xml" - -# yarn.resourcemanager.zk-address in yarn-site.xml -# hadoop.registry.zk.quorum in core-site.xml. For Example, YARN_ZK_ADDRESS="zookeeperHost1:2181,zookeeperHost2:2181,zookeeperHost3:2181" -YARN_ZK_ADDRESS="" - -# yarn.timeline-service.leveldb-state-store.path in yarn-site.xml -YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH="/home/hadoop/timeline" - -# yarn.nodemanager.recovery.dir in yarn-site.xml -YARN_NODEMANAGER_RECOVERY_DIR="/home/hadoop/yarn/yarn-nm-recovery" - -# yarn.nodemanager.runtime.linux.docker.default-container-network in yarn-site.xml -YARN_DOCKER_CONTAINER_DEFAULT_NETWORK=calico-network - -# docker.allowed-container-networks in yarn-site.xml and container-executor.cfg -YARN_DOCKER_ALLOWED_CONTAINER_NETWORKS=host,none,bridge,calico-network - -YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH="/home/hadoop/hosts/yarn_exclude" - -YARN_GC_LOG_DIR="/home/hadoop/yarn/gclog" -YARN_PID_DIR="/home/hadoop/yarn/pid" -YARN_LOG_DIR="/home/hadoop/yarn/log" - -################################### YARN-kerberos CONFIGURATION ############################################## -# Kerberos authentication to create some necessary hdfs paths -HADOOP_KEYTAB_LOCATION="" -HADOOP_PRINCIPAL="" - -MAPRED_KEYTAB_LOCATION="/home/hadoop/yarn/conf/mapred.service.keytab" - -# yarn.timeline-service.keytab in yarn-site.xml -YARN_KEYTAB_LOCATION="/home/hadoop/yarn/conf/yarn.service.keytab" - -HTTP_KEYTAB_LOCATION="/home/hadoop/yarn/conf/http.service.keytab" - -################################### JAVA_HOME CONFIGURATION ############################################## -JAVA_VERSION=jdk1.8.0_152 -JAVA_TARBALL=${JAVA_VERSION}.tgz -JAVA_HOME=/home/hadoop/java-current - -################################### YARN-hadoop CONFIGURATION ############################################## -HADOOP_SETUP_USER="hadoop" -HADOOP_VERSION="hadoop-3.3.0-SNAPSHOT" -HADOOP_TARBALL="${HADOOP_VERSION}.tar.gz" -HADOOP_HOME="/home/hadoop/hadoop-current" - -# hadoop.http.authentication.signature.secret.file in core-site.xml -HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE="/home/hadoop/yarn/conf/http-secret" - -################################# YARN-hbase CONFIGURATION ############################################## -# copy timeline hbase jar to ${hbase_client]/lib path -HBASE_HOME="/home/hadoop/hbase-current" - -################################ ETCD CONFIGURATION #################################################### -## etcd host ip list -ETCD_HOSTS=(10.196.69.201 10.196.69.173 10.196.69.174) - -ETCD_VERSION="v3.3.9" -ETCD_TAR_GZ="etcd-${ETCD_VERSION}-linux-amd64.tar.gz" -ETCD_DOWNLOAD_URL="https://github.com/etcd-io/etcd/releases/download/${ETCD_VERSION}/${ETCD_TAR_GZ}" - -################################## CALICO CONFIGURATION ########################################## -CALICO_IPV4POOL_CIDR="192.20.0.0" -CALICO_NETWORK_NAME="calico-network" -CALICO_DOWNLOAD_URL="https://github.com/projectcalico/cni-plugin/releases/download/v1.11.7/calico" -CALICO_IPAM_DOWNLOAD_URL="https://github.com/projectcalico/cni-plugin/releases/download/v1.11.7/calico-ipam" -CALICOCTL_DOWNLOAD_URL="https://github.com/projectcalico/calicoctl/releases/download/v3.2.3/calicoctl" - -################################ DOCKER CONFIG SEGMENT ################################################### -# docker registry ip:port -DOCKER_REGISTRY="10.120.196.232:5000" -# /var/lib/docker is used if DOCKER_STORE_PATH not specified -DOCKER_STORE_PATH= - -##### System component download url address, Generally do not need to be modified ##### -DOCKER_REPO="https://download.docker.com/linux/centos/7/x86_64/stable/Packages/" -DOCKER_VERSION="docker-ce" -DOCKER_VERSION_NUM="18.06.1.ce" -DOCKER_ENGINE_RPM="${DOCKER_VERSION}-${DOCKER_VERSION_NUM}-3.el7.x86_64.rpm" - -################################# NVIDIA CONFIGURATION ############################################# -NVIDIA_DETECT_URL="http://mirror.rackspace.com/elrepo/elrepo/el7/x86_64/RPMS" -# NVIDIA_DRIVER_VERSION can be used by download server to decide which version of -# nvidia driver should be download -NVIDIA_DRIVER_VERSION="" -NVIDIA_DOCKER_VERSION="2.0.3" -NVIDIA_DOCKER_GIT_SNAPSHOT_URL="https://api.github.com/repos/nvidia/" diff --git a/dev-support/submarine-installer/install.sh b/dev-support/submarine-installer/install.sh deleted file mode 100755 index 93691b0..0000000 --- a/dev-support/submarine-installer/install.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/env bash -# 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. -# description: submarine install scripts. - -ROOT=$(cd "$(dirname "$0")"; pwd) -SUBMARINE_INSTALLER_VERSION="v0.8.0" -PACKAGE_DIR=${ROOT}/package -SCRIPTS_DIR=${ROOT}/scripts -INSTALL_TEMP_DIR=${ROOT}/temp -DOWNLOAD_DIR=${ROOT}/downloads -DATE=`date +%Y%m%d-%H:%M:%S` -LOG=${ROOT}/logs/install.log.`date +%Y%m%d%H%M%S` -LOCAL_HOST_IP_LIST=() -LOCAL_HOST_IP="" -OPERATING_SYSTEM="" -DOWNLOAD_HTTP="" - -# import shell script -. ${ROOT}/install.conf -. ${ROOT}/scripts/calico.sh -. ${ROOT}/scripts/docker.sh -. ${ROOT}/scripts/download-server.sh -. ${ROOT}/scripts/environment.sh -. ${ROOT}/scripts/etcd.sh -. ${ROOT}/scripts/yarn.sh -. ${ROOT}/scripts/yarn_insecure.sh -. ${ROOT}/scripts/menu.sh -. ${ROOT}/scripts/nvidia.sh -. ${ROOT}/scripts/nvidia-docker.sh -. ${ROOT}/scripts/submarine.sh -. ${ROOT}/scripts/utils.sh - -#================================= Main ======================================== -mkdir $ROOT/logs/ -p -mkdir $INSTALL_TEMP_DIR -p -mkdir $DOWNLOAD_DIR -p - -source /etc/os-release -OPERATING_SYSTEM=$ID - -get_ip_list -ipCount=${#LOCAL_HOST_IP_LIST[@]} -if [[ $ipCount -eq 1 ]]; then - LOCAL_HOST_IP=${LOCAL_HOST_IP_LIST[0]} -else - echo -e "Detect the network card IP in the server, \e[31m[${LOCAL_HOST_IP_LIST[@]}]\e[0m" - echo -n -e "please enter a valid IP address: " - - read ipInput - if ! valid_ip $ipInput; then - echo -e "you input \e[31m$ipInput\e[0m address format is incorrect! " | tee -a $LOG - exit_install - else - LOCAL_HOST_IP=$ipInput - fi -fi - -echo -n -e "Please confirm whether the IP address of this machine is \e[31m${LOCAL_HOST_IP}\e[0m?[y|n]" -read myselect -if [[ "$myselect" != "y" && "$myselect" != "Y" ]]; then - exit_install -fi - -check_install_conf - -if [[ -n "$DOWNLOAD_SERVER_IP" && -n "$DOWNLOAD_SERVER_PORT" && "$DOWNLOAD_SERVER_IP" != "$LOCAL_HOST_IP" ]]; then - DOWNLOAD_HTTP="http://${DOWNLOAD_SERVER_IP}:${DOWNLOAD_SERVER_PORT}" -fi - -check_install_user - -# Clean up the installation temporary directory -rm $INSTALL_TEMP_DIR/* -rf - - -menu_index="0" -for ((j=1;;j++)) -do - menu - case "$menu_index" in - "0") - menu_index="$menu_choice" - ;; - "1"|"2"|"3"|"4"|"5"|"6"|"7"|"8") - # echo "aaaa=$menu_index-$menu_choice" - menu_process - if [[ $? = 1 ]]; then - echo "Press any key to return menu!" - read - fi - ;; - "a") - exit_install - ;; - "q") - exit_install - ;; - *) - menu_index="0" - menu_choice="0" - menu - ;; - esac -done diff --git a/dev-support/submarine-installer/package/calico/calico-node.service b/dev-support/submarine-installer/package/calico/calico-node.service deleted file mode 100644 index 744c419..0000000 --- a/dev-support/submarine-installer/package/calico/calico-node.service +++ /dev/null @@ -1,50 +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. - -[Unit] -Description=calico node -After=docker.service -Requires=docker.service - -[Service] -User=root -PermissionsStartOnly=true -ExecStart=/usr/bin/docker run --net=host --privileged --name=calico-node \ - -e ETCD_ENDPOINTS=ETCD_ENDPOINTS_REPLACE \ - -e CALICO_LIBNETWORK_ENABLED=true \ - -e CALICO_NETWORKING_BACKEND=bird \ - -e CALICO_DISABLE_FILE_LOGGING=true \ - -e CALICO_IPV4POOL_CIDR=CALICO_IPV4POOL_CIDR_REPLACE/16 \ - -e CALICO_IPV4POOL_IPIP=always \ - -e FELIX_DEFAULTENDPOINTTOHOSTACTION=ACCEPT \ - -e FELIX_IPV6SUPPORT=false \ - -e FELIX_LOGSEVERITYSCREEN=info \ - -e FELIX_IPINIPMTU=1440 \ - -e FELIX_HEALTHENABLED=true \ - -e IP= \ - -v /etc/calico/ssl:/etc/calico/ssl \ - -v /var/run/calico:/var/run/calico \ - -v /lib/modules:/lib/modules \ - -v /run/docker/plugins:/run/docker/plugins \ - -v /var/run/docker.sock:/var/run/docker.sock \ - -v /var/log/calico:/var/log/calico \ - calico/node:v2.6.2 -ExecStop=/usr/bin/docker rm -f calico-node -Restart=always -RestartSec=10 - -[Install] -WantedBy=multi-user.target \ No newline at end of file diff --git a/dev-support/submarine-installer/package/calico/calicoctl.cfg b/dev-support/submarine-installer/package/calico/calicoctl.cfg deleted file mode 100644 index 44ada86..0000000 --- a/dev-support/submarine-installer/package/calico/calicoctl.cfg +++ /dev/null @@ -1,22 +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. - -apiVersion: v1 -kind: calicoApiConfig -metadata: -spec: - datastoreType: "etcdv2" - etcdEndpoints: ETCD_ENDPOINTS_REPLACE \ No newline at end of file diff --git a/dev-support/submarine-installer/package/docker/daemon.json b/dev-support/submarine-installer/package/docker/daemon.json deleted file mode 100644 index 5e7e0cf..0000000 --- a/dev-support/submarine-installer/package/docker/daemon.json +++ /dev/null @@ -1,23 +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. - -{ - "insecure-registries": ["DOCKER_REGISTRY_REPLACE"], - "cluster-store":"CLUSTER_STORE_REPLACE", - "cluster-advertise":"LOCAL_HOST_IP_REPLACE:2375", - "dns": ["YARN_REGISTRY_DNS_HOST_REPLACE", LOCAL_DNS_HOST_REPLACE], - "hosts": ["tcp://LOCAL_HOST_IP_REPLACE:2375","unix:///var/run/docker.sock"] -} diff --git a/dev-support/submarine-installer/package/docker/docker.service b/dev-support/submarine-installer/package/docker/docker.service deleted file mode 100644 index f444f99..0000000 --- a/dev-support/submarine-installer/package/docker/docker.service +++ /dev/null @@ -1,35 +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. - -[Unit] -Description=Docker Application Container Engine -Documentation=http://docs.docker.io - -[Service] -Environment="PATH=/usr/bin:/bin:/sbin:/usr/bin:/usr/sbin" -ExecStart=/usr/bin/dockerd --log-level=error -ExecStartPost=/sbin/iptables -I FORWARD -s 0.0.0.0/0 -j ACCEPT -ExecReload=/bin/kill -s HUP $MAINPID -Restart=on-failure -RestartSec=5 -LimitNOFILE=infinity -LimitNPROC=infinity -LimitCORE=infinity -Delegate=yes -KillMode=process - -[Install] -WantedBy=multi-user.target \ No newline at end of file diff --git a/dev-support/submarine-installer/package/etcd/etcd.service b/dev-support/submarine-installer/package/etcd/etcd.service deleted file mode 100644 index 5a44ce2..0000000 --- a/dev-support/submarine-installer/package/etcd/etcd.service +++ /dev/null @@ -1,40 +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. - -[Unit] -Description=etcd -Documentation=https://github.com/coreos/etcd - -[Service] -Type=notify -Restart=always -RestartSec=5s -LimitNOFILE=40000 -TimeoutStartSec=0 - -ExecStart=/usr/bin/etcd \ - --name=ETCD_NODE_NAME_REPLACE \ - --data-dir=/var/lib/etcd \ - --listen-client-urls=http://LOCAL_HOST_REPLACE:2379,http://127.0.0.1:2379 \ - --listen-peer-urls=http://LOCAL_HOST_REPLACE:2380 \ - --advertise-client-urls=http://LOCAL_HOST_REPLACE:2379 \ - --initial-advertise-peer-urls=http://LOCAL_HOST_REPLACE:2380 \ - --initial-cluster=INITIAL_CLUSTER_REPLACE \ - --initial-cluster-token=etcd-token \ - --initial-cluster-state=new - -[Install] -WantedBy=multi-user.target \ No newline at end of file diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc b/dev-support/submarine-installer/package/hadoop/yarn/etc deleted file mode 120000 index c33e2a0..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc +++ /dev/null @@ -1 +0,0 @@ -etc_secure/ \ No newline at end of file diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/capacity-scheduler.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/capacity-scheduler.xml deleted file mode 100644 index 742fcd2..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/capacity-scheduler.xml +++ /dev/null @@ -1,131 +0,0 @@ - - - - - yarn.scheduler.capacity.maximum-applications - - 20000 - - Maximum number of applications that can be pending and running. - - - - - yarn.scheduler.capacity.maximum-am-resource-percent - 0.2 - - Maximum percent of resources in the cluster which can be used to run - application masters i.e. controls number of concurrent running - applications. - - - - - yarn.scheduler.capacity.resource-calculator - - org.apache.hadoop.yarn.util.resource.DominantResourceCalculator - - The ResourceCalculator implementation to be used to compare - Resources in the scheduler. - The default i.e. DefaultResourceCalculator only uses Memory while - DominantResourceCalculator uses dominant-resource to compare - multi-dimensional resources such as Memory, CPU etc. - - - - - yarn.scheduler.capacity.root.queues - default,dev - - The queues at the this level (root is the root queue). - - - - - yarn.scheduler.capacity.root.default.capacity - [memory=100Gi,vcores=20,gpu=1] - Default queue target capacity. - - - - yarn.scheduler.capacity.root.default.user-limit-factor - 1 - - The default value is 1 - - - - - yarn.scheduler.capacity.root.default.maximum-capacity - [memory=200Gi,vcores=40,gpu=2] - - The maximum capacity of the default queue. - - - - - yarn.scheduler.capacity.root.default.user-limit-factor - 2.0 - - - - yarn.scheduler.capacity.root.dev.capacity - [memory=100Gi,vcores=20,gpu=1] - Default queue target capacity. - - - - yarn.scheduler.capacity.root.dev.maximum-capacity - [memory=200Gi,vcores=40,gpu=2] - - The maximum capacity of the default queue. - - - - yarn.scheduler.capacity.root.default.state - RUNNING - - The state of the default queue. State can be one of RUNNING or STOPPED. - - - - - yarn.scheduler.capacity.root.default.acl_submit_applications - * - - The ACL of who can submit jobs to the default queue. - - - - - yarn.scheduler.capacity.root.default.acl_administer_queue - * - - The ACL of who can administer jobs on the default queue. - - - - - yarn.scheduler.capacity.node-locality-delay - 40 - - Number of missed scheduling opportunities after which the CapacityScheduler - attempts to schedule rack-local containers. - Typically this should be set to number of nodes in the cluster, By default is setting - approximately number of nodes in one rack which is 40. - - - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/container-executor.cfg b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/container-executor.cfg deleted file mode 100644 index 40219ec..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/container-executor.cfg +++ /dev/null @@ -1,42 +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. - -yarn.nodemanager.local-dirs=YARN_NODEMANAGER_LOCAL_DIRS_REPLACE -yarn.nodemanager.linux-container-executor.group=yarn -yarn.nodemanager.log-dirs=YARN_NODEMANAGER_LOG_DIRS_REPLACE -banned.users=root -allowed.system.users=yarn -min.user.id=500 - -[docker] -module.enabled=true -docker.binary=/usr/bin/docker -docker.allowed.capabilities=SYS_CHROOT,MKNOD,SETFCAP,SETPCAP,FSETID,CHOWN,AUDIT_WRITE,SETGID,NET_RAW,FOWNER,SETUID,DAC_OVERRIDE,KILL,NET_BIND_SERVICE,DAC_READ_SEARCH,SYS_PTRACE,SYS_ADMIN -docker.allowed.networks=bridge,host,none,CALICO_NETWORK_NAME_REPLACE -docker.allowed.ro-mounts=/etc/group,/etc/passwd,/etc/krb5.conf,YARN_NODEMANAGER_LOCAL_DIRS_REPLACE,regex:^nvidia_driver_.*$ -docker.allowed.rw-mounts=YARN_NODEMANAGER_LOCAL_DIRS_REPLACE,YARN_NODEMANAGER_LOG_DIRS_REPLACE -docker.privileged-containers.enabled=false -docker.trusted.registries=local,centos,hortonworks,DOCKER_REGISTRY_REPLACE -docker.allowed.volume-drivers=nvidia-docker -docker.allowed.devices=regex:^/dev/nvidia.*$ -docker.allowed.runtimes=nvidia - -[gpu] -module.enabled=true - -[cgroups] -root=/sys/fs/cgroup -yarn-hierarchy=YARN_HIERARCHY_REPLACE diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/core-site.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/core-site.xml deleted file mode 100755 index 72c7f2e..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/core-site.xml +++ /dev/null @@ -1,209 +0,0 @@ - - - - - - - - - fs.defaultFS - FS_DEFAULTFS_REPLACE - The name of the default file system. Either the literal string "local" or a host:port for NDFS. - true - - - - - io.compression.codecs - org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.DefaultCodec,com.hadoop.compression.lzo.LzoCodec,com.hadoop.compression.lzo.LzopCodec,org.apache.hadoop.io.compress.BZip2Codec,org.apache.hadoop.io.compress.Lz4Codec,org.apache.hadoop.io.compress.SnappyCodec - - - - io.compression.codec.lzo.class - com.hadoop.compression.lzo.LzoCodec - - - - - webinterface.private.actions - false - If set to true, the web interfaces of JT and NN may - contain - actions, such as kill job, delete file, etc., that should - not be exposed to public. Enable this option if the interfaces - are only reachable by those who have the right authorization. - - - - - hadoop.security.authentication - simple - - Set the authentication for the cluster. Valid values are: simple or - kerberos. - - - - - hadoop.security.authorization - false - - Enable authorization for different protocols. - - - - - hadoop.security.groups.cache.secs - 14400 - - - - - hadoop.http.filter.initializers - org.apache.hadoop.security.AuthenticationFilterInitializer - - - hadoop.http.authentication.type - simple - - - - hadoop.http.authentication.token.validity - 36000 - - - hadoop.http.authentication.signature.secret.file - HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE_REPLACE - - The signature secret for signing the authentication tokens. - If not set a random secret is generated at startup time. - The same secret should be used for JT/NN/DN/TT configurations. - - - - - hadoop.http.authentication.simple.anonymous.allowed - true - - - - hadoop.tmp.dir - /tmp/hadoop-${user.name} - - - - io.bytes.per.checksum - 4096 - - - - fs.inmemory.size.mb - 200 - - - - io.file.buffer.size - 131072 - - - - hadoop.proxyuser.mapred.hosts - * - - - hadoop.proxyuser.mapred.groups - * - - - - hadoop.proxyuser.hive.hosts - * - - - hadoop.proxyuser.hive.groups - * - - - - hadoop.proxyuser.hadoop.hosts - * - - - hadoop.proxyuser.hadoop.groups - * - - - - hadoop.proxyuser.yarn.hosts - * - - - hadoop.proxyuser.yarn.groups - * - - - - - - Is the registry enabled in the YARN Resource Manager? - If true, the YARN RM will, as needed. - create the user and system paths, and purge - service records when containers, application attempts - and applications complete. - If false, the paths must be created by other means, - and no automatic cleanup of service records will take place. - - hadoop.registry.rm.enabled - false - - - - - A comma separated list of hostname:port pairs defining the - zookeeper quorum binding for the registry - - hadoop.registry.zk.quorum - YARN_ZK_ADDRESS_REPLACE - - - - - The root zookeeper node for the registry - - hadoop.registry.zk.root - /registry - - - - - Zookeeper connection retry count before failing - - hadoop.registry.zk.retry.times - 5 - - - - - - hadoop.registry.zk.retry.interval.ms - 1000 - - - - - Zookeeper session timeout in milliseconds - - hadoop.registry.zk.connection.timeout.ms - 15000 - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/gpu/yarn-site-gpu.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/gpu/yarn-site-gpu.xml deleted file mode 100644 index f76c9b6..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/gpu/yarn-site-gpu.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - yarn.nodemanager.resource-plugins - yarn.io/gpu - - - - yarn.nodemanager.resource-plugins.gpu.docker-plugin - nvidia-docker-v2 - - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/hadoop-env.sh b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/hadoop-env.sh deleted file mode 100755 index 260b9e4..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/hadoop-env.sh +++ /dev/null @@ -1,108 +0,0 @@ -# Copyright 2011 The Apache Software Foundation -# -# 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. - -# Set Hadoop-specific environment variables here. - -# The only required environment variable is JAVA_HOME. All others are -# optional. When running a distributed configuration it is best to -# set JAVA_HOME in this file, so that it is correctly defined on -# remote nodes. - -# The java implementation to use. -#export JAVA_HOME=${JAVA_HOME} - - -###mod -export JAVA_HOME="JAVA_HOME_REPLACE" -export HADOOP_HOME="HADOOP_HOME_REPLACE" - -#export HADOOP_ROOT_LOGGER=INFO,DRFA -export HADOOP_SECURITY_LOGGER=INFO,DRFAS -export HDFS_AUDIT_LOGGER=INFO,DRFAAUDIT - -export JSVC_HOME=$HADOOP_HOME/bin -export HADOOP_CLASSPATH=$HADOOP_HOME/lib/native:$HADOOP_CLASSPATH -# default heapsize for hadoop daemon -export HADOOP_HEAPSIZE=5120 -export HADOOP_OPTS="-Djava.net.preferIPv4Stack=true ${HADOOP_OPTS}" -export HADOOP_LOG_DIR="YARN_LOG_DIR_REPLACE" -export HADOOP_SECURE_DN_LOG_DIR=$HADOOP_LOG_DIR -export HADOOP_PID_DIR="YARN_PID_DIR_REPLACE" -export HADOOP_SECURE_DN_PID_DIR=$HADOOP_PID_DIR - -export HADOOP_NAMENODE_USER=hdfs -export HADOOP_DATANODE_USER=hdfs -export HADOOP_SECURE_DN_USER=hdfs - -GC_LOG_DATE=`date +%F` -GC_LOG_DIR="GC_LOG_DIR_REPLACE" -export NAMENODE_JVM_OPTS="-Dcom.netease.appname=NameNode -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/namenode.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -server -Xmx71680m -Xms71680m -Xmn20480m -XX:SurvivorRatio=4 -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC" -export DATANODE_JVM_OPTS="-Dcom.netease.appname=DataNode -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/datanode.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -server -Xmx10240m -Xms10240m -Xmn2048m -XX:SurvivorRatio=4 -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC" -###mod - - -# The jsvc implementation to use. Jsvc is required to run secure datanodes. -#export JSVC_HOME=${JSVC_HOME} - -export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-"/etc/hadoop"} - -# Extra Java CLASSPATH elements. Automatically insert capacity-scheduler. -for f in $HADOOP_HOME/contrib/capacity-scheduler/*.jar; do - if [ "$HADOOP_CLASSPATH" ]; then - export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$f - else - export HADOOP_CLASSPATH=$f - fi -done - -# The maximum amount of heap to use, in MB. Default is 1000. -#export HADOOP_HEAPSIZE= -#export HADOOP_NAMENODE_INIT_HEAPSIZE="" - -# Extra Java runtime options. Empty by default. -# export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true" - -# Command specific options appended to HADOOP_OPTS when specified -export HADOOP_NAMENODE_OPTS="$NAMENODE_JVM_OPTS -Dhadoop.security.logger=${HADOOP_SECURITY_LOGGER:-INFO,RFAS} -Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER:-INFO,NullAppender} $HADOOP_NAMENODE_OPTS" -export HADOOP_DATANODE_OPTS="$DATANODE_JVM_OPTS -Dhadoop.security.logger=ERROR,RFAS $HADOOP_DATANODE_OPTS" - -export HADOOP_SECONDARYNAMENODE_OPTS="-Dhadoop.security.logger=${HADOOP_SECURITY_LOGGER:-INFO,RFAS} -Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER:-INFO,NullAppender} $HADOOP_SECONDARYNAMENODE_OPTS" - -# The following applies to multiple commands (fs, dfs, fsck, distcp etc) -#export HADOOP_CLIENT_OPTS="-Xmx512m $HADOOP_CLIENT_OPTS" -#export HADOOP_CLIENT_OPTS="-Xmx512m $HADOOP_CLIENT_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=6002" -#HADOOP_JAVA_PLATFORM_OPTS="-XX:-UsePerfData $HADOOP_JAVA_PLATFORM_OPTS" - -# On secure datanodes, user to run the datanode as after dropping privileges -#export HADOOP_SECURE_DN_USER=${HADOOP_SECURE_DN_USER} - -# Where log files are stored. $HADOOP_HOME/logs by default. -#export HADOOP_LOG_DIR=${HADOOP_LOG_DIR}/$USER - -# Where log files are stored in the secure data environment. -#export HADOOP_SECURE_DN_LOG_DIR=${HADOOP_LOG_DIR}/${HADOOP_HDFS_USER} - -# The directory where pid files are stored. /tmp by default. -# NOTE: this should be set to a directory that can only be written to by -# the user that will run the hadoop daemons. Otherwise there is the -# potential for a symlink attack. -#export HADOOP_PID_DIR=${HADOOP_PID_DIR} -#export HADOOP_SECURE_DN_PID_DIR=${HADOOP_PID_DIR} - -# A string representing this instance of hadoop. $USER by default. -export HADOOP_IDENT_STRING=$USER diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/hdfs-site.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/hdfs-site.xml deleted file mode 100755 index e5dfce6..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/hdfs-site.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - local.hostname.nn1 - HDFS_NAMENODE_HOSTS1_REPLACE - - - local.hostname.nn2 - HDFS_NAMENODE_HOSTS2_REPLACE - - - - dfs.ha.namenodes.LOCAL_REALM_REPLACE - nn1,nn2 - - - - dfs.namenode.rpc-address.LOCAL_REALM_REPLACE.nn1 - ${local.hostname.nn1}:8020 - - - dfs.namenode.rpc-address.LOCAL_REALM_REPLACE.nn2 - ${local.hostname.nn2}:8020 - - - - dfs.nameservices - LOCAL_REALM_REPLACE - - - - dfs.client.failover.proxy.provider.LOCAL_REALM_REPLACE - org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider - - - - - fs.permissions.umask-mode - 027 - - - - dfs.blocksize - 268435456 - - - - dfs.client.read.shortcircuit - true - - - - dfs.client.read.shortcircuit.streams.cache.size - 1024 - - - - dfs.client.read.shortcircuit.streams.cache.size.expiry.ms - 300000 - - - - dfs.domain.socket.path - /var/lib/hadoop-hdfs/dn_socket - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/mapred-env.sh b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/mapred-env.sh deleted file mode 100755 index 84bee0b..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/mapred-env.sh +++ /dev/null @@ -1,47 +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. - -## -## THIS FILE ACTS AS AN OVERRIDE FOR hadoop-env.sh FOR ALL -## WORK DONE BY THE mapred AND RELATED COMMANDS. -## -## Precedence rules: -## -## mapred-env.sh > hadoop-env.sh > hard-coded defaults -## -## MAPRED_xyz > HADOOP_xyz > hard-coded defaults -## - -### -# Job History Server specific parameters -### - -# Specify the max heapsize for the JobHistoryServer. If no units are -# given, it will be assumed to be in MB. -# This value will be overridden by an Xmx setting specified in HADOOP_OPTS, -# and/or MAPRED_HISTORYSERVER_OPTS. -# Default is the same as HADOOP_HEAPSIZE_MAX. -#export HADOOP_JOB_HISTORYSERVER_HEAPSIZE=5120 - -# Specify the JVM options to be used when starting the HistoryServer. -# These options will be appended to the options specified as HADOOP_OPTS -# and therefore may override any similar flags set in HADOOP_OPTS -GC_LOG_DATE=`date +%F` -GC_LOG_DIR="GC_LOG_DIR_REPLACE" -export MAPRED_HISTORYSERVER_OPTS="-server -Xmx5g -Xms5g -Xmn2g -XX:SurvivorRatio=4 -Xss256k -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -Xloggc:${GC_LOG_DIR}/rm.gc.log-${GC_LOG_DATE}" - -# Specify the log4j settings for the JobHistoryServer -# Java property: hadoop.root.logger -#export HADOOP_JHS_LOGGER=INFO,RFA diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/mapred-site.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/mapred-site.xml deleted file mode 100755 index 19c7433..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/mapred-site.xml +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - mapreduce.framework.name - yarn - - - - yarn.app.mapreduce.am.staging-dir - YARN_APP_MAPREDUCE_AM_STAGING_DIR_REPLACE - - - - - mapreduce.jobhistory.address - YARN_JOB_HISTORY_HOST_REPLACE:10020 - - - mapreduce.jobhistory.webapp.address - YARN_JOB_HISTORY_HOST_REPLACE:19888 - - - - - yarn.app.mapreduce.am.resource.mb - 1536 - - - mapreduce.map.memory.mb - 1024 - - - mapreduce.reduce.memory.mb - 1536 - - - mapreduce.map.java.opts - -Xmx820M - - - - mapreduce.reduce.java.opts - -Xmx1228M - - - yarn.app.mapreduce.am.command-opts - -Xmx1228M - - - - - - io.sort.factor - 100 - - - io.sort.mb - 200 - - - - - mapreduce.map.speculative - false - - - mapreduce.reduce.speculative - false - - - - - mapreduce.map.output.compress - true - - - mapreduce.map.output.compress.codec - com.hadoop.compression.lzo.LzoCodec - - - - yarn.app.mapreduce.am.env - HADOOP_MAPRED_HOME=$HADOOP_HOME - - - mapreduce.map.env - HADOOP_MAPRED_HOME=$HADOOP_HOME - - - mapreduce.reduce.env - HADOOP_MAPRED_HOME=$HADOOP_HOME - - - - mapreduce.job.hdfs-servers - FS_DEFAULTFS_REPLACE - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/resource-types.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/resource-types.xml deleted file mode 100755 index 54ea7dc..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/resource-types.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - yarn.resource-types - yarn.io/gpu - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/yarn-env.sh b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/yarn-env.sh deleted file mode 100755 index 41c27e1..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/yarn-env.sh +++ /dev/null @@ -1,127 +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. - - -###mod -export YARN_ROOT_LOGGER=INFO,DRFA -#export YARN_ROOT_LOGGER=DEBUG,DRFA -export YARN_LOG_DIR=$HADOOP_LOG_DIR -export YARN_PID_DIR=$HADOOP_PID_DIR - -GC_LOG_DATE=`date +%F` -GC_LOG_DIR="GC_LOG_DIR_REPLACE" -#export RESOURCEMANAGER_JVM_OPTS="-Dcom.netease.appname=ResourceManager -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/resourcemanager.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -server -Xmx20480m -Xms20480m -Xmn5120m -XX:SurvivorRatio=4 -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC" -export RESOURCEMANAGER_JVM_OPTS="-Dcom.netease.appname=ResourceManager -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/resourcemanager.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6001" -export NODEMANAGER_JVM_OPTS="-Dcom.netease.appname=NodeManager -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/nodemanager.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -server -Xmx5120m -Xms5120m -Xmn1024m -XX:SurvivorRatio=4 -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC" -#export NODEMANAGER_JVM_OPTS="-Dcom.netease.appname=NodeManager -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/nodemanager.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=6001" -###mod -#export YARN_TIMELINESERVER_OPTS="-Dcom.netease.appname=TimelineServer -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/timelineserver.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6001" -#export YARN_TIMELINEREADER_OPTS="-Dcom.netease.appname=TimelineReaderServer -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/timelineserver.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=6001" - -# User for YARN daemons -export HADOOP_YARN_USER=${HADOOP_YARN_USER:-yarn} - -# resolve links - $0 may be a softlink -export YARN_CONF_DIR="${YARN_CONF_DIR:-$HADOOP_YARN_HOME/etc/hadoop}" - -# some Java parameters -# export JAVA_HOME=/home/y/libexec/jdk1.6.0/ -if [ "$JAVA_HOME" != "" ]; then - #echo "run java in $JAVA_HOME" - JAVA_HOME=$JAVA_HOME -fi - -if [ "$JAVA_HOME" = "" ]; then - echo "Error: JAVA_HOME is not set." - exit 1 -fi - -JAVA=$JAVA_HOME/bin/java -JAVA_HEAP_MAX=-Xmx1000m - -# For setting YARN specific HEAP sizes please use this -# Parameter and set appropriately -# YARN_HEAPSIZE=1000 - -# check envvars which might override default args -if [ "$YARN_HEAPSIZE" != "" ]; then - JAVA_HEAP_MAX="-Xmx""$YARN_HEAPSIZE""m" -fi - -# Resource Manager specific parameters - -# Specify the max Heapsize for the ResourceManager using a numerical value -# in the scale of MB. For example, to specify an jvm option of -Xmx1000m, set -# the value to 1000. -# This value will be overridden by an Xmx setting specified in either YARN_OPTS -# and/or YARN_RESOURCEMANAGER_OPTS. -# If not specified, the default value will be picked from either YARN_HEAPMAX -# or JAVA_HEAP_MAX with YARN_HEAPMAX as the preferred option of the two. -#export YARN_RESOURCEMANAGER_HEAPSIZE=1000 - -# Specify the JVM options to be used when starting the ResourceManager. -# These options will be appended to the options specified as YARN_OPTS -# and therefore may override any similar flags set in YARN_OPTS -export YARN_RESOURCEMANAGER_OPTS="$RESOURCEMANAGER_JVM_OPTS" - -# Node Manager specific parameters - -# Specify the max Heapsize for the NodeManager using a numerical value -# in the scale of MB. For example, to specify an jvm option of -Xmx1000m, set -# the value to 1000. -# This value will be overridden by an Xmx setting specified in either YARN_OPTS -# and/or YARN_NODEMANAGER_OPTS. -# If not specified, the default value will be picked from either YARN_HEAPMAX -# or JAVA_HEAP_MAX with YARN_HEAPMAX as the preferred option of the two. -#export YARN_NODEMANAGER_HEAPSIZE=1000 - -# Specify the JVM options to be used when starting the NodeManager. -# These options will be appended to the options specified as YARN_OPTS -# and therefore may override any similar flags set in YARN_OPTS -export YARN_NODEMANAGER_OPTS="$NODEMANAGER_JVM_OPTS" - -# so that filenames w/ spaces are handled correctly in loops below -IFS= - - -# default log directory & file -if [ "$YARN_LOG_DIR" = "" ]; then - YARN_LOG_DIR="$HADOOP_YARN_HOME/logs" -fi -if [ "$YARN_LOGFILE" = "" ]; then - YARN_LOGFILE='yarn.log' -fi - -# default policy file for service-level authorization -if [ "$YARN_POLICYFILE" = "" ]; then - YARN_POLICYFILE="hadoop-policy.xml" -fi - -# restore ordinary behaviour -unset IFS - - -YARN_OPTS="$YARN_OPTS -Dhadoop.log.dir=$YARN_LOG_DIR" -YARN_OPTS="$YARN_OPTS -Dyarn.log.dir=$YARN_LOG_DIR" -YARN_OPTS="$YARN_OPTS -Dhadoop.log.file=$YARN_LOGFILE" -YARN_OPTS="$YARN_OPTS -Dyarn.log.file=$YARN_LOGFILE" -YARN_OPTS="$YARN_OPTS -Dyarn.home.dir=$YARN_COMMON_HOME" -YARN_OPTS="$YARN_OPTS -Dyarn.id.str=$YARN_IDENT_STRING" -YARN_OPTS="$YARN_OPTS -Dhadoop.root.logger=${YARN_ROOT_LOGGER:-INFO,console}" -YARN_OPTS="$YARN_OPTS -Dyarn.root.logger=${YARN_ROOT_LOGGER:-INFO,console}" -if [ "x$JAVA_LIBRARY_PATH" != "x" ]; then - YARN_OPTS="$YARN_OPTS -Djava.library.path=$JAVA_LIBRARY_PATH" -fi -YARN_OPTS="$YARN_OPTS -Dyarn.policy.file=$YARN_POLICYFILE" diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/yarn-site.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/yarn-site.xml deleted file mode 100755 index ff0fc17..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_insecure/hadoop/yarn-site.xml +++ /dev/null @@ -1,655 +0,0 @@ - - - - - - - local.hostname.rm1 - YARN_RESOURCE_MANAGER_HOSTS1_REPLACE - - - local.hostname.rm2 - YARN_RESOURCE_MANAGER_HOSTS2_REPLACE - - - local.cluster-id - LOCAL_CLUSTER_ID_REPLACE - - - - - yarn.resourcemanager.zk-address - YARN_ZK_ADDRESS_REPLACE - - - yarn.resourcemanager.recovery.enabled - true - - - yarn.resourcemanager.store.class - org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore - - - yarn.resourcemanager.zk-timeout-ms - 90000 - - - yarn.resourcemanager.am.max-attempts - 3 - - - yarn.resourcemanager.state-store.max-completed-applications - 200 - - - - - yarn.resourcemanager.ha.enabled - true - - - yarn.resourcemanager.cluster-id - ${local.cluster-id} - - - yarn.resourcemanager.ha.rm-ids - rm1,rm2 - - - - yarn.resourcemanager.hostname.rm1 - ${local.hostname.rm1} - - - - yarn.resourcemanager.hostname.rm2 - ${local.hostname.rm2} - - - - yarn.resourcemanager.webapp.address.rm1 - ${local.hostname.rm1}:8088 - - - - yarn.resourcemanager.webapp.address.rm2 - ${local.hostname.rm2}:8088 - - - - - yarn.nodemanager.aux-services - mapreduce_shuffle,spark_shuffle,timeline_collector - - - yarn.nodemanager.aux-services.mapreduce_shuffle.class - org.apache.hadoop.mapred.ShuffleHandler - - - yarn.nodemanager.aux-services.spark_shuffle.class - org.apache.spark.network.yarn.YarnShuffleService - - - spark.yarn.shuffle.stopOnFailure - true - - - yarn.nodemanager.aux-services.timeline_collector.class - org.apache.hadoop.yarn.server.timelineservice.collector.PerNodeTimelineCollectorsAuxService - - - - - yarn.nodemanager.local-dirs - YARN_NODEMANAGER_LOCAL_DIRS_REPLACE - - - yarn.nodemanager.log-dirs - YARN_NODEMANAGER_LOG_DIRS_REPLACE - - - - - Where to aggregate logs in hdfs - yarn.nodemanager.remote-app-log-dir - YARN_AGGREGATED_LOG_DIR_REPLACE - - - yarn.log-aggregation-enable - true - - - yarn.log-aggregation.retain-seconds - 604800 - - - yarn.log-aggregation.retain-check-interval-seconds - 86400 - - - yarn.nodemanager.log-aggregation.compression-type - gz - - - - - - - - - yarn.nodemanager.container-executor.class - org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor - - - yarn.nodemanager.linux-container-executor.path - /etc/yarn/sbin/Linux-amd64-64/container-executor - - - yarn.nodemanager.linux-container-executor.group - yarn - - - - - Miniumum request grant-able by the RM scheduler - yarn.scheduler.minimum-allocation-mb - 512 - - - Maximum request grant-able by the RM scheduler - yarn.scheduler.maximum-allocation-mb - 32768 - - - yarn.scheduler.minimum-allocation-vcores - 1 - - - yarn.scheduler.maximum-allocation-vcores - 30 - - - yarn.resourcemanager.scheduler.class - - org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler - - - - yarn.scheduler.increment-allocation-mb - 512 - - - yarn.scheduler.fair.allow-undeclared-pools - false - - - - yarn.client.nodemanager-connect.max-wait-ms - 60000 - - - - - yarn.resourcemanager.client.thread-count - 64 - - - yarn.resourcemanager.resource-tracker.client.thread-count - 64 - - - yarn.resourcemanager.scheduler.client.thread-count - 64 - - - yarn.nodemanager.container-manager.thread-count - 32 - - - yarn.nodemanager.container-metrics.enable - true - Todo hbase metrics cleanup mechanism - - - - - The minimum space that must be available on a disk for - it to be used. This applies to yarn.nodemanager.local-dirs and - yarn.nodemanager.log-dirs. - yarn.nodemanager.disk-health-checker.min-free-space-per-disk-mb - 1000 - - - Defines how often NMs wake up to upload log files. - The default value is -1. By default, the logs will be uploaded when - the application is finished. By setting this configure, logs can be uploaded - periodically when the application is running. The minimum rolling-interval-seconds - can be set is 3600. - - yarn.nodemanager.log-aggregation.roll-monitoring-interval-seconds - 3600 - - - Enable the node manager to recover after starting - yarn.nodemanager.recovery.enabled - true - - - The local filesystem directory in which the node manager will - store state when recovery is enabled. - yarn.nodemanager.recovery.dir - YARN_NODEMANAGER_RECOVERY_DIR_REPLACE - - - - - yarn.nodemanager.resource.memory-mb - 204800 - - - yarn.nodemanager.resource.cpu-vcores - 40 - - - - yarn.admin.acl - hadoop,yarn - - - yarn.acl.enable - true - - - - - yarn.resourcemanager.nodes.exclude-path - YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH_REPLACE - - - If true, ResourceManager will have proxy-user privileges. - Use case: In a secure cluster, YARN requires the user hdfs delegation-tokens to - do localization and log-aggregation on behalf of the user. If this is set to true, - ResourceManager is able to request new hdfs delegation tokens on behalf of - the user. This is needed by long-running-service, because the hdfs tokens - will eventually expire and YARN requires new valid tokens to do localization - and log-aggregation. Note that to enable this use case, the corresponding - HDFS NameNode has to configure ResourceManager as the proxy-user so that - ResourceManager can itself ask for new tokens on behalf of the user when - tokens are past their max-life-time. - yarn.resourcemanager.proxy-user-privileges.enabled - true - - - - - yarn.resourcemanager.webapp.delegation-token-auth-filter.enabled - false - - - - hadoop.http.filter.initializers - org.apache.hadoop.security.AuthenticationFilterInitializer - - - hadoop.http.authentication.type - true - - - - - yarn.nodemanager.container.use.serialgc.enable - true - - - - - Indicate to clients whether Timeline service is enabled or not. - If enabled, the TimelineClient library used by end-users will post entities - and events to the Timeline server. - yarn.timeline-service.enabled - true - - - - The setting that controls whether yarn system metrics is - published on the timeline server or not by RM. - yarn.resourcemanager.system-metrics-publisher.enabled - true - - - - Indicate to clients whether to query generic application - data from timeline history-service or not. If not enabled then application - data is queried only from Resource Manager. - yarn.timeline-service.generic-application-history.enabled - true - - - - yarn.timeline-service.http-authentication.type - simple - - - - - yarn.timeline-service.hostname - YARN_TIMELINE_HOST_REPLACE - - - - yarn.timeline-service.hbase.coprocessor.jar.hdfs.location - /hbase/coprocessor - - - - URL for log aggregation server web service - yarn.log.server.web-service.url - http://YARN_TIMELINE_HOST_REPLACE:8189/ws/v2/applicationlog - - - - - yarn.timeline-service.leveldb-timeline-store.path - YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH_REPLACE - - - - yarn.timeline-service.leveldb-state-store.path - YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH_REPLACE - - - - yarn.timeline-service.leveldb-timeline-store.read-cache-size - 104857600 - - - - yarn.timeline-service.leveldb-timeline-store.start-time-read-cache-size - 10000 - - - - yarn.timeline-service.leveldb-timeline-store.start-time-write-cache-size - 10000 - - - - yarn.timeline-service.leveldb-timeline-store.ttl-interval-ms - 300000 - - - - yarn.timeline-service.recovery.enabled - true - - - - yarn.timeline-service.state-store-class - org.apache.hadoop.yarn.server.timeline.recovery.LeveldbTimelineStateStore - - - - yarn.timeline-service.store-class - org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore - - - - yarn.timeline-service.ttl-enable - true - - - - yarn.timeline-service.ttl-ms - 2678400000 - - - - - yarn.timeline-service.version - 2.0f - - - - The setting that controls whether yarn system metrics is - published on the Timeline service or not by RM And NM. - yarn.system-metrics-publisher.enabled - true - - - - The setting that controls whether yarn container events are - published to the timeline service or not by RM. This configuration setting - is for ATS V2. - - yarn.rm.system-metrics-publisher.emit-container-events - true - - - - Optional URL to an hbase-site.xml configuration file to be - used to connect to the timeline-service hbase cluster. If empty or not - specified, then the HBase configuration will be loaded from the classpath. - When specified the values in the specified configuration file will override - those from the ones that are present on the classpath. - - yarn.timeline-service.hbase.configuration.file - YARN_TIMELINE_SERVICE_HBASE_CONFIGURATION_FILE_REPLACE - - - - - yarn.timeline-service.versions - 1.5f,2.0f - - - - yarn.timeline-service.entity-group-fs-store.active-dir - YARN_TIMELINE_FS_STORE_DIR_REPLACE/active - - - - yarn.timeline-service.entity-group-fs-store.done-dir - YARN_TIMELINE_FS_STORE_DIR_REPLACE/done - - - - - yarn.timeline-service.reader.webapp.address - YARN_TIMELINE_HOST_REPLACE:8189 - - - - yarn.timeline-service.entity-group-fs-store.summary-store - org.apache.hadoop.yarn.server.timeline.RollingLevelDBTimelineStore - - - - Enable services rest api on ResourceManager. - yarn.webapp.api-service.enable - true - - - - The domain name for Hadoop cluster associated records. As short as possible. - hadoop.registry.dns.domain-name - ml - - - - The DNS functionality is enabled for the cluster. Default is false. - hadoop.registry.dns.enabled - true - - - Address associated with the network interface to which the DNS listener should bind. - hadoop.registry.dns.bind-address - YARN_REGISTRY_DNS_HOST_REPLACE - - - The port number for the DNS listener. The default port is 5353. - If the standard privileged port 53 is used, make sure start the DNS with jsvc support. - hadoop.registry.dns.bind-port - - YARN_REGISTRY_DNS_HOST_PORT_REPLACE - - - - - yarn.nodemanager.linux-container-executor.resources-handler.class - org.apache.hadoop.yarn.server.nodemanager.util.CgroupsLCEResourcesHandler - - - yarn.nodemanager.linux-container-executor.cgroups.mount - false - - - yarn.nodemanager.resource.percentage-physical-cpu-limit - 80 - - - Whether virtual memory limits will be enforced for containers. - yarn.nodemanager.vmem-check-enabled - false - - - - Whether YARN CGroups memory tracking is enabled. - yarn.nodemanager.resource.memory.enabled - true - - - - - yarn.nodemanager.runtime.linux.docker.default-container-network - - CALICO_NETWORK_NAME_REPLACE - - - yarn.nodemanager.runtime.linux.allowed-runtimes - default,docker - - - yarn.nodemanager.runtime.linux.docker.allowed-container-networks - host,none,bridge,CALICO_NETWORK_NAME_REPLACE - - - yarn.nodemanager.runtime.linux.docker.privileged-containers.allowed - false - - - yarn.nodemanager.runtime.linux.docker.privileged-containers.acl - - - - yarn.nodemanager.runtime.linux.docker.capabilities - CHOWN,DAC_OVERRIDE,FSETID,FOWNER,MKNOD,NET_RAW,SETGID,SETUID,SETFCAP,SETPCAP,NET_BIND_SERVICE,SYS_CHROOT,KILL,AUDIT_WRITE - - - - - yarn.webapp.ui2.enable - true - - - - - - yarn.service.base.path - /tmp/.LOCAL_CLUSTER_ID_REPLACE/ - - - - yarn.nodemanager.address - 0.0.0.0:45454 - - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/capacity-scheduler.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/capacity-scheduler.xml deleted file mode 100644 index 742fcd2..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/capacity-scheduler.xml +++ /dev/null @@ -1,131 +0,0 @@ - - - - - yarn.scheduler.capacity.maximum-applications - - 20000 - - Maximum number of applications that can be pending and running. - - - - - yarn.scheduler.capacity.maximum-am-resource-percent - 0.2 - - Maximum percent of resources in the cluster which can be used to run - application masters i.e. controls number of concurrent running - applications. - - - - - yarn.scheduler.capacity.resource-calculator - - org.apache.hadoop.yarn.util.resource.DominantResourceCalculator - - The ResourceCalculator implementation to be used to compare - Resources in the scheduler. - The default i.e. DefaultResourceCalculator only uses Memory while - DominantResourceCalculator uses dominant-resource to compare - multi-dimensional resources such as Memory, CPU etc. - - - - - yarn.scheduler.capacity.root.queues - default,dev - - The queues at the this level (root is the root queue). - - - - - yarn.scheduler.capacity.root.default.capacity - [memory=100Gi,vcores=20,gpu=1] - Default queue target capacity. - - - - yarn.scheduler.capacity.root.default.user-limit-factor - 1 - - The default value is 1 - - - - - yarn.scheduler.capacity.root.default.maximum-capacity - [memory=200Gi,vcores=40,gpu=2] - - The maximum capacity of the default queue. - - - - - yarn.scheduler.capacity.root.default.user-limit-factor - 2.0 - - - - yarn.scheduler.capacity.root.dev.capacity - [memory=100Gi,vcores=20,gpu=1] - Default queue target capacity. - - - - yarn.scheduler.capacity.root.dev.maximum-capacity - [memory=200Gi,vcores=40,gpu=2] - - The maximum capacity of the default queue. - - - - yarn.scheduler.capacity.root.default.state - RUNNING - - The state of the default queue. State can be one of RUNNING or STOPPED. - - - - - yarn.scheduler.capacity.root.default.acl_submit_applications - * - - The ACL of who can submit jobs to the default queue. - - - - - yarn.scheduler.capacity.root.default.acl_administer_queue - * - - The ACL of who can administer jobs on the default queue. - - - - - yarn.scheduler.capacity.node-locality-delay - 40 - - Number of missed scheduling opportunities after which the CapacityScheduler - attempts to schedule rack-local containers. - Typically this should be set to number of nodes in the cluster, By default is setting - approximately number of nodes in one rack which is 40. - - - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/container-executor.cfg b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/container-executor.cfg deleted file mode 100644 index c4bb5ea..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/container-executor.cfg +++ /dev/null @@ -1,42 +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. - -yarn.nodemanager.local-dirs=YARN_NODEMANAGER_LOCAL_DIRS_REPLACE -yarn.nodemanager.linux-container-executor.group=yarn -yarn.nodemanager.log-dirs=YARN_NODEMANAGER_LOG_DIRS_REPLACE -banned.users=root -allowed.system.users=yarn -min.user.id=500 - -[docker] -module.enabled=true -docker.binary=/usr/bin/docker -docker.allowed.capabilities=SYS_CHROOT,MKNOD,SETFCAP,SETPCAP,FSETID,CHOWN,AUDIT_WRITE,SETGID,NET_RAW,FOWNER,SETUID,DAC_OVERRIDE,KILL,NET_BIND_SERVICE,DAC_READ_SEARCH,SYS_PTRACE,SYS_ADMIN -docker.allowed.networks=YARN_DOCKER_ALLOWED_CONTAINER_NETWORKS_REPLACE -docker.allowed.ro-mounts=/etc/group,/etc/passwd,/etc/krb5.conf,YARN_NODEMANAGER_LOCAL_DIRS_REPLACE,HADOOP_HOME_REPLACE,regex:^nvidia_driver_.*$ -docker.allowed.rw-mounts=YARN_NODEMANAGER_LOCAL_DIRS_REPLACE,YARN_NODEMANAGER_LOG_DIRS_REPLACE -docker.privileged-containers.enabled=false -docker.trusted.registries=local,centos,hortonworks,DOCKER_REGISTRY_REPLACE -docker.allowed.volume-drivers=nvidia-docker -docker.allowed.devices=regex:^/dev/nvidia.*$ -docker.allowed.runtimes=nvidia - -[gpu] -module.enabled=true - -[cgroups] -root=/sys/fs/cgroup -yarn-hierarchy=YARN_HIERARCHY_REPLACE diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/core-site.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/core-site.xml deleted file mode 100755 index 27ed641..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/core-site.xml +++ /dev/null @@ -1,235 +0,0 @@ - - - - - - - local.realm - LOCAL_REALM_REPLACE - - - - - fs.defaultFS - FS_DEFAULTFS_REPLACE - The name of the default file system. Either the literal string "local" or a host:port for NDFS. - true - - - - - io.compression.codecs - org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.DefaultCodec,com.hadoop.compression.lzo.LzoCodec,com.hadoop.compression.lzo.LzopCodec,org.apache.hadoop.io.compress.BZip2Codec,org.apache.hadoop.io.compress.Lz4Codec,org.apache.hadoop.io.compress.SnappyCodec - - - - io.compression.codec.lzo.class - com.hadoop.compression.lzo.LzoCodec - - - - - webinterface.private.actions - false - If set to true, the web interfaces of JT and NN may - contain - actions, such as kill job, delete file, etc., that should - not be exposed to public. Enable this option if the interfaces - are only reachable by those who have the right authorization. - - - - - hadoop.security.authentication - kerberos - - Set the authentication for the cluster. Valid values are: simple or - kerberos. - - - - - hadoop.security.authorization - true - - Enable authorization for different protocols. - - - - - hadoop.security.groups.cache.secs - 14400 - - - - hadoop.kerberos.kinit.command - /usr/bin/kinit - - - - - hadoop.http.filter.initializers - org.apache.hadoop.security.AuthenticationFilterInitializer - - - - hadoop.http.authentication.type - kerberos - - - - hadoop.http.authentication.token.validity - 36000 - - - - hadoop.http.authentication.signature.secret.file - HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE_REPLACE - - The signature secret for signing the authentication tokens. - If not set a random secret is generated at startup time. - The same secret should be used for JT/NN/DN/TT configurations. - - - - - hadoop.http.authentication.cookie.domain - ${local.realm} - - - - hadoop.http.authentication.simple.anonymous.allowed - true - - - - hadoop.http.authentication.kerberos.principal - HTTP/_HOST@${local.realm} - - - - hadoop.http.authentication.kerberos.keytab - HTTP_KEYTAB_LOCATION_REPLACE - - - - hadoop.tmp.dir - /tmp/hadoop-${user.name} - - - - io.bytes.per.checksum - 4096 - - - - fs.inmemory.size.mb - 200 - - - - io.file.buffer.size - 131072 - - - - hadoop.proxyuser.mapred.hosts - * - - - hadoop.proxyuser.mapred.groups - * - - - - hadoop.proxyuser.hive.hosts - * - - - hadoop.proxyuser.hive.groups - * - - - - hadoop.proxyuser.hadoop.hosts - * - - - hadoop.proxyuser.hadoop.groups - * - - - - hadoop.proxyuser.yarn.hosts - * - - - hadoop.proxyuser.yarn.groups - * - - - - - - Is the registry enabled in the YARN Resource Manager? - If true, the YARN RM will, as needed. - create the user and system paths, and purge - service records when containers, application attempts - and applications complete. - If false, the paths must be created by other means, - and no automatic cleanup of service records will take place. - - hadoop.registry.rm.enabled - false - - - - - A comma separated list of hostname:port pairs defining the - zookeeper quorum binding for the registry - - hadoop.registry.zk.quorum - YARN_ZK_ADDRESS_REPLACE - - - - - The root zookeeper node for the registry - - hadoop.registry.zk.root - /registry - - - - - Zookeeper connection retry count before failing - - hadoop.registry.zk.retry.times - 5 - - - - - - hadoop.registry.zk.retry.interval.ms - 1000 - - - - - Zookeeper session timeout in milliseconds - - hadoop.registry.zk.connection.timeout.ms - 15000 - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/gpu/yarn-site-gpu.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/gpu/yarn-site-gpu.xml deleted file mode 100644 index f76c9b6..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/gpu/yarn-site-gpu.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - yarn.nodemanager.resource-plugins - yarn.io/gpu - - - - yarn.nodemanager.resource-plugins.gpu.docker-plugin - nvidia-docker-v2 - - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/hadoop-env.sh b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/hadoop-env.sh deleted file mode 100755 index 260b9e4..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/hadoop-env.sh +++ /dev/null @@ -1,108 +0,0 @@ -# Copyright 2011 The Apache Software Foundation -# -# 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. - -# Set Hadoop-specific environment variables here. - -# The only required environment variable is JAVA_HOME. All others are -# optional. When running a distributed configuration it is best to -# set JAVA_HOME in this file, so that it is correctly defined on -# remote nodes. - -# The java implementation to use. -#export JAVA_HOME=${JAVA_HOME} - - -###mod -export JAVA_HOME="JAVA_HOME_REPLACE" -export HADOOP_HOME="HADOOP_HOME_REPLACE" - -#export HADOOP_ROOT_LOGGER=INFO,DRFA -export HADOOP_SECURITY_LOGGER=INFO,DRFAS -export HDFS_AUDIT_LOGGER=INFO,DRFAAUDIT - -export JSVC_HOME=$HADOOP_HOME/bin -export HADOOP_CLASSPATH=$HADOOP_HOME/lib/native:$HADOOP_CLASSPATH -# default heapsize for hadoop daemon -export HADOOP_HEAPSIZE=5120 -export HADOOP_OPTS="-Djava.net.preferIPv4Stack=true ${HADOOP_OPTS}" -export HADOOP_LOG_DIR="YARN_LOG_DIR_REPLACE" -export HADOOP_SECURE_DN_LOG_DIR=$HADOOP_LOG_DIR -export HADOOP_PID_DIR="YARN_PID_DIR_REPLACE" -export HADOOP_SECURE_DN_PID_DIR=$HADOOP_PID_DIR - -export HADOOP_NAMENODE_USER=hdfs -export HADOOP_DATANODE_USER=hdfs -export HADOOP_SECURE_DN_USER=hdfs - -GC_LOG_DATE=`date +%F` -GC_LOG_DIR="GC_LOG_DIR_REPLACE" -export NAMENODE_JVM_OPTS="-Dcom.netease.appname=NameNode -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/namenode.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -server -Xmx71680m -Xms71680m -Xmn20480m -XX:SurvivorRatio=4 -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC" -export DATANODE_JVM_OPTS="-Dcom.netease.appname=DataNode -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/datanode.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -server -Xmx10240m -Xms10240m -Xmn2048m -XX:SurvivorRatio=4 -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC" -###mod - - -# The jsvc implementation to use. Jsvc is required to run secure datanodes. -#export JSVC_HOME=${JSVC_HOME} - -export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-"/etc/hadoop"} - -# Extra Java CLASSPATH elements. Automatically insert capacity-scheduler. -for f in $HADOOP_HOME/contrib/capacity-scheduler/*.jar; do - if [ "$HADOOP_CLASSPATH" ]; then - export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$f - else - export HADOOP_CLASSPATH=$f - fi -done - -# The maximum amount of heap to use, in MB. Default is 1000. -#export HADOOP_HEAPSIZE= -#export HADOOP_NAMENODE_INIT_HEAPSIZE="" - -# Extra Java runtime options. Empty by default. -# export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true" - -# Command specific options appended to HADOOP_OPTS when specified -export HADOOP_NAMENODE_OPTS="$NAMENODE_JVM_OPTS -Dhadoop.security.logger=${HADOOP_SECURITY_LOGGER:-INFO,RFAS} -Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER:-INFO,NullAppender} $HADOOP_NAMENODE_OPTS" -export HADOOP_DATANODE_OPTS="$DATANODE_JVM_OPTS -Dhadoop.security.logger=ERROR,RFAS $HADOOP_DATANODE_OPTS" - -export HADOOP_SECONDARYNAMENODE_OPTS="-Dhadoop.security.logger=${HADOOP_SECURITY_LOGGER:-INFO,RFAS} -Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER:-INFO,NullAppender} $HADOOP_SECONDARYNAMENODE_OPTS" - -# The following applies to multiple commands (fs, dfs, fsck, distcp etc) -#export HADOOP_CLIENT_OPTS="-Xmx512m $HADOOP_CLIENT_OPTS" -#export HADOOP_CLIENT_OPTS="-Xmx512m $HADOOP_CLIENT_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=6002" -#HADOOP_JAVA_PLATFORM_OPTS="-XX:-UsePerfData $HADOOP_JAVA_PLATFORM_OPTS" - -# On secure datanodes, user to run the datanode as after dropping privileges -#export HADOOP_SECURE_DN_USER=${HADOOP_SECURE_DN_USER} - -# Where log files are stored. $HADOOP_HOME/logs by default. -#export HADOOP_LOG_DIR=${HADOOP_LOG_DIR}/$USER - -# Where log files are stored in the secure data environment. -#export HADOOP_SECURE_DN_LOG_DIR=${HADOOP_LOG_DIR}/${HADOOP_HDFS_USER} - -# The directory where pid files are stored. /tmp by default. -# NOTE: this should be set to a directory that can only be written to by -# the user that will run the hadoop daemons. Otherwise there is the -# potential for a symlink attack. -#export HADOOP_PID_DIR=${HADOOP_PID_DIR} -#export HADOOP_SECURE_DN_PID_DIR=${HADOOP_PID_DIR} - -# A string representing this instance of hadoop. $USER by default. -export HADOOP_IDENT_STRING=$USER diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/hdfs-site.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/hdfs-site.xml deleted file mode 100755 index e5dfce6..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/hdfs-site.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - local.hostname.nn1 - HDFS_NAMENODE_HOSTS1_REPLACE - - - local.hostname.nn2 - HDFS_NAMENODE_HOSTS2_REPLACE - - - - dfs.ha.namenodes.LOCAL_REALM_REPLACE - nn1,nn2 - - - - dfs.namenode.rpc-address.LOCAL_REALM_REPLACE.nn1 - ${local.hostname.nn1}:8020 - - - dfs.namenode.rpc-address.LOCAL_REALM_REPLACE.nn2 - ${local.hostname.nn2}:8020 - - - - dfs.nameservices - LOCAL_REALM_REPLACE - - - - dfs.client.failover.proxy.provider.LOCAL_REALM_REPLACE - org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider - - - - - fs.permissions.umask-mode - 027 - - - - dfs.blocksize - 268435456 - - - - dfs.client.read.shortcircuit - true - - - - dfs.client.read.shortcircuit.streams.cache.size - 1024 - - - - dfs.client.read.shortcircuit.streams.cache.size.expiry.ms - 300000 - - - - dfs.domain.socket.path - /var/lib/hadoop-hdfs/dn_socket - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/mapred-env.sh b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/mapred-env.sh deleted file mode 100755 index 84bee0b..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/mapred-env.sh +++ /dev/null @@ -1,47 +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. - -## -## THIS FILE ACTS AS AN OVERRIDE FOR hadoop-env.sh FOR ALL -## WORK DONE BY THE mapred AND RELATED COMMANDS. -## -## Precedence rules: -## -## mapred-env.sh > hadoop-env.sh > hard-coded defaults -## -## MAPRED_xyz > HADOOP_xyz > hard-coded defaults -## - -### -# Job History Server specific parameters -### - -# Specify the max heapsize for the JobHistoryServer. If no units are -# given, it will be assumed to be in MB. -# This value will be overridden by an Xmx setting specified in HADOOP_OPTS, -# and/or MAPRED_HISTORYSERVER_OPTS. -# Default is the same as HADOOP_HEAPSIZE_MAX. -#export HADOOP_JOB_HISTORYSERVER_HEAPSIZE=5120 - -# Specify the JVM options to be used when starting the HistoryServer. -# These options will be appended to the options specified as HADOOP_OPTS -# and therefore may override any similar flags set in HADOOP_OPTS -GC_LOG_DATE=`date +%F` -GC_LOG_DIR="GC_LOG_DIR_REPLACE" -export MAPRED_HISTORYSERVER_OPTS="-server -Xmx5g -Xms5g -Xmn2g -XX:SurvivorRatio=4 -Xss256k -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -Xloggc:${GC_LOG_DIR}/rm.gc.log-${GC_LOG_DATE}" - -# Specify the log4j settings for the JobHistoryServer -# Java property: hadoop.root.logger -#export HADOOP_JHS_LOGGER=INFO,RFA diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/mapred-site.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/mapred-site.xml deleted file mode 100755 index cf03e24..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/mapred-site.xml +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - mapreduce.framework.name - yarn - - - - yarn.app.mapreduce.am.staging-dir - YARN_APP_MAPREDUCE_AM_STAGING_DIR_REPLACE - - - - - mapreduce.jobhistory.address - YARN_JOB_HISTORY_HOST_REPLACE:10020 - - - mapreduce.jobhistory.webapp.address - YARN_JOB_HISTORY_HOST_REPLACE:19888 - - - mapreduce.jobhistory.keytab - MAPRED_KEYTAB_LOCATION_REPLACE - - - mapreduce.jobhistory.principal - mapred/_HOST@${local.realm} - - - - - yarn.app.mapreduce.am.resource.mb - 1536 - - - mapreduce.map.memory.mb - 1024 - - - mapreduce.reduce.memory.mb - 1536 - - - mapreduce.map.java.opts - -Xmx820M - - - - mapreduce.reduce.java.opts - -Xmx1228M - - - yarn.app.mapreduce.am.command-opts - -Xmx1228M - - - - - - io.sort.factor - 100 - - - io.sort.mb - 200 - - - - - mapreduce.map.speculative - false - - - mapreduce.reduce.speculative - false - - - - - mapreduce.map.output.compress - true - - - mapreduce.map.output.compress.codec - com.hadoop.compression.lzo.LzoCodec - - - - yarn.app.mapreduce.am.env - HADOOP_MAPRED_HOME=$HADOOP_HOME - - - mapreduce.map.env - HADOOP_MAPRED_HOME=$HADOOP_HOME - - - mapreduce.reduce.env - HADOOP_MAPRED_HOME=$HADOOP_HOME - - - - mapreduce.job.hdfs-servers - FS_DEFAULTFS_REPLACE - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/resource-types.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/resource-types.xml deleted file mode 100755 index 54ea7dc..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/resource-types.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - yarn.resource-types - yarn.io/gpu - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/yarn-env.sh b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/yarn-env.sh deleted file mode 100755 index 41c27e1..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/yarn-env.sh +++ /dev/null @@ -1,127 +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. - - -###mod -export YARN_ROOT_LOGGER=INFO,DRFA -#export YARN_ROOT_LOGGER=DEBUG,DRFA -export YARN_LOG_DIR=$HADOOP_LOG_DIR -export YARN_PID_DIR=$HADOOP_PID_DIR - -GC_LOG_DATE=`date +%F` -GC_LOG_DIR="GC_LOG_DIR_REPLACE" -#export RESOURCEMANAGER_JVM_OPTS="-Dcom.netease.appname=ResourceManager -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/resourcemanager.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -server -Xmx20480m -Xms20480m -Xmn5120m -XX:SurvivorRatio=4 -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC" -export RESOURCEMANAGER_JVM_OPTS="-Dcom.netease.appname=ResourceManager -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/resourcemanager.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6001" -export NODEMANAGER_JVM_OPTS="-Dcom.netease.appname=NodeManager -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/nodemanager.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -XX:GCLogFileSize=512M -server -Xmx5120m -Xms5120m -Xmn1024m -XX:SurvivorRatio=4 -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+UseParNewGC -XX:MaxTenuringThreshold=15 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+CMSClassUnloadingEnabled -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=75 -XX:-DisableExplicitGC" -#export NODEMANAGER_JVM_OPTS="-Dcom.netease.appname=NodeManager -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/nodemanager.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=6001" -###mod -#export YARN_TIMELINESERVER_OPTS="-Dcom.netease.appname=TimelineServer -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/timelineserver.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6001" -#export YARN_TIMELINEREADER_OPTS="-Dcom.netease.appname=TimelineReaderServer -Djava.net.preferIPv4Stack=true -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Xloggc:$GC_LOG_DIR/timelineserver.gc.log.$GC_LOG_DATE -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=3 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=6001" - -# User for YARN daemons -export HADOOP_YARN_USER=${HADOOP_YARN_USER:-yarn} - -# resolve links - $0 may be a softlink -export YARN_CONF_DIR="${YARN_CONF_DIR:-$HADOOP_YARN_HOME/etc/hadoop}" - -# some Java parameters -# export JAVA_HOME=/home/y/libexec/jdk1.6.0/ -if [ "$JAVA_HOME" != "" ]; then - #echo "run java in $JAVA_HOME" - JAVA_HOME=$JAVA_HOME -fi - -if [ "$JAVA_HOME" = "" ]; then - echo "Error: JAVA_HOME is not set." - exit 1 -fi - -JAVA=$JAVA_HOME/bin/java -JAVA_HEAP_MAX=-Xmx1000m - -# For setting YARN specific HEAP sizes please use this -# Parameter and set appropriately -# YARN_HEAPSIZE=1000 - -# check envvars which might override default args -if [ "$YARN_HEAPSIZE" != "" ]; then - JAVA_HEAP_MAX="-Xmx""$YARN_HEAPSIZE""m" -fi - -# Resource Manager specific parameters - -# Specify the max Heapsize for the ResourceManager using a numerical value -# in the scale of MB. For example, to specify an jvm option of -Xmx1000m, set -# the value to 1000. -# This value will be overridden by an Xmx setting specified in either YARN_OPTS -# and/or YARN_RESOURCEMANAGER_OPTS. -# If not specified, the default value will be picked from either YARN_HEAPMAX -# or JAVA_HEAP_MAX with YARN_HEAPMAX as the preferred option of the two. -#export YARN_RESOURCEMANAGER_HEAPSIZE=1000 - -# Specify the JVM options to be used when starting the ResourceManager. -# These options will be appended to the options specified as YARN_OPTS -# and therefore may override any similar flags set in YARN_OPTS -export YARN_RESOURCEMANAGER_OPTS="$RESOURCEMANAGER_JVM_OPTS" - -# Node Manager specific parameters - -# Specify the max Heapsize for the NodeManager using a numerical value -# in the scale of MB. For example, to specify an jvm option of -Xmx1000m, set -# the value to 1000. -# This value will be overridden by an Xmx setting specified in either YARN_OPTS -# and/or YARN_NODEMANAGER_OPTS. -# If not specified, the default value will be picked from either YARN_HEAPMAX -# or JAVA_HEAP_MAX with YARN_HEAPMAX as the preferred option of the two. -#export YARN_NODEMANAGER_HEAPSIZE=1000 - -# Specify the JVM options to be used when starting the NodeManager. -# These options will be appended to the options specified as YARN_OPTS -# and therefore may override any similar flags set in YARN_OPTS -export YARN_NODEMANAGER_OPTS="$NODEMANAGER_JVM_OPTS" - -# so that filenames w/ spaces are handled correctly in loops below -IFS= - - -# default log directory & file -if [ "$YARN_LOG_DIR" = "" ]; then - YARN_LOG_DIR="$HADOOP_YARN_HOME/logs" -fi -if [ "$YARN_LOGFILE" = "" ]; then - YARN_LOGFILE='yarn.log' -fi - -# default policy file for service-level authorization -if [ "$YARN_POLICYFILE" = "" ]; then - YARN_POLICYFILE="hadoop-policy.xml" -fi - -# restore ordinary behaviour -unset IFS - - -YARN_OPTS="$YARN_OPTS -Dhadoop.log.dir=$YARN_LOG_DIR" -YARN_OPTS="$YARN_OPTS -Dyarn.log.dir=$YARN_LOG_DIR" -YARN_OPTS="$YARN_OPTS -Dhadoop.log.file=$YARN_LOGFILE" -YARN_OPTS="$YARN_OPTS -Dyarn.log.file=$YARN_LOGFILE" -YARN_OPTS="$YARN_OPTS -Dyarn.home.dir=$YARN_COMMON_HOME" -YARN_OPTS="$YARN_OPTS -Dyarn.id.str=$YARN_IDENT_STRING" -YARN_OPTS="$YARN_OPTS -Dhadoop.root.logger=${YARN_ROOT_LOGGER:-INFO,console}" -YARN_OPTS="$YARN_OPTS -Dyarn.root.logger=${YARN_ROOT_LOGGER:-INFO,console}" -if [ "x$JAVA_LIBRARY_PATH" != "x" ]; then - YARN_OPTS="$YARN_OPTS -Djava.library.path=$JAVA_LIBRARY_PATH" -fi -YARN_OPTS="$YARN_OPTS -Dyarn.policy.file=$YARN_POLICYFILE" diff --git a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/yarn-site.xml b/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/yarn-site.xml deleted file mode 100755 index fd5c840..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/etc_secure/hadoop/yarn-site.xml +++ /dev/null @@ -1,652 +0,0 @@ - - - - - - - local.hostname.rm1 - YARN_RESOURCE_MANAGER_HOSTS1_REPLACE - - - local.hostname.rm2 - YARN_RESOURCE_MANAGER_HOSTS2_REPLACE - - - local.cluster-id - LOCAL_CLUSTER_ID_REPLACE - - - - - yarn.resourcemanager.zk-address - YARN_ZK_ADDRESS_REPLACE - - - yarn.resourcemanager.recovery.enabled - true - - - yarn.resourcemanager.store.class - org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore - - - yarn.resourcemanager.zk-timeout-ms - 90000 - - - yarn.resourcemanager.am.max-attempts - 3 - - - yarn.resourcemanager.state-store.max-completed-applications - 200 - - - - - yarn.resourcemanager.ha.enabled - true - - - yarn.resourcemanager.cluster-id - ${local.cluster-id} - - - yarn.resourcemanager.ha.rm-ids - rm1,rm2 - - - - yarn.resourcemanager.hostname.rm1 - ${local.hostname.rm1} - - - - yarn.resourcemanager.hostname.rm2 - ${local.hostname.rm2} - - - - yarn.resourcemanager.webapp.address.rm1 - ${local.hostname.rm1}:8088 - - - - yarn.resourcemanager.webapp.address.rm2 - ${local.hostname.rm2}:8088 - - - - - yarn.nodemanager.aux-services - mapreduce_shuffle,spark_shuffle,timeline_collector - - - yarn.nodemanager.aux-services.mapreduce_shuffle.class - org.apache.hadoop.mapred.ShuffleHandler - - - yarn.nodemanager.aux-services.spark_shuffle.class - org.apache.spark.network.yarn.YarnShuffleService - - - spark.yarn.shuffle.stopOnFailure - true - - - yarn.nodemanager.aux-services.timeline_collector.class - org.apache.hadoop.yarn.server.timelineservice.collector.PerNodeTimelineCollectorsAuxService - - - - - yarn.nodemanager.local-dirs - YARN_NODEMANAGER_LOCAL_DIRS_REPLACE - - - yarn.nodemanager.log-dirs - YARN_NODEMANAGER_LOG_DIRS_REPLACE - - - - - Where to aggregate logs in hdfs - yarn.nodemanager.remote-app-log-dir - YARN_AGGREGATED_LOG_DIR_REPLACE - - - yarn.log-aggregation-enable - true - - - yarn.log-aggregation.retain-seconds - 604800 - - - yarn.log-aggregation.retain-check-interval-seconds - 86400 - - - yarn.nodemanager.log-aggregation.compression-type - gz - - - - - yarn.resourcemanager.keytab - YARN_KEYTAB_LOCATION_REPLACE - - - yarn.resourcemanager.principal - yarn/_HOST@${local.realm} - - - - - yarn.nodemanager.keytab - YARN_KEYTAB_LOCATION_REPLACE - - - yarn.nodemanager.principal - yarn/_HOST@${local.realm} - - - - - yarn.nodemanager.container-executor.class - org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor - - - yarn.nodemanager.linux-container-executor.path - /etc/yarn/sbin/Linux-amd64-64/container-executor - - - yarn.nodemanager.linux-container-executor.group - yarn - - - - - Minimum request grant-able by the RM scheduler - yarn.scheduler.minimum-allocation-mb - 512 - - - Maximum request grant-able by the RM scheduler - yarn.scheduler.maximum-allocation-mb - 32768 - - - yarn.scheduler.minimum-allocation-vcores - 1 - - - yarn.scheduler.maximum-allocation-vcores - 30 - - - yarn.resourcemanager.scheduler.class - - org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler - - - - yarn.scheduler.increment-allocation-mb - 512 - - - yarn.scheduler.fair.allow-undeclared-pools - false - - - - yarn.client.nodemanager-connect.max-wait-ms - 60000 - - - - - yarn.resourcemanager.client.thread-count - 64 - - - yarn.resourcemanager.resource-tracker.client.thread-count - 64 - - - yarn.resourcemanager.scheduler.client.thread-count - 64 - - - yarn.nodemanager.container-manager.thread-count - 32 - - - yarn.nodemanager.container-metrics.enable - true - Todo hbase metrics cleanup mechanism - - - - - The minimum space that must be available on a disk for - it to be used. This applies to yarn.nodemanager.local-dirs and - yarn.nodemanager.log-dirs. - yarn.nodemanager.disk-health-checker.min-free-space-per-disk-mb - 1000 - - - Defines how often NMs wake up to upload log files. - The default value is -1. By default, the logs will be uploaded when - the application is finished. By setting this configure, logs can be uploaded - periodically when the application is running. The minimum rolling-interval-seconds - can be set is 3600. - - yarn.nodemanager.log-aggregation.roll-monitoring-interval-seconds - 3600 - - - Enable the node manager to recover after starting - yarn.nodemanager.recovery.enabled - true - - - The local filesystem directory in which the node manager will - store state when recovery is enabled. - yarn.nodemanager.recovery.dir - YARN_NODEMANAGER_RECOVERY_DIR_REPLACE - - - - - yarn.nodemanager.resource.memory-mb - 204800 - - - yarn.nodemanager.resource.cpu-vcores - 40 - - - - yarn.admin.acl - hadoop,yarn - - - yarn.acl.enable - true - - - - - yarn.resourcemanager.nodes.exclude-path - YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH_REPLACE - - - If true, ResourceManager will have proxy-user privileges. - Use case: In a secure cluster, YARN requires the user hdfs delegation-tokens to - do localization and log-aggregation on behalf of the user. If this is set to true, - ResourceManager is able to request new hdfs delegation tokens on behalf of - the user. This is needed by long-running-service, because the hdfs tokens - will eventually expire and YARN requires new valid tokens to do localization - and log-aggregation. Note that to enable this use case, the corresponding - HDFS NameNode has to configure ResourceManager as the proxy-user so that - ResourceManager can itself ask for new tokens on behalf of the user when - tokens are past their max-life-time. - yarn.resourcemanager.proxy-user-privileges.enabled - true - - - - - yarn.resourcemanager.webapp.delegation-token-auth-filter.enabled - false - - - - hadoop.http.filter.initializers - org.apache.hadoop.security.AuthenticationFilterInitializer - - - hadoop.http.authentication.type - - kerberos - - - - yarn.nodemanager.container.use.serialgc.enable - true - - - - - Indicate to clients whether Timeline service is enabled or not. - If enabled, the TimelineClient library used by end-users will post entities - and events to the Timeline server. - yarn.timeline-service.enabled - true - - - - The setting that controls whether yarn system metrics is - published on the timeline server or not by RM. - yarn.resourcemanager.system-metrics-publisher.enabled - true - - - - Indicate to clients whether to query generic application - data from timeline history-service or not. If not enabled then application - data is queried only from Resource Manager. - yarn.timeline-service.generic-application-history.enabled - true - - - - yarn.timeline-service.http-authentication.type - - kerberos - - - - yarn.timeline-service.principal - yarn/_HOST@${local.realm} - - - - yarn.timeline-service.keytab - YARN_KEYTAB_LOCATION_REPLACE - - - - yarn.timeline-service.http-authentication.kerberos.principal - HTTP/_HOST@${local.realm} - - - - yarn.timeline-service.http-authentication.kerberos.keytab - HTTP_KEYTAB_LOCATION_REPLACE - - - - yarn.timeline-service.hostname - YARN_TIMELINE_HOST_REPLACE - - - - yarn.timeline-service.hbase.coprocessor.jar.hdfs.location - /hbase/coprocessor - - - - URL for log aggregation server web service - yarn.log.server.web-service.url - http://YARN_TIMELINE_HOST_REPLACE:8189/ws/v2/applicationlog - - - - - yarn.timeline-service.leveldb-timeline-store.path - YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH_REPLACE - - - - yarn.timeline-service.leveldb-state-store.path - YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH_REPLACE - - - - yarn.timeline-service.leveldb-timeline-store.read-cache-size - 104857600 - - - - yarn.timeline-service.leveldb-timeline-store.start-time-read-cache-size - 10000 - - - - yarn.timeline-service.leveldb-timeline-store.start-time-write-cache-size - 10000 - - - - yarn.timeline-service.leveldb-timeline-store.ttl-interval-ms - 300000 - - - - yarn.timeline-service.recovery.enabled - true - - - - yarn.timeline-service.state-store-class - org.apache.hadoop.yarn.server.timeline.recovery.LeveldbTimelineStateStore - - - - yarn.timeline-service.store-class - org.apache.hadoop.yarn.server.timeline.EntityGroupFSTimelineStore - - - - yarn.timeline-service.ttl-enable - true - - - - yarn.timeline-service.ttl-ms - 2678400000 - - - - - yarn.timeline-service.version - 2.0f - - - - The setting that controls whether yarn system metrics is - published on the Timeline service or not by RM And NM. - yarn.system-metrics-publisher.enabled - true - - - - The setting that controls whether yarn container events are - published to the timeline service or not by RM. This configuration setting - is for ATS V2. - - yarn.rm.system-metrics-publisher.emit-container-events - true - - - - Optional URL to an hbase-site.xml configuration file to be - used to connect to the timeline-service hbase cluster. If empty or not - specified, then the HBase configuration will be loaded from the classpath. - When specified the values in the specified configuration file will override - those from the ones that are present on the classpath. - - yarn.timeline-service.hbase.configuration.file - YARN_TIMELINE_SERVICE_HBASE_CONFIGURATION_FILE_REPLACE - - - - - yarn.timeline-service.versions - 1.5f,2.0f - - - - yarn.timeline-service.entity-group-fs-store.active-dir - YARN_TIMELINE_FS_STORE_DIR_REPLACE/active - - - - yarn.timeline-service.entity-group-fs-store.done-dir - YARN_TIMELINE_FS_STORE_DIR_REPLACE/done - - - - - yarn.timeline-service.reader.webapp.address - YARN_TIMELINE_HOST_REPLACE:8189 - - - - yarn.timeline-service.entity-group-fs-store.summary-store - org.apache.hadoop.yarn.server.timeline.RollingLevelDBTimelineStore - - - - Enable services rest api on ResourceManager. - yarn.webapp.api-service.enable - true - - - - The domain name for Hadoop cluster associated records. As short as possible. - hadoop.registry.dns.domain-name - ml - - - - The DNS functionality is enabled for the cluster. Default is false. - hadoop.registry.dns.enabled - true - - - Address associated with the network interface to which the DNS listener should bind. - hadoop.registry.dns.bind-address - YARN_REGISTRY_DNS_HOST_REPLACE - - - The port number for the DNS listener. The default port is 5353. - If the standard privileged port 53 is used, make sure start the DNS with jsvc support. - hadoop.registry.dns.bind-port - - YARN_REGISTRY_DNS_HOST_PORT_REPLACE - - - - - The Kerberos keytab file to be used for spnego filter for the NM web interface. - - yarn.nodemanager.webapp.spnego-keytab-file - HTTP_KEYTAB_LOCATION_REPLACE - - - - - The Kerberos principal to be used for spnego filter for the NM web interface. - - yarn.nodemanager.webapp.spnego-principal - HTTP/_HOST@${local.realm} - - - - - The Kerberos keytab file to be used for spnego filter for the RM web interface. - - yarn.resourcemanager.webapp.spnego-keytab-file - HTTP_KEYTAB_LOCATION_REPLACE - - - - - The Kerberos principal to be used for spnego filter for the RM web interface. - - yarn.resourcemanager.webapp.spnego-principal - HTTP/_HOST@${local.realm} - - - - - yarn.nodemanager.linux-container-executor.resources-handler.class - org.apache.hadoop.yarn.server.nodemanager.util.CgroupsLCEResourcesHandler - - - yarn.nodemanager.linux-container-executor.cgroups.mount - false - - - yarn.nodemanager.resource.percentage-physical-cpu-limit - 80 - - - Whether virtual memory limits will be enforced for containers. - yarn.nodemanager.vmem-check-enabled - false - - - - Whether YARN CGroups memory tracking is enabled. - yarn.nodemanager.resource.memory.enabled - true - - - - - yarn.nodemanager.runtime.linux.docker.default-container-network - YARN_DOCKER_CONTAINER_DEFAULT_NETWORK_REPLACE - - - yarn.nodemanager.runtime.linux.allowed-runtimes - default,docker - - - yarn.nodemanager.runtime.linux.docker.allowed-container-networks - YARN_DOCKER_ALLOWED_CONTAINER_NETWORKS_REPLACE - - - yarn.nodemanager.runtime.linux.docker.privileged-containers.allowed - false - - - yarn.nodemanager.runtime.linux.docker.privileged-containers.acl - - - - yarn.nodemanager.runtime.linux.docker.capabilities - CHOWN,DAC_OVERRIDE,FSETID,FOWNER,MKNOD,NET_RAW,SETGID,SETUID,SETFCAP,SETPCAP,NET_BIND_SERVICE,SYS_CHROOT,KILL,AUDIT_WRITE - - - - - yarn.webapp.ui2.enable - true - - - - - - yarn.service.base.path - /tmp/.LOCAL_CLUSTER_ID_REPLACE/ - - - - yarn.nodemanager.address - 0.0.0.0:45454 - - - diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-historyserver.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-historyserver.sh deleted file mode 100644 index ed84fea..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-historyserver.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "mapred" ];then - echo "[ERROR]:jobhistory must be started with the [mapred] user!" -fi - -YARN_LOGFILE=mr-historyserver.log ${common_bin}/mr-jobhistory-daemon.sh start historyserver diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-mr-jobhistory.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-mr-jobhistory.sh deleted file mode 100755 index 5d54144..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-mr-jobhistory.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` -YARN_LOGFILE=mr-jobhistory.log ${common_bin}/mr-jobhistory-daemon.sh start historyserver diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-nodemanager.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-nodemanager.sh deleted file mode 100644 index 5c5cac2..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-nodemanager.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "yarn" ];then - echo "[ERROR]:nodemanager must be started with the [yarn] user!" -fi - -YARN_LOGFILE=nodemanager.log ${common_bin}/yarn-daemon.sh start nodemanager diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-registrydns.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-registrydns.sh deleted file mode 100644 index 8d2aa7c..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-registrydns.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "root" ];then - echo "[ERROR]:Registrydns must be started with the [root] user!" -fi - -JSVC_HOME=${common_bin}/../bin YARN_LOGFILE=registrydns.log ${common_bin}/yarn-daemon.sh start registrydns diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-resourcemanager.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-resourcemanager.sh deleted file mode 100644 index 217b2bf..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-resourcemanager.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "yarn" ];then - echo "[ERROR]:resourcemanager must be started with the [yarn] user!" -fi - -YARN_LOGFILE=resourcemanager.log ${common_bin}/yarn-daemon.sh start resourcemanager diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-timelinereader.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-timelinereader.sh deleted file mode 100644 index 33e1586..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-timelinereader.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "yarn" ];then - echo "[ERROR]:timelinereader must be started with the [yarn] user!" -fi - -YARN_LOGFILE=timelinereader.log ${common_bin}/yarn-daemon.sh start timelinereader diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-timelineserver.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-timelineserver.sh deleted file mode 100644 index fbe45be..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/start-timelineserver.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "yarn" ];then - echo "[ERROR]:timelineserver must be started with the [yarn] user!" -fi - -HADOOP_SHELL_SCRIPT_DEBUG=true YARN_LOGFILE=timelineserver.log ${common_bin}/yarn-daemon.sh start timelineserver diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-historyserver.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-historyserver.sh deleted file mode 100755 index 133ff5d..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-historyserver.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "mapred" ];then - echo "[ERROR]:jobhistory must be started with the [mapred] user!" -fi - -YARN_LOGFILE=mr-historyserver.log ${common_bin}/mr-jobhistory-daemon.sh stop historyserver diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-mr-jobhistory.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-mr-jobhistory.sh deleted file mode 100755 index 98b9ae0..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-mr-jobhistory.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` -YARN_LOGFILE=mr-jobhistory.log ${common_bin}/mr-jobhistory-daemon.sh stop historyserver diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-nodemanager.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-nodemanager.sh deleted file mode 100755 index 64261cc..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-nodemanager.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "yarn" ];then - echo "[ERROR]:nodemanager must be started with the [yarn] user!" -fi - -YARN_LOGFILE=nodemanager.log ${common_bin}/yarn-daemon.sh stop nodemanager diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-registrydns.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-registrydns.sh deleted file mode 100755 index a6f81c1..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-registrydns.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "root" ];then - echo "[ERROR]:Registrydns must be started with the [root] user!" -fi - -JSVC_HOME=${common_bin}/../bin YARN_LOGFILE=registrydns.log ${common_bin}/yarn-daemon.sh stop registrydns diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-resourcemanager.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-resourcemanager.sh deleted file mode 100755 index 9f1b8cf..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-resourcemanager.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "yarn" ];then - echo "[ERROR]:resourcemanager must be started with the [yarn] user!" -fi - -YARN_LOGFILE=resourcemanager.log ${common_bin}/yarn-daemon.sh stop resourcemanager diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-timelinereader.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-timelinereader.sh deleted file mode 100755 index 17eb8d9..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-timelinereader.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "yarn" ];then - echo "[ERROR]:timelinereader must be started with the [yarn] user!" -fi - -YARN_LOGFILE=timelinereader.log ${common_bin}/yarn-daemon.sh stop timelinereader diff --git a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-timelineserver.sh b/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-timelineserver.sh deleted file mode 100755 index 071ee77..0000000 --- a/dev-support/submarine-installer/package/hadoop/yarn/sbin/stop-timelineserver.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -cd `dirname $0` -common_bin=`pwd` - -if [ `whoami` != "yarn" ];then - echo "[ERROR]:timelineserver must be started with the [yarn] user!" -fi - -HADOOP_SHELL_SCRIPT_DEBUG=true YARN_LOGFILE=timelineserver.log ${common_bin}/yarn-daemon.sh stop timelineserver diff --git a/dev-support/submarine-installer/package/submarine/submarine.sh b/dev-support/submarine-installer/package/submarine/submarine.sh deleted file mode 100644 index b5c4b03..0000000 --- a/dev-support/submarine-installer/package/submarine/submarine.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash -# 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. - -# Solution: Grant user yarn the access to /sys/fs/cgroup/cpu,cpuacct, -# which is the subfolder of cgroup mount destination. -chown :yarn -R /sys/fs/cgroup/cpu,cpuacct -chmod g+rwx -R /sys/fs/cgroup/cpu,cpuacct - -# Grant user yarn the access to /sys/fs/cgroup/memory, -# which is the subfolder of cgroup mount destination. -chown :yarn -R /sys/fs/cgroup/memory -chmod g+rwx -R /sys/fs/cgroup/memory - - -# If GPUs are used,the access to cgroup devices folder is needed as well -chown :yarn -R /sys/fs/cgroup/devices -chmod g+rwx -R /sys/fs/cgroup/devices diff --git a/dev-support/submarine-installer/scripts/calico.sh b/dev-support/submarine-installer/scripts/calico.sh deleted file mode 100644 index b3eb80b..0000000 --- a/dev-support/submarine-installer/scripts/calico.sh +++ /dev/null @@ -1,228 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description download calico bin -## @audience public -## @stability stable -function download_calico_bin() -{ - # submarine http server - if [[ -n "$DOWNLOAD_HTTP" ]]; then - MY_CALICOCTL_DOWNLOAD_URL=${DOWNLOAD_HTTP}/downloads/calico/calicoctl - MY_CALICO_DOWNLOAD_URL=${DOWNLOAD_HTTP}/downloads/calico/calico - MY_CALICO_IPAM_DOWNLOAD_URL=${DOWNLOAD_HTTP}/downloads/calico/calico-ipam - else - MY_CALICOCTL_DOWNLOAD_URL=${CALICOCTL_DOWNLOAD_URL} - MY_CALICO_DOWNLOAD_URL=${CALICO_DOWNLOAD_URL} - MY_CALICO_IPAM_DOWNLOAD_URL=${CALICO_IPAM_DOWNLOAD_URL} - fi - - mkdir -p "${DOWNLOAD_DIR}/calico" - - if [[ -f ${DOWNLOAD_DIR}/calico/calico ]]; then - echo "${DOWNLOAD_DIR}/calico/calico already exists." - else - echo "download ${MY_CALICO_DOWNLOAD_URL} ..." - wget -P "${DOWNLOAD_DIR}/calico" "${MY_CALICO_DOWNLOAD_URL}" - fi - - if [[ -f ${DOWNLOAD_DIR}/calico/calicoctl ]]; then - echo "${DOWNLOAD_DIR}/calico already exists." - else - echo "download ${MY_CALICOCTL_DOWNLOAD_URL} ..." - wget -P "${DOWNLOAD_DIR}/calico" "${MY_CALICOCTL_DOWNLOAD_URL}" - fi - - if [[ -f ${DOWNLOAD_DIR}/calico/calico-ipam ]]; then - echo "${DOWNLOAD_DIR}/calico/calico-ipam already exists." - else - echo "download ${MY_CALICO_IPAM_DOWNLOAD_URL} ..." - wget -P "${DOWNLOAD_DIR}/calico" "${MY_CALICO_IPAM_DOWNLOAD_URL}" - fi -} - -## @description install calico bin -## @audience public -## @stability stable -function install_calico_bin() -{ - download_calico_bin - - sudo cp -f "${DOWNLOAD_DIR}/calico/calico" /usr/bin/calico - sudo cp -f "${DOWNLOAD_DIR}/calico/calicoctl" /usr/bin/calicoctl - sudo cp -f "${DOWNLOAD_DIR}/calico/calico-ipam" /usr/bin/calico-ipam - - sudo chmod +x /usr/bin/calico - sudo chmod +x /usr/bin/calicoctl - sudo chmod +x /usr/bin/calico-ipam -} - -## @description install calico config -## @audience public -## @stability stable -function install_calico_config() -{ - sudo mkdir -p /etc/calico - - cp -rf "${PACKAGE_DIR}/calico" "${INSTALL_TEMP_DIR}/" - - # 1. replace etcdEndpoints - # etcdEndpoints: https://10.196.69.173:2379,https://10.196.69.174:2379,https://10.196.69.175:2379 - etcdEndpoints='' - index=0 - etcdHostsSize=${#ETCD_HOSTS[@]} - for item in "${ETCD_HOSTS[@]}" - do - index=$((index+1)) - etcdEndpoints="${etcdEndpoints}http:\\/\\/${item}:2379" - if [[ ${index} -lt ${etcdHostsSize} ]]; then - etcdEndpoints=${etcdEndpoints}"," - fi - done - # echo "etcdEndpoints=${etcdEndpoints}" - sed -i "s/ETCD_ENDPOINTS_REPLACE/${etcdEndpoints}/g" "$INSTALL_TEMP_DIR/calico/calicoctl.cfg" - - if [[ ! -d /etc/calico ]]; then - sudo mkdir /etc/calico - else - sudo rm -rf /etc/calico/* - fi - - sudo cp -f "$INSTALL_TEMP_DIR/calico/calicoctl.cfg" /etc/calico/calicoctl.cfg - - sed -i "s/ETCD_ENDPOINTS_REPLACE/${etcdEndpoints}/g" "$INSTALL_TEMP_DIR/calico/calico-node.service" - sed -i "s/CALICO_IPV4POOL_CIDR_REPLACE/${CALICO_IPV4POOL_CIDR}/g" "$INSTALL_TEMP_DIR/calico/calico-node.service" - sudo cp "$INSTALL_TEMP_DIR/calico/calico-node.service" /etc/systemd/system/ - - sudo systemctl daemon-reload - sudo systemctl enable calico-node.service -} - -## @description modify kernel network config -## @audience public -## @stability stable -function kernel_network_config() -{ - if [ "$(grep -c "net.ipv4.conf.all.rp_filter=1" /etc/sysctl.conf)" -eq '0' ]; then - sudo echo "net.ipv4.conf.all.rp_filter=1" >>/etc/sysctl.conf - fi - - if [ "$(grep -c "net.ipv4.ip_forward=1" /etc/sysctl.conf)" -eq '0' ]; then - sudo echo "net.ipv4.ip_forward=1" >>/etc/sysctl.conf - fi - - sudo sysctl -p -} - -## @description check if the calico-network exist -## @audience public -## @stability stable -function calico_network_exist() -{ - local dockerNetworkInfo - dockerNetworkInfo=$(docker network ls --filter NAME="${CALICO_NETWORK_NAME}") - echo "${dockerNetworkInfo}" | grep "${CALICO_NETWORK_NAME}" -} - -## @description verification calico -## @audience public -## @stability stable -function verification_calico() -{ - echo " ===== Check if the network between 2 containers can be connected =====" - local calicoNetworkExist - calicoNetworkExist=$(calico_network_exist) - if [[ "$calicoNetworkExist" = "" ]]; then - echo "Create a calico network" - docker network create --driver calico --ipam-driver calico-ipam "${CALICO_NETWORK_NAME}" - else - echo "calico network ${CALICO_NETWORK_NAME} already exists." - fi - - local verifyA="verify-calico-network-A" - local verifyAInfo - verifyAInfo=$(containers_exist ${verifyA}) - if [[ -n "$verifyAInfo" ]]; then - echo "Delete existing container ${verifyA}." - docker stop ${verifyA} - docker rm ${verifyA} - fi - echo "Create containers verify-calico-network-A" - docker run --net "${CALICO_NETWORK_NAME}" --name ${verifyA} -tid busybox - - local verifyB="verify-calico-network-B" - local verifyBInfo - verifyBInfo=$(containers_exist ${verifyB}) - if [[ -n "$verifyBInfo" ]]; then - echo "Delete existing container ${verifyB}." - docker stop ${verifyB} - docker rm ${verifyB} - fi - echo "Create containers verify-calico-network-B" - docker run --net "${CALICO_NETWORK_NAME}" --name ${verifyB} -tid busybox - - echo -e "\\033[33m${verifyA} ping ${verifyB}\\033[0m" - docker exec ${verifyA} ping ${verifyB} -c 5 -} - -## @description install calico -## @audience public -## @stability stable -function install_calico() -{ - kernel_network_config - install_calico_bin - install_calico_config - start_calico - verification_calico -} - -## @description uninstall calico -## @audience public -## @stability stable -function uninstall_calico() -{ - echo "stop calico-node.service" - sudo systemctl stop calico-node.service - - echo "rm /usr/bin/calico ..." - sudo rm /usr/bin/calicoctl - sudo rm /usr/bin/calico - sudo rm /usr/bin/calico-ipam - - sudo rm -rf /etc/calico/ - sudo rm /etc/systemd/system/calico-node.service - systemctl daemon-reload -} - -## @description start calico -## @audience public -## @stability stable -function start_calico() -{ - sudo systemctl restart calico-node.service - sudo systemctl status calico-node.service -} - -## @description stop calico -## @audience public -## @stability stable -function stop_calico() -{ - sudo systemctl stop calico-node.service - sudo systemctl status calico-node.service -} diff --git a/dev-support/submarine-installer/scripts/combine-docker-daemons.py b/dev-support/submarine-installer/scripts/combine-docker-daemons.py deleted file mode 100644 index 5d5ff58..0000000 --- a/dev-support/submarine-installer/scripts/combine-docker-daemons.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python -# 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. - -import json -import sys - -def combineJsons(jsonFile1, jsonFile2, outputFile): - dict1 = json.load(open(jsonFile1)) - dict2 = json.load(open(jsonFile2)) - dict3 = dict(dict1.items() + dict2.items()) - - with open(outputFile, 'w') as output: - json.dump(dict3, output, indent=2, sort_keys=True) - - return True - -if __name__ == '__main__': - if (len(sys.argv) < 4): - raise Exception,u"3 arguments needed" - - print(combineJsons(sys.argv[1], sys.argv[2], sys.argv[3])) diff --git a/dev-support/submarine-installer/scripts/docker.sh b/dev-support/submarine-installer/scripts/docker.sh deleted file mode 100644 index c282a2a..0000000 --- a/dev-support/submarine-installer/scripts/docker.sh +++ /dev/null @@ -1,178 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description download docker rmp -## @audience public -## @stability stable -function download_docker_rpm() -{ - # download http server - if [[ -n "$DOWNLOAD_HTTP" ]]; then - MY_DOCKER_ENGINE_RPM="${DOWNLOAD_HTTP}/downloads/docker/${DOCKER_ENGINE_RPM}" - else - # Trim the last slash of DOCKER_REPO - DOCKER_REPO_TRIMED="$(echo -e "${DOCKER_REPO}" | sed -e 's/\/*$//')" - MY_DOCKER_ENGINE_RPM=${DOCKER_REPO_TRIMED}/${DOCKER_ENGINE_RPM} - fi - - if [[ -f ${DOWNLOAD_DIR}/docker/${DOCKER_ENGINE_RPM} ]]; then - echo "${DOWNLOAD_DIR}/docker/${DOCKER_ENGINE_RPM} already exists." - else - echo "download ${MY_DOCKER_ENGINE_RPM} ..." - wget -P "${DOWNLOAD_DIR}/docker/" "${MY_DOCKER_ENGINE_RPM}" - if [[ $? -ne 0 ]]; then - echo -e "\\033[32mshell:> Failed to download ${DOCKER_ENGINE_RPM} of docker - from ${MY_DOCKER_ENGINE_RPM} \\033[0m" - fi - fi -} - -## @description install docker bin -## @audience public -## @stability stable -function install_docker_bin() -{ - download_docker_rpm - - sudo yum -y localinstall "${DOWNLOAD_DIR}/docker/${DOCKER_ENGINE_RPM}" -} - -## @description uninstall docker bin -## @audience public -## @stability stable -function uninstall_docker_bin() -{ - sudo yum -y remove "${DOCKER_VERSION}" -} - -## @description install docker config -## @audience public -## @stability stable -function install_docker_config() -{ - rm -rf "${INSTALL_TEMP_DIR}/docker" - cp -rf "${PACKAGE_DIR}/docker" "${INSTALL_TEMP_DIR}/" - - # replace cluster-store - # "cluster-store":"etcd://10.196.69.173:2379,10.196.69.174:2379,10.196.69.175:2379" - # char '/' need to escape '\/' - clusterStore="etcd:\\/\\/" - index=1 - etcdHostsSize=${#ETCD_HOSTS[@]} - for item in "${ETCD_HOSTS[@]}" - do - clusterStore="${clusterStore}${item}:2379" - if [[ ${index} -lt ${etcdHostsSize} ]]; then - clusterStore=${clusterStore}"," - fi - index=$((index+1)) - done - # echo "clusterStore=${clusterStore}" - sed -i "s/CLUSTER_STORE_REPLACE/${clusterStore}/g" "$INSTALL_TEMP_DIR/docker/daemon.json" - - sed -i "s/DOCKER_REGISTRY_REPLACE/${DOCKER_REGISTRY}/g" "$INSTALL_TEMP_DIR/docker/daemon.json" - sed -i "s/LOCAL_HOST_IP_REPLACE/${LOCAL_HOST_IP}/g" "$INSTALL_TEMP_DIR/docker/daemon.json" - YARN_REGISTRY_DNS_IP=$(getent hosts "${YARN_REGISTRY_DNS_HOST}" | awk '{ print $1 }') - sed -i "s/YARN_REGISTRY_DNS_HOST_REPLACE/${YARN_REGISTRY_DNS_IP}/g" "$INSTALL_TEMP_DIR/docker/daemon.json" - - hosts=${LOCAL_DNS_HOST//,/ } - hosts_length=0 - for element in $hosts - do - hosts_length=$((${hosts_length} + 1)) - if [ ${hosts_length} != 1 ]; then - NEW_LOCAL_DNS_HOST="${NEW_LOCAL_DNS_HOST}, " - fi - NEW_LOCAL_DNS_HOST="${NEW_LOCAL_DNS_HOST}\"${element}\"" - done - sed -i "s/LOCAL_DNS_HOST_REPLACE/${NEW_LOCAL_DNS_HOST}/g" "$INSTALL_TEMP_DIR/docker/daemon.json" - - # Delete the ASF license comment in the daemon.json file, otherwise it will cause a json format error. - sed -i '1,16d' "$INSTALL_TEMP_DIR/docker/daemon.json" - - if [ ! -d "/etc/docker" ]; then - sudo mkdir /etc/docker - fi - - sudo cp "$INSTALL_TEMP_DIR/docker/daemon.json" /etc/docker/ - sudo cp "$INSTALL_TEMP_DIR/docker/docker.service" /etc/systemd/system/ - - # Change docker store path - if [[ -n "${DOCKER_STORE_PATH}" ]]; then - mkdir -p "${DOCKER_STORE_PATH}" - cp -r /var/lib/docker/* "${DOCKER_STORE_PATH}" - rm -rf /var/lib/docker - ln -s "${DOCKER_STORE_PATH}" "/var/lib/docker" - fi -} - -## @description install docker -## @audience public -## @stability stable -function install_docker() -{ - install_docker_bin - install_docker_config - - sudo systemctl daemon-reload - sudo systemctl enable docker.service -} - -## @description uninstall docker -## @audience public -## @stability stable -function uninstall_docker() -{ - echo "stop docker service" - sudo systemctl stop docker - - echo "remove docker" - uninstall_docker_bin - - sudo rm /etc/systemd/system/docker.service - - sudo systemctl daemon-reload -} - -## @description start docker -## @audience public -## @stability stable -function start_docker() -{ - sudo systemctl restart docker - sudo systemctl status docker - docker info -} - -## @description stop docker -## @audience public -## @stability stable -function stop_docker() -{ - sudo systemctl stop docker - sudo systemctl status docker -} - -## @description check if the containers exist -## @audience public -## @stability stable -function containers_exist() -{ - local dockerContainersInfo - dockerContainersInfo=$(docker ps -a --filter NAME="$1") - echo "${dockerContainersInfo}" | grep "$1" -} diff --git a/dev-support/submarine-installer/scripts/download-server.sh b/dev-support/submarine-installer/scripts/download-server.sh deleted file mode 100644 index 244d7a8..0000000 --- a/dev-support/submarine-installer/scripts/download-server.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description start download server -## @audience public -## @stability stable -function start_download_server() -{ - if [[ -n "$DOWNLOAD_SERVER_IP" && "$DOWNLOAD_SERVER_IP" != "$LOCAL_HOST_IP" ]]; then - echo -e "\\033[31mERROR: Only $DOWNLOAD_SERVER_IP can start the download service.\\033[0m" - return 1 - fi - - echo -e "You can put the install package file in the \\033[34m${DOWNLOAD_DIR}\\033[0m folder first, Or automatic download." - echo -n "Do you want to start download http server?[y|n]" - read -r myselect - if [[ "$myselect" = "y" || "$myselect" = "Y" ]] - then - IS_DOWNLOAD_SERVER=true - download_etcd_bin - download_calico_bin - download_docker_rpm - download_nvidia_driver - download_nvidia_docker_bin - download_yarn_container_executor - - python -m SimpleHTTPServer "${DOWNLOAD_SERVER_PORT}" - fi -} diff --git a/dev-support/submarine-installer/scripts/environment.sh b/dev-support/submarine-installer/scripts/environment.sh deleted file mode 100644 index 916695c..0000000 --- a/dev-support/submarine-installer/scripts/environment.sh +++ /dev/null @@ -1,219 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description check operation System -## @audience public -## @stability stable -function check_operationSystem() -{ - echo -e "The submarine assembly support \\033[32m[centos-release-7-5.1804.el7.centos.x86_64]\\033[0m or higher operating system version." - - case ${OPERATING_SYSTEM} in - centos) - local operationSystemVersion - operationSystemVersion=$(rpm --query centos-release) - echo -e "The current operating system version is \\e[31m[${operationSystemVersion}]\\e[0m" - ;; - *) - echo -e "\\033[31mWARN: The submarine assembly Unsupported [${OPERATING_SYSTEM}] operating system\\033[0m" - ;; - esac -} - -## @description update operation System Kernel -## @audience public -## @stability stable -function update_operationSystemKernel() -{ - echo "If the server is unable to connect to the network, execute the following command yourself: - wget http://vault.centos.org/7.5.1804/os/x86_64/Packages/kernel-headers-3.10.0-862.el7.x86_64.rpm - rpm -ivh kernel-headers-3.10.0-862.el7.x86_64.rpm" - - echo -n "Do you want to kernel upgrades?[y|n]" - read -r myselect - if [[ "$myselect" = "y" || "$myselect" = "Y" ]] - then - echo "Now try to use the yum command for kernel upgrades ..." - yum install "kernel-devel-$(uname -r)" "kernel-headers-$(uname -r)" - - local kernelVersion - kernelVersion=$(uname -r) - echo -e "After the upgrade, the operating system kernel version is \\e[31m${kernelVersion}\\e[0m" - fi -} - -## @description check operation system kernel -## @audience public -## @stability stable -function check_operationSystemKernel() -{ -case ${OPERATING_SYSTEM} in -centos) - local kernelVersion - kernelVersion=$(uname -r) - - echo -e "Submarine support operating system kernel version is \\033[32m 3.10.0-862.el7.x86_64 \\033[0m" - echo -e "Current operating system kernel version is \\e[31m${kernelVersion}\\e[0m" - - update_operationSystemKernel - ;; -*) - echo -e "\\033[31m WARN: The submarine assembly Unsupported operating system [${OPERATING_SYSTEM}] \\033[0m" - ;; -esac -} - -## @description get gcc version -## @audience public -## @stability stable -function get_gcc_version() -{ - local gccVersion - gccVersion=$(gcc --version) - version=${gccVersion%Copyright*} - echo "$version" -} - -## @description install gcc -## @audience public -## @stability stable -function install_gcc() -{ - echo -n "Do you want to install gcc?[y|n]" - read -r myselect - if [[ "$myselect" = "y" || "$myselect" = "Y" ]]; then - echo "Execute the yum install gcc make g++ command" - yum install gcc make g++ - - local gccVersion - gccVersion=$(gcc --version) - echo -e "After the install, the gcc version is \\e[31m${gccVersion}\\e[0m" - fi -} - -## @description check gcc Version -## @audience public -## @stability stable -function check_gccVersion() -{ - local gccVersionInfo - gccVersionInfo=$(gcc --version) - local gccVersion=${gccVersionInfo%Copyright*} - - if [[ "$gccVersion" = "" ]]; then - echo "The gcc was not installed on the system. Automated installation ..." - install_gcc - else - echo -e "Submarine gcc version need \\033[34mgcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11)\\033[0m or higher." - echo -e "Current gcc version was \\033[34m${gccVersion}\\033[0m" - fi -} - -## @description check GPU -## @audience public -## @stability stable -function check_GPU() -{ - gpuInfo=$(lspci | grep -i nvidia) - - if [[ "$gpuInfo" = "" ]]; then - echo -e "\\033[31mERROR: The system did not detect the GPU graphics card.\\033[0m" - else - echo -e "\\033[32mINFO: The system detect the GPU graphics card.\\033[0m" - fi -} - -## @description check user group -## @audience public -## @stability stable -function check_userGroup() -{ - echo -e "check hadoop user group ..." - - echo -e "Hadoop runs the required user [hdfs, mapred, yarn] and groups [hdfs, mapred, yarn, hadoop] installed by ambari." - echo -e "If you are not using ambari for hadoop installation, -then you can add the user and group by root by executing the following command: -\\033[34madduser hdfs -adduser mapred -adduser yarn -addgroup hadoop -usermod -aG hdfs,hadoop hdfs -usermod -aG mapred,hadoop mapred -usermod -aG yarn,hadoop yarn -usermod -aG hdfs,hadoop hadoop -groupadd docker -usermod -aG docker yarn -usermod -aG docker hadoop\\033[0m\\n" - - echo -e "check docker user group ..." - # check user group - DOCKER_USER_GROUP='docker' - - if ! grep -E "^${DOCKER_USER_GROUP}" /etc/group >& /dev/null - then - echo -e "user group ${DOCKER_USER_GROUP} does not exist, Please execute the following command:" - echo -e "\\033[34mgroupadd $DOCKER_USER_GROUP\\033[0m" - fi - - # check user - USER_GROUP=(yarn hadoop) - for user in "${USER_GROUP[@]}" - do - if ! grep -E "^${user}" /etc/passwd >& /dev/null - then - echo -e "User ${user} does not exist, Please execute the following command:" - echo -e "\\033[34madduser ${user}\\033[0m" - echo -e "\\033[34musermod -aG ${DOCKER_USER_GROUP} ${user}\\033[0m" - fi - - echo -e "Please execute the following command:" - echo -e "\\033[34musermod -aG ${DOCKER_USER_GROUP} ${user}\\033[0m" - done -} - -## @description Some preparatory work for nvidia driver installation -## @audience public -## @stability stable -function prepare_nvidia_environment() -{ - echo "prepare nvidia environment ..." - - yum install "kernel-devel-$(uname -r)" "kernel-headers-$(uname -r)" - - yum -y install epel-release - yum -y install dkms - - echo -e "\\033[34m ===== Please manually execute the following command ===== -# 1. Disable nouveau -# Add the content 'rd.driver.blacklist=nouveau nouveau.modeset=0' -# to the 'GRUB_CMDLINE_LINUX' configuration item in the /etc/default/grub file. -root:> vi /etc/default/grub -vi:> GRUB_CMDLINE_LINUX=\"rd.driver.blacklist=nouveau nouveau.modeset=0 ...\" - -# 2. Generate configuration -root:> grub2-mkconfig -o /boot/grub2/grub.cfg - -# 3. Open (new) /etc/modprobe.d/blacklist.conf, add content 'blacklist nouveau' -root:> vi /etc/modprobe.d/blacklist.conf -vi:> blacklist nouveau - -# 4. Update configuration and reboot -root:> mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img -root:> dracut /boot/initramfs-$(uname -r).img $(uname -r) -root:> reboot -\\033[0m" -} diff --git a/dev-support/submarine-installer/scripts/etcd.sh b/dev-support/submarine-installer/scripts/etcd.sh deleted file mode 100644 index 00bb10c..0000000 --- a/dev-support/submarine-installer/scripts/etcd.sh +++ /dev/null @@ -1,152 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description download etcd bin -## @audience public -## @stability stable -function download_etcd_bin() -{ - # my download http server - if [[ -n "$DOWNLOAD_HTTP" ]]; then - MY_ETCD_DOWNLOAD_URL="${DOWNLOAD_HTTP}/downloads/etcd/${ETCD_TAR_GZ}" - else - MY_ETCD_DOWNLOAD_URL=${ETCD_DOWNLOAD_URL} - fi - - if [[ -f "${DOWNLOAD_DIR}/etcd/${ETCD_TAR_GZ}" ]]; then - echo "${DOWNLOAD_DIR}/etcd/${ETCD_TAR_GZ} already exists." - else - echo "download ${MY_ETCD_DOWNLOAD_URL} ..." - wget -P "${DOWNLOAD_DIR}/etcd" "${MY_ETCD_DOWNLOAD_URL}" - fi -} - -## @description install etcd bin -## @audience public -## @stability stable -function install_etcd_bin() -{ - download_etcd_bin - - # install etcd bin - mkdir -p "${INSTALL_TEMP_DIR}" - rm -rf "${INSTALL_TEMP_DIR}/etcd-*-linux-amd6" - tar zxvf "${DOWNLOAD_DIR}/etcd/${ETCD_TAR_GZ}" -C "${INSTALL_TEMP_DIR}" - - cp -f "${INSTALL_TEMP_DIR}/etcd-${ETCD_VERSION}-linux-amd64/etcd" /usr/bin - cp -f "${INSTALL_TEMP_DIR}/etcd-${ETCD_VERSION}-linux-amd64/etcdctl" /usr/bin - - mkdir -p /var/lib/etcd - chmod -R a+rw /var/lib/etcd -} - -## @description install etcd config -## @audience public -## @stability stable -function install_etcd_config() -{ - # config etcd.service - rm -rf "${INSTALL_TEMP_DIR}/etcd" - cp -rf "${PACKAGE_DIR}/etcd" "${INSTALL_TEMP_DIR}/" - - # 1. Replace name with ETCD_NODE_NAME_REPLACE based on the location of the local IP in $ETCD_HOSTS - indexEtcdList=$(indexByEtcdHosts "${LOCAL_HOST_IP}") - # echo ${indexEtcdList} - etcdNodeName="etcdnode${indexEtcdList}" - # echo ${etcdNodeName} - sed -i "s/ETCD_NODE_NAME_REPLACE/${etcdNodeName}/g" "$INSTALL_TEMP_DIR/etcd/etcd.service" - - # 2. Replace local IP address - sed -i "s/LOCAL_HOST_REPLACE/${LOCAL_HOST_IP}/g" "$INSTALL_TEMP_DIR/etcd/etcd.service" - - # 3. Replace the initial-cluster parameter - # --initial-cluster=etcdnode1=http://10.196.69.173:2380,etcdnode2=http://10.196.69.174:2380,etcdnode3=http://10.196.69.175:2380 \ - initialCluster='' - index=0 - etcdHostsSize=${#ETCD_HOSTS[@]} - for item in "${ETCD_HOSTS[@]}" - do - # char '/' need to escape '\\/' - initialCluster="${initialCluster}etcdnode${index}=http:\\/\\/${item}:2380" - if [[ ${index} -lt ${etcdHostsSize}-1 ]]; then - initialCluster=${initialCluster}"," - fi - index=$((index+1)) - done - #echo "initialCluster=${initialCluster}" - sed -i "s/INITIAL_CLUSTER_REPLACE/${initialCluster}/g" "$INSTALL_TEMP_DIR/etcd/etcd.service" - - cp "$INSTALL_TEMP_DIR/etcd/etcd.service" /etc/systemd/system/ -} - -## @description install etcd -## @audience public -## @stability stable -function install_etcd() -{ - index=$(indexByEtcdHosts "${LOCAL_HOST_IP}") - if [ -z "$index" ]; then - echo -e "STOP: This host\\033[31m[${LOCAL_HOST_IP}]\\033[0m is not in the ETCD server list\\033[31m[${ETCD_HOSTS[*]}]\\033[0m" - return 1 - fi - - install_etcd_bin - - install_etcd_config - - systemctl daemon-reload - systemctl enable etcd.service -} - -## @description uninstall etcd -## @audience public -## @stability stable -function uninstall_etcd() -{ - echo "stop etcd.service" - systemctl stop etcd.service - - echo "rm etcd ..." - rm /usr/bin/etcd - rm /usr/bin/etcdctl - rm -rf /var/lib/etcd - rm /etc/systemd/system/etcd.service - - systemctl daemon-reload -} - -## @description start etcd -## @audience public -## @stability stable -function start_etcd() -{ - systemctl restart etcd.service - - echo " ===== Check the status of the etcd service =====" - echo " exec etcdctl cluster-health" - etcdctl cluster-health - echo " exec etcdctl cluster-health" - etcdctl member list -} - -## @description stop etcd -## @audience public -## @stability stable -function stop_etcd() -{ - systemctl stop etcd.service -} diff --git a/dev-support/submarine-installer/scripts/menu.sh b/dev-support/submarine-installer/scripts/menu.sh deleted file mode 100644 index aff9d7a..0000000 --- a/dev-support/submarine-installer/scripts/menu.sh +++ /dev/null @@ -1,561 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description main menu -## @audience public -## @stability stable -main_menu() -{ -cat< [prepare system environment] ------------------------------------------------------------------------------------- -MENULIST -echo -e " \\e[32m1.prepare operation system\\e[0m" -echo -e " \\e[32m2.prepare operation system kernel\\e[0m" -echo -e " \\e[32m3.prepare GCC version\\e[0m" -echo -e " \\e[32m4.check GPU\\e[0m" -echo -e " \\e[32m5.prepare user&group\\e[0m" -echo -e " \\e[32m6.prepare nvidia environment\\e[0m" -echo -e "" -echo -e " \\e[32mb.back main menu\\e[0m" -cat< [install component] ------------------------------------------------------------------------------------- -MENULIST -echo -e " \\e[32m1.install etcd\\e[0m" -echo -e " \\e[32m2.install docker\\e[0m" -echo -e " \\e[32m3.install calico network\\e[0m" -echo -e " \\e[32m4.install nvidia driver\\e[0m" -echo -e " \\e[32m5.install nvidia docker\\e[0m" -echo -e " \\e[32m6.install submarine autorun script\\e[0m" -echo -e " \\e[32m7.install yarn\\e[0m" -echo -e "" -echo -e " \\e[32mb.back main menu\\e[0m" -cat< [uninstall component] ------------------------------------------------------------------------------------- -MENULIST -echo -e " \\e[32m1.uninstall etcd\\e[0m" -echo -e " \\e[32m2.uninstall docker\\e[0m" -echo -e " \\e[32m3.uninstall calico network\\e[0m" -echo -e " \\e[32m4.uninstall nvidia driver\\e[0m" -echo -e " \\e[32m5.uninstall nvidia docker\\e[0m" -echo -e " \\e[32m6.uninstall submarine autorun script\\e[0m" -echo -e " \\e[32m7.uninstall yarn\\e[0m" -echo -e "" -echo -e " \\e[32mb.back main menu\\e[0m" -cat< [start component] ------------------------------------------------------------------------------------- -MENULIST -echo -e " \\e[32m1.start etcd\\e[0m" -echo -e " \\e[32m2.start docker\\e[0m" -echo -e " \\e[32m3.start calico network\\e[0m" -echo -e " \\e[32m4.start yarn\\e[0m" -echo -e "" -echo -e " \\e[32mb.back main menu\\e[0m" -cat< [stop component] ------------------------------------------------------------------------------------- -MENULIST -echo -e " \\e[32m1.stop etcd\\e[0m" -echo -e " \\e[32m2.stop docker\\e[0m" -echo -e " \\e[32m3.stop calico network\\e[0m" -echo -e " \\e[32m4.stop yarn\\e[0m" -echo -e "" -echo -e " \\e[32mb.back main menu\\e[0m" -cat< [install yarn] ------------------------------------------------------------------------------------- -MENULIST -echo -e " \\e[32m1.install YARN [every host]\\e[0m" -echo -e " \\e[32m2.install YARN container-executor [every host]\\e[0m" -echo -e " \\e[32m3.install YARN Timeline [one host]\\e[0m" -echo -e "" -echo -e " \\e[32mb.back main menu\\e[0m" -cat< [install yarn] ------------------------------------------------------------------------------------- -MENULIST -echo -e " \\e[32m1.uninstall Yarn\\e[0m" -echo -e "" -echo -e " \\e[32mb.back main menu\\e[0m" -cat< Failed to download nvidia-docker. - Please specify nvidia component for download_and_uncompress_nvidia_repo \\033[0m" - return 1 - fi - local component=$1 - - if [[ -d "${DOWNLOAD_DIR}/nvidia-docker-repo/${component}/centos7" ]]; then - echo "${DOWNLOAD_DIR}/nvidia-docker-repo/${component}/centos7 already exists." - else - # Trim the last slash of NVIDIA_DOCKER_GIT_SNAPSHOT_URL - local NVIDIA_DOCKER_URL="$(echo -e "${NVIDIA_DOCKER_GIT_SNAPSHOT_URL}" | sed -e 's/\/*$//')" - wget ${NVIDIA_DOCKER_URL}/${component}/tarball/gh-pages -O - | \ - tar -zx --strip-components=1 -C ${DOWNLOAD_DIR}/nvidia-docker-repo/${component} - if [[ $? -ne 0 ]]; then - echo -e "\\033[32mshell:> Failed to download ${component} of nvidia-docker - from ${NVIDIA_DOCKER_URL}/${component}/tarball/gh-pages \\033[0m" - fi - fi -} - -## @description install nvidia docker -## @audience public -## @stability stable -function install_nvidia_docker() -{ - # Backup /etc/docker/daemon.json - local DOCKER_DAEMON_BAK="${DOWNLOAD_DIR}/docker-daemon-bak" - if [[ ! -d "${DOCKER_DAEMON_BAK}" ]]; then - mkdir -p "${DOCKER_DAEMON_BAK}" - fi - cp /etc/docker/daemon.json "${DOCKER_DAEMON_BAK}" - echo "Backup /etc/docker/daemon.json in ${DOCKER_DAEMON_BAK}" - - # Remove nvidia docker 1.0 - remove_nvidia_docker_1.0 - - # Get nvidia-docker repo - if [[ ! -d "${DOWNLOAD_DIR}/nvidia-docker-repo" ]]; then - mkdir -p "${DOWNLOAD_DIR}/nvidia-docker-repo" - fi - local dockerRepo="${DOWNLOAD_DIR}/nvidia-docker-repo/nvidia-docker.repo" - if [[ -n "$DOWNLOAD_HTTP" ]]; then - wget -P "${DOWNLOAD_DIR}/nvidia-docker-repo/" \ - "${DOWNLOAD_HTTP}/downloads/nvidia-docker-repo/nvidia-docker/centos7/nvidia-docker.repo" - local DOWNLOAD_HTTP_REGEX=$(echo ${DOWNLOAD_HTTP} | sed 's/\//\\\//g') - echo "DOWNLOAD_HTTP_REGEX: ${DOWNLOAD_HTTP_REGEX}" - sed -i "s/https:\/\/nvidia.github.io/${DOWNLOAD_HTTP_REGEX}\/downloads\/nvidia-docker-repo/g" \ - "${dockerRepo}" - else - download_nvidia_docker_bin - local DOWNLOAD_DIR_REGEX=$(echo "${DOWNLOAD_DIR}" | sed 's/\//\\\//g') - cp "${DOWNLOAD_DIR}/nvidia-docker-repo/nvidia-docker/centos7/nvidia-docker.repo" \ - "${dockerRepo}" - sed -i "s/https:\/\/nvidia.github.io/file:\/\/${DOWNLOAD_DIR_REGEX}\/nvidia-docker-repo/g" \ - "${dockerRepo}" - fi - - # Install nvidia-docker - sudo cp ${dockerRepo} /etc/yum.repos.d/nvidia-docker.repo - echo -e "\\033[31m Installing nvidia-docker2 ...\\033[0m" - sudo yum install -y nvidia-docker2-${NVIDIA_DOCKER_VERSION}-1.docker${DOCKER_VERSION_NUM} - - # As nvidia-docker would overwrite daemon.json, append old daemon.json into the now daemon.json - COMBINE_JSON="${SCRIPTS_DIR}/combine-docker-daemons.py" - IS_NEW_JSON=$(python ${COMBINE_JSON} ${DOCKER_DAEMON_BAK}/daemon.json /etc/docker/daemon.json ${DOCKER_DAEMON_BAK}/daemon-new.json) - if [[ "${IS_NEW_JSON}" = "True" ]]; then - sudo cp ${DOCKER_DAEMON_BAK}/daemon-new.json /etc/docker/daemon.json - echo "Succeed to update /etc/docker/daemon.json" - else - echo "WARNING: /etc/docker/daemon.json is overrided by nvidia-docker and - can't be merged with the old daemon.json. Please update it manually - later." - fi - - # create nvidia driver library path - if [ ! -d "/var/lib/nvidia-docker/volumes/nvidia_driver" ]; then - echo "WARN: /var/lib/nvidia-docker/volumes/nvidia_driver folder path is not exist!" - sudo mkdir -p /var/lib/nvidia-docker/volumes/nvidia_driver - fi - - local nvidiaVersion - nvidiaVersion=$(get_nvidia_version) - echo -e "\\033[31m nvidia detect version is ${nvidiaVersion}\\033[0m" - - sudo mkdir "/var/lib/nvidia-docker/volumes/nvidia_driver/${nvidiaVersion}" - sudo mkdir "/var/lib/nvidia-docker/volumes/nvidia_driver/${nvidiaVersion}/bin" - sudo mkdir "/var/lib/nvidia-docker/volumes/nvidia_driver/${nvidiaVersion}/lib64" - - sudo cp /usr/bin/nvidia* "/var/lib/nvidia-docker/volumes/nvidia_driver/${nvidiaVersion}/bin" - sudo cp /usr/lib64/libcuda* "/var/lib/nvidia-docker/volumes/nvidia_driver/${nvidiaVersion}/lib64" - sudo cp /usr/lib64/libnvidia* "/var/lib/nvidia-docker/volumes/nvidia_driver/${nvidiaVersion}/lib64" - - echo -e "\\033[32m===== Please manually execute the following command =====\\033[0m" - echo -e "\\033[32mshell:> nvidia-docker run --rm ${DOCKER_REGISTRY}/nvidia/cuda:9.0-devel nvidia-smi -# If you don't see the list of graphics cards above, the NVIDIA driver installation failed. ===== -\\033[0m" - - echo -e "\\033[32m===== Please manually execute the following command =====\\033[0m" - echo -e "\\033[32m# Test with tf.test.is_gpu_available() -shell:> nvidia-docker run -it ${DOCKER_REGISTRY}/tensorflow/tensorflow:1.9.0-gpu bash -# In docker container -container:> python -python:> import tensorflow as tf -python:> tf.test.is_gpu_available() -python:> exit() -\\033[0m" -} - -## @description uninstall nvidia docker -## @audience public -## @stability stable -function uninstall_nvidia_docker() -{ - sudo yum remove -y nvidia-docker2-${NVIDIA_DOCKER_VERSION}-1.docker${DOCKER_VERSION_NUM} -} - -## @description uninstall nvidia docker 1.0 -## @audience public -## @stability stable -function remove_nvidia_docker_1.0() -{ - docker volume ls -q -f driver=nvidia-docker | \ - xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f - sudo yum remove nvidia-docker -} diff --git a/dev-support/submarine-installer/scripts/nvidia.sh b/dev-support/submarine-installer/scripts/nvidia.sh deleted file mode 100644 index a335214..0000000 --- a/dev-support/submarine-installer/scripts/nvidia.sh +++ /dev/null @@ -1,155 +0,0 @@ -#!/usr/bin/env bash -# 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. - -nvidia_run_file="" - -## @description get nvidia version -## @audience public -## @stability stable -function get_nvidia_version() -{ - local nvidia_detect_info - nvidia_detect_info=$("nvidia-detect" -v) - echo $nvidia_detect_info | sed "s/^.*This device requires the current \([0-9.]*\).*/\1/" -} - -## @description download nvidia detect -## @audience public -## @stability stable -function download_nvidia_detect_rpm() -{ - if [[ -f ${DOWNLOAD_DIR}/nvidia/nvidia-detect.rpm ]]; then - echo "NVIDIA nvidia-detect.rpm already exists ${DOWNLOAD_DIR}/nvidia/ directory." - echo "===== Please make sure the ${DOWNLOAD_DIR}/nvidia/nvidia-detect.rpm file is complete and can be used normally. =====" - elif [[ -n "$DOWNLOAD_HTTP" ]]; then - # Get nvidia-detect.rpm from download server - echo "Download ${MY_NVIDIA_DETECT_URL} ..." - wget -P "${DOWNLOAD_DIR}/nvidia/" "${DOWNLOAD_HTTP}/downloads/nvidia/nvidia-detect.rpm" - if [[ $? -ne 0 ]]; then - echo -e "\\033[32mshell:> Failed to download nvidia-detect.rpm of nvidia - detect from ${DOWNLOAD_HTTP}/downloads/nvidia/nvidia-detect.rpm \\033[0m" - fi - else - nvidiaDetectRpm=`curl --silent ${NVIDIA_DETECT_URL} | grep nvidia-detect- | sed 's/.*\(nvidia-detect-.*.rpm\).*/\1/g' | head -n 1` - # Trim the last slash of DOCKER_REPO - NVIDIA_DETECT_URL_TRIMED="$(echo -e "${NVIDIA_DETECT_URL}" | sed -e 's/\/*$//')" - wget --output-document="${DOWNLOAD_DIR}/nvidia/nvidia-detect.rpm" "${NVIDIA_DETECT_URL_TRIMED}/${nvidiaDetectRpm}" - if [[ $? -ne 0 ]]; then - echo -e "\\033[32mshell:> Failed to download nvidia-detect.rpm of nvidia - detect from ${NVIDIA_DETECT_URL}/${nvidiaDetectRpm} \\033[0m" - fi - fi -} - -## @description download nvidia driver -## @audience public -## @stability stable -function download_nvidia_driver() -{ - download_nvidia_detect_rpm - - # Install nvidia detect if needed - if ! [ -x "$(command -v nvidia-detect)" ]; then - echo 'Installing nvidia-detect ...' - sudo rpm -ivh "${DOWNLOAD_DIR}/nvidia/nvidia-detect.rpm" - fi - - echo "Check the gpu cards with nvidia-detect ..." - local nvidiaVersion - if [[ ${IS_DOWNLOAD_SERVER} && -n ${NVIDIA_DRIVER_VERSION} ]]; then - nvidiaVersion=${NVIDIA_DRIVER_VERSION} - else - nvidiaVersion=$(get_nvidia_version) - fi - echo -e "detect nvidia version is \\033[31m${nvidiaVersion}\\033[0m" - - # download NVIDIA driver - if [[ "$nvidiaVersion" = "" ]]; then - echo -e "\\033[31mERROR: No graphics card device detected.\\033[0m" - return 1 - else - nvidia_run_file="NVIDIA-Linux-x86_64-${nvidiaVersion}.run" - - # submarine http server - if [[ -n "$DOWNLOAD_HTTP" ]]; then - MY_NVIDIA_DRIVER_RUN_URL="${DOWNLOAD_HTTP}/downloads/nvidia/${nvidia_run_file}" - else - # http://us.download.nvidia.com/XFree86/Linux-x86_64/390.87/NVIDIA-Linux-x86_64-390.87.run - MY_NVIDIA_DRIVER_RUN_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/${nvidiaVersion}/${nvidia_run_file}" - fi - - if [[ -f ${DOWNLOAD_DIR}/nvidia/${nvidia_run_file} ]]; then - echo "NVIDIA driver files already exist in the ${DOWNLOAD_DIR}/nvidia/${nvidia_run_file} directory." - echo "===== Please make sure the ${DOWNLOAD_DIR}/nvidia/nvidia/${nvidia_run_file} file is complete and can be used normally. =====" - else - echo "Download the NVIDIA driver from the ${MY_NVIDIA_DRIVER_RUN_URL}" - wget -P "${DOWNLOAD_DIR}/nvidia/" "${MY_NVIDIA_DRIVER_RUN_URL}" - fi - fi -} - -## @description install nvidia -## @audience public -## @stability stable -function install_nvidia() -{ - download_nvidia_driver - - # Confirm that the system disables nouveau - local disable_nouveau_info - disable_nouveau_info=$(lsmod | grep nouveau) - if [[ "$disable_nouveau_info" = "" ]]; then - echo "===== Start installing the NVIDIA driver =====" - echo -e "Some options during the installation - Would you like to register the kernel module sources with DKMS? - This will allow DKMS to automatically build a new module, if you install a different kernel later. - \\033[33m[Yes]\\033[0m - Install NVIDIA's 32-bit compatibility libraries \\033[33m[Yes]\\033[0m - centos Install NVIDIA's 32-bit compatibility libraries - \\033[33m[Yes]\\033[0m - Would you like to run the nvidia-xconfig utility to automatically update your X configuration file... - \\033[33m[No]\\033[0m" - sleep 2 - sh "${DOWNLOAD_DIR}/nvidia/${nvidia_run_file}" - else - echo -e "ERROR: Nouveau is not disabled" - return 1 - fi - - echo -e "\\033[32m===== execute nvidia-smi. You should be able to see the list of graphics cards =====\\033[0m" - sleep 1 - nvidia-smi -} - -## @description uninstall nvidia -## @audience public -## @stability stable -function uninstall_nvidia() -{ - if [ -x "$(command -v nvidia-detect)" ]; then - sudo yum remove nvidia-detect - echo "Succeeded to remove nvidia-detect" - fi - - if [ ! -f "/usr/bin/nvidia-uninstall" ]; then - echo -e "\\033[31mERROR: /usr/bin/nvidia-uninstall file is not exist!\\033[0m" - return 1 - fi - - echo -e "execute /usr/bin/nvidia-uninstall" - sudo /usr/bin/nvidia-uninstall -} diff --git a/dev-support/submarine-installer/scripts/submarine.sh b/dev-support/submarine-installer/scripts/submarine.sh deleted file mode 100644 index f3baec2..0000000 --- a/dev-support/submarine-installer/scripts/submarine.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description install submarine autorun script -## @audience public -## @stability stable -function install_submarine() -{ - cp "${PACKAGE_DIR}/submarine/submarine.sh" /etc/rc.d/init.d/submarine.sh - chmod +x /etc/rc.d/init.d/submarine.sh - chmod +x /etc/rc.d/rc.local - - if [ "$(grep -c "/etc/rc.d/init.d/submarine.sh" /etc/rc.d/rc.local)" -eq '0' ]; then - echo "/etc/rc.d/init.d/submarine.sh">> /etc/rc.d/rc.local - fi -} - -## @description uninstall submarine autorun script -## @audience public -## @stability stable -function uninstall_submarine() -{ - rm /etc/rc.d/init.d/submarine.sh -} \ No newline at end of file diff --git a/dev-support/submarine-installer/scripts/utils.sh b/dev-support/submarine-installer/scripts/utils.sh deleted file mode 100644 index b3ecbcb..0000000 --- a/dev-support/submarine-installer/scripts/utils.sh +++ /dev/null @@ -1,204 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description check install user -## @audience public -## @stability stable -function check_install_user() -{ - if [[ $(id -u) -ne 0 ]];then - echo "This script must be run with a ROOT user!" - exit # don't call exit_install() - fi -} - -## @description exit install -## @audience public -## @stability stable -function exit_install() -{ - echo "Exit the installation!" - exit -} - -## @description Check if the IP address format is correct -## @audience public -## @stability stable -function valid_ip() -{ - local ip=$1 - local stat=1 - - if [[ $ip =~ ^[0-9]{1,3\}.[0-9]{1,3\}.[0-9]{1,3\}.[0-9]{1,3\}$ ]]; then - OIFS=$IFS - IFS='.' - ip=($ip) - IFS=$OIFS - - if [[ ${ip[0]} -le 255 && ${ip[1]} -le 255 && ${ip[2]} -le 255 && ${ip[3]} -le 255 ]]; then - stat=$? - fi - fi - - return $stat -} - -## @description Check if the configuration file configuration is correct -## @audience public -## @stability stable -function check_install_conf() -{ - echo "Check if the configuration file configuration is correct ..." - - # check YARN_SECURITY's value - if [ -z "${YARN_SECURITY}" ]; then - echo "YARN_SECURITY=[$YARN_SECURITY] is empty! please use true or false " - exit_install - fi - - # check resource manager - rmCount=${#YARN_RESOURCE_MANAGER_HOSTS[@]} - if [[ $rmCount -gt 2 ]]; then # <>2 - echo "Number of resource manager nodes = [$rmCount], must be configured equal 2 servers! " - exit_install - fi - - # - if [ -z "${YARN_REGISTRY_DNS_HOST_PORT}" ]; then - echo "YARN_REGISTRY_DNS_HOST_PORT=[$YARN_REGISTRY_DNS_HOST_PORT] is empty! " - exit_install - fi - - # Check if it is empty - if [[ "${YARN_SECURITY}" = "true" && -z "${LOCAL_REALM}" ]]; then - echo "LOCAL_REALM=[$LOCAL_REALM] can not be empty! " - exit_install - fi - - if [[ "${YARN_SECURITY}" = "true" && -z "${HADOOP_KEYTAB_LOCATION}" ]]; then - echo "HADOOP_KEYTAB_LOCATION=[$HADOOP_KEYTAB_LOCATION] can not be empty! " - exit_install - fi - - if [[ "${YARN_SECURITY}" = "true" && -z "${HADOOP_PRINCIPAL}" ]]; then - echo "HADOOP_PRINCIPAL=[$HADOOP_PRINCIPAL] can not be empty! " - exit_install - fi - - if [[ "${YARN_SECURITY}" = "true" && -z "${MAPRED_KEYTAB_LOCATION}" ]]; then - echo "MAPRED_KEYTAB_LOCATION=[$MAPRED_KEYTAB_LOCATION] can not be empty! " - exit_install - fi - - if [[ "${YARN_SECURITY}" = "true" && -z "${YARN_KEYTAB_LOCATION}" ]]; then - echo "YARN_KEYTAB_LOCATION=[$YARN_KEYTAB_LOCATION] can not be empty! " - exit_install - fi - - if [[ "${YARN_SECURITY}" = "true" && -z "${HTTP_KEYTAB_LOCATION}" ]]; then - echo "HTTP_KEYTAB_LOCATION=[$HTTP_KEYTAB_LOCATION] can not be empty! " - exit_install - fi - - # check etcd conf - hostCount=${#ETCD_HOSTS[@]} - if [[ $hostCount -lt 3 && hostCount -ne 0 ]]; then # <>2 - echo "Number of nodes = [$hostCount], must be configured to be greater than or equal to 3 servers! " - exit_install - fi - echo "Check if the configuration file configuration is correct [ Done ]" -} - -## @description index by EtcdHosts list -## @audience public -## @stability stable -function indexByEtcdHosts() { - index=0 - while [ "$index" -lt "${#ETCD_HOSTS[@]}" ]; do - if [ "${ETCD_HOSTS[$index]}" = "$1" ]; then - echo $index - return - fi - (( index++ )) - done - echo "" -} - -## @description index by Resource Manager Hosts list -## @audience public -## @stability stable -function indexByRMHosts() { - index=0 - while [ "$index" -lt "${#YARN_RESOURCE_MANAGER_HOSTS[@]}" ]; do - if [ "${YARN_RESOURCE_MANAGER_HOSTS[$index]}" = "$1" ]; then - echo $index - return - fi - (( index++ )) - done - echo "" -} - -## @description index of node manager exclude Hosts list -## @audience public -## @stability stable -function indexOfNMExcludeHosts() { - index=0 - while [ "$index" -lt "${#YARN_NODE_MANAGER_EXCLUDE_HOSTS[@]}" ]; do - if [ "${YARN_NODE_MANAGER_EXCLUDE_HOSTS[$index]}" = "$1" ]; then - echo $index - return - fi - (( index++ )) - done - echo "" -} - -## @description index by Resource Manager Hosts list -## @audience public -## @stability stable -function pathExitsOnHDFS() { - exists=$("${HADOOP_HOME}/bin/hadoop" dfs -ls -d "$1") - echo "${exists}" -} - -## @description get local IP -## @audience public -## @stability stable -function getLocalIP() -{ - local _ip _myip _line _nl=$'\n' - while IFS=$': \t' read -r -a _line ;do - [ -z "${_line%inet}" ] && - _ip=${_line[${#_line[1]}>4?1:2]} && - [ "${_ip#127.0.0.1}" ] && _myip=$_ip - done< <(LANG=C /sbin/ifconfig) - printf "%s" ${1+-v} "$1" "%s${_nl:0:$((${#1}>0?0:1))}" "$_myip" -} - -## @description get ip list -## @audience public -## @stability stable -function get_ip_list() -{ - array=$(ip -o -4 addr | awk '{print $4}' | grep -v 127 | cut -d/ -f1) - - for ip in "${array[@]}" - do - LOCAL_HOST_IP_LIST+=(${ip}) - done -} diff --git a/dev-support/submarine-installer/scripts/xmlcombine.py b/dev-support/submarine-installer/scripts/xmlcombine.py deleted file mode 100644 index 2b049d0..0000000 --- a/dev-support/submarine-installer/scripts/xmlcombine.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python -# 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. - -import sys -from xml.etree import ElementTree - -def run(files): - first = None - for filename in files: - data = ElementTree.parse(filename).getroot() - if first is None: - first = data - else: - first.extend(data) - if first is not None: - print ElementTree.tostring(first) - -if __name__ == "__main__": - run(sys.argv[1:]) diff --git a/dev-support/submarine-installer/scripts/yarn.sh b/dev-support/submarine-installer/scripts/yarn.sh deleted file mode 100644 index 461c20e..0000000 --- a/dev-support/submarine-installer/scripts/yarn.sh +++ /dev/null @@ -1,640 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description install yarn -## @audience public -## @stability stable -function install_yarn() -{ - # base YARN_SECURITY determine which etc is - rm -f ${PACKAGE_DIR}/hadoop/yarn/etc - ln -s ${PACKAGE_DIR}/hadoop/yarn/etc_secure ${PACKAGE_DIR}/hadoop/yarn/etc - - initialize_temp - - host=$(hostname) - index=$(indexByRMHosts "${host}") - if [[ -n "$index" || "x$YARN_TIMELINE_HOST" != "x$host" ]]; then - kinit -kt ${HADOOP_KEYTAB_LOCATION} ${HADOOP_PRINCIPAL} - fi - - install_java_tarball - if [[ $? = 1 ]]; then - return 1 - fi - install_yarn_tarball - if [[ $? = 1 ]]; then - return 1 - fi - install_yarn_sbin - install_yarn_rm_nm - install_yarn_service - install_registry_dns - install_timeline_server - install_job_history - install_mapred - install_spark_shuffle - install_lzo_native - - # copy file - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/hdfs-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/capacity-scheduler.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/resource-types.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/log4j.properties" "${HADOOP_HOME}/etc/hadoop/" - chown "${HADOOP_SETUP_USER}":yarn "${HADOOP_HOME}"/etc/hadoop/* -} - -## @description Initialize tmp dir for installation. -## @audience public -## @stability stable -function initialize_temp() -{ - mkdir -p "${INSTALL_TEMP_DIR}/hadoop" - \cp -rf "${PACKAGE_DIR}/hadoop/yarn" "${INSTALL_TEMP_DIR}/hadoop" - isGpuEnabled=$(nvidia-smi) - if [[ -n "$isGpuEnabled" ]]; then - python ${SCRIPTS_DIR}/xmlcombine.py ${PACKAGE_DIR}/hadoop/yarn/etc/hadoop/yarn-site.xml ${PACKAGE_DIR}/hadoop/yarn/etc/hadoop/gpu/yarn-site-gpu.xml > "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/yarn-site.xml" - fi - chown -R ${HADOOP_SETUP_USER} "${INSTALL_TEMP_DIR}/hadoop" -} - -## @description uninstall yarn -## @audience public -## @stability stable -function uninstall_yarn() -{ - executor_dir=$(dirname "${YARN_CONTAINER_EXECUTOR_PATH}") - executor_conf_dir=$(dirname "${executor_dir}")/etc/hadoop - - rm -rf "${YARN_CONTAINER_EXECUTOR_PATH}" - rm -rf "${executor_conf_dir}" - rm -rf "${HADOOP_HOME}" -} - -## @description install yarn container executor -## @audience public -## @stability stable -function install_yarn_container_executor() -{ - echo "install yarn container executor file ..." - - executor_dir=$(dirname "${YARN_CONTAINER_EXECUTOR_PATH}") - if [ ! -d "${executor_dir}" ]; then - mkdir -p "${executor_dir}" - fi - if [ -f "${YARN_CONTAINER_EXECUTOR_PATH}" ]; then - if [ -f "${HADOOP_HOME}/bin/container-executor" ]; then - rm ${YARN_CONTAINER_EXECUTOR_PATH} - fi - fi - - if [ -f "${HADOOP_HOME}/bin/container-executor" ]; then - cp -f "${HADOOP_HOME}/bin/container-executor" "${YARN_CONTAINER_EXECUTOR_PATH}" - rm "${HADOOP_HOME}/bin/container-executor" - fi - - sudo chmod 6755 "${executor_dir}" - sudo chown :yarn "${YARN_CONTAINER_EXECUTOR_PATH}" - sudo chmod 6050 "${YARN_CONTAINER_EXECUTOR_PATH}" -} - -## @description Deploy hadoop yarn tar ball -## @audience public -## @stability stable -function install_yarn_tarball() -{ - tag=`date '+%Y%m%d%H%M%S'` - if [ -f "${PACKAGE_DIR}/hadoop/${HADOOP_TARBALL}" ]; then - tar -zxvf "${PACKAGE_DIR}/hadoop/${HADOOP_TARBALL}" -C "${PACKAGE_DIR}/hadoop/" - mv "${PACKAGE_DIR}/hadoop/${HADOOP_VERSION}" "/home/${HADOOP_SETUP_USER}/${HADOOP_VERSION}-${tag}" - chown -R ${HADOOP_SETUP_USER} "/home/hadoop/${HADOOP_VERSION}-${tag}" - if [[ -d "${HADOOP_HOME}" ]] || [[ -L "${HADOOP_HOME}" ]]; then - rm -rf ${HADOOP_HOME} - fi - ln -s "/home/hadoop/${HADOOP_VERSION}-${tag}" "${HADOOP_HOME}" - chown ${HADOOP_SETUP_USER} "${HADOOP_HOME}" - else - echo "ERROR: Please put ${HADOOP_TARBALL} in the path of ${PACKAGE_DIR}/hadoop/ firstly." - return 1 - fi -} - -## @description Deploy java tar ball -## @audience public -## @stability stable -function install_java_tarball() -{ - if [[ -d "${JAVA_HOME}" ]] || [[ -L "${JAVA_HOME}" ]]; then - echo "JAVA_HOME already exists. There is no need to install java." - else - if [[ -f "${PACKAGE_DIR}/java/${JAVA_TARBALL}" ]]; then - tar -zxvf "${PACKAGE_DIR}/java/${JAVA_TARBALL}" -C "${PACKAGE_DIR}/java/" - mv "${PACKAGE_DIR}/java/${JAVA_VERSION}" "/home/${HADOOP_SETUP_USER}/${JAVA_VERSION}" - chown -R ${HADOOP_SETUP_USER} "/home/hadoop/${JAVA_VERSION}" - ln -s "/home/hadoop/${JAVA_VERSION}" "${JAVA_HOME}" - else - echo "Error: Failed to install java, please put java tarball in the path of - ${PACKAGE_DIR}/java/${JAVA_TARBALL}" - return 1 - fi - fi -} - -## @description install yarn resource & node manager -## @audience public -## @stability stable -function install_yarn_rm_nm() -{ - echo "install yarn config file ..." - host=$(hostname) - - find="/" - replace="\\/" - escape_yarn_nodemanager_local_dirs=${YARN_NODEMANAGER_LOCAL_DIRS//$find/$replace} - escape_yarn_nodemanager_log_dirs=${YARN_NODEMANAGER_LOG_DIRS//$find/$replace} - escape_yarn_keytab_location=${YARN_KEYTAB_LOCATION//$find/$replace} - escape_yarn_hierarchy=${YARN_HIERARCHY//$find/$replace} - escape_http_keytab_location=${HTTP_KEYTAB_LOCATION//$find/$replace} - escape_yarn_nodemanager_nodes_exclude_path=${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH//$find/$replace} - escape_yarn_nodemanager_recovery_dir=${YARN_NODEMANAGER_RECOVERY_DIR//$find/$replace} - escape_fs_defaults=${FS_DEFAULTFS//$find/$replace} - escape_hadoop_http_authentication_signature_secret_file=${HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE//$find/$replace} - escape_hadoop_home=${HADOOP_HOME//$find/$replace} - - # container-executor.cfg` - sed -i "s/YARN_NODEMANAGER_LOCAL_DIRS_REPLACE/${escape_yarn_nodemanager_local_dirs}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/YARN_NODEMANAGER_LOG_DIRS_REPLACE/${escape_yarn_nodemanager_log_dirs}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/DOCKER_REGISTRY_REPLACE/${DOCKER_REGISTRY}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/YARN_DOCKER_ALLOWED_CONTAINER_NETWORKS_REPLACE/${YARN_DOCKER_ALLOWED_CONTAINER_NETWORKS}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/YARN_HIERARCHY_REPLACE/${escape_yarn_hierarchy}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/HADOOP_HOME_REPLACE/${escape_hadoop_home}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - - # enable cgroup for yarn - . "${PACKAGE_DIR}/submarine/submarine.sh" - - # Delete the ASF license comment in the container-executor.cfg file, otherwise it will cause a cfg format error. - sed -i '1,16d' "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - - executor_dir=$(dirname "${YARN_CONTAINER_EXECUTOR_PATH}") - executor_conf_dir=$(dirname "${executor_dir}")/etc/hadoop - if [ ! -d "${executor_conf_dir}" ]; then - sudo mkdir -p "${executor_conf_dir}" - fi - - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" "${executor_conf_dir}" - - # yarn-site.xml - sed -i "s/YARN_RESOURCE_MANAGER_HOSTS1_REPLACE/${YARN_RESOURCE_MANAGER_HOSTS[0]}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_RESOURCE_MANAGER_HOSTS2_REPLACE/${YARN_RESOURCE_MANAGER_HOSTS[1]}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/HTTP_KEYTAB_LOCATION_REPLACE/${escape_http_keytab_location}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/LOCAL_CLUSTER_ID_REPLACE/${LOCAL_CLUSTER_ID}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_NODEMANAGER_LOCAL_DIRS_REPLACE/${escape_yarn_nodemanager_local_dirs}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_NODEMANAGER_LOG_DIRS_REPLACE/${escape_yarn_nodemanager_log_dirs}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - # Make nodemanager local dirs if the host is not in YARN_NODE_MANAGER_EXCLUDE_HOSTS - index=$(indexOfNMExcludeHosts "${host}") - if [ -z "$index" ]; then - arr=(${YARN_NODEMANAGER_LOCAL_DIRS//,/ }) - index=0 - while [ "$index" -lt "${#arr[@]}" ]; do - mkdir -p "${arr[$index]}" - (( index++ )) - done - - arr=(${YARN_NODEMANAGER_LOG_DIRS//,/ }) - index=0 - while [ "$index" -lt "${#arr[@]}" ]; do - mkdir -p "${arr[$index]}" - (( index++ )) - done - - arr=(${YARN_NODEMANAGER_LOCAL_HOME_PATHS//,/ }) - index=0 - while [ "$index" -lt "${#arr[@]}" ]; do - chown -R yarn "${arr[$index]}" - (( index++ )) - done - fi - - sed -i "s/YARN_ZK_ADDRESS_REPLACE/${YARN_ZK_ADDRESS}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_KEYTAB_LOCATION_REPLACE/${escape_yarn_keytab_location}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_DOCKER_CONTAINER_DEFAULT_NETWORK_REPLACE/${YARN_DOCKER_CONTAINER_DEFAULT_NETWORK}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_DOCKER_ALLOWED_CONTAINER_NETWORKS_REPLACE/${YARN_DOCKER_ALLOWED_CONTAINER_NETWORKS}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - - sed -i "s/YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH_REPLACE/${escape_yarn_nodemanager_nodes_exclude_path}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - node_exclude_dir=$(dirname "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}") - if [[ ! -d "${node_exclude_dir}" ]]; then - mkdir -p "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}" - fi - if [[ ! -f "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}" ]]; then - touch "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}" - chmod 777 "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}" - fi - - sed -i "s/YARN_NODEMANAGER_RECOVERY_DIR_REPLACE/${escape_yarn_nodemanager_recovery_dir}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - mkdir -p "${YARN_NODEMANAGER_RECOVERY_DIR}" - chmod 777 "${YARN_NODEMANAGER_RECOVERY_DIR}" - - # core-site.xml - sed -i "s/LOCAL_REALM_REPLACE/${LOCAL_REALM}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" - sed -i "s/YARN_ZK_ADDRESS_REPLACE/${YARN_ZK_ADDRESS}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" - sed -i "s/FS_DEFAULTFS_REPLACE/${escape_fs_defaults}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" - sed -i "s/HTTP_KEYTAB_LOCATION_REPLACE/${escape_http_keytab_location}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" - - # WARN: ${HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE} Can not be empty! - echo 'hello submarine' > "${HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE}" - escape_hadoop_http_authentication_signature_secret_file=${HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE//$find/$replace} - sed -i "s/HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE_REPLACE/${escape_hadoop_http_authentication_signature_secret_file}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" - - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/hdfs-site.xml" "${HADOOP_HOME}/etc/hadoop/" - - install_yarn_container_executor -} - -function install_spark_shuffle() { - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/spark* "${HADOOP_HOME}/share/hadoop/yarn/lib/" -} - -function install_lzo_native() { - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/native/libgpl* "${HADOOP_HOME}/lib/native/" - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/hadoop-lzo* "${HADOOP_HOME}/share/hadoop/yarn/lib/" - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/hadoop-lzo* "${HADOOP_HOME}/share/hadoop/hdfs/lib/" - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/hadoop-lzo* "${HADOOP_HOME}/share/hadoop/common/lib/" - if [ ! -d "${HADOOP_HOME}/share/hadoop/mapreduce/lib/" ]; then - mkdir -p "${HADOOP_HOME}/share/hadoop/mapreduce/lib/" - fi - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/hadoop-lzo* "${HADOOP_HOME}/share/hadoop/mapreduce/lib/" -} - -function install_mapred() { - find="/" - replace="\\/" - escape_mapred_keytab_location=${MAPRED_KEYTAB_LOCATION//$find/$replace} - escape_yarn_app_mapreduce_am_staging_dir=${YARN_APP_MAPREDUCE_AM_STAGING_DIR//$find/$replace} - escape_fs_defaults=${FS_DEFAULTFS//$find/$replace} - - sed -i "s/FS_DEFAULTFS_REPLACE/${escape_fs_defaults}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" - sed -i "s/YARN_APP_MAPREDUCE_AM_STAGING_DIR_REPLACE/${escape_yarn_app_mapreduce_am_staging_dir}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" - host=$(hostname) - index=$(indexByRMHosts "${host}") - if [[ -n "$index" ]]; then - # Only RM needs to execute the following code - pathExists=$(pathExitsOnHDFS "${YARN_APP_MAPREDUCE_AM_STAGING_DIR}") - if [[ -z "${pathExists}" ]]; then - echo "Create hdfs path ${YARN_APP_MAPREDUCE_AM_STAGING_DIR}" - "${HADOOP_HOME}/bin/hadoop" dfs -mkdir -p "${YARN_APP_MAPREDUCE_AM_STAGING_DIR}" - "${HADOOP_HOME}/bin/hadoop" dfs -chown yarn:hadoop "${YARN_APP_MAPREDUCE_AM_STAGING_DIR}" - "${HADOOP_HOME}/bin/hadoop" dfs -chmod 1777 "${YARN_APP_MAPREDUCE_AM_STAGING_DIR}" - fi - fi - sed -i "s/MAPRED_KEYTAB_LOCATION_REPLACE/${escape_mapred_keytab_location}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" -} - -function install_yarn_sbin() { - find="/" - replace="\\/" - escape_yarn_gc_log_dir=${YARN_GC_LOG_DIR//$find/$replace} - escape_java_home=${JAVA_HOME//$find/$replace} - escape_hadoop_home=${HADOOP_HOME//$find/$replace} - escape_yarn_pid_dir=${YARN_PID_DIR//$find/$replace} - escape_yarn_log_dir=${YARN_LOG_DIR//$find/$replace} - cp -R ${PACKAGE_DIR}/hadoop/yarn/sbin/* "${HADOOP_HOME}/sbin/" - chown "${HADOOP_SETUP_USER}":yarn "${HADOOP_HOME}"/sbin/* - - if [ ! -d "$YARN_GC_LOG_DIR" ]; then - mkdir -p "$YARN_GC_LOG_DIR" - chown "${HADOOP_SETUP_USER}":yarn "${YARN_GC_LOG_DIR}" - chmod 775 "${YARN_GC_LOG_DIR}" - fi - - if [ ! -d "$YARN_LOG_DIR" ]; then - mkdir -p "$YARN_LOG_DIR" - chown "${HADOOP_SETUP_USER}":yarn "${YARN_LOG_DIR}" - chmod 775 "${YARN_LOG_DIR}" - fi - - if [ ! -d "$YARN_PID_DIR" ]; then - mkdir -p "$YARN_PID_DIR" - chown "${HADOOP_SETUP_USER}":yarn "${YARN_PID_DIR}" - chmod 775 "${YARN_PID_DIR}" - fi - - sed -i "s/YARN_LOG_DIR_REPLACE/${escape_yarn_log_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - sed -i "s/YARN_PID_DIR_REPLACE/${escape_yarn_pid_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - sed -i "s/JAVA_HOME_REPLACE/${escape_java_home}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - sed -i "s/HADOOP_HOME_REPLACE/${escape_hadoop_home}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - sed -i "s/GC_LOG_DIR_REPLACE/${escape_yarn_gc_log_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - cp -R "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" "${HADOOP_HOME}/etc/hadoop/" - - sed -i "s/GC_LOG_DIR_REPLACE/${escape_yarn_gc_log_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/yarn-env.sh" - cp -R "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/yarn-env.sh" "${HADOOP_HOME}/etc/hadoop/" - - sed -i "s/GC_LOG_DIR_REPLACE/${escape_yarn_gc_log_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/mapred-env.sh" - cp -R "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/mapred-env.sh" "${HADOOP_HOME}/etc/hadoop/" - -cat< -hadoop.proxyuser.yarn.hosts -* - - -hadoop.proxyuser.yarn.groups -* - ------------------------------------------------------------------ -HELPINFO -} - -function install_registry_dns() { - sed -i "s/YARN_REGISTRY_DNS_HOST_REPLACE/${YARN_REGISTRY_DNS_HOST}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_REGISTRY_DNS_HOST_PORT_REPLACE/${YARN_REGISTRY_DNS_HOST_PORT}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" -} - -function install_job_history() { - sed -i "s/YARN_JOB_HISTORY_HOST_REPLACE/${YARN_JOB_HISTORY_HOST}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" -} - -## @description install yarn timeline server -## @audience public -## @stability stable -## http://hadoop.apache.org/docs/r3.1.0/hadoop-yarn/hadoop-yarn-site/TimelineServer.html -function install_timeline_server() -{ - find="/" - replace="\\/" - escape_aggregated_log_dir=${YARN_AGGREGATED_LOG_DIR//$find/$replace} - escape_yarn_timeline_service_hbase_configuration_file=${YARN_TIMELINE_SERVICE_HBASE_CONFIGURATION_FILE//$find/$replace} - escape_yarn_keytab_location=${YARN_KEYTAB_LOCATION//$find/$replace} - escape_yarn_timeline_fs_store_dir=${YARN_TIMELINE_FS_STORE_DIR//$find/$replace} - # timeline v1.5 - escape_yarn_timeline_service_leveldb_state_store_path=${YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH//$find/$replace} - - # set leveldb configuration - sed -i "s/YARN_KEYTAB_LOCATION_REPLACE/${escape_yarn_keytab_location}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_AGGREGATED_LOG_DIR_REPLACE/${escape_aggregated_log_dir}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_TIMELINE_SERVICE_HBASE_CONFIGURATION_FILE_REPLACE/${escape_yarn_timeline_service_hbase_configuration_file}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - # timeline v1.5 - sed -i "s/YARN_TIMELINE_HOST_REPLACE/${YARN_TIMELINE_HOST}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH_REPLACE/${escape_yarn_timeline_service_leveldb_state_store_path}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_TIMELINE_FS_STORE_DIR_REPLACE/${escape_yarn_timeline_fs_store_dir}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - - host=$(hostname) - if [ "x$YARN_TIMELINE_HOST" != "x$host" ]; then - return 0 - fi - - echo -n "Do you want to create hdfs directories for timelineserver[Y/N]?" - read -r answer - echo "$answer" - if [[ "$answer" = "y" || "$answer" = "Y" ]]; then - echo "Continue installing ..." - else - echo "Stop creating hdfs directories for timelineserver" - return 0 - fi - - echo "install yarn timeline server V1.5 ..." - -cat< grant 'yarn', 'RWC' -> grant 'HTTP', 'R' -HELPINFO - echo -n "Have you done the above operation[Y/N]?" - read -r answer - if [[ "$answer" = "y" || "$answer" = "Y" ]]; then - echo "Continue installing ..." - else - echo "Stop installing the timeline server V2" - return 0 - fi - - pathExists=$(pathExitsOnHDFS "/hbase") - if [[ -z "${pathExists}" ]]; then - "${HADOOP_HOME}/bin/hadoop" fs -mkdir -p "/hbase" - "${HADOOP_HOME}/bin/hadoop" fs -chmod -R 755 "/hbase" - fi - - pathExists=$(pathExitsOnHDFS "/hbase/coprocessor") - if [[ -z "${pathExists}" ]]; then - "${HADOOP_HOME}/bin/hadoop" fs -mkdir -p "/hbase/coprocessor" - "${HADOOP_HOME}/bin/hadoop" fs -chmod -R 755 "/hbase/coprocessor" - fi - - "${HADOOP_HOME}/bin/hadoop" fs -put "${HADOOP_HOME}"/share/hadoop/yarn/timelineservice/hadoop-yarn-server-timelineservice-hbase-coprocessor-3.*.jar "/hbase/coprocessor/hadoop-yarn-server-timelineservice.jar" - "${HADOOP_HOME}/bin/hadoop" fs -chmod 755 "/hbase/coprocessor/hadoop-yarn-server-timelineservice.jar" - -cat</lib path: -HELPINFO - - if [[ -n "${HBASE_HOME}" ]]; then - cp "${HADOOP_HOME}"/share/hadoop/yarn/timelineservice/hadoop-yarn-server-timelineservice-hbase-common-3.*-SNAPSHOT.jar "${HBASE_HOME}/lib" - cp "${HADOOP_HOME}"/share/hadoop/yarn/timelineservice/hadoop-yarn-server-timelineservice-hbase-client-3.*-SNAPSHOT.jar "${HBASE_HOME}/lib" - cp "${HADOOP_HOME}"/share/hadoop/yarn/timelineservice/hadoop-yarn-server-timelineservice-3.*-SNAPSHOT.jar "${HBASE_HOME}/lib" - fi - -cat< path, Execute the following command to create a schema -> bin/hbase org.apache.hadoop.yarn.server.timelineservice.storage.TimelineSchemaCreator -create -HELPINFO - echo -n "Have you done the above operation[Y/N]?" - read -r answer - if [[ "$answer" = "y" || "$answer" = "Y" ]]; then - echo "Continue installing ..." - else - echo "Please initialize hbase timeline schema before you start timelineserver" - fi -} - -## @description start yarn -## @audience public -## @stability stable -function start_yarn() -{ - current_user=$(whoami) - host=$(hostname) - - # Start RM if the host is in YARN_RESOURCE_MANAGER_HOSTS - index=$(indexByRMHosts "${host}") - if [ -n "$index" ]; then - # Only RM needs to execute the following code - echo "Starting resourcemanager..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/start-resourcemanager.sh" - else - "${HADOOP_HOME}/sbin/start-resourcemanager.sh" - fi - fi - - # Start nodemanager - index=$(indexOfNMExcludeHosts "${host}") - if [ -z "$index" ]; then - echo "Starting nodemanager..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/start-nodemanager.sh" - else - "${HADOOP_HOME}/sbin/start-nodemanager.sh" - fi - fi - - # Start timeline - if [ "x$YARN_TIMELINE_HOST" = "x$host" ]; then - echo "Starting timelineserver..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/start-timelineserver.sh" - su - yarn -c "${HADOOP_HOME}/sbin/start-timelinereader.sh" - else - ${HADOOP_HOME}/sbin/start-timelineserver.sh - ${HADOOP_HOME}/sbin/start-timelinereader.sh - fi - fi - - # Start jobhistory - if [ "x$YARN_JOB_HISTORY_HOST" = "x$host" ]; then - echo "Starting mapreduce job history..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/start-mr-jobhistory.sh" - else - ${HADOOP_HOME}/sbin/start-mr-jobhistory.sh - fi - fi - - # Start registrydns - if [ "x$YARN_REGISTRY_DNS_HOST" = "x$host" ]; then - echo "Starting registry dns..." - sudo ${HADOOP_HOME}/sbin/start-registrydns.sh - fi -} - -## @description stop yarn -## @audience public -## @stability stable -function stop_yarn() -{ - current_user=$(whoami) - host=$(hostname) - # Stop RM if the host is in YARN_RESOURCE_MANAGER_HOSTS - index=$(indexByRMHosts "${host}") - if [ -n "$index" ]; then - # Only RM needs to execute the following code - if [ ${current_user} != "yarn" ]; then - echo "Stopping resourcemanager..." - su - yarn -c "${HADOOP_HOME}/sbin/stop-resourcemanager.sh" - else - "${HADOOP_HOME}/sbin/stop-resourcemanager.sh" - fi - fi - - # Stop nodemanager - index=$(indexOfNMExcludeHosts "${host}") - if [ -z "$index" ]; then - echo "Stopping nodemanager..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/stop-nodemanager.sh" - else - "${HADOOP_HOME}/sbin/stop-nodemanager.sh" - fi - fi - - # Stop timeline - if [ "x$YARN_TIMELINE_HOST" = "x$host" ]; then - echo "Stopping timelineserver..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/stop-timelineserver.sh" - su - yarn -c "${HADOOP_HOME}/sbin/stop-timelinereader.sh" - else - ${HADOOP_HOME}/sbin/stop-timelineserver.sh - ${HADOOP_HOME}/sbin/stop-timelinereader.sh - fi - fi - - # Stop jobhistory - if [ "x$YARN_JOB_HISTORY_HOST" = "x$host" ]; then - echo "Stopping mapreduce job history..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/stop-mr-jobhistory.sh" - else - ${HADOOP_HOME}/sbin/stop-mr-jobhistory.sh - fi - fi - - # Stop registrydns - if [ "x$YARN_REGISTRY_DNS_HOST" = "x$host" ]; then - echo "Stopping registry dns..." - sudo ${HADOOP_HOME}/sbin/stop-registrydns.sh - fi -} - diff --git a/dev-support/submarine-installer/scripts/yarn_insecure.sh b/dev-support/submarine-installer/scripts/yarn_insecure.sh deleted file mode 100644 index 8e45710..0000000 --- a/dev-support/submarine-installer/scripts/yarn_insecure.sh +++ /dev/null @@ -1,626 +0,0 @@ -#!/usr/bin/env bash -# 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. - -## @description install yarn -## @audience public -## @stability stable -function install_yarn_insecure() -{ - # change the soft link of etc - rm -f ${PACKAGE_DIR}/hadoop/yarn/etc - ln -s ${PACKAGE_DIR}/hadoop/yarn/etc_insecure ${PACKAGE_DIR}/hadoop/yarn/etc - - initialize_temp_insecure - - host=$(hostname) - index=$(indexByRMHosts "${host}") - #if [[ -n "$index" || "x$YARN_TIMELINE_HOST" != "x$host" ]]; then - # kinit -kt ${HADOOP_KEYTAB_LOCATION} ${HADOOP_PRINCIPAL} - #fi - - install_java_tarball - if [[ $? = 1 ]]; then - return 1 - fi - install_yarn_tarball_insecure - if [[ $? = 1 ]]; then - return 1 - fi - install_yarn_sbin_insecure - install_yarn_rm_nm_insecure - install_yarn_service_insecure - install_registry_dns_insecure - install_timeline_server_insecure - install_job_history_insecure - install_mapred_insecure - install_spark_shuffle_insecure - install_lzo_native_insecure - - # copy file - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/hdfs-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/capacity-scheduler.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/resource-types.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/log4j.properties" "${HADOOP_HOME}/etc/hadoop/" - chown "${HADOOP_SETUP_USER}":yarn "${HADOOP_HOME}"/etc/hadoop/* -} - -## @description Initialize tmp dir for installation. -## @audience public -## @stability stable -function initialize_temp_insecure() -{ - mkdir -p "${INSTALL_TEMP_DIR}/hadoop" - \cp -rf "${PACKAGE_DIR}/hadoop/yarn" "${INSTALL_TEMP_DIR}/hadoop/" - isGpuEnabled=$(nvidia-smi) - if [[ -n "$isGpuEnabled" ]]; then - python ${SCRIPTS_DIR}/xmlcombine.py ${PACKAGE_DIR}/hadoop/yarn/etc/hadoop/yarn-site.xml ${PACKAGE_DIR}/hadoop/yarn/etc/hadoop/gpu/yarn-site-gpu.xml > "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/yarn-site.xml" - fi - chown -R ${HADOOP_SETUP_USER} "${INSTALL_TEMP_DIR}/hadoop" -} - -## @description uninstall yarn -## @audience public -## @stability stable -function uninstall_yarn() -{ - executor_dir=$(dirname "${YARN_CONTAINER_EXECUTOR_PATH}") - executor_conf_dir=$(dirname "${executor_dir}")/etc/hadoop - - rm -rf "${YARN_CONTAINER_EXECUTOR_PATH}" - rm -rf "${executor_conf_dir}" - rm -rf "${HADOOP_HOME}" -} - -## @description install yarn container executor -## @audience public -## @stability stable -function install_yarn_container_executor_insecure() -{ - echo "install yarn container executor file ..." - - executor_dir=$(dirname "${YARN_CONTAINER_EXECUTOR_PATH}") - if [ ! -d "${executor_dir}" ]; then - mkdir -p "${executor_dir}" - fi - if [ -f "${YARN_CONTAINER_EXECUTOR_PATH}" ]; then - if [ -f "${HADOOP_HOME}/bin/container-executor" ]; then - rm ${YARN_CONTAINER_EXECUTOR_PATH} - fi - fi - - if [ -f "${HADOOP_HOME}/bin/container-executor" ]; then - cp -f "${HADOOP_HOME}/bin/container-executor" "${YARN_CONTAINER_EXECUTOR_PATH}" - rm "${HADOOP_HOME}/bin/container-executor" - fi - - sudo chmod 6755 "${executor_dir}" - sudo chown :yarn "${YARN_CONTAINER_EXECUTOR_PATH}" - sudo chmod 6050 "${YARN_CONTAINER_EXECUTOR_PATH}" -} - -## @description Deploy hadoop yarn tar ball -## @audience public -## @stability stable -function install_yarn_tarball_insecure() -{ - tag=`date '+%Y%m%d%H%M%S'` - if [ -f "${PACKAGE_DIR}/hadoop/${HADOOP_TARBALL}" ]; then - tar -zxvf "${PACKAGE_DIR}/hadoop/${HADOOP_TARBALL}" -C "${PACKAGE_DIR}/hadoop/" - mv "${PACKAGE_DIR}/hadoop/${HADOOP_VERSION}" "/home/${HADOOP_SETUP_USER}/${HADOOP_VERSION}-${tag}" - chown -R ${HADOOP_SETUP_USER} "/home/hadoop/${HADOOP_VERSION}-${tag}" - if [[ -d "${HADOOP_HOME}" ]] || [[ -L "${HADOOP_HOME}" ]]; then - rm -rf ${HADOOP_HOME} - fi - ln -s "/home/hadoop/${HADOOP_VERSION}-${tag}" "${HADOOP_HOME}" - chown ${HADOOP_SETUP_USER} "${HADOOP_HOME}" - else - echo "ERROR: Please put ${HADOOP_TARBALL} in the path of ${PACKAGE_DIR}/hadoop/ firstly." - return 1 - fi -} - -## @description Deploy java tar ball -## @audience public -## @stability stable -function install_java_tarball() -{ - if [[ -d "${JAVA_HOME}" ]] || [[ -L "${JAVA_HOME}" ]]; then - echo "JAVA_HOME already exists. There is no need to install java." - else - if [[ -f "${PACKAGE_DIR}/java/${JAVA_TARBALL}" ]]; then - tar -zxvf "${PACKAGE_DIR}/java/${JAVA_TARBALL}" -C "${PACKAGE_DIR}/java/" - mv "${PACKAGE_DIR}/java/${JAVA_VERSION}" "/home/${HADOOP_SETUP_USER}/${JAVA_VERSION}" - chown -R ${HADOOP_SETUP_USER} "/home/hadoop/${JAVA_VERSION}" - ln -s "/home/hadoop/${JAVA_VERSION}" "${JAVA_HOME}" - else - echo "Error: Failed to install java, please put java tarball in the path of - ${PACKAGE_DIR}/java/${JAVA_TARBALL}" - return 1 - fi - fi -} - -## @description install yarn resource & node manager -## @audience public -## @stability stable -function install_yarn_rm_nm_insecure() -{ - echo "install yarn config file ..." - host=$(hostname) - - find="/" - replace="\\/" - escape_yarn_nodemanager_local_dirs=${YARN_NODEMANAGER_LOCAL_DIRS//$find/$replace} - escape_yarn_nodemanager_log_dirs=${YARN_NODEMANAGER_LOG_DIRS//$find/$replace} - escape_yarn_hierarchy=${YARN_HIERARCHY//$find/$replace} - escape_yarn_nodemanager_nodes_exclude_path=${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH//$find/$replace} - escape_yarn_nodemanager_recovery_dir=${YARN_NODEMANAGER_RECOVERY_DIR//$find/$replace} - escape_fs_defaults=${FS_DEFAULTFS//$find/$replace} - - # container-executor.cfg` - sed -i "s/YARN_NODEMANAGER_LOCAL_DIRS_REPLACE/${escape_yarn_nodemanager_local_dirs}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/YARN_NODEMANAGER_LOG_DIRS_REPLACE/${escape_yarn_nodemanager_log_dirs}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/DOCKER_REGISTRY_REPLACE/${DOCKER_REGISTRY}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/CALICO_NETWORK_NAME_REPLACE/${CALICO_NETWORK_NAME}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - sed -i "s/YARN_HIERARCHY_REPLACE/${escape_yarn_hierarchy}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - - # enable cgroup for yarn - . "${PACKAGE_DIR}/submarine/submarine.sh" - - # Delete the ASF license comment in the container-executor.cfg file, otherwise it will cause a cfg format error. - sed -i '1,16d' "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" - - executor_dir=$(dirname "${YARN_CONTAINER_EXECUTOR_PATH}") - executor_conf_dir=$(dirname "${executor_dir}")/etc/hadoop - if [ ! -d "${executor_conf_dir}" ]; then - sudo mkdir -p "${executor_conf_dir}" - fi - - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/container-executor.cfg" "${executor_conf_dir}" - - # yarn-site.xml - sed -i "s/YARN_RESOURCE_MANAGER_HOSTS1_REPLACE/${YARN_RESOURCE_MANAGER_HOSTS[0]}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_RESOURCE_MANAGER_HOSTS2_REPLACE/${YARN_RESOURCE_MANAGER_HOSTS[1]}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/LOCAL_CLUSTER_ID_REPLACE/${LOCAL_CLUSTER_ID}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_NODEMANAGER_LOCAL_DIRS_REPLACE/${escape_yarn_nodemanager_local_dirs}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_NODEMANAGER_LOG_DIRS_REPLACE/${escape_yarn_nodemanager_log_dirs}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - # Make nodemanager local dirs if the host is not in YARN_NODE_MANAGER_EXCLUDE_HOSTS - index=$(indexOfNMExcludeHosts "${host}") - if [ -z "$index" ]; then - arr=(${YARN_NODEMANAGER_LOCAL_DIRS//,/ }) - index=0 - while [ "$index" -lt "${#arr[@]}" ]; do - mkdir -p "${arr[$index]}" - (( index++ )) - done - - arr=(${YARN_NODEMANAGER_LOG_DIRS//,/ }) - index=0 - while [ "$index" -lt "${#arr[@]}" ]; do - mkdir -p "${arr[$index]}" - (( index++ )) - done - - arr=(${YARN_NODEMANAGER_LOCAL_HOME_PATHS//,/ }) - index=0 - while [ "$index" -lt "${#arr[@]}" ]; do - chown -R yarn "${arr[$index]}" - (( index++ )) - done - fi - - sed -i "s/YARN_ZK_ADDRESS_REPLACE/${YARN_ZK_ADDRESS}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/CALICO_NETWORK_NAME_REPLACE/${CALICO_NETWORK_NAME}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - - sed -i "s/YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH_REPLACE/${escape_yarn_nodemanager_nodes_exclude_path}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - node_exclude_dir=$(dirname "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}") - if [[ ! -d "${node_exclude_dir}" ]]; then - mkdir -p "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}" - fi - if [[ ! -f "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}" ]]; then - touch "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}" - chmod 777 "${YARN_RESOURCEMANAGER_NODES_EXCLUDE_PATH}" - fi - - sed -i "s/YARN_NODEMANAGER_RECOVERY_DIR_REPLACE/${escape_yarn_nodemanager_recovery_dir}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - mkdir -p "${YARN_NODEMANAGER_RECOVERY_DIR}" - chmod 777 "${YARN_NODEMANAGER_RECOVERY_DIR}" - - # core-site.xml - sed -i "s/YARN_ZK_ADDRESS_REPLACE/${YARN_ZK_ADDRESS}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" - sed -i "s/FS_DEFAULTFS_REPLACE/${escape_fs_defaults}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" - - # WARN: ${HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE} Can not be empty! - echo 'hello submarine' > "${HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE}" - escape_hadoop_http_authentication_signature_secret_file=${HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE//$find/$replace} - sed -i "s/HADOOP_HTTP_AUTHENTICATION_SIGNATURE_SECRET_FILE_REPLACE/${escape_hadoop_http_authentication_signature_secret_file}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" - - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/core-site.xml" "${HADOOP_HOME}/etc/hadoop/" - cp -f "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/hdfs-site.xml" "${HADOOP_HOME}/etc/hadoop/" - - install_yarn_container_executor_insecure -} - -function install_spark_shuffle_insecure() { - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/spark* "${HADOOP_HOME}/share/hadoop/yarn/lib/" -} - -function install_lzo_native_insecure() { - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/native/libgpl* "${HADOOP_HOME}/lib/native/" - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/hadoop-lzo* "${HADOOP_HOME}/share/hadoop/yarn/lib/" - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/hadoop-lzo* "${HADOOP_HOME}/share/hadoop/hdfs/lib/" - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/hadoop-lzo* "${HADOOP_HOME}/share/hadoop/common/lib/" - if [ ! -d "${HADOOP_HOME}/share/hadoop/mapreduce/lib/" ]; then - mkdir -p "${HADOOP_HOME}/share/hadoop/mapreduce/lib/" - fi - cp -R ${PACKAGE_DIR}/hadoop/yarn/lib/hadoop-lzo* "${HADOOP_HOME}/share/hadoop/mapreduce/lib/" -} - -function install_mapred_insecure() { - find="/" - replace="\\/" - escape_yarn_app_mapreduce_am_staging_dir=${YARN_APP_MAPREDUCE_AM_STAGING_DIR//$find/$replace} - escape_fs_defaults=${FS_DEFAULTFS//$find/$replace} - - sed -i "s/FS_DEFAULTFS_REPLACE/${escape_fs_defaults}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" - sed -i "s/YARN_APP_MAPREDUCE_AM_STAGING_DIR_REPLACE/${escape_yarn_app_mapreduce_am_staging_dir}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" - host=$(hostname) - index=$(indexByRMHosts "${host}") - if [[ -n "$index" ]]; then - # Only RM needs to execute the following code - pathExists=$(pathExitsOnHDFS "${YARN_APP_MAPREDUCE_AM_STAGING_DIR}") - if [[ -z "${pathExists}" ]]; then - echo "Create hdfs path ${YARN_APP_MAPREDUCE_AM_STAGING_DIR}" - "${HADOOP_HOME}/bin/hadoop" dfs -mkdir -p "${YARN_APP_MAPREDUCE_AM_STAGING_DIR}" - "${HADOOP_HOME}/bin/hadoop" dfs -chown yarn:hadoop "${YARN_APP_MAPREDUCE_AM_STAGING_DIR}" - "${HADOOP_HOME}/bin/hadoop" dfs -chmod 1777 "${YARN_APP_MAPREDUCE_AM_STAGING_DIR}" - fi - fi -} - -function install_yarn_sbin_insecure() { - find="/" - replace="\\/" - escape_yarn_gc_log_dir=${YARN_GC_LOG_DIR//$find/$replace} - escape_java_home=${JAVA_HOME//$find/$replace} - escape_hadoop_home=${HADOOP_HOME//$find/$replace} - escape_yarn_pid_dir=${YARN_PID_DIR//$find/$replace} - escape_yarn_log_dir=${YARN_LOG_DIR//$find/$replace} - cp -R ${PACKAGE_DIR}/hadoop/yarn/sbin/* "${HADOOP_HOME}/sbin/" - chown "${HADOOP_SETUP_USER}":yarn "${HADOOP_HOME}"/sbin/* - - if [ ! -d "$YARN_GC_LOG_DIR" ]; then - mkdir -p "$YARN_GC_LOG_DIR" - chown "${HADOOP_SETUP_USER}":yarn "${YARN_GC_LOG_DIR}" - chmod 775 "${YARN_GC_LOG_DIR}" - fi - - if [ ! -d "$YARN_LOG_DIR" ]; then - mkdir -p "$YARN_LOG_DIR" - chown "${HADOOP_SETUP_USER}":yarn "${YARN_LOG_DIR}" - chmod 775 "${YARN_LOG_DIR}" - fi - - if [ ! -d "$YARN_PID_DIR" ]; then - mkdir -p "$YARN_PID_DIR" - chown "${HADOOP_SETUP_USER}":yarn "${YARN_PID_DIR}" - chmod 775 "${YARN_PID_DIR}" - fi - - sed -i "s/YARN_LOG_DIR_REPLACE/${escape_yarn_log_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - sed -i "s/YARN_PID_DIR_REPLACE/${escape_yarn_pid_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - sed -i "s/JAVA_HOME_REPLACE/${escape_java_home}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - sed -i "s/HADOOP_HOME_REPLACE/${escape_hadoop_home}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - sed -i "s/GC_LOG_DIR_REPLACE/${escape_yarn_gc_log_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" - cp -R "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/hadoop-env.sh" "${HADOOP_HOME}/etc/hadoop/" - - sed -i "s/GC_LOG_DIR_REPLACE/${escape_yarn_gc_log_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/yarn-env.sh" - cp -R "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/yarn-env.sh" "${HADOOP_HOME}/etc/hadoop/" - - sed -i "s/GC_LOG_DIR_REPLACE/${escape_yarn_gc_log_dir}/g" "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/mapred-env.sh" - cp -R "${INSTALL_TEMP_DIR}/hadoop/yarn/etc/hadoop/mapred-env.sh" "${HADOOP_HOME}/etc/hadoop/" - -cat< -hadoop.proxyuser.yarn.hosts -* - - -hadoop.proxyuser.yarn.groups -* - ------------------------------------------------------------------ -HELPINFO -} - -function install_registry_dns_insecure() { - sed -i "s/YARN_REGISTRY_DNS_HOST_REPLACE/${YARN_REGISTRY_DNS_HOST}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_REGISTRY_DNS_HOST_PORT_REPLACE/${YARN_REGISTRY_DNS_HOST_PORT}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" -} - -function install_job_history_insecure() { - sed -i "s/YARN_JOB_HISTORY_HOST_REPLACE/${YARN_JOB_HISTORY_HOST}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/mapred-site.xml" -} - -## @description install yarn timeline server -## @audience public -## @stability stable -## http://hadoop.apache.org/docs/r3.1.0/hadoop-yarn/hadoop-yarn-site/TimelineServer.html -function install_timeline_server_insecure() -{ - find="/" - replace="\\/" - escape_aggregated_log_dir=${YARN_AGGREGATED_LOG_DIR//$find/$replace} - escape_yarn_timeline_service_hbase_configuration_file=${YARN_TIMELINE_SERVICE_HBASE_CONFIGURATION_FILE//$find/$replace} - escape_yarn_timeline_fs_store_dir=${YARN_TIMELINE_FS_STORE_DIR//$find/$replace} - # timeline v1.5 - escape_yarn_timeline_service_leveldb_state_store_path=${YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH//$find/$replace} - - # set leveldb configuration - sed -i "s/YARN_AGGREGATED_LOG_DIR_REPLACE/${escape_aggregated_log_dir}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_TIMELINE_SERVICE_HBASE_CONFIGURATION_FILE_REPLACE/${escape_yarn_timeline_service_hbase_configuration_file}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - # timeline v1.5 - sed -i "s/YARN_TIMELINE_HOST_REPLACE/${YARN_TIMELINE_HOST}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_TIMELINE_SERVICE_LEVELDB_STATE_STORE_PATH_REPLACE/${escape_yarn_timeline_service_leveldb_state_store_path}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - sed -i "s/YARN_TIMELINE_FS_STORE_DIR_REPLACE/${escape_yarn_timeline_fs_store_dir}/g" "$INSTALL_TEMP_DIR/hadoop/yarn/etc/hadoop/yarn-site.xml" - - host=$(hostname) - if [ "x$YARN_TIMELINE_HOST" != "x$host" ]; then - return 0 - fi - - echo -n "Do you want to create hdfs directories for timelineserver[Y/N]?" - read -r answer - echo "$answer" - if [[ "$answer" = "y" || "$answer" = "Y" ]]; then - echo "Continue installing ..." - else - echo "Stop creating hdfs directories for timelineserver" - return 0 - fi - - echo "install yarn timeline server V1.5 ..." - -cat< grant 'yarn', 'RWC' -> grant 'HTTP', 'R' -HELPINFO - echo -n "Have you done the above operation[Y/N]?" - read -r answer - if [[ "$answer" = "y" || "$answer" = "Y" ]]; then - echo "Continue installing ..." - else - echo "Stop installing the timeline server V2" - return 0 - fi - - pathExists=$(pathExitsOnHDFS "/hbase") - if [[ -z "${pathExists}" ]]; then - "${HADOOP_HOME}/bin/hadoop" fs -mkdir -p "/hbase" - "${HADOOP_HOME}/bin/hadoop" fs -chmod -R 755 "/hbase" - fi - - pathExists=$(pathExitsOnHDFS "/hbase/coprocessor") - if [[ -z "${pathExists}" ]]; then - "${HADOOP_HOME}/bin/hadoop" fs -mkdir -p "/hbase/coprocessor" - "${HADOOP_HOME}/bin/hadoop" fs -chmod -R 755 "/hbase/coprocessor" - fi - - "${HADOOP_HOME}/bin/hadoop" fs -put "${HADOOP_HOME}"/share/hadoop/yarn/timelineservice/hadoop-yarn-server-timelineservice-hbase-coprocessor-3.*.jar "/hbase/coprocessor/hadoop-yarn-server-timelineservice.jar" - "${HADOOP_HOME}/bin/hadoop" fs -chmod 755 "/hbase/coprocessor/hadoop-yarn-server-timelineservice.jar" - -cat</lib path: -HELPINFO - - if [[ -n "${HBASE_HOME}" ]]; then - cp "${HADOOP_HOME}"/share/hadoop/yarn/timelineservice/hadoop-yarn-server-timelineservice-hbase-common-3.*-SNAPSHOT.jar "${HBASE_HOME}/lib" - cp "${HADOOP_HOME}"/share/hadoop/yarn/timelineservice/hadoop-yarn-server-timelineservice-hbase-client-3.*-SNAPSHOT.jar "${HBASE_HOME}/lib" - cp "${HADOOP_HOME}"/share/hadoop/yarn/timelineservice/hadoop-yarn-server-timelineservice-3.*-SNAPSHOT.jar "${HBASE_HOME}/lib" - fi - -cat< path, Execute the following command to create a schema -> bin/hbase org.apache.hadoop.yarn.server.timelineservice.storage.TimelineSchemaCreator -create -HELPINFO - echo -n "Have you done the above operation[Y/N]?" - read -r answer - if [[ "$answer" = "y" || "$answer" = "Y" ]]; then - echo "Continue installing ..." - else - echo "Please initialize hbase timeline schema before you start timelineserver" - fi -} - -## @description start yarn -## @audience public -## @stability stable -function start_yarn() -{ - current_user=$(whoami) - host=$(hostname) - - # Start RM if the host is in YARN_RESOURCE_MANAGER_HOSTS - index=$(indexByRMHosts "${host}") - if [ -n "$index" ]; then - # Only RM needs to execute the following code - echo "Starting resourcemanager..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/start-resourcemanager.sh" - else - "${HADOOP_HOME}/sbin/start-resourcemanager.sh" - fi - fi - - # Start nodemanager - index=$(indexOfNMExcludeHosts "${host}") - if [ -z "$index" ]; then - echo "Starting nodemanager..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/start-nodemanager.sh" - else - "${HADOOP_HOME}/sbin/start-nodemanager.sh" - fi - fi - - # Start timeline - if [ "x$YARN_TIMELINE_HOST" = "x$host" ]; then - echo "Starting timelineserver..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/start-timelineserver.sh" - su - yarn -c "${HADOOP_HOME}/sbin/start-timelinereader.sh" - else - ${HADOOP_HOME}/sbin/start-timelineserver.sh - ${HADOOP_HOME}/sbin/start-timelinereader.sh - fi - fi - - # Start jobhistory - if [ "x$YARN_JOB_HISTORY_HOST" = "x$host" ]; then - echo "Starting mapreduce job history..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/start-mr-jobhistory.sh" - else - ${HADOOP_HOME}/sbin/start-mr-jobhistory.sh - fi - fi - - # Start registrydns - if [ "x$YARN_REGISTRY_DNS_HOST" = "x$host" ]; then - echo "Starting registry dns..." - sudo ${HADOOP_HOME}/sbin/start-registrydns.sh - fi -} - -## @description stop yarn -## @audience public -## @stability stable -function stop_yarn() -{ - current_user=$(whoami) - host=$(hostname) - # Stop RM if the host is in YARN_RESOURCE_MANAGER_HOSTS - index=$(indexByRMHosts "${host}") - if [ -n "$index" ]; then - # Only RM needs to execute the following code - if [ ${current_user} != "yarn" ]; then - echo "Stopping resourcemanager..." - su - yarn -c "${HADOOP_HOME}/sbin/stop-resourcemanager.sh" - else - "${HADOOP_HOME}/sbin/stop-resourcemanager.sh" - fi - fi - - # Stop nodemanager - index=$(indexOfNMExcludeHosts "${host}") - if [ -z "$index" ]; then - echo "Stopping nodemanager..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/stop-nodemanager.sh" - else - "${HADOOP_HOME}/sbin/stop-nodemanager.sh" - fi - fi - - # Stop timeline - if [ "x$YARN_TIMELINE_HOST" = "x$host" ]; then - echo "Stopping timelineserver..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/stop-timelineserver.sh" - su - yarn -c "${HADOOP_HOME}/sbin/stop-timelinereader.sh" - else - ${HADOOP_HOME}/sbin/stop-timelineserver.sh - ${HADOOP_HOME}/sbin/stop-timelinereader.sh - fi - fi - - # Stop jobhistory - if [ "x$YARN_JOB_HISTORY_HOST" = "x$host" ]; then - echo "Stopping mapreduce job history..." - if [ ${current_user} != "yarn" ]; then - su - yarn -c "${HADOOP_HOME}/sbin/stop-mr-jobhistory.sh" - else - ${HADOOP_HOME}/sbin/stop-mr-jobhistory.sh - fi - fi - - # Stop registrydns - if [ "x$YARN_REGISTRY_DNS_HOST" = "x$host" ]; then - echo "Stopping registry dns..." - sudo ${HADOOP_HOME}/sbin/stop-registrydns.sh - fi -} - diff --git a/dev-support/travis/install_external_dependencies.sh b/dev-support/travis/install_external_dependencies.sh deleted file mode 100755 index c73f28b..0000000 --- a/dev-support/travis/install_external_dependencies.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env bash - -# 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. -# - -# Script for installing R / Python dependencies for Travis CI -set -exvuo pipefail -touch ~/.environ - -# Install Python dependencies for Python specific tests -if [[ -n "${PYTHON:-}" ]] ; then - wget https://repo.continuum.io/miniconda/Miniconda${PYTHON}-4.5.4-Linux-x86_64.sh -O miniconda.sh - bash miniconda.sh -b -p $HOME/miniconda - echo "export PATH='$HOME/miniconda/bin:$PATH'" >> ~/.environ - source ~/.environ - - hash -r - conda config --set always_yes yes --set changeps1 no - conda update -q conda - conda info -a - conda config --add channels conda-forge - - conda install numpy=1.13.3 pandas=0.21.1 matplotlib=2.1.1 pandasql=0.7.3 ipython=5.4.1 jupyter_client=5.1.0 ipykernel=4.7.0 bokeh=0.12.10 - pip install scipy==1.5.2 ggplot==0.11.5 grpcio==1.8.2 bkzep==0.4.0 - - if [[ -n "${TENSORFLOW:-}" ]] ; then - check_results=`conda search -c conda-forge tensorflow` - echo "search tensorflow = $check_results" - - pip install tensorflow=="${TENSORFLOW}" - fi -fi diff --git a/dev-support/travis/tf-operator/crd_v1.yaml b/dev-support/travis/tf-operator/crd_v1.yaml deleted file mode 100644 index 546e66a..0000000 --- a/dev-support/travis/tf-operator/crd_v1.yaml +++ /dev/null @@ -1,42 +0,0 @@ -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: tfjobs.kubeflow.org -spec: - group: kubeflow.org - scope: Namespaced - names: - kind: TFJob - singular: tfjob - plural: tfjobs - versions: - - name: v1 - served: true - storage: true - subresources: - status: {} - validation: - openAPIV3Schema: - properties: - spec: - properties: - tfReplicaSpecs: - properties: - # The validation works when the configuration contains - # `Worker`, `PS` or `Chief`. Otherwise it will not be validated. - Worker: - properties: - replicas: - type: integer - minimum: 1 - PS: - properties: - replicas: - type: integer - minimum: 1 - Chief: - properties: - replicas: - type: integer - minimum: 1 - maximum: 1 \ No newline at end of file diff --git a/dev-support/travis/tf-operator/tfevent-volume/tfevent-pv.yaml b/dev-support/travis/tf-operator/tfevent-volume/tfevent-pv.yaml deleted file mode 100644 index a450c6a..0000000 --- a/dev-support/travis/tf-operator/tfevent-volume/tfevent-pv.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: PersistentVolume -metadata: - name: tfevent-volume - labels: - type: local - app: tfjob -spec: - capacity: - storage: 10Gi - storageClassName: standard - accessModes: - - ReadWriteMany - hostPath: - path: /tmp/data diff --git a/dev-support/travis/tf-operator/tfevent-volume/tfevent-pvc.yaml b/dev-support/travis/tf-operator/tfevent-volume/tfevent-pvc.yaml deleted file mode 100644 index 81c2ca9..0000000 --- a/dev-support/travis/tf-operator/tfevent-volume/tfevent-pvc.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: tfevent-volume - namespace: submarine - labels: - type: local - app: tfjob -spec: - accessModes: - - ReadWriteMany - resources: - requests: - storage: 10Gi diff --git a/docs/assets/128-black-white.png b/docs/assets/128-black-white.png deleted file mode 100644 index 510a75e2c42c601021731ec6e43acc537c202bc6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5336 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 DIW;*i diff --git a/docs/assets/128-black.png b/docs/assets/128-black.png deleted file mode 100644 index f20d18565796c743ec8b86af6f4c894ad04b495f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5722 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 M=enx3%J$*^4;6I#6aWAK diff --git a/docs/assets/128-white.png b/docs/assets/128-white.png deleted file mode 100644 index 412d440c9b450277d38d0354c9943b7e5dfa4e68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5167 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 P?jfivYb(_#SVjCldv?LJ diff --git a/docs/assets/256-black-white.png b/docs/assets/256-black-white.png deleted file mode 100644 index 315438bc14e272ab84e38055290df535d8517379..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11992 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 diff --git a/docs/assets/256-black.png b/docs/assets/256-black.png deleted file mode 100644 index 4813aea040986f7fb7e6b9a3e501e96e3f83764f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13138 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 UslUyhhhzZi$~vzb6m25@7mU~#Jpcdz diff --git a/docs/assets/256-white-backup.png b/docs/assets/256-white-backup.png deleted file mode 100644 index 1dad26e17c87251659a9cd334fff892b77661cb4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13223 zcmd5?WmHu`yFQcx0wPFvib!{-bR*qJcXxw;fHa77Nq2X*bRD{+1*Adx4&R@<*8O+? zeY2M99D#H8?3s6-dUu$jyaXyTJ~9LXL6wsHs0@L?fVVIZL|E`LjV{OxUXbi1HJu<3 z28!o@Fz$JRt`G>aoQ0^UqN2H-vz?Q!OG@1#A zf7Oam)#3U}vRqK-<9U2^bT@a`x|_CpKjtz1+W!p(b?i=#C4^f!n2%?kBw9hTcc{%D z7E5v+o)mp&xZ4b&4+1%X^Kkcdt`xk7sj!2xc|#X&wILgZJkj;KCo zw=r!-2t2WF*sVwSUV+~}E_t3n98!dm%Q|y|9vlp9UCWiDc8B3bm~F3jDIN!c{T`y; zPyS}B(xJl&Kh+3pR3w)h@Muzw{YW;H_#0#2kL8r)`vX$E8!DtUM4?l@{$<^;b*JxN z7}y9jjVV`%kncJDH~d$z5Ogy(7LRKPB);P&TId4|WHjmLCIr&DhpSVVfFs+F2!VXe z3ZShNeu>icwzLy1t&6C&69?At#YZ6&%1%CXkr!M3gvi;r--Yp1I(g>d>nh>!v)-g^ zpx1UWbD{38W9S4N*yFq~z|H8!Z4E(!7al~!G$iBs`sQ=gJoy+RPI44HxuGOmoc~YK z{jYD8$omEzf5H}tSjOr~Qk>B{zU7Y85xR|88YE>2zYlMfU``0AR)U*>brEVRB*72w z&vKe{W_zvc|2@ZQ62F$1-@iVmU{Yq!#Tnug9%bY|$&6%f>82@P2d(L$<2idu|jM0KQ~FU;NV z$m0tYYNB6doTBQ_k%9nP*6iqg9ao&)8JX*dEph{HsCQP%jP3YCnXQ6FwL*F+bOcAl!1u-P-opsr<-T8+{!kN8 z^H94~n=6%q>KxD=*g(~-6$#W+QBrwQhwBT=QpQ*GAX{(c+%e(L?@C)-8l!}~+z z!<54pN8DG2S5#LvSK~w@gcw9nUT0o!M`xE2S8My$gP$90Jw?4mJ^Sir1ZLSz>F4Y? z`7$xX7)h>4IG=0^!V7FOJ%vY`IOwrF{Ba<>Gtp+ z3tyaEYy5T?*-S4;E$BXv*=5vo)zj3wYa>>uNu$nyGT96+^=hxT4SN~z2=JTSj_tz< z^b5dddS-^U=eLuu@wZd>LVc5cU*2cj@!k$UME~p9@HoRhl}9ju>4MpYX$!y)sDZPB zBY{tb&wI&^5Q)(8f)PakO9TZ8Rg=Uq-mVkpjNrzIb=izAWfJQbVmg)m$pC-Fzj5k;C4~(R0!R;VY5k*E^h3x`cIU>xnFR8%_ zV(mGRIZ9OxjnaH^JLzhPS6nN+KBBkgAqwIy{j5j|${##p@#2~&&gIlTLRU-27aSJo zxf9Y7(sGqiExy-&m}6?7X;3iz@F5;`%VWpp7eRdJuj?&}8>jOnEbCy|$=q7yaz!+3 zS;oQ-?%KH8?v0Xdl3FvYYo?EXZYW*_Vtcp6R4O)B*337$Yo4x?cZjuMQ$&2iabsZC zRcX*d88#oT{{Eo&TSHm(%+h1|EJ`_ODlbp;L!dfaVo}1-ux zv1QV%wwfO;PNIIPeQ9C&ze@4Oo!{#6`m^4b9yW`MtI`d>jt(RbejeDCUTbz#NVi!E z&rXD#pq3GwMs5@6+eoiEXM0*+Mvc~v{u+g2H)KE39;q)~I?LwBz4A==(;ZfOC@X1b zU!Y!ucC5I0oudU2VezgWCmgoceQ;N|Y7_Ihw4M4JxDt*3nV`92$9JVs!cCzsBibv^ z>*bZ$@qwkYo%M1>M@Kc1jWS0hu_TZEcB;SKV(L+fTb;cYEn2tmcGtVLd~dH!#l7sY zp5>m=wPe4BOT+_7j}KEk9WJHxxi(q+*=@&r-*VH5^oS(d8=icRnKzAG2H2z3GqTcY z_)l-P0^>Iej0-Z-M(dum+Fy`g ze_o<$kSXIY=a=xcf7p<$(6&1;xgI`J=PP%IlaT`LFDxYG$>YGOWOwc1_npkR z#{K-stDA`Nj&hHpbI0S7q6(e?iUE?=F%SOJ{QI)8C7FXwkuQ<UNse-H$6^8{Y^ArKcP2;`3e1j6$J z0>QD1)9(|9Kxk&9J_@V2FCM0Q=wPZ}KfQ~Wb&V4WBt`xTZO&4|J_y84!0yvhFGb9$ zt6Q`jmbo+6&h%9((LKy9Q`PpMvn}*T=t31n$NBg+?<>LY7cQc2g=71KSfqUYmi2d2 z8D$VP-`TJFouqsj8a3YW{>y*8>~w5m&W4Wy;rYO|3=4q=vjsB-iWz7XA@B}}W^^!J z@b16uSEOK0|976w?i%*5tOIw)Gv{Vz2Di_^xV`nP(^{FBP*hhhP^3wa&J)iyWWp8q zMF{GeFlXEQ!ISlvhw2%6TS8E$RW@l(i4hhQBsy2F3r3#udqjwNszfxgs=9hoLc$Cb zy4vB_(cG-XkR<4H`xeQcQmRR(T!mJZHc<*bYtlTXO1XdZ{-w?s>Ww<20W{ zXIWX~BE^j`A_~HlOJ-4CzzsMAk|G9nIuL3KM)c);)4QXfCvI4%2Ro=z+>NJke^ONJG-fH&?#t229N2Vd z(qTx7*yO^es?5GCnlwiYM33lOYOre%@`Jz|aMjh-d0ib!Nl6uzm-j!05ojHJRwNoX ztqB$(t0qWg^|5KxDQ{@FE>!Tji;0fBt1Mlbmt?E z+8jivwouG;zdBrCH66)nflN(JMG^7lE7JUsHT5FV1{LOc{g;T4a5+x~C-ua2YI<5B zjVm@O$*inU-YGM*%OL9`97n30OA9Y#Fq6-5>#OF#;5V$!%Y(UrXcD_Ev6Gv7xl|4W z1cb>e!1m8QVdk|^fsOTFwR~tz{vxvJU%p3R92QJnpmNG`YKo?KnScGumAY87KKopvA1{Y z4a=_VI;>o#z(aTNtA73PmKHC0c{HEDzVh<&IyySOz5?+>KUG8HD5bC?sA47E`Se0d z|J51REP#@Zjg2*>U4!4B09(!x2Kl?zk@@|*X{)FSC0Ozn*CQUst-AdQm0fHGz7emABn_rv(5bB^QzJC4c@9(egdlO8G7%TZxt;8acK39bn4<$sFx~8V);KWt|6NV{y z*(s$K7Z!$$SwQJfRZYH(qeOrWP@&DsW}#oWtN?ITRFqu@@dn%3+A6C&11fUl^plgL z=$H;f5Ux4Oq`LFByod9hdn$wIXN~KMJd&sjN`c_l0DJYmCZW$ zFtfs>zmczlZ8DK1%)r19O(MwAUP$71&&(S!u@@=q4 zwk&n74U}^G#{ZHt7G^~og3^Ocr-6=%8FaQ8nGN{ig)Ab#p~ZF|P{(75AJkKxaPTnM zV?HV@iL~j3ef&JVa8J$YLmX|E?@WsM%74@pzzHi4&*D19?d8Gsqy$OZ)8pOI?M%?i z*H=eN4Mqb|>J@r*?k{8c7nYV@!NV?wOewXlt*#R1N_4;XfnVR-GtXZz%-6?v_%l-! zf<#J3N5{wKz1|scbgSa&>1l0!*yOb9oCYe-fiP*v7{GRYwsRciq&d#j_=x!WQ_DWr z-<=&(xO9V$nF2mw50R0PFZk9*M{P!aFdG^g`rKX3K51w0dwmBB6%!K!O3JkEmoWvMe>ec%ID_F7lmZo-%RtoW+2ri^>yj2o)980vO`2{0)B;JP$J^B_*qO zvdJucYioYsHjijI071+Yee!#}Dagn#RW3pd6xxvI*_8)}HC7THx~BEAb98i678;#w z=W+4=Q$8CGBz`E3*{J{i<{W_Wg5ES>T&IXCA|kcm%|=klPAk!iG{n*GFv57GJZoU+ z{VOUe@DNP%-3Lq5D_*=NUY?ln*Sk7i^MjUZ8ufnzY&zKy6Z)E@zrR0&%OU6I&!25B zw0|zEHRyQUXeOJtF2JD-fTGCB%DzQ}=YYZjV5O4zUaH+NHa+e1ce&~4(p6eU#tj^G zvvFd$5m?Q{pdh$kcDYB>Vyxe&Fpz}N6(1U`)9IjJkT6Hg9)2{1Gmg5H4O~~O_!gDoY~r5S+}tt`z_X5nAZ7zL-YE=@BNR7hlhuZtV{BfkcR*o z8k$J9Vz%PM%_RA*1RZuRHv{^mov+`-k98ndM*f;;p1S4#{7Feo{fD^MM*WfzBMcrE z=7Ar%wi+&afI6&;hoyP{J}fMZ+j&pX$EVHWg9=9~eXOK;`yE`KYL$lUZYkvf z6itU=Ze_)1GDi#>Bh{pRXKN^4Q&ZFH`Y*f35Y3*{(}vz3OQ3H)GzT0r=1BSgh@vot*_#t7%~Jp-yY`bJawx zRO%1DV9!4^7f9Go9SmGSU7xFTbanmiPbJu}#=6(3ar_ZVN$}bfX($o9LyG+Zg#4Fv zD!t$r8@&c&$h7ONtHLi+^&n$oW5eI+Yy8i9cFzG~mCfYS{0maMf^U()5?pNf7q1|o zS!aora``#^1G7Z1GpNDR(o#^t0KJlXeoW9=)Y=8h@!7>uf)9Trhk?loC+Vr&=m{N9 z=bZyn{-w-j710WSiHO&g&;6vcwx2Rq(z@_gB3Y0nc_f68gSDBEivb)dn&5$@rw`mPDw@uv!uiCUgwHOrm$Om|45##Zr9s=Y3}3WEz>3u z@HQ7x4TrkakjaP;qybbR9N?YOQeUKw(qnmK1S)NOH}}Z3Kav3F?c3hX)4h43hH#2( zwGvEBOjcIbn(FF{3W)`44z2fVA>?6;GDNPB774HT>@RA8q+En(5q;ebgaZ!L@nPL5 z@WNR~voBEbXFB|zVksn2yp$u3ko_o@o?EyGkmzvZ{sWM3n4>!A+NJvNtc&9hsFJHb) zJtw!e8iXy&j>N{m4*Ljpmc~=`=0VPqDv%VY(h9w{e7RI;`E~|R1SDTJIq>`7<>lqW zdeH0p`}?2D7A^NVppJ~q%#solvk_LUOGv_OO92)NqhCZn0aFt!B8(1?Ukwzs`C2XZ zF*mYp@$8?;T#0F8z6e*?!SV4-4x5xKUL6KEfT{plZ0vqnd3)ajoqoL55ncbQ3d;=N zyf{#qcQYYcp!0aN?kUtWOOuoHdRqM-s$_f9*AqWRzxsJDo)FewEE ziQG8nlL!@BEZ`a_+-i|8**G|mgGJoj+yLQEOiY;eMH@VuNwfZMcy{eK)X*xXHb}lg zrtd~Kf|2ye*%>~ktm9LJPFX-^0UFMVbr!__x9L1i%d}+}2|vk@E5Jy?Zx6IbK>>IpN<{{T^fq zQ6z%C>zyzq&aV|U(t9>E_~E~F^KwPG9j_8mnbelp^g5*VeHQ!p@rO$$`G?QHh6bhc zSU5T7RD2Vdq0xr(m4-b)9RZ>!kW1~~JqM_JrTU&>#ZFghoyx1oZ6Eg@U?*dqG zzxDTvCzSVWo}w(V2J~!rpLD$hb^W&xmPs>DLtnqcJxRXFG>%vmi^Hr9d>K& zSRd3-2slvk>Qh||ec2>>o1qmdw4lS$($XSC$~1qgNvHO*-uDwSDFegb*%Ec?_rJU+ zL!{!VAFh_{UcM$qK|&I4Vfrz|DDuHiW9}9tA>e}_$t~u7$YL(0R!w>6W>pytVB_Er z=*t6CkWc3^3DAE8X+c_A8kijTMJklB+7mlQt4ytAw!FL?Bdm9QB}WnAbeOSY!b5~Y zSIfVTkrn1fJ0N0{ilQbH8I~ju#Et^73*w9xbX4e*UxX%!U8xrIHdEG)z#Hk z-jCioKYJQ-a&n$}h^(R#7MNf!5KyT=@739UNljhiT=RC?8jJ;H4D>Pnr-)n^;nLr? zAKoGd2u-wkxosifEkw9)Msik0MIli$0uj-vqK-*SY`e0wvA5UgyswPXBcH}q1thk1 zgDoDEzcL&m8Q1I33jQaF)UN{0d?=286~ja%0jINq_avsB z-7!$26Gwml-Q0+Yi4k!-Qu6T;mIX}b>l`dd=#sy~$j``xDWp#|Ncre>DP~c*-Hu8gP`Nn%Dam z;iKXy7w~u>KZkG>^rTkdR1qVgov8b93|j{9Ie6rsl+0@bTL{q#fI<54-c%Um zP-vl;`1m|PG@8Tsa}<`A%1TLbdtF&8DZRmB1nC(lD3%t(++g0KgqNEoen2&&BesL; zl|O?QhU9MmLveR?baznEF>#1lrD2^MzyvZHj4;ou!!YO-^VBVn2C1WZwdS#*p)Wxk z$O+N`9*5r_b#w@|RBNiLCShTPW; zPcI64nQdB5jpps=s`-_bwwuNDqdMPOc<1BQwr5!?e_1I6F{NZ=WPJaAA4nB*RL1!6 zX^Gj6wzf8AIn?4iZo;Ufq@-Di-_I#qU|`_4Z{Gp~VQW#sig;dtXp9u`_3PIZocg~V zo22s`0bbOYj{fKZe)jh*-<$skR)C9(EtY)v{ianK z_>ui%W466t-yE&9!N5a)gn&u})(L!YrQPQa&@sqlfO+S>Z_hc;>W z@}7rqU@~7EUijj0VS0FYcx{a&0~XOA8^kL(jCwP3b8}EAK@&RZ0v=+CHgz+5?myNP-}Azs`5Z z*E|o(3_;}qO$kcdpf|(;7!$WOAGf`UY~WJnD)f&F1>A+DN=3Y*Ph?ftzs@T0I3VxSsqZT|v8Us7CbPv~ZEzqe4cyWSP_aDP8%|p{O_k5T?)#D6$UUhi1SJ>gv}g8$DnPEi<3VfwBD`?8q=R zNVRa8Klg49M1z2BF(7G_MH=F?Gm>4pHZ){$`n!*ejBJs&EYpFXh?=1BOKY$wW?xc zb5y3?KrHAh8}~Cl{u5A7vhx&Xc=!MGTit~{p2YQfbHpOT!^1(+Xm5W4uIQ3Uh=bDr zRyU9o{LI7EIW2H7w38TrZ?`UYgdcLEe*aW5ZPCm`N+W*|D zqK(7#aK57bRys2^9#jJuNlEHjTE!2~wqVWsd=%s&vT0mOZb(2F9ze@Py?pNO?miK8 zz6CC+uP>d;0hV8yI{pTPQxD@$_pdL%f`~oxiu4sKs&1owc9dD@b565+-0>7;r~v{e z!1806f@{W;u7GQhFsVmUITieR<^dzRx?bI!@1`0Xqu{Ynl9C#%wtDnOpX08=Dh~7? z-`Vd^1;Nv@m zjAbn(;7dVlG{eXbw(@YHMw^fI-SaTJ{4-19eF76=`1Ek>=l5?T6nnfC2uYAbf!r-V zCML_sUA0KX_k5HSK)=;#$Fl&w*i!gprdzvtL-metyKCr>5`Bwku~VvEo7Js%hBaM%=& zcp4pl9?=ocgS9%? zZ!oE4v!d$Ue6S<>Yy?_<{rcta5BYU_baVuyfWYV8uhgi|$)c8(EKRvi69z7Bq0K{^ z=jGY?Ie~z;J7`1{asr7=h>QDmkwm5e0u(-|=e@b_2?_T=E@t{%;o0!=0HvM_;F907 zwxpy)JQsYQysN9Lv@|mNB9N$1a78eCjwQ^CK^z7hTzq_KsndyUQQ%`h#45rFw6nNs z9zY)eZUy(XKsELC_JTAjC#k8a32+CfY|d29%I6zlr~oAkOu=#MIa-~^CfI&(6Rj50 z)HCJ&*J9`SeA$8+sL z@87?Fe0)shw1fIBVK|-l6WHzjl?T~ul&8nu1ldYnBr(611jH6t|3%M<*o%$zb#!!e zpAZ}F?dR%YU4-fZGgVmbYSmT*q(k;5Xq!T3 zX4nK@_Qj%uL~dFsrKW~;)~LzzvbakxMrp_%Hh>hwv%E5D*^1!uw*O8xK))z2Y9gSo zu)G}V(+v(Z4JtTBIt{3igxtylegFeN(^tf|xkG(v$@k_guS>8Jz?sSy>8F)5XobGr znRXd3@e1YV)%p2CB8QwDRdBq-20j(Y&yE#YygAbA1xmh*6m%_s#*T}Re^%~CUk?E$ zTpumr;Nmu#j^fiAOKHn|*3vRiBRpElE@;~n-JuvmJ2*DG#IbaE~19P|53qX~nmC2HF{JHBT_@8nja!@@ic z${N(lw8YF{6pvWK%lEiGd0pfNYlm&ByqegV|9XYgk0>PJU(GIXyGP-)EbarJdSTTrtlLCww0K{p8uGO22*?k0h~HPy;W$qWG>>AE~nLEDZ^JY!}o$-o;c&FEI;1~Py|!dFalm)UPUUucF#daI-<|>Y)dMhl6xt*I1Fe^;92k=r_XCD zIv#nB;QfEFStuJBZBFIMOb&w_HU#l=M^=)26KZy6R`1^RnFN5(%mM87mMHzhgVUD<4Yz?jZaqyYhryrv(> zC;*~^oCDlf%Ey6y)*W*`0PlNQ)zwp9&L*6$hwCWMD@2O$i7gWvS2gpKfuW+!MqCg21VTVnEmndPhggJf;L^OB=pp z2o{d?4v;z~|LFz{+5UKICH-Ylv>O^64p-03AnYMcl*@{aj~|Yv*Y3UG zO`Iu*ybgkz#q&h1w9Y>}JK`SFpe-?@vJig9QR2>1J@-jA)(f0seWe{*eOPhN>X4`onBk(UJ^7KMMOo5 zZYsbb67V?tnVFfHn@b^#4n&+n2A`C)ba82E?_;ue*{;C`_ymJ~`*MSweyn8gwj&T+ zdcY$*-h2F_>R}ogAGZT-^V;el5JS2iKqIwiNST`I{oPfg`xP)Bd32-`^ZI(Fv{QN)$6d;tP zR$^so30myWd8Bi9wBRF`>!C&vj}1n{hzlqZb`%H|%{OE#xVw(~Md)Ps+VxK_lV; zCG81zfoS*QVD5Oyu48m~n1Ii{vg>NdoZ;8MfB$q_T=#24q)JASBdD+=`1$x?VPO|r zN<@Gd00Ij!j@!tgJpfo`t>!dURTIw*iUB^q?#(GWi&AtB&wFPbudb_9I5!BwtE!xjdQkeQlNPwo1{z@?P#i#Xg~?1KkKBE>g> zU^qUmXc++kKal9CvvNS;-5TrZHaTuTm!ikHDd>Mn=Y6iy5Xr6tHXP*k&ATo53=qg3 oUnfV=fB&<2|2sn--X}YVLhl1Vde`i_@% diff --git a/docs/assets/256-white.png b/docs/assets/256-white.png deleted file mode 100644 index 7a10402a4a8ad2538a61db0f844135a994056506..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11487 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: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 Dp9g{r diff --git a/docs/assets/32-black-white.png b/docs/assets/32-black-white.png deleted file mode 100644 index a15b54a768519071224385b0d922ae452c1da6a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1137 zcmV-%1djWOP)02dOu zkV_@G;zr068B3XEp67kO=jHqQzP)MdoD=85sTI{x;2T zihlt7SitFD1)l?~ehvxw#=VH5HkenTU&vLqI?P zTwPu9^74Ym$45LoJcvR9U?YI(>1p)z^x*pXTEk%gkd~H)>gs9{GBGiM;o)KJpgIW& z2|-0g1*)p55EByv7Z(>fPsMk4ceuH^!PC=|dR!Z6h2-R9czSxGy}ey5!%f;sBO<ECvS$QB+ifzP>(qczDQ5o0^)Co}Mn3se~`px6de7&(l(>TlmcYfFD{~ zS`ZNtfuy7)3=9m2kLk13)m1H^c#e%`B^XC9e?1K_Zia@2KE2jT!u|zhlS(A0Hpg&CMY)GExFAF)>jrkdl&u+S*!_ zl$01UfJ*e4K;;CrzrQa)M@L7|-`}s-XE!%kASWkB{I$KkjggTN?CtHzh57k;uy=HH zfEHqpii(o6Bp5ZSIX^f!5VJcwJ7a2U%1)u}2ZII3WQ&?wgu;8)gY;A3cyEFhq%E+c- zmd*P5dWn3dAAL)~tY$1kq-u^-Kw%pj8}Rn_MrmoOkXUnbvsBXD+*|?W=jR7nmt%f@ zzSJ0BUtg@RuS0VIQ>nYV8_UbfXlQ7V{N^`WhObyySP)KNfntEMli|pk@$vBp4-c2< zXL)AIlD>JDJi#Kz*VByz$~pD02@i0CHGom=?(QxrM8pI_VqtFA)YO3dKk}vB diff --git a/docs/assets/32-black.png b/docs/assets/32-black.png deleted file mode 100644 index 732d48423b0a4f61421fa30b078121a134c94588..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1188 zcmV;V1Y7%wP)d0}DJc9l!*=z|cEiI*DvDgPJeiPfr1j;i%f&3EHJ;6Rk6hJ}EFu}3y z8rWdPx05Rvoh<<=32+X&0I&rbg!(HgD%|04xU@zN%#f`8R@=+<#_r_Wfj1%f0Q5ocvhW=AJkCy2K~PRb zX6V#AtCwBX*4EZqH8nLB{@!b7Xn1E}U|`LxE9bUrh{4m^+M2*=-*%uAGcz+^ba!_j zLiYmpr{OW#bPywvh{gG^C8gj5EZJ!H$k5Qxsq%nMxpaq(l6RmT=W(3RLZ4U2F5|;gr!?^`_1n*?*@9#fICk_!Tpw=r1 zWW91@wEvf#*8HnFnX)zUXf)cmva<4%(ft+9^ZgKC!-d7g z#Xp};$3oi{a06baecy2aZ?KOAT04*2#2V4V?E4tsgNylm{y}in*lvOIac0Iiu*Z=% zXJ=Iz@o>g{zqDuAp5()WWe9T zrgze*5izpdm;9;sVG6yPv zY&$c?CeHc_m@2k)RW|3?_PeVuCw_0f*Ma|b2Yv&FB>RryyIq?A0000NklgwvC_N%I@vfK9d_L`oa9up3S z&EVi*rmn7TzR=$b2hi2kRUQZg-uL_cwb^Vo!p1wGY<_;;H#<9P(&@CxWHJVw^@&}2 zVPWAX246&@(S)7k$42Z17+2Fj4hzuf^ZDAH&Pl#x=lJ;eDQr(O_hv~+iD6?)DwQ(R z)6<3^tU2qAP?M~vsMtR_Ik}m&=NQ|_@-l$pZESzHD~y>yzK-EP8lyWnIy!oGWMt$M zzGkbOI7ia6v6-2fS#qek!p1rUnh1qLdniXt`n(L_>@JROGG7bVp`39e^0TqAvFOCa z#5y_E7w5LsIM1=CGMUA?Fqs#CXLK1^347stcxP&A%Jld5+j=UMuBorIKkv((eQ9Z_ z>~GfB*AKh7VgVdQ`6XprsoVOF~)m(kC0B&JW z24~;^HMc1*bfU3Nx=K>0lLO7^7U)J$`%VJ*hL8BRv9U2Ny=%n+_!wmse4a=ob|jO@ zCKi9hX%A|%-1=)=*yLD2#p7{h2b0+=t*xzJcXV_-^#*9|azPmo;YLI^yaGvhgAIqe zySoq3KMyB4!CU0OIgxZt&J|QF7PEn(`>MIQ`I6HYlm3E9IZ{>zK?m?Lm`EgY8!l4A zgKT<@K>s2TTU$AGO(`E99=4^?9I3zIbSuf_)mX6cIz*{woMiL-`{pS)lp83`angK& zk{srcg%k)^)uQ`8H#he~Wo6~34Gj%>HTSky5_thE&91W3($eCusj1mV5Mcrc4Gav} zYe@icGW1JRQ&Vb{Tm4VWD8V*33ib_fVKLrcIOlXLN$mab!Ag2Jzf=N@15E0X_z{Mn z9R7w^Ap*J?zrvrOjdec66VT16gGcZH4uB50>OTPQ!VKu&Q2#gE;AhH~&b&wsLpOIHz{Rikv z^$gzurAdM4xzpF20KE^t!Ddi!N^#8VuSZUT0#qr~B$dq+=wZ|P5NN&r?iU*Y1Yx6x zHn5Fx(Z18?N^Hx(2g<@Tn{1zHu%=wgz)O{Ze*qC1*qBgkiw^(*002ovPDHLkV1gB1 B42}Q* diff --git a/docs/assets/32.png b/docs/assets/32.png deleted file mode 100644 index 5acd270033df0976bf072bfebb091c86efc4a425..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1362 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 diff --git a/docs/assets/LOGO-black.svg b/docs/assets/LOGO-black.svg deleted file mode 100644 index fd44331..0000000 --- a/docs/assets/LOGO-black.svg +++ /dev/null @@ -1,80 +0,0 @@ - - - - -LOGO 2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/assets/LOGO-blue.svg b/docs/assets/LOGO-blue.svg deleted file mode 100644 index 2558ffa..0000000 --- a/docs/assets/LOGO-blue.svg +++ /dev/null @@ -1,80 +0,0 @@ - - - - -LOGO 3 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/assets/LOGO-white.svg b/docs/assets/LOGO-white.svg deleted file mode 100644 index 76a614c..0000000 --- a/docs/assets/LOGO-white.svg +++ /dev/null @@ -1,80 +0,0 @@ - - - - -LOGO 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/assets/Run-Debug-Configuration.png b/docs/assets/Run-Debug-Configuration.png deleted file mode 100644 index 9bff9c255bc50dcfe9537c7c13ee2c952eab4a2e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 252823 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


0$XHnpix9V4yNPrm$|=WVNQy@Zrc;tCL_9xD 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

VN;&Z1=;CU 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 diff --git a/docs/assets/created-notebook.png b/docs/assets/created-notebook.png deleted file mode 100644 index 6d08f3f61fdb43e3dde457a7e1a9b4dc70a43337..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71556 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 diff --git a/docs/assets/design/experiments.png b/docs/assets/design/experiments.png deleted file mode 100644 index f3deb321f319c02f57b80160e509980a65c47874..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75806 zcmeEug$dOUQKEBJH`4FFl=z($vID!w|Rk z8fLu8f9=`@>!0s^2r!<{Jh&G6oF6M(I@}5SUVtf^A`gFXaZMG^y<)}F%S%^542-%v z7+-Ix1ng*;5P~QkxGO7brhpC4dbuZkSWv$AF4{q%7WjjrY`2@4z5;?ZfV$V zO<<^DYc(x5ErqATrjGVp#%7Kt=3HL(PN-ARM7@N;OM7!SV|p)pI|o-`FR|OdJ|PTV zqu%DeP5G`;Lx$fN-$D^mG7j-eS5LS_T{QGq9m)LD9H#a9? zZf;LcPcBa$E=Lzj?)ySQLfrQra6fp!2|mH;>h0iW?8WKe%6K)%U*kxbyPCRKJGogq zI?$uWH8yc{cN4pP8+D<-|6SduxtH}nS8{Ou{aD}uxlu>B?{nSb{(Ee2swnDRVI^xX zb2}|5YkM#~;2PpWy!@iSKL39m`R9sPXR5oJyGT0PgA?7v|C!(4C;$84|DO2klG^`V zQh6*Ea-*L7Uo&wv&A;9S^DK@h%Ki76iQ_#}53xW)gQCewJyi2TUz^1C zBO4lT-wunzeDa7qQ%;$f?BU%P5ijs4FtOC`Y8C4v+IH9vf;HhLHMb3vi&)w5KIxH3 z7ex>#q2p6zu(PVDLFtKg=(lY1jd*|zQs)+`#tiowCqVbRwOwXbM0|uUw4U6 zCWfM+WB%*E7o@OG=O2m*;b;&X`k;UQ3*vy%cM(DU`zBNmm$>8W(E6v6|9ln=f?0a@ z$G^`8aSyW%*@)blj3kTxTQ z$?8Q0a5eWF+M(sxI8I%iWMOwX^^uePRr~F^HUstH3|UfyYp(1vA^7?+q7$sq7feCH1OSLnz%n($*ou2S6Wu)skv~b8&?}} zacrqu=V6~#c(9Jpm6MA&6`eT#VsBVul6ih`>IkdVsdBKtdGlswu5EV$U!~j6A5eYH zgsS4&ePmp2VI-Bn_$TR?5O+SC!H!$}c3Qc$E-o&1JxM~aTI5ikWp|*xb9 zvB~jrYtq=-T=hH)Y+5fPHKYpjRIiqkFXLFDznstawXrh$kwSfNqf<5e85!=~$s!|_ z4wJQYx0k0&2lwZrCB{Pus37h?9p7BsIabCoJ6Fn7yxRT2m=t%ljEWjgY-S=iUvf9x z@Y*kFr^Oc)Urus`L`z(rxt{KHaZfJqua5K{e!YG4zP~q;keaj}9(Z{HGi^9Qa-6P} z^-i2W;NihQR4^R9&q@stHq(du9uiWg3uMvx@4cxr)X_;eUzWJU^?vFEeA)O3i)Fj#Rh`j_& zaAdbzz_)JHwg_&)p;_pbx~fol_*n(^71#{rD7T*eh=H%YQL5~_J7e69XLI6?h)Vl3 zF1R&8!}Kh&cBhjA!~J|S@Dd+WxIm`@Z!l9}fbsDwoHfeALV2zlrsCc(x&SMQv#sZ+ z_0|KQVYTH9N0uyl`pc<-0cnNc9V~I9K5W_)%?x*f8~5myM)I}G?3TWN*l_hHCM_&f zPJfIQh3nur-QbVWz9LCfp&;F?SzWt#IvYDv>$8s}7kmu+icRM?v+)^Cc;YxrLUSf|s5vtJ5{h-uf6Q+`z97CiT%ZdkxZkmU`>|1@llvri zT$sOs*DTgRm^!ycs47p*|czTRWj_p z=~v7He9aL8feGSK%emHY7}5OR!w}7Q@jtu|#w>rGnP6LpyS6*5>p1q7S$<*}uNGcQ zHY0Jo@b1^LfCa%m@ZN+UKD`XfUipGn#3e>_;f<>~B2B5Ep+EVladHa#53m)uob{Je zdTUttLqIf$8IoyxgkHvfuZzkCi3 zj+KqfR(4nuzOomTo(fAU_sSKevBJ0;kACb)KfDTkuoWEQj>qk9bgl-#;kdVydHa$=VZtoL z_16EJ4s|%m>HmhsS7?$iO_wzKi2oghq4ds}F%?JsGIaZk!8m6A#+fSrIgAGTz+-t5 z45eSi=ZL+UkJl{syta%IADGKcU87~Vnj+{2OdPYW*7oNAxvg1D;2J45G9TEpyyhgO z!)E;NjQ&ZY^mQ(b)`xXa-hAroj)?i449L~xBPaytU-3jt!8EV`o=Yjn-A2{hTpo}A zCykIYnr#W$aIhaQ4>vm`S^v^EN8((<^FQeW6Qri5#$!3z^Kq$d_#wk<&igm9ujWVT z0Ss92n~G{Pv$e=y=>hZ&$SS0Fwr*dIVNR)4Vj?}p@$uU4iNOJjc#YNTzfVF>%!zK! zNh=ZHSDxFYNd&VKCrr7z0I@&p`}glFnsSj>bHh}Erv38W(UR-W|I8Is6t9nwD%vxW z|G#qt@>0hsQL1}JLEHsQulGY@<*p{AgY*bQi>HQUzwhcr6v%qqsB^G>84j!%(kp(N z4;%>l+G_n@x5`XP|C;jyrSE^QfFs4~)Qm+bRc-mrBTuJva*XP~wuc6r!zw?EYB*yx z<2;az75=>-e=UO_sgYHQW4YR^|KwIoMM0$$(bPgeDA6F=hFUpf{~gl^IhfNxe@|wZ zQiEOk*GTlwjJ9T)hwD5YSNqdtrXB;!f~w%$HEfvJXgJ--sMg?maDW9Il)3-uLF9Sp zP%sG5q96JsvO087j)#`NhN*NoA` zgymlrF30WEdR->w!YE3L9uGo(y@TC!du#Sfdf!QlI&lXDzcK!m6)2Oh3}ii1TTOp( zb@E&NASnM>Af!6r*Wc4vQ4$wk)4k2OSNr${A1pQSV$5FUB?afFDPFK;lVkAyXW}aD z#!Nu4DdQ%_ENv)OVY|AJHzZp8BwOLb17=5z=-*Bu?J2NG^SODWt7}J4ZiQ-)H?sKt z-r-OtaQF>t3DN%;eK;oYm~>P;7Ei;Y!rd(2ib=D#1zZ_jj0!y`XF-gN%Z;mZwmDwE zeLJT+k89?io@sJ*84rBXqnYPQe_ezO>xK@s^wZo&e=Ypg&5d%R>{Dblzszrz{y+Aq zRcr+N`7#&{vdy^F$c&iFDk&#}-Jlq)u#M*~VEoTVZwR?$aOzgx{q@N7OIRr%;B7sL zG3M_mN&CK@b$^1%vO(z+W2%y0{D zRcaP)KT+M^&ZAV33JDNt0e@hj|2^*hc-dwHqk#=z&=eThcvv zgYASTss;C{P)OkY22vUukQG+I55~JdLS)LRQ(pY!LG|WD&47!mE7)B&u!PHls>ZSD z%L~s{U?4_RM01j9`gIOMjKL|}#ORoF57X@7_0VD4%~$3^ zpNrxX>?(FeG^$i}GJUwW&$(gb92)N*R8%=mPk|iGiq3BfcD^_8%;RV_4AFS8&z%QC z_!|u#%bxP-z{^RHm1-^o)V~0}{rKiz2{2f{v>@o|wV}I=e0#c!+Fh;_4DIK4@&(>L zA`d!U{mC4!XA&)OQ4Jo;mLK?X-_?SuwSi|61aQ~B;cxF)5G^72&nsirjG4kiZjWV| zS(nrbmn0w9^IFBX$uLwwiT|ak^{ZX`Bo% z_eTuZV^kGOKwR$;yZjhNYeOUAQI1MdkVL$p*vgdeLC_jpRSS{6^f+;m`^)pxU=C9C z|8_hs`huD-q15DYK~2a1OS@Yi@mEC?|HOO7!3fiQv|9Jo;cqS+BuHUgGg737%l&^s3p4qV!;nW} zjbB)|n~xS{{+Ka`z`{O7Tt?w$z_c;tGaW~4zNaO&!Xw2SzATQ=JcDYGj`gDojYNL? z1Tb#*psG&?L)a)P6Q1@zOs4ASIWdVV&@TJBe&2qu`b{D+J17^D4XNw`r@WWPuFFu* zI)Jhvj%uwZSztui9ck7py8EiaW~g($MEx!6P&!oW%LmN@9rEm@+SS6c=Y+x?{s9xt z?KSIK^Mg?0w|WZl=lq1P=N*tikz{RL82(F!{<@VJ8Al|LLV>7g{Fx+5-pq`QUsP08?GgOL zxCc+qjtXD3>Bvt;KcZg^V|TyGiinw<=E7O7iOn-WaMUuI+*nq(wzL!1IkFC8=Td{- ziY2@KkY#w5hIa5np1Z;@;JA%)AHb=-P66H@bds%Jo zERHQb>(OW|YH2(n65WC#Kpiu==v6-06GCZlL+}GcgIiYB$n-iYJe~ib+;9 z!fwUm6}H%f%8yu?pR3G$_MG+?=u5mc%Fy~8-0BF8fgealM#0v%My2Npsp69aulZ8r zRGcBJWy1*f5yNG9jFmV4PK5f-()0y>uu9v<{T6B(}dOY#jKz$X# z)g5J}(k(2w+U_I0+FCfFu#R~+%6LBMfp!aqNdSLWcoX;ew2J)#!Dd)IrS+Ib^s6y(V| z@9ro}nEOQuBUumKyPJnfC6LMc5mEhpmivFG&Z&ZoL41>{;8zHH!3e{`r>KV6QS*KH ze4F?X(kbP4jG&5mx-e+j$XmCNhCB`)nZY+)FuTW zAV$9M^OwO3A0@-CInFsJp+L1Ug7lhy+=Vng>&F3dMPe!k8Z82qHa3#IVHfTDtoJ-NDC!oUM>6QfrRa>M zAY-ld6DjD{?&@fIJ#n^Nu68AQQl_d)+7yb(Wib!HoyklsP;FYq>w9Q7Fg=3Q@TI;KET`6g)ig_x&_Mu$+rrKtFqp0P$BseQ~%w_)_50!rDWU|FwM&>YN| z>aOTV(f`gUf2)AFCd+TX^%Iy3@duAuO)?-KHqoI&v;*~W$p3i) zYRrxIwfz*KT6Zjs+HYkd!#Tt5xZ+{Hl}iKQN`oG^7uTWnUU-vcDJq2qv%+Dm88{yhAkWQJfaiK_-oF`AS%!{| zNg^Ngu`S$PqUILLlfZ6}Wor~9{K^sgNvr$6Db+h8di=<3l1G)9wMxuV$)EQv;-1%w|e^(ka@lC}y#~7B|2v^@2ciX6Mua*x2)HjpZ3zT|t&T89X zAcuEsrTv}s%A!gPe)GJp z|6SUmL2y}}l6f+!jjUso+d`=g%4RH57=xgH;FwuhoczH1-zYT>=~Ouzib#4iB);+o zTVbqDPM-%qKv~=HSWUNidPV2u8UI~p?_fp&1hJk)^bs0N1=q|TLH?hH!o zurGun`D*R42lQB_l3|1u+w<-5l@Z15*E>QpXR)sQ|0l+@S*KJNJCh^%+~&%VOyrG<#12bY zWW;~Ur{B<7`x~4}hI~JBVzqhrQ*oXVztD#P81!VgTCOf>PIvv^ z^(vGNvwWiGP5R~Cn4F`f!k-?}S+_E?-$)We>EB@9&`EmY`Ofw?gad3?YUbb>KLwr% zmAM+j3x(IGUFJ+-P4(WpYjZET4;D>83H3LKvV&P3z-0Sm$$JY2Hix=KB7P;s`1(W3 z8X7!6RK!C)JZ8N&`l}(3F)LOT?5kQ#8V6N(@dsX<-9DIM#w5m}z^R&09Qn-FT(=Fp z(OWGLN5UP&ps)Yb&FuJzV&nvY^&u4h03%%+QF9CgRm`NoZZfeA5<(CkHzlePG- zE+UJ89D1R_rjrx9W50|G!C|UG6D$4Ze_7-6%Pw7rS*_7Toab6ytjM#V^bcTDa9>@J_1#9) z{NZ~JvT4%>j-;8NXN164(tmHPY(&m%(&Hl`j7X*pyO<5Lm85P=O2su_+y{TG;q zvRA3wTQlDkDqSQU8uVjlex{_)2R?CbcsYj)k!4ML)yCa$^od&&-1px`{+h*UP+4YC zZ1y??2NRPw<0#W{*OG1cr6!%mmxQ5QlF?{vuzSGTy%i%Tn-#h;D`g77-S0f*Bqd7L{vK;mcw4XdX;SpfGBqrcB#J~h*fcB{7``GmP)=U zE%N5MKz&<9$jEhQ6CKRFD{c%_lXLQm|HUx4>$igc!Z4n=z*sCD2|r|_w$|`R*ro08 z9U+PMXy_vVq}^$?U%34XNifl#0m~D$xYW;&*{KfQHKBW-qQ8=aEud)p#F>E{gCLOw(SM^$`t{nkzfmUCnK%?m zE?KTD7Gq!SMV<@PMW=#vqe6v)e7pxBd@meffVepEKnKs$uW}zXb3U~F5NC9Q} z?p?1xf9+Ig4wgm1gags{j!N<#DkI;va9o0cWFf7O#sD@uIkzQZ@I9M#lngoUsx)S!0H3$9lm~+xbApSS-#zOyw z@1F3(zA6$aBCe^g_jZe{|19#rF26kDMFf27tOz`tr#o1$n*NIUZCqkx9OV0y%DPLv zsg5Y{3t%XnfZtl5^4+Y+QO$bnX2`vv#%gL;sjgM^u z@k^saiov;MhK7#sD6aQCK3&epK0y`cr^vjbi6X~_I z7%&SfXlTS)r|dYl(^v{jd6`PJvwMvst`O1)|2Y{5xJQ21rSHW>@yqyi9vh_qXdw4} z)|IYsOU`dTCXykHWc93Migfj6jtqab-vxlRRu}0i$Gx#XYj67h2sT^-_~0|~r3!cH-7JW}XV)Wf;MmkG21C2&)9y-X+ufzUYn#i<^SGpUs>P^SlHJ~l0n)M3dH$l9@z83&bLeF{%>+@0(AvSybUEGStq00wkl02AOLb{4#Xm z;O9WQSg+7>k}2{&0T)%7K<$?g(P9T$t3NVdBJlHTul;eu2>C`?84*TEW7AIU`ijP5 z)YxM{LEr<#oq$1Oa}_Y1Hs_~@0{W`}Cs=E|JTDRvRc=RC=sLoO?kFUffqBezUmqU= z5V%LxvUX7;AQKOOfscb=J3G96*m$X*C>aL~ubPf9+kdjo)6+LP*z@doIaNOzfNJAD zdn?A=@V&S8leHp!1D^Z$h^Pho?4O5T>wSNp@t)hxb0YC#5F}B^)+7-Po-hi*63a?5 z@Hx(Ga&BJcj&7HG!Mjp$clG2fRr*>fKe-_15Rtw85JeY-9)xqN$s11u_~8(`IN;;huRVWu~9#HfBcu6 zgSZUBX+t?JQY>Vd1wSev?Tga2tnzuYgdQA1blsI7gybP0!)dEqxq(s zfXj1F0jnQ}fIe*{h`89iyx`udJv16EHvY^|aqA$DUU7_-@2R%5V} z?6>enW`dTC`IXAEyrnUABirHp56S)qW1pvnL3-^wR5xuqQfLpXA{s^3x`u7A&#E~o zKT7Z7ZkzzlOiW~_gK<)za{RLoFOi017TDuHo~)&iC4fl2Um7XUDrqTrEE!tS3&@7` ztuI6ZSRe3g+~Ig!JUl#{0Bu5!6m4GX9B0w%-?ANY1<}6dVU^EIhq`rsPuB9Ne(!j0 z!;Nd-k;WQmC~&y0VZJ@O3hciwol3i(*Crazc3yI7m$uT#odc3+9FVC-fbp#4=@I-w zkZWFW$||#eZyGpakCl&MweB2S!|>fYtI@42MaPV#Ms}~s(-L)uM;Xy^e?EIK)bT;$ zLZxy1{)gmh!J=1#bJOg-1^^L-*Gwt;x+nW@;iKC-e>V5l-<{ky{_t6P5Fns;)t&8x za6#GD8cymjqdQV6>wzRlb2#^olH)(bI4_LDrf1NouBW+ z3A~bN7JP5gg6i^%g^1}Tl7A}*S$Ro&abA^grV1GKauhsFC^&;wC9ns~w$y;-&?RhH z3;?EaiHWvEVtcQtg4h{1V>JzK;;6t^t%h=At+iZ$-Erj>Poz=Il|5Pi^Gtv;_L>BD(Xv1AsP6ID?>FSmeY*8t`2O@n& z2cE|ce6e$*TM7_j)FH?wyubVr%OnSnMOqJ?jRVxQ<`nZXU7!USGE}c!p}MF@&mp?17Fcnt zXs3&MROq{sW_CyNlPjBkULT@b|ACpVY!zkiITu$l?dS{{=k)NYL-tVX1d?=k!HaH* z=NAFZK=n-+-z!bAG`Yfz&GEvwfPlK@X5g6TS#axXF1?2I!}n3!5NU!j^-Ys6p#+m7 zq3N>0@yT_HrG( z(IyPy%lzk$ZLsI>@6Xtz6a`yiW!=)rr#1Gs>MN6ZhRB=UkkUZ5y@m-yYoD$XoR=9g=6b-Jw;3>yEA^hQ1+@uM{B7x%FMauaavS6WP>0!3e?W_h9>olBV?P;uKM z?0ivpbD#Ws1Jchud%S;KBZ0Ew^pila+)hT*vt0@Ga)mEyLv_weA1rHEKiXtFIc-te ztfcr*!%6CkG_#O6T~;;wm?7H}5TfgL<@c{?tPk5_^==O3 zc=&27!tJpdS4V@}If%Q*C{8S;nj7OFD*ePuGtf$x*!m~Z%j$hO46pG_$o)9B)S`6TkyH7520d;a`)WZX*{c4Uy^UFO2TID_Jcewt4;yEWNHwb=v$mjH4#?* zZtOvwt5A#zj#bC@anZ6?*vXKce6qj1GDg@Fs08Ac*r#dSb8&ybe_@t7AEeKYOy7Zw z37$SoyMir4uy`FEQ%K8u^pkCOH8+d32(|F50uJLk6_;m!-ZEL+>*#Uw`N?mOAafWY zaU9W8!FsLJX#(^i9?>JN-OYnZngrVFeHpYe`%iMKRHQ!yoJ?T6LfYf2C zzUH)csnkb04v9W8qOPgGcx_!y&i!n=y$;@jysz=ht@+cc#%3NhUxu#qp@P_S09n=t zMW+p!?r?p}6C`~7vo{(>2e=qI&+ADei!1jtFxEJCTxyMqhy zK@TXRsRVlBk^jOf8Zk?gjGJ7On)b^U5$i9>5vI4T6g){<%AHFSh2_1+1r)iT%F3x{ z@oc(T2CRAajGza0ze(19ix)Ab`7nB^Emz>4*SWg?qrxCr*t<}gyevuFP~N*5uF69g z$7j2}@mBgO=8NjZ`Iyf-=koH~;r{)$Ec zd0aBf!&G$Li$gzz@O})s<}h^ORquyth&9S3WlWjrrynSrWIcHqY_q>(Ls;nJ!>hNQ z_MFfq?7Z{wm%znO-<#!5GCp>Gj2QpeDi5&06ohL2aS0w*?26pO{Ln|aghOKX0quhZ|k8M@QK8KyptYscB= z^whO+BIGrni>KwN!b^u-0%UR*-Sy%NOI<{5W>f1%o^y4xMO($0jJOqAhY5_s{i1m| z6G)iRnFR*0E#$r*d|h?aO8*-9NsVWyH67$OqEme1DDec-n;^)@vt)BF3sxuh2JSt! zt|H1;5tRj`N){KfS>~75hVnHcb{!_zKJ>Uy()tRi75-t!}K5_z0-2BBfg>ZT5h+u53E^> zgCCmH#f3%GTXZKZTA0U$#LeNVlkIVQDS?<2CF8vwVl2Q^!qXvNLDoEY%yEAZ)bNwJ zgYyMxhVc1PmEQcGyyI^+@esHD_j!}Ky3OTrWIv8$pz2l%4qs4UV?H~+Q@)Pr+!}tNOJH8 zyYBK=#Wds|aSnEQ^-MVvWoD*8OhtLN%H+>rvH2igkt%<8M3KXaz#ejF;GQNH`=Wl# zx#tj4-62Rj&RYR#JUCG~5K(qYWTeRYUnirOo`iX{O*k5+zvB2?ZiW477n z`2vACp_)?bb09eE*03G*}b9+ZeSM7V4WqbM43VEP!NKXhQG>Xm9kvFi8GzC%{ zwzQ9935i8g&Wq|X)rxcx$S>Vi@n>|dQgt3k$zKQ${Ucaaa!T@HQc-l=!su5OuE5!3 zxmAry=itH0{k-=+YKazVT%{~SB8Bgfr+T_Oj(4`ivoJ- zR^AwAm3KPZ}*l#G^h^&!9&FL&k>uo`;ZfRQXPNIo=B=H)*N)+ zZ)Y^(kXa)Y6uSV-K-E_>+hSRUe;X9{ib~o z@W)|KK*@u>)*0H<3}M-^T*UnzJuLu2sU-m))Hdd70d9!?C+4T?^|@91#4JwhKQa<% z7BLG;c&8oWc)~_FLw*$(81?P5j>eyha}S+T2RT=!FM<7W0bH2*gh&2O@CYV z9Vsnwts3o%P zr0%4>5lC3wlwo+i|Ch{c2iNOMC|^c#26G(7$c*iWO{Rwad#yfvJCIR0kEth)vlHUo zdI^b`w`}^`_3^GJ!VE?`yB_wzIR)v;hSe(M0En!aih`qz0aaJFTXyC|Q}s>|UPoE&Jrf zEECT6`n3!r2BH-npC%xM7%)6irQtagxYA8VxBeJNPjzEXP`n!xnbPKJ*|YgT5 zqIO|18WzEDRTCjs>x`;0kW|a}XOqQ$6Zqj;LI>Htqoj84v}w=IH^*?@uX)Wy64lX$}ccYCC^3>zu<-yDyTx5ZJfGd z&wk1-OO|p74;5>3R3hZ39V$tay?4h`Q3^P=zpy9hFp)YEg{+f2X~H*R)EAby8TQOE z(MHGTd8zIU&@_iY&@qEC>y7s3nGwO231ZuA7ORW-BPUwDPen}jQV*i7#||!P+;`W% zkb?PuLPA*BW`4~^P!Quif9)ud%Zk`p@V?LP7FzNY7I95(P> zH$V9VFzu9};Gy7MbH3K2S~jXlsb^L01wSn$==d2$HtA8)OFdNij>7ij6aP*U=>xFp z(KK8~c?XNKe{^Vb@29p~R`rP7O!%Q#udF7Z`d^X%^3S*zm~tdd$nMMsM7`D7DW?`?x8uLP!2a3%92)_W ziMfwC<=0^@kg(qBwfKKtx3d5RHU^3f)`M3dg|GUH$S=dIRVw{_gImd-TKLpc67Vv6u z8`tbnOkbxmR5s~aV`H;EMrAcaE1nVGrTS{a+lS@UjwD%+=y5T5KS}Ny<5K{25w<<0 z$cJ9_lmvLr440@3V6`cMs2T94r$6LMDNe7zROlLBw&r|P4%JJAnG6mkG~fAIz7MB5 zUlC(Kia|1R&$5S_iq}dhJbE4tb50qGJ9p>%w1pw%`}n}#a)piY(kZ>ME|DQO(uZyH zd^@MqD4B43DKt}GF?{jb4}M?>Xh2)e8sy)po$mbIQ+GnhQhG=ZO*ba$vIsPSbX~r4 zx`uh1Y-KR#9gs6}w!q~Z6MYO%U+HRQL%Q3ii`}y(cbXpy)acclOB*)$)c|FtEVB)o|83wM=%Y|8KOyVu=naZ58 z&kSwNnaURAiTATp+`TuRbvcDHloi?)6GmTuVUNz)$m6!6WEe`xQ!ZG!DOP}r^qov; zPg^hF$E_E(X{kwL7EAw(Ij;yOWzl*3ICOudKYcA$83TfQ_g?FV&aJO!1##>7EUV=H zXjv6z(e4kZIXZ^U0^&|~+>WB4J9w|x*t|EzGyyk?dv}J}Mdi+1h^@z;aFuQm;J@qz z!bu(f`0^n3I0S`+e|J|xhkTu|m5?%~(Wszuysp-&3f2GPAvl0aHC`&NauWEq83| z@)(mi`w0wDn~6|=SGL3V@Jqxq+r%Y8F$*te@mneM00jkl_w53ECf}Xkp=#%PA60E# zl6Ns3C!0_8WNeQU+{>W$lOL}TP%yVfKpSya@j2UFrOL=o&qk>0YHVwBmg9iq_{P!H zH@5&k)B`jjQ&5n=tLkj}O5ZNE!~kP4kWu(d6gIv`tBQ~Z7Dj@nH&Wx2mP=phGt|j% z+jc-Q{B`5kqj&1~%|{BHxY&gLW$;0bkT+(G!_;NizGgREjn3heZw4Fe5gSuGgM))l zJS^!jiJdU_s^o7DP3yf5YzWLP%UIV0&3v!ui3K2y7bkh#_L+aH!_TgFj8}F!cn)jd zWv40unz$R=uU;arx1P9C$?4^ZN2c)G>-^d}Z}n#$TMDHFo1e!ee_nVtUGPb>GL4}3 z`jb0=IW((9=y8C#sAw{?{1#5yURZHovE`kU^p_Wxo*p!wH=L{eM^T)5>&u`xEUM9x zEn?G(%UwWhZoAM~Te{$bZmKp)w7;Jax`#Q4@4J2qG+Rrp_vTi-RY}3QaZSWong;}y z-;(XJDEX_Ox>df}V$=Gw9j7$~3Rt+Oh5=;2DSVVmMiGlKs1bH!A~){UI;p>n6ij-$ zW_P(5Z#eN4BqE|7x1{BXfldsNri6_JajpxH{xf!1FB5e!Hy znOfCJ|Dsaq`!R28t1QoaW%C&6=PQuJVA;h*spOwH!MJ+QtvLjimg?k~pZlEs`P~m; zvi=R|M%F=r9$jJ4pTb0bbUJ+R6`cmW zUqNf|CtSKX7XuWNx5g|}_nBWakEw=CC@P}#JY*DodZQPl!-(^NFGS25-1%>XuD4Pg zyjf9Zf>9V{ zE`R1nz9%g$L5BFx#pv*F?~UJ=pu4+(ReT*h!HeJ~rz}m4K%(beodh-fc8@QP%bJUJ zfwF=`mHyH&xV8RqAs*^;+UWZ&ggzWyg$YUI9;_vCgU5bKVj`L9Hs1}f34Zx4NoaU- z&*p0lK%zH}ey=SJQ5yw1AAF$m0a9jvYn;E+2r}-O{g!}oGu@74xWOnYMb^nt^ihra5+{DF z&)i)lD65y+oG3&~@D)LkW{tk9Wq4ALjcQJ8mR6d=H6i zPNdAdQ?jQRL!WaEMh|05STl&o@)OY#Zt3}+JchcWP z=j$~H5_d(y7(OW>=0~Bh-%`qDS9+P@bPfjAfqic*t=Wt<_;#|U=_N~xRp$AW;8LJE zd-oy^UX~s2O@I!OFM%jIiuKM zF{DMd&mJ`MJ?Z0^FD1?vgb@hMl2352DTP76_ImGC{OsqcxP}m_Qn)2Za~Qt*8x_3S)>27aw8|Grx%3^;Osf z;pza>KqOtUW8b_&!_zwS=4C>~my=h9mWP2U_KgFQRK5a96m21(M`zk+wVT4Yq>+U8kguvNDcmP*Cq)p7B?i zsEdKUD&Ze4K?C!376XdDCtckhKdLJ{HZ8|0eOy=G@V^=Ukbi1FRX-L0%+}>t1kj3}Ob|L-5vs0`mCFNZ3^jy374w|v)n3mgI zhj5Nq`?8ygr#}U2D;z5Ah!Nb3%HS=C70B=^AZ-%g9kLJ!_^wlD=~G!SDF>wr|5()v z(5iKS>;3AOKrA2**F`E3K#FIIY8G`|PMaGg1{GN3DU<_j6hf>B`IQWVQBX2AmkK+3 zIa)se+b<0I<$Jx+fUUD~bN<22EKH1XY|ZcHuXZI6sZme(`F`e8<1}(x zzvjMxSJ|l+yskH}Y|J3BZm4HeqT4~V{&Qy5f2N4(d{|oP8$;q zENvAC&3+5!p)GjXlm{O_B)0T~422kaYZ0JQjh0(Z#>|w}C&)bc0Ad*sA3tD{y%*o~ zOB1wvTseSWCuF8?0L^>4+b%o+^{JFA@lbr0AAen2tl=X>yQow_2yiOfu9f3L*c*ga zd76xA`+oJCJQm-JQQVlK@J}XrdHFJy6t5NnsDRz5(dkBA5vl^^_t~?ek_f0jKR`J0 zn{^PQh+BI=%RA*A0j<~MJZQjq=vlZ96xSwz%r65x`zUB{ushya1zoe*H9-Pp|s)%VNHnMUynUE<26nIyEwLb;q&H9k0VZ{d?i`t^-n>=4p4Kuc*#UIZ>JSQC70<@s+ zVrT4n^?a18uRG{1a){S+2|ovlfQp>drxm7ALSH{WOWn9uG4&Ai&6fc2$(OHDG`5b4 zJ_9zx`PL}b=J3IEmn>BKWtL(xvTN)w3F{MHl=;Ga9rQ_rna3lSeZUS{!Wzue(NiYM zixWrXnQVa%nWXnab%{hLwuKZ`W5{yXN%PiHdrHMbWHo4`I@gnjUYo=MZRR-W1Gl9M zIQqC=vz+4Km`@^AU;rQY*AGwZk+}4eS5RHsmO&fI@RYD7~+= zWF%-;L5katW`A^F>1&?yKhzfpIyjj1J;p(4Q{qXb4-(h9a(?w8zVJsUV5Z&Eh?|t~ zH|_ZPwvUYop9&vm!s!daMp7{((HkTri+7!X2-JbXTLC?sH;q$)G?`Gxw^O?^YjHkr z?WcGBB%!%hmBXZ8;_6_|{6Ti^vinREEG{& zYfF9uOGBBmIm{eeu;#~w3#jg><$4=a&}hC6I+H3um-q(~;R;lT8J|szAtl74cPfVd`bk~```Y*79#q5MsJ?pN7k&c8Bm|%P4&l0Nck_1Z~@2Q2MAQ)m8 z)B^VO%XR9vj`5&@trqv=l7Yc=w{u#GPQkgq)BKO3Q~hplPk;OPgvu4$5r7EKHyVTc~+a; zD$Ha+FC6(a zO^0_6)r{so5~r>)i$N&Z)FZn4y@{M1QM}a0jb~F?3Y(&dePbTyP6C=*(_DXD=0ueU10o&P~O5@C*2EB$uhm z-^NEpxNtvjJt_z;2eGWBO*a`!kh_lyw{USSNQYMFLN3lv>sG6Wiwq@-B^v|ICup?@ zj)(j-u_~M4g=}nW4#YkvrVzBaV6*>xx70OUSSF$zQ)!!uYOn(H$~|yW0#XmB=SIvg zbwG=hhy+T`bc{Si&ikH$Jn`!$Jbe+|BH*dqY7fo{K4((4kek=4y(I>i4XPBz@l%&_ zw6oALuUnhB#ovKzG@yDL*ZW<2!AvYWlz>oWzc%!UJ+C-kTkz-xvqOTIZzZQzaZ@?d zGpFdhVHjsMg&j~}JT){>UNR*w;K}2bYs0lVP6qJD$%Fd$(8{?D4ogr%+#sg^sQSmm zpG;OQ;L8Fw8?K|efl2f@<6l6Jalh-lsp7XT?>)(Rx5cfNqYE$9_fm3a2`Vr)Pfn-G zy)c{p%A>i?D?b=TzxMFc@<0gj+ zh6~5cz72+IW0upJZ2h=yp7RpGuxWmn6qbvIsUFb@vFmzShw5U*70FXtazC-6gqCig z#C#oiG3r`3BYH(PMLi3&-tvT)nWQsVTu!&)jlzIDg!H&>H^|;LpF>yy-Q5r6SCf zj}Hr_x$W|&pyMH6)5W}N%3l;xq?k)^AX=m4!!ha#Paa@;9~3veok!ep!YmI5%cu&G zTXE~x)z(m(BP0=S8|0MF{>u9N4k!fYWT2OpuY@Wp*JBmYs3bfi1=G~El4Uaux^=41@>z!KBj*Wd6`O3m^Oz6 zzC8eFj1Dpx_I@YS#Q2aCsdIpJ*@Mmz<3!0vS;f4+TF_fVKoYfrUFz&S%S!?iysmW3 zMgmW)^h%7URvi>KB;>pXssTG68*>y|Q&*%bylc#H=D-|)agB)9PWAIs*)#mb-+k1q zEa*OFUAPGYz&MX_|41zP_Bfz~Z4I}s>S;y0j|E9nDEZv)h6UipgdwP}F>zyOSHg$c zp%bS7Y5N(TRB3+CP}qGDG$z zQJL9f#A797kIYnLugAz9Nme0yXM}8$5vBk2qxbvX?|&SQj`uD6e$PFw`?}8SJkOgc zHMi-p84pYNv)32U32+!p;s-7I_u+&alS}U;_L=Z#xJnzYD@*_ha5KkZL7F}bpDJ(Y zPTt~%vp|*?LHSM^<;1n?<`2cFLop@<6a&OLIn~|s{xy)|nCM^9B8x+TkTtB`x#t1e z#K3sEEV*d>#_$u2DhOTdfB@<=-_5*m5{m>;arx~Dny53CZ`eiDCfm;=>#h{(hi=1Iza+z12H2*JyS{6&3Coe3wb20 zxJEAx8^0ZQ_(;7rB=N)I?Ia?=8dEFH}iXtO2y?Ob&P8RJbE`vY-_wO!@fj1LV~v>b&=j0yFqQFYIc;V=Yb3fojth zef(=Dvsa^#95v*_fZ(Lh$q`iNd_qO*2ahTttEzAQBnpkhd<!dz-K$HsLylVg1*1-DC}!H7a3PBRmBS1v&7M=h!n8jd$m)3eq^ zdv7SkLdpT;t2)s4<;Xu>xOX1`kzuT$Y!0IA`Y!UA5~WjTnnjHV8Va_auh&6i`tIuF z+%@+29&06r3^?oq@}5wW22x|m7;nB;P%~#m*)d+Sl-~IxH8sodfDPi5t~aKv*YO;H z3?M?j$~ka8rL>jh(-+;ZFXd+)A7vz%GV-WCr9RN)M~h$qi!9=VorkcY$DBv3Z$C8k z|Fu=OJ?{SIJv9Za=ZQZ+-OL4UT~SxGpSAC7gE+K)o;l*ks5MU7B$>F-8T33~RgWfz zE(A=ND{9_6muX&SjSj0#iDdGg=DPl9TxBG%H}(GP|Msk4HaGNARF#{ll3b zEdi5vE~EGu3xW6gvpbfE#MHBb0rcotB1#p8jLBkw5iL&pAgkj;frrpK%nAWI!IZq^ zX8n5}0`=!mPMrdqsJM;4CtG^&;viw@UYs*iGZpdvn;FV8scbjN@L13b(cBo&#Hwiz-R= zr*d2<-VzspcEX1kz^fgS+3%!*vGpTx+|AVvsalb4S1$ljh^jUdrvO7R(~`P*nBh2x7&1=nhQ+~VBjjoZYud< zei5+IeuW07H8ffj7k^M{5f}%bp4v2}9t6jusATU&8TxG0#=v{6{wd(-57lFjzP7-a z5k#vSgVPqcki6Mu4SzO2A~j9QW`y_2%hP&aGx4j3v?_ry<86}*=#L1=mj;fkAQWxc zGC%hmmGVrIL&wvM+3tQcMLDp!$QQDw7I`s}pB?xJ-Unb}H||XUhrqhz@*k(kgsG_e zt~!C8Hd@I-g++G6=J*i1!lPj`#6*3stayN)lEbvGo

lWD`K!KcX;tWPz`|2ljS9 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 z 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 _!4R#69GB@JY5v*7?|0OWM2cCf%7T11H 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 diff --git a/docs/assets/design/multi-dc-cloud.png b/docs/assets/design/multi-dc-cloud.png deleted file mode 100644 index 6b5cfbb2eff1a82a3b6c88b2c8f6ec06679d5e88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 162694 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�& z1p*Cy1RnO?U7QxVqvS%q$DWWJ-yGf0WhDy7t0)jm{(%7#R1vIT!Hd!BLi#XszEcPnC zCnRPFNylI$7l+lEKC^!sG9w|Q^4AI9PrOk;P2^GTd(*wRfD=aD%NzkF@sWONUT1Jd zvtb4#*b@Z5ytEzWryd0ntSTwZ2ORe>s#95Bnh-=rAPT97ke&?SGIfNpEvRkfjYA)U zX%=+8)EW&j2SX*)Ct^uPW9$TbAJHv%#i~# z`QMueVWOlHdbV*P4B{K@JRh4DE=t_Lf%kJ6zVSY!bD9kVYzIBhh@2W50Y$53Q@tNx zg!wWKVaU*_5xQ@78Z}`INGoLHFj_9zJXM21mQ==CFk^_%vUQ9+p9u~YJ% zsm{CN3sJ_&Y#NS7SZPuVlsV)%lvNx;@;?8F#(5Zot@Q>%z0y{V1&lC~Sqc7XNp zRHWX^uKX2M!O+uD&JQYL*!~jUWB9|v%IGEWf3*!tCyW`#!`C@fWEHWpr50d~$LW9!L?4Tgu zho`FEO-V^$MZy&sV!pQ2JWu zGJ1mxX{@rhu&_0m^Nr)D5OIT}Ia8|q)U8iLK_(@GXae+0ZB8(rlHuLXL+}qtS6jrU zA)#`SNL5$!auqqiu_{*=Re zbsj%(++k_9{ZZ)93Ub(1*tXI2} z!`43>`Df}sJS+;~{+MRrvTXFh=Nmn_?6>()8q#zf_J;vPqgme5(lE3L6p7jm%q(IP zHS=aa_E8p$24W$|$SDg8tMS1{qc-=Bgf+KpJG*Q#s2NPEM)V_prGonJs~@RyqNsOSsuG8u}jr zx~muK0nl`L8hR;EE_6w=5@Tn9kCr!V;@}CwrZz6*@KJFpy;t6%5}^ehHQ!h{wTepu zkd+u?Wz`T)S48`n#_L5IGbU+Y>Hav;!OE23H(O?(Qe%W0@ch%oEVL{1DhiJ7) z0mrA|4{S_#ibo|1Vo+v={h~CzXM`)83_GXqit{NbuR0oSw zC%fbjuDgos<*?VpLBh?e(YScbXIc84Us-sN6nbQGY;h4A5czqz?$J0+7~`V&i<6-V zy%p!B%v8js>7>2{kN)i~qD3*GyrT!6pou#K?*t#_#ysWKa*u<3JjB^3N8&+M-5ux3 zADWrv<$$p-rZ zRVEg53at!n(azzWIDuFhhPGh9P}N1g`}Ri|lykgwMn;A>PmX6nr3FfkhcEq^->x4j z-eG`*Ul$TTw;eoM*--A=h56cDp%)|R50to@AI>#<(xN~j058Hhl8WWkjW|* zkYBuk@!7%f@DvYKyY0@!4c>+o*pwY?iP6rJspL@r*jh&>S%MA`i+>!$&~82*EZ}wQ zqgjJdI5!YY{8G|b=Jhiq0yCbZo~AZ$N@}%TJ=Xrls>I)u_Sc>X$G!2uGm+8RHdgq> zeSc1%(S)8ib*Bx%($(egg>#j^as0#A)8WW015ARYm^*OF{otn^QBy9clVenDYz3jq zm4(*Ia7~>R2K7!X2f0U*))ATnLL&J{A#fm7*;*Lm{$SuMYWm|YyN$!86cxj2v`<(+ znwewXp#|F&NR#@{6*jG*Syad^D{djoDL-5A3WiJgNRC45*M6SiG3(!TC?2Ug3@<1$ zGMT98gmOZ6Ossy-_M3tv=)f064Xv1=RNaWk0T{(!OEF(qu6udXW+@E9BVtN*hZ~vf zdz6nN;-W-mL+N*|u)%|hF`BAw2DETtqGls+wNZ#Ecww{Uz8tc4)P8eCx=!a(u@;!X zu`6kt8W|JM>x^m_+ztKXzTyra1+akBOOhrv7b>$Mgb{ zYN}VBcKH|C4DJXY1r0Eo4iWQ0&H;|QE5elpS6D=a)^Q}6hJ`JF^#`<86NR522<7L` z1yX(=XtVihafXU>Q$`XX?>90tRQH7Ns5p!cmM<#)Z8GN)t0N4=-(jHmR9^ZoD{!~= zv1A*c*>9841PTT;*3tzC-JF1&xemN`N0J0sU7*t3~kRr|S?QgVb=1gB90sRGOzA zV4&t16fqlwI^2h55Z2}tqe6d}J%ouH3%%iQ|LP4T=ns1UMn6LB^tur_Y9b(Ch!Ifx z*<|~SkR26umYS1Hrv&*wmW2Db~q38mhOn|cisn&Ya0gm`> z-50sC@@nB}e*zE8=v-6+=pKJ!cG+1SwLWS1&f+AH+(;4GU^kZ*f;o;Hs zNKO)qhrBHqG^M1ZFjdA8CJ4*8Jz*yyb2J#uLlx1jVu{3Px%|jP9}1#f)peUZ*%Eh* zEW&1~t~{jzTAbnmiK7Ui?9MAKkGV^(t%S6o9z+uU9E;=Pnc&ZsR7)**=?&P5l{Esm zRO0Q;*l9_h6^8jR4S#fo99mTriP@n{6sK9Imo#LtZgCOwGU_E9*w}a&x%)G~lWla_ zU~~@5TU;FVLrD|Xx*ZY^38o=w_>Mx5lsV$XKu0Y6bbS!gA=7Zx>boZk&_09c)dEL2 z!LOaL)uuaf_jj{=(EF9KGmX?A6C|8v4ce1ZPFcf6?8vg#pG0 zBQXJ!=yV}e6K_B1EI3|n_hCl#e%HRXICw2Cluh+a#aGl%XUuypEa}I5ZB%M-z>gs& zU?EOKg^u>xNHen=P;XZw3~!`jjU*rW#c_U{Ju!z0rwYhv zRK^J%e&CLYVe=;Hb6fm(ck-r+sNfhm9YWVf2(dvbEwX4!ygA%>4joY)gyR4bM>s*f zw6yfcTXegD@kh#7!a)VUE3mVNbA4j+HN5+`3-%&CKalSWNakYD?j2^l`+{#mE^3e# z^n&)N?uSL)4f)W6&EGF_zY)?S;6-HRviuOYsfHKCUMR_&6}qB~67yHyCM_aWTp2p7=<* zdORDfE1Jz%iVsSRB{T6$j$481vL_hj|hrH#QliPT1gXg3WNJt8w-mg@v~0T zkPaotVbQX_CRB=^s}^k4CA=kTw{D3%F<5sdx*6xK&H8c|2Oz3!Zx zE^i3#fZa`*<4f3BCiZ=iR8sNRd_bRYxorKJ1tCJNR$HEcj`|(B*!=7h#y#aYxzF-O zx(?-6FUM{QMi#lz|J4NPx_eQ?HX3+=70dR;c+@^v@IM&{&@xxenJXm;F3r;b<@02)jm3iSBWZ@oa<~roCKb|Bg!cBapY4b=S?Qc z#r~2ZKiFC(${FCs-5OU{FZzI#WJx6iJB&+dp;7K5{skjOQhwoqxj#@5wKfj)w3hoj zMBB~mM~}&w>7R9i044GPzSNB;%a`@I&yk*gdu+40En>jj=E_Va{wHbkJ2gax1OhFN za`i5^wba%ie9#PfC>vBtrntonUrUn9@J2(i7%Qn~;rQLpkr)7<+$t+MRB#g`?qefC zrIF6x=gMD?Y>3eeLi`1i$kphI=7^IKH5a?Gz0$>1{t#xY(OKGSFU!yE^WJ;;nt5cp z#Eh<3x|E#XV`9Z0@hA?p{oTa=_nV-LN7B6IaDG32Oql=UBKt`8iuwC13o-;ssfnom zJ+|ntheTN*SSqMp?{v7Ku>Z?-6DTOi!*rqY`S9U)V&i7ILdXpx+Pz?wLQ-|XKX$Nx zKS}athn2+*p6Y)aDFHLusI8lQ*;!6Pd(8roKDO~mTy&fxGIsw?=Z`D(D>+r=`v>s* zuO@H42pI@NiNZf)P$TQG^Xo4h(7tc=aC86Ck;wq=tc%at_c-cmO3dL=FgiMb4!krK z_MODiDe>A;M|oYo{NH{tLhP7IOl3;?V%|!={bXO*(<+tM@dI*~+7>6vH`TD@d+`51 zY`t@Mr^~W79NV^SPHbBEC->C|K~K2Tqf#y+ub$v5vO zqSWm^Jy8OalK*hxf2k}L%>P)3>)U@XghYkgjvy=nvuu zMK~XO>r0(ocv4c-l5#SEJ<}0-Yp(*u~O#e4lvKfUfiuq6%DbD zw0isRSehA(tVbb9&|kGXZeH&RSsF?P`+=zIZ6hP`d%^bjM!*Jnz)`5^QJGKoIRs$A z14N^%un08O2`m6L8`zzIU-t7EWP`?N+Ty*lUw~sBjtrv)nY~84KE@w}Gcgq{NZAM5 zdN}U5taNZ0UrGct0>Fhk{#X*Wx6}^9KDNK40x~E&=29s<=o+cYH5l@ag55`o;&{%GxZy0-%#8rfd zoOlSzP|o(6kTo`^2xJF)#N-s(dv%6AAQZD-`Eyn6VUq?>?>gg4EtgCfI<$S_dru=o7~5r+(O_>4pT0VGFW0ZhIt zn*P!7U@*KFLzO__%G08ZcbW=zF005rNMMm-7RnCn5Z!H?ize7`X9w-bJrT zI0Eh^Jo#E5^JD}b|1&W`E=eAzD5(2BBt?9_fsnJ68sHou@uLjYa`$ayy5|E>D8vWU zt(SOk5i%Al@X+9R5D}X<5&J`Yz5a~lx~IlnK*{3^|>ek$5&)anWYvQzN-41F|MuUs*J zm>2t}-(W%jMmgzIakM{gSR|$o*_R~(3S4q2Msi{?np#;4FAUKVj11?jEcxk-|Yh8HneM!r)l7WS5-7dAwRO+*SUL^VaJ}`>s=An z9Bl@cog6}jg+i225$4^JuvN=6-k)+>3!XrQn8AqD)irNgLejtT`+YG)W@%lceqB)I z1^W45w>j9<m|83j)ySRHu%Z-?v8C*v$sd*Pyum9u5R2i$i<|1lwdTu#t zr$ftrla!Iz?ZfbitL^F*l2Am(jPWG;tfzhTLbNH$*i6|_*Y_R%PD}d>un<$%XX+IO zt=WI)sD9Tk>Fy}k$J|(Vj5RiHaVifKMj9KImBHBOwi7TWqsU2rikC{5-=Dqfh^8XC z5E+(&>T{uB-LN|rEt~&|kPZvU^NRFs$=}3+xK~16^r(%!7H-;BBPcwki2$NDq#t=H z2h7Lp5r`TNA~7i`FQvXWUIbD}Q4>-@*&5=-GnfZ6!C}ef=oFU>y#HtCZw7U11fg}? z27Nz@zI|tX{n$Sx3I3e~G))%!`BJVAa3n0;z!Gk@-9j_sZBlt}hpSb6^3pLEk*;`1 z`Tq$X|8=Se@`I#r^i1WsYU=6?`YKmIR^Ypb(~fIVcV9+Xq7NMII>3FJ&fFB+h-3o; z1MlWu3e0SK*b%tsgq6YE`>GcGP@{`{=#Gn*=HzR?x{C3QwDUR^HzpJ9v!vW7r3U3< zb&So-46cuqE!S=V5fckFXhPUFUuM>BIdRlOJ>&rMH(R-*%ph>&*1Cn2y6gXJf-SqHqT*wa1==D8dsU(eAjvfdty-#0 zp#^vx$E77j>W1H^a#;cMa_|OF5`5yn-MP|fvq?}f8z?bD-LW$hUOn7P(1G6rPVU0w zq;s>KqS!yX6@zL>ayUpR7;tp+*F*;>yHmVQI2~HD>=;RQRIal=FGB$~<7HIg5q;UC zxc>ehm~+NIfy@3g?g-7o@!_oByKPDX$kk;-U5b#AXM9TObZaFp~Ef^>d zvfSJC=7_mh9(L;+BB)_*pV%jXII4{oT7>^^-BjMFVM#gU=d+$ZHh{sp{570Mhw1+C zuQUma*rsZ$OP@P#ZwC{P+~O*!Iqf0vx&)F1u4%)LB#fi`J{D$L%C{Dz87%N1NV2>e zBXhM9JBEAW)4*Uy9k5*8W?={Xg+Vqqy6M{ZA z6l>m>jMM8pen8>7Qwb#_f(gwxFIrUD5-ManDozeEy>Q#|E~6EC#E*32Us=f;ZAiyl1Ye~K5=O5;ANT2-#Dsjl<$AXq^`~-d7Hnx_ z)zbfPA27fiV1UKaPJY$^Vc{TJ0SW(MK_^OTN^iaucR)MO4+RNG`cz0FhF(Ie1)rdL zLNEMGO6jYGm&~W-_p)hqfHqw_>i;^G=u-Mml@vDENrTDDP~5w zpAaw2V+r4c`lH^{b`&NgVeETD1LYKlxtNzBO2C^pxX$vSaeJB9f8HkiBOrmP6S(nR zxlas`#0fR8T(z9d$i_qhtK-g&FHcDg<6d7Ox5Qu%C}2RV;U4mGYOor!Lh z&dW;|1C%xBt9*3yky|i!i355Q2@`PLs6UEDg^Jt8Ex}vmyf?#-K^MEOWRlQ zM<3J!+6_fGdvtJyhSVg*l{NS$VUSS1Ta?CB-kb;T)7lk^5XinmrP2Bm&or>XzpCR!5gGCJ756 zV0Cj?ywmNX!Mktn*LYx>icipM*_(_!LC9DIv$AHoBx5ey;e4a);nFJL4v=Ytq^J|C8OCMGsO`?)Z)*n{Yh@IW7yiKZ0-NQuTGs(awgFz1`|jV57ynT@paH$5b-9kJc7Vs0iUU z0b_{W9LmQ)D)Hhxc1}cPr<|If4_4>SWTv5!K7%0|ErP>iPnDJ8#MQj8S#v+RxDYp^ zJa3UzO-JHikC)d!+|wQEsG!58K3s>SVhfwZk24WHiwq1d ztEhmV{MP&LZE`WiOrv+jHq|?KJ-K6Bj0vilf7F-0^5X88<;_ z!*{JM2V8{=C#vTs-an-UD@293&hK!gZuA>cFPadq7}jjfFY5LcM&UY~Ry6JWva0OK z6^lT^!3pnrKeuB_A0PhnCqTXkw~wdEY~`SbAMIi@)cX}Nx1<79h}dAKUgluYv<|kD zjQ|iSzoQXeI+pV7Tj79FjS6n3hsOzkZFjKPfb^8*vSU57*vdSBP{Xo4M8Oj?6@E4^ zBD-%>R_#h;-4S0Srb_h|h=!JCYGxWj%k`!lmMV(RwgB_bof7JGeT zpf{iS<;ho?ZxzMT>=MqYl|%arnD%dvr`KmF@PJb-sJtE00w^ei;HV23nNcQl7Zf>x zBXc~4B2f4Sc21vM1a9u@*~y{&YdM>95zwzvL4O5(sD^W~<>@@EdQR~bO8_!_Xp%gp zO;Ab?q({|siy<7@wy?7sTBy*H+G6RA0MlqBdy30W%gSOzLpB}uw!cZc z-CMJG{ACr51~!UtA#S0Asf=nE#-Ypphz1i>J{q;(;W`f{DYfY>m_d2_c(ESQv{>E) zipWb;&L$z%9TgEF;^D#l#h7s23(H8v&#&7Y&kSEkzq&H+4LBbV(BJKJB%>TOyp*uI z+Nfk1OYcJRkl|UVT#an5r%Q!XwkO=zn2G1D6TZFt6!_#V0%oA?_#FohB?f6O5>r>DZiup` zs2OGm;k>soKzb}a1yak7mf-#TGq*Mew2h-HW&v2=)D`0F8!Ys`9N>J?7f25Bt4?y3 z_OgGYf^e(kP*2R)j&eie71%JI6$zby?x~!PD=fw}g@nJC(AWKi`TI8)!`s#-<}LJ~ zG>e~0H3sk>cPDLFN0vROcI|<4XLv!OU@-d?2TR25uh+n$!7n@eho63>g9z3hm-Kgi zkZH%%_2lV=iOFczeF`6kjOy;sFknySFd^U6;WYi@gp+LCs?gZcdMiQ5d7EyST2Y8E< zm|EZod))Lu_a^vAjY}(U$a`4mA-LA{s()p&{P{@_Da~y5fXDf&bv1{IxNC01gJAoK zG<4$0Ov{1mp?tQ-Lk{$X9r^!6iWP2dm;Zh!Ji#;ixyooPS;*T6`@GJTHS`VJE@5B6 z-S9`?Bq;FnXJg{7`UNGj{>jf3Nt_#QbWKvP*o4>fQq|yzgyANhv6BG49IXE0AA`hyd6CC+CUjpPqDhPZ4y=AO7U;cho^eD%fSTMYMBHPMo z^9`yz5qYZ8tVq>GDBGT4W+&Btb zgud^z?I0*QC8lgl=jW88VNr>Za)AB)6vY+m-bbmWL*wJi!Pm=*figz^&|&ZsNG}dJ8h$>$L^skf^eKQBp za<(}7`?n3ToURhQbePktuKe!cP8!9h3(bn*vwkJw%e z5N3J7pu3z`-!*RccwP=B2TGLmhr8Hy2EeDg#g;{Y?F~G#rYHxuf}&GjK-4N;?V& ze2HoMD*J|}S2aUJeP6+FR$3LE&VV{^J9w^}x~ha6q^MsY={a57VZ1>>sq&aV_V<1D z?d_55-tWP!*R{ZkOn?~qUU}N@dtB$fCvFuSe)tiTh1%oqAbZTDGf%AtYzn*)JrIL=l1_~pnK%k1=x8f*V9 z&mpHP54>QW-uPH@Ame%TI{36Qo7-=spFxw&ma$fy6QcSd>(X#LiNnan2LxhVRVmb$ zGlTbNAgk@kaqaUo)P8*i&ar?bDkgqoh_KA=gN5Mb+$ikMbz1#sQLLn+AVeEVPgt!B zebMLMv-zP`?C98>9L~!A_y+u{{vjb?23(*6^|Jk*8-`}Zem^NCq1KqRY~pmury6ei zIt_5unMFK|OGV2S&>e&w76DC4UI&VukMs+U8%&Ixgq|EB$|WjS@89zYy6*(_)xF5E ztFSj)+(`L(6?u9&wNTUtcVZ4kgm0kO?I$r!`e1Vp{Ds+4B<_Oedrbx;cx0xQY={SXf_w8^L}d~*Og_E#Tg#~;Z*7H>>G|A~;=+@e-IM+fF^vuy% zQ2LbAv_kDO8Kd#E1Hn1GA=hmxic2qh&jsE&<`N>J+~Oe*4)Sw$>^VBG@2d>NRcXAe zE0$c#qw57A$3!sJ0DX)0?>D@np)dM~)F^5d>OkvEb|B!>c@G7oHgN*q%H)jgtKD5) zzgb#ZA|WC99UYnHq_Iqv%Z~Kh8kCO&_vddNKCVSHSS{{cR>e+9^O*1JdBAr%kHV{W zI#a_$vl)DmWOWmI4`*~>u{xUdNLR`c`aB_fd;tyhT1ZGKA-rjugaVQIc*b$ZD z%K3yB-ba(e>JG3BU0%p7#1s@YXmlqm)zlROYmN!IRJ**dP6ocx1|_{I$Jr_s>OBn5p5* ztSU8?M@CQaR}()sxfnD3(J*JKp+mE$?87~;B(!)2suf!(sX_exeE@sDgc45UKbEQ; zFbUKhI?S~ki;?2?qR|O<6kxKF4B0{)@+atBX>)f_rj?caQa-Q0**04fe0;2oVoiw& zDrkDSi&29ZseI8AL5O@$%~sQL0Q-F0s;Yi^xg;TG0a{(G^7oyw*7h8*e!G5FljLF! z_fX#6Bf13&*So%j3q{oEGiMeg%S-|G5y$WC6WNxs)von%{&JZgdT#Oe^nT@LJxmD^ zE3FMy!#g)=|_S2rOx#eIIo*h@?TB-)8FK&vCxzKK#A63n1Xc(bI9B;?#+X@;z zx^KrLL(>MbesO5O@9Mw59r7sj5#;BI0-Q<6cUi5!iE6Mx@*Tb@K=*&g-HI6{}BSV&L+vi^(D9N@6i#o1`Mlnx) z{X_2JN$=R5IanGmm2vw@_Xc9>HHCV+Vyl7G`M_pJhkS~B&T~%H`N)?CVo?bQ z5_{JnsUpVifZ#Rf8=XHu*&0}wi)#(96W$LA2CTN_(Ip>-jw9ZZp2B!=}|L@U|RVFVWdn3 zlD>k?XYS3WoaE;h>VNu!rlt$1m6tP;4;XxL z3-q;f*Z6+=Y=;+Aw8GB(YLwWuvZ)MB(9Y@nBoq)505@s+#=f;YL@=nSf@IrCmifdE zg(Sz1R(y`t>v`D;>#K+26_~p%$0)>c%vZ+PC96)z8TQM_wEY;|UK3*4rY5KH1xwer zBLvJ17GuvOH@O^^^#+54WLS+Uo|%?V=|?77hCwR!ZTD7kLMuA!b9DUbkvY8iryvd~CBDuGKwJk7w@bU8 z7-*ax_B>;D*&fe|`c>t! z!%d@>P9xrv(c$cS(PJ!3jR7zWixClB9 z4b?A3r3c@`XmOkog_{IAjanzlnvJnct%-MAp2Ocx7uEP4Q&K{c!%8>#pU~_w{QhxI zZ(UxnzMdCiUd=X$-ro;$nnHfzS^6Uo@CJyDas<39ai!V49_jGD?+7@&V_x(O!m8#~ z(ha8wmu0o8>9o^F?!2cdZKU;dr%HGfTmFGtIiX zx(j(bHS+wfB12vXSX_G{r&F&5QQ-gl(j^9bj$p%ebXzqEpFb!)&gcDRS7FuIzU1Ln zTv<&e#Jl`ODxV#+&+`>3;C^}N`oL4`Dk+_@N8#dfpb&AR?`#>m`T7^E2~aWHON_W6 zX*Ti{lsOn12rD75L2NKzX+_0QPc4Gid-DEQ!Zh(2pYG4$eFv%n)x9AFQ^S!rNl^gT z&d6h(!zMm0^7(X(9`7A<`$#=w*iDbhB|#7VB3;i7rvSlBf0XS(3rAfTZlwW~^Lby@ z?~MVu6{5SQ#;t;L@TVU72nRn^3_CoF-htyDz{9z)cD2X1cF&cgqSXjg=P{k+qfmth z3`MFNagOJiEdB(4G3xF53-j*KwEd^1Q%u9n4OGC(tfO`(368rv`%

sBarLe5LKg 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

*wg(%uc{;b5R;Xk4eGle39O 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 T=DnJ}MSOG-hMG0%b`k#v1X->J diff --git a/docs/assets/logo-UEDC.psd b/docs/assets/logo-UEDC.psd deleted file mode 100644 index bbc938d6c54eb2f6e4c1ac8ea07c999768b934e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1481292 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 z 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 z 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âw`T&c?y(VP?c2bdSBh5~*0KiP$P37G{B@k~3nScdR zr7cddAQg=|&{|z^6}Tke(&N&B3&cIBtxmXLBG*x0+zwa@U}>?bfCVV5%o%kW)J*-& zS6YBdqdSdF2FhPym2FP6LJ4)XzNiVP44_gmh7(GPt7&(FohR5xYgIj9SvDyzH4dl~ z)TSLysBl7cHI&o>l|v{R3jFYZHFP?mBG4<%eYnkP!14%o8L;Dul+%6H2^I;MsjI2% z3Q#tFm(hUvDy+mA6-`xk))&#RT}UE}y#&-T++~*&tr)6OZL2OQ1*{mbjJS&&CMDE& zJKj)SDw>Ru;O$?6nuq#U3sZBl+(C{W&zSaY8fDwR-I8%nc)ss{I&ac2PYQdprg zDxFa6wS^f#)qt&p5P)QbRrfoQ%2cP(kS&#@Thf zoI$0k%A5KkK%K<=Q4W&Qu8ug7Dks#{hLQ_Fb%9ihH&6#a${BQpKpnM(VE}cb*Ti{o zkd)Fj>O=}Y4BL2Ha=rS^|G(She?vaK)# zm;oYl5SV=mt8#{5jqgln;VD1{iOc~Gk+RfrCo%}3^cDvJGEBF%50JeIt8qqP2ak~} z0YHpE((!u*BHtN-n88%z2_T>s^3!&6gcR32;ZzM=VzXUEe!z_5AxPW>%pMF>&Je^< zhAVu5n6OEiu{$|JN>eADs31Z#)p!(;DO8la9gyAV8O{hSSnn?O0b-h%-6jwP&Ip9c z#;Ux4n6a_+EgT>v_D(s~f*8|GYk>@iifWQJ1G5W~b%wx?Jy>=a2$L-*?i~TJIRoI? zooYA;0LyrrUzQTur=9A6!?m~g09jS}$({i0L

*X;+t;eYSUOrrda3=72(H00O67 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

`fS2k=&6FmZ*b7Y7w&lsz7m_-umn_GNA#MSj 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

  • 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 BOkV&1 diff --git a/docs/assets/logo-org.psd b/docs/assets/logo-org.psd deleted file mode 100644 index 874edbab44fa43857665f3e2fe632311da1fecda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91042 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 diff --git a/docs/assets/logo.psd b/docs/assets/logo.psd deleted file mode 100644 index 9124ba0a46bf27e4e967adf348345c2f64621355..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1580295 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
  • 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

    5;60=j=tw-kFE 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


    nAWgAmNiwATm|A!@ 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

    }Q)A9{RS$9g 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
      yH|2$c!~NL!P-99>D7$j| zf~>(BDau=+`|Wv+3I-K>m48c=dZei8ZS!x`>}J|YkFKk3mZGHQ#NVQb8@sH3HjA!c zQCC0zb!K}ThD}so&gZ{8=Qv}U?%C{o{_5z3yWqY()8ti*7?z ziL=g}``@kl+Rl-l+N`f0)bKX^wj-ULk;4U8G_Slj1z^*0kY_eStx+S3j=tsfRbrj5 zU7FO89XtQ-v*=2BxlJZa*i#!4F-#`=nvHwEe)GQbwy>xxpa1$;U5}(~%U$!baGkJ) zO__DiA7eHhHZ_f6c`8lrvmcB5;Mdn^mjJqvMP2?O;0RjQ>I*f z&u`v%|I=k_eDPD(EnD=#pMP`jHB;%nXL&ws`sRCm_eR}0=c<|74eacx*WCToALh@0 z|DW^U_}xQ4n(jqu{iw4pxn|C7-g`Co%(+&$Xv#tW*0QrTm)-UBtMlJ^Z~ot3di?gw zqmG~QApb-6hE*~PB@_NR^80X|gnkpzPpCG+KS%Tvu9MJjBKir{M)>E5e!_JU`b|VX zq1p)l9MMm>PC~zl=qFSg;h!V=3D-&JHxd1WY9st}L_gs=3H>IbpHOXte~#!UTqmL5 zMD!D?jquMA{e@emmgp&E#chfr-q=7-35h>V9&4MfI6s5T<=Lu5Qe#zUwEBI6-c z8G9E&;5t$z%;~_F0LNyQ>524zK%ny)wKuAY82vf`9v{_(_jO6QLDceXavRJxrutHo?K znapO3b;uTDv)d%Q&mlQ|F0cEbXPU?5usa;?>ZWe*2362Uq%*yP9ZfYJ2XIYhOC2!l zY*PT@bh=z_cdBR5Gs*36cp7>WQ~{olruhci>njP*Y_$Qd%@%DZG`Bm>)9s0J*ely` zTYwt18Kfy=-HlZaE09Wn)Q84KIS6UBr`@A<*(Ok4lq#omEzoHO?062WSI;l>m;Z0+2wU(P_4J4!4C#YhZzYh{djw}gkqYSqN$YEKn(HB*!KI5Jo$nD`UV{qhB&e;yX0CzsQJdg! z6+k%8BiIH?R0yX^+L2nTr4qs-9_@1HLHY!A-d3tYIt?9OZMM1~on;f8?i>i`dIWc! zQHAgh2v=FGb_nP4M`uAg%TuO8beE(ZuC`b$5Y40K9_NyR(_5iJcrSXo)?%%Iu%18n zD5Nvd(_Fz$rwZW$sLN?S23ZHm zra|_QhdI@V7NNlnX6q5ix=3~lWDj~+rAx(Q4U%TSWj+K^4~eF5QNi8lRw0XfhFUDv z1CXsE*(Aswz$DP=Q6XC{X-2C|dm&pxvYR2hp9V*z3R#n+>9bpQL$;1&H$iqEWPMdC zWG#}=V%Z7N1`^!}(LEkDa&}2GR&Cx6!6q708@M2AsaEkwCsgb-r$MxZL}R(A;J{@( z%D$gl(zIKxTOiwJ6YQ?FklpQJxDQfUv`o7>Q6q}G zB}Y8w4G`_KG1oFKDL4lkR6Mm+()8FZu@D`g)_w)q9eDHPMIkiYT)D#;<*BM~8|dX{ zmT{eHvqcA-A!5H2INLp}wNaJ=T`_CPOcAv?<#j`Y90u1{jaHji17{db`GUh>bT`T3 z;I7inoCHyuX>9S0aF`yHEyd=8v#P^LT#Zv5-bjuVA~=1~sPhYP{1*5v^4 zQkxcW5WzXpEK3GA@_F^KqEOQ3QO>qjcY|AtJcQ>h9%9Q z%e)i-8k^ny2>{YC(G0dIuwceDqQ*4FAx0%lht>K8Aeif8&VacU<+E3df?&=U7D@m6zTpk2kWeMQ!&(W14D`KOxywyr09?Pe;RW`VnkdN_f@i3Pnz}O0?(YsRm zSYo|`-MSEq1Q75A00h@?n=A!f#g?~H6h!Mv=~GyVRx=iCI%r^w1Ej)8D9T$`ijv40 zS4oR71=bpUKv+i{MgtIn!`rUJp_?#-oT1gy=aP2NX|Q^M5{t1g%t2B-tWF*Smu(lX z5`7{wt(M^PcUI)X=Z~>%pg~D1wipjE9EuoCt3)yF#x>H{(xf3zZe}sxfQTn5{XrO9Y%VuL<37Kt)#8}QdUetYX;Qa2 zQ_MFHfXgP*EUh48Jjod0xJz9gMi|aoLpWBQv|5VxH5)`RyQ~jD3Fzb=j*|rC%ERC) zL@S{PS;K23oiur*Do+$Mi>$rCNu*|V2Z8L0K)q|kQIS=ymDa(Zv1R#0;e@FhI7u|M z(#kf*lLUu*pi8!4bcdu4K*9;{I%xx5z1C7M=#_Q?DH$#6;6RBmXNowjI&nl~P3xqM zm{x1^(aHi#2VhdEVeLU2hZ2t9%U?@C#p|R^G_hs_D7&l;KwGHGXvrPpNu-u_%eD-+ zc-F2JhcO6arOlX<$}`c*LTf94wxVGz9A`7;X(bq8G$U zYFTp-$Sx0ryH6d2BV-P(mr^m!x^n@PS=FUE9BNk0*)0?;1lr<&tzf_{`>gt6QWgi{_T z?Wc88ejkjC2QYh~o+=I#?~w<=W%TY1V!z1xH%bS|ozCvV{9NG%$UYl$R|dH_lwgFR z%s9evY?Lz4rna&k8qO}@93Un8Egc%=ln287@@B#jvPa{kqZrS11pvw}a{%ZdX_@wQ zVm$F4*54IGsvGoTiOpugF?ANmyFK=5(UZ%@)99ptI~j7^e~p%uYPvlx~tv zz-9F0cA(EqfH{KhvISur@-TH0tBMzUV0IFueB3^4&g_7a%PRnLjCzaquXw8z=-_tc z;jB#rWKEC?(X3`e8)>;5K*tHl!htq=7;Y$)d)I4Wc?buVXR}m{v0Rl0piF}iKq7U! zISACL2-Let?1tspER}G}(@NvH6gZhS=BNn5G|I!&!0sdf26iV=D&uyi83u!Ix@V!= z%Y!)8ia4zaVi)XAqJ;ZxVRrzNSyBu-*?^&~x)@KKM+pQ*XEUJ`CrV~+begD9ML@~H z;4uctIOTDwVRAN$oiI5`k`?R8^2|nbmbDNtxqvBE4Fi*tNI0e>+z?MDr-Aya05~Ur zLpz8u9`w0Go=z1k4#B|UB;!hSSe%@C8io15$pel-H4f}el8E=folMu3!`{@P<1Bf= z$;V4ktP-aZ_J&|!Z&IXcZf|PvZsh`|05G(*sis+g=|~dWVQx|++|dhjQ-dZNa{!|U zOkog4p|d=&Hpv8|Pm$`mwW&s*V?!#&RtOk<5XL31WWY2ei*2wqsdU3LY)vKgc@|)b z07F}@yitlUur(=!Q=Tfda9iVnZbZNo114W3j2qS_MQnw&*&?-ZYvUo^Q1r+E7}~;B z!^SPa+N2VWV+-!4Cu`#(ZD_PMWe490}|Fat)d(AqbU_gRTxZr14v9^K>(nJ zbWtmowflB+v(qGEs?V{c0H>Pz|0IyYg1{uf^6UWxJL?A{EOHt|n6MMpWRAq#6cUQ@ zU}aG&zp|)+?b#=4F}5Wz!a}D`tfGl12{<+A|J^~H9wi(YpM!j4`=ou`_*9Fq&H2_u zAl0J(DbA#3L0Jy-lflRJsC0l^pGpxPhdu!~b?CKp^*G%}`M4gI5U7Lsaf`KhLpA}Y z9(_i!E6%4@et}yC10?ccJxFUfEOne>9jtsja1bT2^B@=p>Qe-2%I3qmPdXN`K=trm zH*z56-oXiBbHgFOCs9Tw=ma0uJ(9>xkVR||SxFp#8lhlcSyP12$hjZDqRntW~iE?b$t8B;gd%yg&i`` zoZa6l<#9_?%1v!7fDj$B^SB=&F{k{F6o7h5`IOx(QRvW?Wgt(abR7p`?yUhvtVJHD z1m>umkLpIL2&1~Sv=BxGv)Wn!wL;evOyqlZ4xb`YtC z4InYM{4QdN1cPMb1G`2-j1dMYkNopY;~F5fla@|GA&pFKeQAI_a`2&DMawzZqg)^{ z<7y5Br<7B|wy#5ezt%w3$is)WTSE8|)+mcsLZzz!)B!Ce2Z3tkfr?>`s`$uuN)~R7 zL|WjLt^`gebVM;!+RMh)uM!Z1g6Z+aw`u32StSHY`fM22M9rL?PZ74?+%h`H({) zY*8y8+2v9tw?zkNKc{#ZaC)Gkgdk3nB2Gg)AK69;0ZlA{_R>aG(N}&Pw;yK<1&)<~ zV2Zl=$Tmm_Z^9PsrtP=FFM$L<&_w}g9?q$i59jD%ir~<|5h;=yxGhTO`-)3}gQ%r5 zp5trb^+5#sB7W)g38bI^nc=OUctV%ximoG&RnzF^B zy0L6p<-s1MP$(eB`Z<6GZOl%=cM4_-&QW=!T#5Na34u^7h7u{jk!@M*$KU~c9uTdP z4~WJ{ecS*gAm$@vnHE8O2wlFOQ`k;jr6fPV4NpA0D!2h69v-fd4-dyk z2z_GBvw`AgndP7Q#d!_^MX3>cQ<6vA6T51$6vH!q0`U>BU&o)0Aa|pDkUK{5a?`RF z5k$j62#|Sua#gRIX@)wkp|2ui}$@x42GZc_UnyxmNHe??Z%KJ|RfQC-x38mgWZ%{uupDc_TcX$UY`7 zjTj{+^EPokUTrglf+5YbPIw}dTOpBYJ)go`#0~Uj4ncY$cC0=AhaW&>T|R|sBcHY# zA}?elF#$Q1`q-t4lw~fMGwRm;T;_dh$F|))hVB2 zh)^QtW2?AXWcd`>hPeA1aaJ#%-AGH>sywrpNaK~n7vl{b4LtoAR41QVxra~36=D*p zt_$LyqvJ*b;>gT&_~hmHW6-sh8X?b&6ibJ=D=1D$p`&KmH}xQQ>r2FBxKR{C{{kI1 z9C$hsQXPXPS@FYsYAzO2FzVX<;_je$7CNq{LRS0;ci;=fRI=kFzXXpT3Oqg=J=b0? zD}S8N&-vmOnqMh$4|yby_y3g zbB?$bMy5kQLYSDf%eHS!olbzrw@&0}s!Kbg`^70(^@!G%{uUdM^O= zB3WsK^Ds#t6n9X|NqiX|-WL$pBU7SKR@}&E>HXqPYB}X1KpYu1{-+nA+v@eQ@(AC- zz1{*mdkJ*eUL! zAy4ASUUT*Yo?e1Cu1o%$0(Mb*u#372@f*r}fV4X(U5eMe|AZ`e8&?86=EU?k-*(UB0*@O-aUTY2C4^UDlIaWxo6+hX`7<#H611j? z`_W(4fHd3)|D!Ev_Q-LiNB594E2ngh)p&GAK-fl&KB^!rc(b;N2QWEP9tWh|L1{Wp z)FywN2;F7bCLTl>)JoE8U|8A%&vu~MgBh~V#!wl^+AbcVsg;sHAnpo^(_yGepZsAc z1P9*83e&ENP2 zG`@bPtT>WCMym6Uh{wR5l3I|{X>SgQH$r@PhpaeuE@2stiN}e3K;9XYZwC9;ZL;#P ziilNYLY^5YwH1#?=9`~=E6#CMdeda(k&*+mm@SGJI+RSa9?EM9$hU!h-xgVM>?wO2 zi*iZa6c9(god5A15N}D56^BEDC{n(di8q#Va5g}BjREm4kH%K%OO};C3Wvm%qZhNt zG6n!#L4Y0{q_hkr$^u}wA3K>v0AS^my8{C5pnM7g?K2jj<;bUrhL1$ys)TlwJbs!8qsWUig`2)0uU}g#Alu; zx4pbbFBCPcl*PcB42vQUFj%>Pv#8}9KKD#^S&W5xeM!f1S%74|D610lVKynvX%jT* zhxn2@qQc=b>)2SBuLH-pt7lWb!(*>oOfsoseQ$a79*;rIg1EHfq0cR;jc~kK);g|>~ z2@R{{4YLxCsie@T*A!QI>lARXqg;5hv_4xHyVl@^xh1#@q;0?H!1 zy6#+`SW44y00tSr)b$?BftIo&gI-fo@2gb6!2y%8hC;wFLoUc5Pv7q0DAkzCO(mFx z>_aXE3~c;%2<4gO)a3yXryr!ArjhcZVj9h@b_EzZZ8PA^Hle>M0S{D=iA)V@B9yYi zB6PQB)T)T$<2 z6t$Eqq972^XUlS99hv3lf}Ch-57Ac_Q zqwGOLxzX95C3WGo^qfFEo+l=PlG~3q0teEV3&r&46~GFRaZozOgP^%m2lwib9tgXR zCT>BmJGq*?XrkGWqi5Cmig?U}uo|*ycv!8|ghXp*pnON5Aqk!OO@fD1UYMg7jKg^f zaC#)e4nmf9AzkdHxENnU{q)?LsT?}vM9G=SP&NZAC_Xh9<3~>&Qd@_;J3Ylhet~( zU<=o97=B#<&P8yGsRN3BO_SsRbqmPu9IQ5*xiBYt*ng8PEQjp{MpD!ifs z9Kz)N2yY{?%|zM8a2tJ?T?j4>1H=xvrGPUP4eRsK*qUR?aE=Bl=4JSy z90c_hXEq2Z)_qg~shDyT>UiKCWnpM8=ZUOfh2sUwJzoRLQq-@YZmydi2yZ}630%w?MzS#y%*?_YWFQ%be zU!-T1hZK4{QYy!wa9U_W2auD1R%6$=v{P?@#+wc*BbC_sxUZJ5DL7WcYv2IM zMMydCv0J?q=A3}mg~1HOTB zZ*Zoayu$5Jk`+j?D2Y+rqA%66fqe=;8a0d1raUf8HF$NM+5M*+%+IrT&l4e`--N}B4nS!s<2 zESxi0j-xz+y|`XqK~TFDp;%)9AK{%6w$X>(7FzA%P?_BVqy%(bS*_j#BxHEXdvM4I zE5=%_ti78~_25J=?HT~cK|naV}iWwD$raCjsGv zqqDS1Z`QN^oytI_Og_E`Bm_8c%9*yH0E9C%%aI5~qp4DF#Q^W#p#W7b34@u(X@qwT zNr<)J$Te-n?Xa1FlnP2EZoLgat=koWmz_HCQOV1sn(AAosvoQlWS2k?^LBuw1Ft zv*Jw(I0)bjBN)*vvWgurNL6M+DF?<;4>RZM>!?x67_5>X+8Ep>2~C!TIB(1Bgn>x6 zyDSeN$eB~%f%7BY6CvkEQ0e0{!f_A|Lf)>D6Z(2|)kZ}e*2s^u-~b7dqJ}-@#RP*B zfy=2Dle0LNVA@r{6w%=tp}@CI8l^YY`~~5-2nR86I~D{DdOF!FZ^xXlKm4#yEkEqj zX|sMwFm8g$_AqM}p$w})G4Z2E*`sL^^3(?1=4F5>14xdCnKJc_(C`KYDlRfRgu-4_Ffpij=uakLjB+f@2kNaFh?H#8}4`%4fvOxt3sD1XF;4V>n7M zttw#j`~+PgouGra7<&>0_10X)NAxWqvrd5w&hxeN^L!2bJYTQf5=Ss@B7>rD&Y}#0 z=~MwzMyCsfTyH9+pu$m%2aXXa2!%U~4(nU>%&=C0430YX^P`TQ6v~H%lbAq9&+P<* zkhr7h5W%#ofU)y~mzhKS;3XWyB*JkJ4wca>Jg9GjZgdKCs>syvgP`VQ${2=wm~s+_ zg5-q<2&Y*Yht(ufdU$s-B{0J|+(Ix;qJwC;qj0~z9W%um1v=GaXZSf;13xDV-*6k@ z;Jof~UYf9QAK}y}XW<@who0G2D>SP{VmbT z)8}vo4-txkP!Ozl8FuQs^sI2D0vqgncu(-t@J4X@pXv0>#AZC}fXrq9ZtP19MNpI6Ta<82w2Y7rj&*r%nl{k!%dF zdr{8oUcdz`0!|6YAYZ{*l&bGVtGvoEC{99$5;`{02`-ozLjVPN3vNRSP;h=ip-m{| zq37j53VAsYxPC_4e!L4rrjmwDGQm_S!8F0b@aiOpx$ebg1i~vJFsvepP=-~Ylu@x1 z7??N-(N#EpCW3Jgn=15oqP`Dv=rV;iHN(R2+ASWc-2&gwauTE(hjlg+h(!g6ofneH z9O8v!dhDp(8RSxf_q&MWv?}4iYL8~~!Zzmh5`wMp{hWm3q&6W%!(Eb~??-q0lz~{y zIy$G(y>Q%t2) zRq;Yi*m7tLfnmltLMc{(V&!F{vPO8>D7b#j1mmVgHDckhfnY33FzsYs2#49$N{F$d z@MG&qm?r3EJ;Br~!>~$T4Xcl;YQeg+p9Dc_i@TVk3@M>>kagiTzKm4ki?$lNLU5Qd z7G#zxsJBC6jlAAit4>-2*dc`8tfsP-9#I{8xM`1JwC0OhulBf(KD zN+_K$EW8X`Bb8yJZNb3+2r_QmhP6bcUImDW>cI&`aDWg_h0iy95`|Uh2xLeJq>GFS zuPWEITKa-}e4_!7b{tb%1CS*OitUn^hu6n*^7?okHmfgyfczhK@f!UQwxm>m6s{CC zVzGA>Rq2DLcM^k@uO^5pC5Uc}l1w`EGPqJ&h|e|5e1LaMCmOPfAcmA7c(uYD*1G~p z8CnS*-eC^WMJ-vSAI7}>g@QUj!MazVJyp-Gt6TJw`cZFWV|m_Jvgi*NDi13=8YjBs2^IBlqN+-x)K zD2gsFH96~heEzON+!XFz5eMssc`aO~AA?yOQG$!%wA;8-X9!3$<5v)7Ws4M=f56vDBX2vBXTdz(Q(Mz~x&VX4Q#!K~uUc!?Yzsb`eQ;sgpMI2_6L& zIP+2LZ!N|~+sCS&jL2grxg>t~XpDLb!XxU0jePNrG6CGT8uPGn$X5AB?l=Gab|#$v zUrM-3)f$lX;`HNU=ms50lkm zy{1x9DUIME+@_vyq>Z0rE#p%uol6sTUtrlF;nC>lf?>7N2ob_d!bxGi>VSADp55wI z`E0}mF-6lMUGf?Qj~&9!F_pr{xmSc^vV8d^c>W*u-uu0+D*YE-TXMq8J?Eb1`~3rU zLP8DIP9eS8N9v zhe}oWgpda7TPB`C$sTam{h<`UdrX`e`G~M&CK7Z7Qxt?puhon@NC*}zf?#tXML~G* z{8eyrAP~T;`2ms*{uCwQCW+R;c?iiONV3}Y6b0dhu$$nbUxpAPt!6PKQ=JG%7;LLR z#YadQG@75lwvMXlq%wzg!qnCvKx#Q6z2G=m0$CfCnMp-tkpCdO2CA(hXrfXClrZiOr>32WBCxKJH}R3w*CjHIc;L!yXeUWc!W1q4!&#fi&r zE%zbBgqcE`4QQ;3()Uvl#W~AYUG68*!jNVomLE!lPel^Nw%e>!>>J@I6^NPMf)%7J zLW%6DNPmlWPwLI)7^GQAP_q@n#X(9XPeqstmOCoTQBJs$_8N1!35oNCe$63-?N<6JDK<6n zCZT80QCA6h$k*D^*ictvt*$JpLW;DBl|+r#jQ5lv)ULM46{hsT)WB~3s~l0T>&@1! zh~0l1?}6@q=fUN070XHN^MZ1$g2s6X_;Cxp3bk!UhEH z72l0)SYWLPt#r#pJ$Ln8$XXy=a)*@enP1QtZ# zEaJg#KAGP-4=i}ktgXe0@&!Ik&pd<4+T@K~=o-%pJlSaSDnaS3FU_@Sl!X;d{wrN0 zd4S}TV^)icDR*Ull}4$rYK>{SM)CovT@DHU!(gqxT%*)gxMI4lfkFU^$N|BN*=D9J zc70tazY81;z8(WuC^vvj0@r5JI}VFbhqXNELDu2@y1*^2$SK*TjFZTh+bV9=wbxFu8+!Jv(*=%;77(OJm2Koe6 z0UVvbyo-jBag!2m6IgAX=6@BGRn|5%wzM?bYO72J9g;E#hbk z!d)r294oA%b$0M*N9=sSN~>{hTk&1=J0^f%iw5ah%oMbP`(tMBYTnB6!OC0)7?e~M zxPS@aK32nBuz_`O1En-lEO4!Q1frD0?h>X1#-Ri+wR4e*7-hwGWzyu@1pDg+Okt!z zP}+4`Z{c0E2pDD;2FIU|Vr!1B%(EPe2qIavh#_yJt=g^TR9=`hLe@w|;4WlKAnUpt z*(j05F3(8&(>wie6j9CiaPwWtVt2`DBX=oW4AOX)^{z9*=nI@#M4w`E-^$3 zdKyYCHBFv~LAWQ@X0NX-FD{H0+*4>Qqu+-8c&Abs3%2{B9;LS}5TTa@@H(vD*-$0^ z;UD6E=ne@Rh5tK9juu;8y{)mO)f;57`H7j;bOjHd~dBh*?OBv|5cY4$1;cbC9x%d$ikYO@_QSO;4@9*iz^4 zx8Z@-|B88S6(t2oRn+Adl~y%+5m~lcQ2Of2bVyOjSD0*gK&(f^Rgc0MUQG{ep{cGl zyg-_;8-xR!1QrcigI3mvG7c^}0oDAjN-*kCPlLI@4I^);XllPKM6B)jOE3D+Y0@@o zlvY03M-ak)Rkpi3Zd`IXpKS&<0m$ zV_7b^=qp{Z>q3O0lS{E~N9yxyG>U@8D7KmYYMm7=v9wXTdRt9FHHcJuBY3@$MLYo( zY9ZUN!!nTP3le)PeFN<2v}Z-UVW_^KLFC&KL)3@Qs&7V6sX||i_~jdhqYHg$guHH} z1p5GZHkVj&g0%Xz3GRrsjMnQaVQlS%~ZAkejLTX;H zLW@0e@OIwl1DsCl&~FNTGb&J`YKPHAvHInnAEjy6gLZ)w?U2}|7C?D*3D#JWTMJBB za_}ZMGV73!uF%%SuAqH&c_nC{Et=q*k5>(%br>+F7d7RkzDC=Fm8e4CM^O^*Y5bv0 zUr*U2r9RsAbnJY(=xNdly%c3wf4>El1j^g<6O2Px)95!kyn4;q^GXp0$Qk^|J&HEy ziqHYf32mcZ)?&-*EksJG`F6rViXO_Xrf#*OiVD}FuSIGQR}rF$b25A-H3Q+pp(<@L zdeMqyGp^NPoKFf+prIa-#u0Nd<`c+kspD~I(U`(`@WqCHh){%Vy%rg{w%ZA#)!w2? zq>yliz(wE{Taj0V8;E5xd@&EB$>(7j3KKNv6+&m-g$c6ga3?B)v1)9v{e?!vhH}~_ zR1685^QfowUQ`kxwtnoJ!)3^-_TEkw@z1duZ3SsSo)@|ltJ78^Uk@*_bzH$DG1NBD z#rZRt*-&`G2fT}$?Rjy1=wZkID1XHX+&3V|wU^neX z_acD01?4#Ev=sD<5?ErFwzk7=!1}Rb|83SRhVjogk&fn~Fcjy?t3Y}vr*B^+&C&&y z)yY^Mr)Cz51k*|d!Kp>xYCYHydvXiG5ao*Spjp(cp>AykTN?IeG{BdKIsw*OIi^_w zky}n`sq^O||4C~>MlDP;6{D2s$aYXHNJjA(wx7Wgk)pCx@a3XU^%2Y`zpelVlGEet zz=eyigCVDN;f*q)*Z`Z>o`;$Uj$0`zt%6-!MoFKA5lp&T6Y`I_y!JKH1f#fd^KDL| zlt+nRsYp;!8Y$4Alo)1Eq)<=k3#L-AGhCy-%nKOe>}t@z0bIkd;H~TwRtHK0V$Wd4 z6ssynqBi#JR0=d%=V6~%h|a4_#_b3lYRg1!T(PAYE2&PG3-$6s&|=fXbPP3raNu#2 z6V0pCp~WZ^C3a#Z3{JQZH1+Mb=pt8)>nN5R)A=Zs*ACsa)`(bPWV&<4=sIb}7U+i- z4<~m$#}CudvK*9aH9d6Y^{xJB6eZIFZkr_^D^D?Ik;AU(VXSWPhGO_H;WlS&2@a81 zcl1#Nc}I&Iu){K#tqo1FmY&TxM59!li-y9MXjeIuCsu|M9_E|dW!Cg4tZZ}#@V%a~ zkk5_-bC~Qvei&NS(5UI5H#fAlM8Z}geSwoI*-B_%JCxP?OOm0i1>Z(Lz7c7y%!9_Xn$WODY$@tdS_u)R&^<+o zfDHhy%KW%B^CIr59TO#50m@)f(t-!26k%IIJLzauqCthYiETx38Sl*v!d6UI6KD~X z;W`}|MlI|b*OrT)Odbbz%_upFiw6`F+aS>*Ko^j0h;B{NBy6Pf>w;hvvl}rx^TK8{ z2~@Q;5!^xgi}8gTY^U*>2X=t=yZ~h*HdUfyVFyhBpFFHSA>2~m zqc1KunMw^*C{`Q2xozl3JS&Cl-Ebu?Agf^UA_dUQGQ7qIWp?0aRw>ggD+bDvtW_8j zeNz<4$}R)O+)Ql(Ut>Fd6SLBO)>V%s(io)H6jk9z9lmb#)_@Q$I-rO()EF3|7^Y`A zot|o3ksuxX8p?Au#cem)57baG2ayWz$^%F)s#!7%HU@c)CV}>KRcMQk>Mti#It-By ze^b9L$p~REa_ggb$~xAlLua`xXbeWB8m}0!MpWD}h4Jl3X^3)heJBY5Zwg9A#ptJy zsC_XoLR*wb!onE_SIUS(RzzLSn_JNU%1*1G5CSN_#u`w6#zEIMp+*5~PYVj+vQnv5 zU{aDdrD=PTR-pS!{OIX`5!?&$s!oJLoa-!y{UOUAtps&i ztsLMPrGrEh`q&+zobopMl?CR?6h;3<3!~u9<;9=~P#(_F2JSWJ1AnJ8DNcJe6+#r- zC(@5v98-Nny-vW@Z!>;s+bq%NxEO3EBNEw_ggLrc=SAOvIkUxyGaJ6)h2^b9H&sQ6 zHhzO!e5~_jG5oD3N~7RSkghGoNa&pAn@GbT)L;%lwZPB-Jh~C9u0_clhJ~CeGbNv^ zn9wl;NEf#4PC^=8mFtCJuSCD=F|H9R&tO6SThLi%QcUCmfVRnmJ!w8nqX8GAc=U;A z)1FV}|H4ZK0S3QVGm%y0n5(^a!j7 zpEFDI<)TGR=w&Mkwk2g;hckyAo$RkhCqoVJ&J=TF`eHAjz^Md$UC6F$)>ah?ih3f; zX|Z=?wt93Nyj?f5W$tn!OI=wEvSpxXswT2_I#WgI&4FZ#4yKo7kewRb{jwMs=X6 z!|LQGk^$li3x?mhr1--7;{NrM zM3XfY-^3CoCm+g=2}7m;c(H#IZikk>Odh zn<=uU5^Qe7sg0(x3NZAG46E>yPl_PsSUs+E3!7u7r5Uzitiv_vMy#t^I(Jn9I=>Lh z08!L|qL(Pv5k)Kz=-|#2$+Aa8j>N4B+tV2K;;f{Cx)GC{HA|7i)m#fMFctcS$XN-N zxHX`DbHrIPL*iDX0COLEEieoaLn|@F)k1#cR*ERuNxj$rI%X87auF?&U;sZ^r3m6O z(~~bAbAsok2{wVCH9@cx1WB2Qpb`H>IW11y2_z`eE!54O$gCnmC;qq;46USpNJBzR z0P4*$DT)X+2$tZEUR&9IQIaAT5`ANxIJPG^mgAohoG5?qMXXQ8g03n0@V7=#EFxYO zVpxoy3Z)n#+aGt4Rk)b*UY1~}!#)S2JyEB zoIFDKXQRll0t|Dd7}7zw5QnZ3Jd&1tVFbYjjB;BCzXBn_j&9{|Vu$6jRNr;~MHB2C z_@`fFSBsxe+BCVX!O=HbqXj*K zn`wZXh^iDp3I!^uz}n{^A5jwLQym-xn630QZhUybOOJ1K$q)PK;`}Z;5d3ID(D0Jl z;n)m*)RkT-emKS3_26f4VhE-9iTjgI{ICur<>!>*heB^LTp6Lv=TlFzF!ECRm1H9mY7%L`o>j5Op|$ z)w!6(1+BRCOG*$kh&=jjDH06G5G2!QOpPFleS~Vrm1@D(S(2au1YQ3jg5oqzji3d$ zunoAx=ki@RlSuWTiPYskM38J0!rc->Y?o3(6Wul9`ku4WorDxYibb~lCkUeUVhmUf zB0wkzK zZE0L0K{8$*sS!3HOrSa!8~@x^T+2uir2St-GJ*$%d%}L7+i7oU#Qk5LU}L!*8ygrM z$vI8MHUV92vbEZn1wToyd^q%m>+*1%(%Ny0CdHR@$C8ZiY2goW2Q}ALlosW=e%~dg zK-Hn4!tL!+T}nk+ZTUErYVEjxk)lW@)|8Cm1the$)*;%b@lNYgP;Z6 zN)WPj_uQbrQB+dBla8wuxk;XxuHcHG5XbHM{}XDM{lS{N;ya;c6{(d-bsHXN!Epqa zuG)5-1En;M#x$u-AyZnRHQYHlvlKZ*>39opI4ntlT2k|jWe7P5g?B=&M(npLDQXvR zrBV)R4jf*jdQH5PNM`16^%`r?>Fxksxvl$7J4zlc>?Sz$rAYW#{L1tW*`0T#GTiYRXXY#{2#zCo%7>8RD3j3`1L zf<-kTT4b(icD09b)%^QKObRS%ujVj0tDH>oO7#@39)VUX!<23#e94%?LFh*iWLi;G zb6c$W&S=tYWr(WxBwsO3;U3R``_dvAj&!Ay^oR*pYyfdJ%KS=47&v#*leDSyOH(|F zX-KZl01B8(4LBVPwaL!u@Pda55CNmBa>rmu?}Q@lBfZiTPsAMz%`yy2z_2hGLvqF& zTM!i89L2WhP6*Pihf|Iq7s|ygL8S~sIvSQGXUHnyUo;{b;*R*ym1maMvvlLDCMaF zF5WxhM`L1^=64JZ9`FmI9DdRng6<<=KJZHG`i{mR~dYwaV}-1X5v#vjLZeH)$U>8fYV;KylM_ zC-lg}iA)KZ?(>44U5XyAfyp~yNk$LXx8y8AjX*d*?}Q&Mb+{Rj;THtI78!oD8Z{;7 zCwd~9aglf@>?lK{PL^HtHg;mx!S7ilb?7}(KJ5OxRz9ea0sp-m_po=ujtpO!G`pk1 zZQRHadLzT74l(mFL}sx(^0`uS%dMJ+6_?!l+Q6N#gSwInTNks)4Q=cuf<~AT^Q{CK zZ3-D~rGKR3LZm=UyYA1Gj@TDe%BP3Eqm9KyIc7-AhCpCh0!WM|~&! zu!E&RLN2=0+&F==E43mItCBrLLG2;vTG`F~V9qFhqk%#=CFtGJ=z<<$n&s#*EB*?% zWUNhO*NiUk;~3nj_b7xA3W^9U8Gap;qk4y=@6Wnlp}4rtO&yNYKf#VMUt&hCPZgRam3w*4S!V)gIO6S6|2Mc zqa61#orW3Ft*sQoR!iaYNwkp8Oa=q)>hr}=#=O)RB6<-m*Sc#YIi5zW6Wtv6L9&@h za(M`uV|LuXbz(^w9y*}qMARoCiOGJE%f7MKR6=7^GZ{SoLTb{3V_Ef<*(_00dVi z?OeoyAmI`hu|DjZpbz*_UJ2l)#FZ+ibJzrgwneO3gl>D+N^~%s675J+VzrP&(gFq% zn_(_wL^4|^zF-k71#SsCziYx+BoGIQ{6t)HHs=P3uq8FZh|9-aR7JQ6VVTI%$w&UH zQHn8qJfUjjig87h7-oyor)qF<>B>jAZzs<5_^FLDlk$S`l*ii-Tp*2%JkA)Q$5+jM zZ|h;2m<7jpbM z(MC%g)FE1TJc+a`)?64lIh+x>04Och4%&&nfJR9==rJJGNM+DBMjZ6Uaa*+xD^h+$ zDya`%(qL0Dw4n*p#Tui`oxEmLVu&=rb$^4m!q|#6P7!G;#Kc5Ud)G>WRS*&7oZf@{ zF}Kl2VC6B`1KAA$^e+mRqf&>`5H3WHDcb6a$QL2SJWo&t999Fu)GN!8&ycG@_NJn! z1y}D1e@z~;rV^drs!`@uI-!2bsMC^*d5U<~Wc0aUE)=R7f6O^?U52(42QblP`NIUX zBS|(*XKM7td`Lz~i?ugbh%28zd8XbzY`lt{^-gAYwe)DLuQnTX2=BntDuM!zvlj5K zYKXFMUrVO}h zAJ#D0W?_l9*J}Piz89Or0iG%{a*2d}*%-+to07&J{Ei5rtS)+An){1fi^@auc$z6{YCPxI-;*{F5 zMwDeyhFh&DD6}1gETSIMSDR{#G2m(V404qp^CGL8y zrSu?uA*!q-TTl06b8OHYgbtzR4zpg?D9d7kreYlk*b_-S45X0DtL_yY; zDlJ^`TFa2T%^H%kIsh#y!ZQ!Z`WX@};kVL59I(jdP&jfC;JBwa#(5%Rhk`mBNI%u1UZEux!D0^kn6L=vG+bq* zqgu+XBBgw%Mh{snZG{#Mf};vt$tT7k?AHtM0tZ)x`U=P}4HV#0 z+J+F6=>|U(BhOLH^B9#>yn;3SR+z=h6At}(H zOrOD3$O|nRZ)=y3*Pok zHfaw7QLi~A7XQ&wx@fct->Sshhb(-9;bo*z`!z`jV)=|%j2J0*5CpkcHSB6i3=u$t z9hnttjY4Z_Prma-&Xy-%bB4AS(d+byR(&xxC@8bSu*{Plf_H1NhG5#RC1Ht8akH+B zdKyJpf>cr$$B&d~A`T9Fuv%K+^J;?0E1-a;As=tKD2nZ|t4OD#0I+fmas#|jtT@jw z_7;`8d;$twNkSB-jS#9iAs0N*j^rH_sKmxGC8CIki#bZ`v13CyE(accO*ZI9abcUM zxrh#}X}^ST;6*En!7p*Rape|g8WcAyIwPRU9kEMExKe&$Sru0Fs(_DjqMb(At(3T; zfKsplJ3lW~1G9&d*Fic4mDJ~HuArz`t?xWOqKGsaDRau&js&2n7CCTGfOhP8JgCiK z#u6TAJF90qFuNSJ+M1*eG?T zreG_w8q)&yT1#onpe(6q!~qfIl&uWKn{tHhs6^tnRhHn&KdR}GUtCe|#LKnG2KzXs zXP!<|q`3z#k(#P)t%2h>3-ySBK#AUmy^7J&;EtTa0rZbSPfLB3skkr?bt(U#%`Yme zth2X84*~it2{a(cv>nCh3QDUHWMap!bA(N(t{3#V9L+XctWMcrYql$0zCi422|6sA z8z>GaLXp^h0VO^m?uj^+F0VgwL_jt}EE0|e6v0Sr7clVRd&uXGI@4M`Z6Vz9cfM+h z|9oqeuN&Ra{kOOGKzE;Y?vrla>DGsCedyc+-TKhEH@fXZw?1_1L+2jo)`!l$(QO~P z^`ToII`=@gK6LJlZu`)!58e9Exd*!Sp>uC^+lOv_=+=kMJgFJJntX@1W9_W6-7V_#kPy62B8 z*X=%KK*iaP+D_6vRWAH@bN5BM@a~kXA^p?$W~|KUIdJgM5u?UtdQ@vvLYCt7 zg(Z#@q5Q%hoaa`2GJX7zjP$J;8whFG$kF4nT2#wb%FH*{x!oxO#e^R92fv>E%#bx1 zTQhnL96Wr~*sMC$Qh-dFU*$^)u_so!=Gj?V4=>OC(U{tDpR4KEb{;J8J z62?NIr|0%&(;3P^!$xIlRbQzTPyZ52MejBtLHyX?o*iU^_<0f^opn_;U&Y3A>tmEoeS!!We*$#8MJ+07ry0*ZMbxrWXOA2xegD=&Zv42&%ZuJyak}PX2_D7Tz~!Sb9F> zi_v|<#=>^wr~+ug^d_ntB?oX?Q09IzE?o=xvJAz*;bZqgyj{hO+d%b1$_&MTVPkhd+KZ;2+?;~+H9^_7e#(Gz zkhW$h`VSqm71AE`{AV$G-&pSBT0v2hlX(i#wHb=RqqDX^+NI(qx6o@Ia>6Lak^kpm z$06L1p%^qWb0dUXLHr6m6(uKJASlkx9&`l4P2fFj>^cZLA-sBf3c^N|DmXlSz(Gj2 zWGJ2*m9+-a4h;9lv0qaV$E)YDL(}{J25~2K`M8x3Z^3{Cccvg+E+~#o@4pAaF7eyT zA>6FuCON4{f?TuleBhOt19w8$OT#s8DTJF;+=TkwDF{~yijsGq+7971=-G&@pCH_* z;<74kwkkLOTL&kUb7=Y3h+iP=2kp^Wiy>@7hnMV4;mh?XxUpt@`esN6Gq|DS7DBiI z!bSU15Vi@5OViUgKsJIl56}D#!u1d~{g#3-inuj>F=Q=-V;HKDSqmUs2jQyyDF{1I zIc59P>8l~F%osE(>uU(ts94j16l7cR()>FER%9&AU{A5p^F>K+qVHe|q8`)_SwAj) zS;jK-^cYCysH`gPr3h8;kW&y8LaBatz>W5nIo|yh)#wy5; zjfk>UD)#TgDSS34C>);+T9mOSgL`UhC?U#a?LCr$EGp?}UQYi$V;yA21Vq_N*v_(} zDagi9WMspb1=tR8gT}OrvK5#P?No+EuB((n>*s^M&e)W}4IJeYMJ+1!mb~PA6bE9{ z=VxpY70N40npN!QJ>~%E-aCOVNKsmOCNIWg1S%iY^co?Kw}yAiNC|D6>_R zHL19Xk(08r-wB*$Rv4l?FtFnsqG-8_eIzfrP*5CwCOrhvoz%fC2~jTd!YSFWE=IkV zMZ^4%-Hqms%xV^e%P>0O)3U-p;o=Sv(rGnz(xK*1ulPT3t$dWYpe+v zF3W#T0%xVbZM)aOALbP!*Z2y7vJTT^>$oPs9LeDNkE#-3j4Jl26v`@rJJ!q2ALJEJ zt_m1{vH?Y<|A9?vPR3Ev!O8>*msx*af(%;VezJw%&vPTM8iBG&;7Z@F1ITeqyfGFL z#Gqnxr7_sg&HQh?qSu$<5@2i*6#K_xyPK17f_m4S0O7LC7bKZ5RWrYr=U#S{0%RL1 zSuPk_4Ukh%?y=<}NRf)YErqcLrRjP%^Lu!1jI9hHI|QzFZUrz-XK=%_$`Tk{X4ypv zB5P1ku!-M|9m~9>Sp@C*um#6-PQ+Nb^-P5Qkg%?L50w0f=KlTHRNV-SJX1@<}tap{3-AYBm@&J|Aqsn6qAfuyIIbVWqc zsn};SKxdr%FFe~xIM)P4`KJ#6r`N-mfm1+DyWD{@Q5uJfj&3EO2?V6Y=JE7vy&~wc zCoTc0h}uTS@*I^8o9?pf5^Y;1u#K(!7M@+T0tqk2dN+&=gHpc>05Z_1T@ZnCu|1Q< z;e3y{2xtxgq41~mU;RQncmI>;0c3nA)&dCcoi=>?1b})!dI~^gH2$YMfab~oU32rBc(##nP-Iy5ZXZ7pItiTe z3~q>cpOK>ip$SqrO9VE-0~~Htl&%}`ka}p}q;?{796%;?(TM~fF3YKv=pq2^^6(pZ zc7||pQW<2Uf^QvyOE zaMzll0P5B6Ab_f9t{v$B8Yczxqrg5O9PUA91AtIxyyA<8J(&DY8~{)?`udQFb6v$M zawWPNIE6lbJ`$=*MT!u z8VBo;pMd^MKwccn7p2>I_TaC;vC+WOomr0Rnukz?keQk6H-zF#uKIm(Q zPCvE-K#dt}`0fszi_$n)hXVW>o-HIC6i&rD)C|}sw*#jsgN>wHIFZjrDV&8^g$M?# zP&05)D%QFDsU|4UR=_l8u+cj^VCKufoC)x&dG;%zLuK@f0o3Qo z4FGasUS!h6rP!*8(m-78y zhp+}q&w?kyJO-@SBWnTV!QzuiccCJoEE%BdVSWX6&kj1JVd)9-P{Vs4UjrO3;cV`} z$&|ubAh3xM;9&7_3L9zZd9Iyrfr-ZLRZfPFfHrjijgtY|72%ij?6gzZjHTzN0Y0AQ z=}N$~!ER*HHLch#85k~@9wnSi?D*TF-XZ27A4;$SV7i~Ei0qP;T zL>8MS+0|cT?I9fQ0jEpYB`7RkJlw)#&3JGraB#gjD06KGj^xk-rzpn%%(LY#0X`I3 zd75|+&-yI^PKb1ouBGKw2)9Zv^1#93;}(7sm!1aRN3-lF0EG!?bqCM{sU8B*VV+;g zvx9EofVlM3@z^fh`^1mHiO_6a)q(Sz3{H3m;Y@bpC`T(#4Uc`$ed&vV6D1tFFc%vp zX+6FaxE1^op4E7SqvFC-#rx6Ci+~a%L$;y=6|bIz&AA+3YKr(6tm)SoUt&pD#bL1L z87H+h$PqYU(>h-9z$axb0^YyDQlsYuEH+c#iM)CB+5|%2M6HnIesYcPqZ!%qu4C57~s=_(?~{vtI1c`5E8PY>M4L`ali| z%gr`k(dRup-3NacmK!aNcTUCvsNT5f4WL!hKzK)D?han@#J3GK0&4AJxzX^7d!N9F zFUVkHA~$gKvN+dw@`|i&{%RcJXt}x0EBic|0ibWO+YKjxG`N3{N+aP3h>3f7W$&4n zW0eAmv17rxO2(9~sK0{>g?@)(&q(d$bLcUNUAWro_s=S`P$I54S4b110Qx?I4GG== z%9aDdnuF`g;p@ERLYcVcT;|#Rbo0HC)`?C?tEG|fe#8&BJ%wVI3TAQ5xd_8U_uz|Q zzA^(hDAmXTVbM9xEAIcK)F|MgDJ(h{pxHqn{XoXYpFqOdGE3@gnS-|y*as(}+)M36 z0vvf*bk6ha;eZIlMz`OWVa!AFGi;RPZzO3Ik3* zM+m7^L}FuGe+QDf70kg?UF>YJsNSdOVF)ZphsjVn0ka&dnlk}|Ys!!1fUqc)i3)xK zkAov8hztju6z?Z1;^>!gwJQp%UrqKY3B(uCOMnZ17_pk@HA zLPxbEfb_VBi^w5iajJ{!IG$E&=eA|RH`42IaucmaM>YQr#r`67X`X{|XLB1w4afCA z)+TsIdOg+%7`TH6!0{K~2NZx(wJgx}Mp47}3u(G{`tWeHu*b;bv<98j^g9rHRmvlg zgX;x0u|-sG>|;ZFpNqij!yat_&RWd4#v3^2WN~&mMde1ra1;vh`(WehfkV#ftPUXf zYMznu)es>pO>R-Yfn@yfz5u*gtRK0-){|kfB`5)DqcoBSOOsbrZ!|4(^p!Sv*4V@3 z3R{l_yx|5;Ob!PtlV4PBFv7az!62rTk$zxD#R@1x3vUj^&Go z-0&E(2d%)_NTc5YWFUo#oVo-jcniOm@)qXc zQIwvoUuBL^Uyh-Za202VFO=O^1)NP8Y*=jq#|TPcX`r>V96j31!>093C;81Z?{5IG zrBWW$9AP~cp}F@q^02Ob(kn%IHn!&X@3W}1_$EOS*fp`9KZaA-ljLRG0`;{f#Nkce zDCJGgAvY<`JGF2qbG@G+|KcyizC#|4?PsJM+d0BkEHdx+wesS6WftYx*y_aROJP4x zNz3oR%5rdWCFI$oCWvoE=U4qM&ZbIx^Whf7YGUC}Vxo{^6M+u{vpU2PN04QfmftNd zBPRY7)VfTRXJaZ8UoTU!zetBL?29iQWjyvG50FcAdj=a?kq|G3=Cn)8V=`d9DCV&# zx~~M{h`kt)bwi&0A{~8kP+TJn{8>_*xI7zeNqpXM76Q__%7&~(Q?#9rUC8QCW^ju6@{Gw>#FY%W#Ytu;{K`i|d*&JU6tI+u->9{EP zGGW=z^Ee0fenKw-u#u&|%d=(DAz5%?!k(XnID0G~(tD}%I>ZqTHeEUz3@^FDjGyMO zqVLJuycedoB=K>?p=G(H#dUGheUiV1zSlv1AC{BignSL;uSmzh!AS{=eT=`(v%ch{ z{*5~ChCKUDI{L0awAe>@4RwB8o((r9K3}V1uS*C16^RD>5RYSeugA6cJVgR!b;u)f za6-E@0Q`_J+4}*&MBn&+tjdPO=P7EjTsmqI?njvHeS9uDk38ZBGT5M^gg8Y^9*~Zh zL~toA_8uPh7580>i;uk_&c2rp)`Y7O_If9eYmz-YzK*FCjMXD|rKE9>oV7h3e)dK2L$!o3}}dyF{D4oHtVYN&XmpzXJea z;h7t^N&>(sh`st!0IS`162-ja@pVn&>qte&Dv(Y^z>}*- z9{!pyhw4+<1EfcHNc&aXc<}-4t`;qbj*@g~gsCrBFcbOWUx4WQaIj>NT+bHkLUAd911L8mD(MEFg=i&)iDEbqFW4WcLh%L*D(;=ga_P^4autnIT$l~Nl8{B>#Lv=_e)iye z$g+ME@^LnUWp;?N!le?Da8`UWpRdMpbO>_iu#vhfe)3C3<`+d#VK&=kM zrN_jjzeSG7Un9}qzZz$7>$fo#ZU1<90bdL5=>%{ggAKeWe*QbC#>udZJS>4{?Xd44 z&mP?$7atiHUx@F|Zj(!mgC&Zdcy%FP2mTbtf=JB%S#f|x`2K-_%=cjkOFp@OF<(#o z;{a^f1(E+^5SZhUOYkF0ymZh{0AP>q6A7?!9rEl%o6P62421W;uoV7%c0Yx^T*Ba; z7r(v)U;i*Dm!gPuDF07=mcy+N`U!wBae$?mUWFc+?_(LXeV@LP!U7)MgYQ!aD#GMw zk}ZQ(SmBb9$1)uFb^L0+5&UCnv>%D%V=!0HQ5W-cc{~3|MdLVr6rT`!*1ndJXpFgw>0PJB34}$!N zxco+y;@LmfQmB@cJocfkl|yz=*g_wQ3W9uQTz<1k@j`Yf1;a_n(>D0%l$|91ILTi_ z2c8!BZ&fKLOqrKQfs0ZA*o7Padfy)2fsH7I69Hg!9ALXj`P?+Mj^ab50B{Ou`LX{# z3Yh4fP6!Ab9*`A>*r`gJ`10HD>L{F73Ihj`(B5bF1A{%XO@v^>PKmA9qv|o?#kc0X zZ=^VBDF_^fa0)+!a0}L#;+d{vKOcwqP1SSaOK)b+`NT}Y=TaCrk6}}Jgd#0^JwYG{ zULJH(x0pYZcQ^#3~{J3v(9B5P=C|C8z2~R)w!b`7A zdvoTzb~NxO52b`if#GFqa(GXD}#lL6`T;S zh|wwO2`~h+l4)&(MopUX+MBboE7gjbf4zK72I?#(>7mKj0L31mXfnj0_s@z$IcWf1 zo<3u)Nv)hWdtLh#87N#fA(&l@SQplp;>mQ_r5qDUc}1Ogb502;+!Sy=A zc|3tLI*t=irHz07l{e=Y)ylblIutuE19S}j#@!S15j4XdSPw#Z)V4TM1dLvsHZ!{j zjDB#OkpVi4+l=gc3lTPhr6i8Th8z`}mZqBc()8H{q@veO%D~_<5{VE7ioSW60_E~x z&j?h__YW3%-b{kiMfkITU9$CK?_#ug*|29u9)DBM4bfEK8Fh?YPNJ~RGNc0>jU zceAncZ}lppKprvRE+0C11UL&-%JGw@&k3syYUP}F_Tas9>FI(i;)=gNY~q6$`86UT zHi~c-tCSO`ypViZ5XZa(|5HBw^4r;M>N2%r-k;9w zm4VrT6Xfx!m53~2_fyoK9wy~5K$d~c%QLb)Y7-{x$EMvfFu1iZ`S^Y-!90LcKLnU{Sju0U+oY~mE3)4!-6jJAKT7_4eHsD79;Qe{pbRGzYzW3r znc1MWs=3+ce~|%!GspJblg$+9)H^+aGL}%VEqHGFygGHQnwzzDvkVG+OOAh!9X9tu z48A4*uPQt6Sicn@RY>Ygcw52hrI}WBJ#{p)_@$N5EpW}`_8Pmj4Kw8G?B1;uLv`cYO)YJD+1hw%e|Q?|mN{f!4Zm2;%(s#}a5`2w0TA9Ry8+o<#HJ`INGnmKR$Gg8~$;_ zUy*>t9*?83!TSMrgut>3)GjEpW|=(L9C+;?{(A))itXkSkro?4K*z*3<^za1f0n^% zql_NJ5%hYSrUVOcU!f`twUCV^s1xY?SLf-}UQG0V#g@u~u^faqU@ja)^txj2_;i|C z$W-c|MPR3(8L!OMs(os1?#7>Fun=_NrJxJU1PZ#~O5UVNZ-iC-4N#|%Qa|Uqx(!`* z_D5MHwvhrs)VX3Hi2I9yv|0dZ1RX)V+ra!Tw`xtR{No-^*_i$u`>vnf!b5Z45xdA_8i63Q-pL8-99b*k~*N~=6Dv# zLrq5z4|HA(;%WKo0NOett84H+KwVOCQ|4X(67w&V0SX96t3Y58^j!=rimn(*yKKr2 zBcv;Ep3OX`4yn0!!{5t7u}=~01YH-Soi0ok4?;j1LrB-qyy@9z)nPzIzLS9p3Y?Qd zu%PM`g2mOnL&rKmA$es9a&owr=AKqZ2CR0qGI#-P8Ys-0xuCIWUNl1E3zSpvksuk)Pj;~~p z5UyB&Fhi($0rJJTomq5;SDL{F>;VuWfhNs93>~ldQXb}gL_I>sDe93kOs9)Wzzims zB9YHwHJi<}^JRb{w1^=P6DlqSVxsf|UHJlP1VJG><+)jhV1oDM$O5rN2n~gTi=m;Y zK0!C$z!^h02q~GGeNfFU!YNI9)rUO_P_QcWn}St2%@n%y2Tm5@lt7VY98fF%BBTJs zb|QQhx-Ev!Hh$2bd?#hNbJ-0bL}|P1cdaGa*H9ok)MZ?8wpTD2nstI2nls7o|_G%c}JqDAk9JKGjy9GpSkL} z}iXB)ml>Dne$|NMJ8uI2o*veQcP%H=W z;m~axvV0W>CWwCKawzvMAW?w8Y#`054a<^J2wsX2K`O5(`n1B!{FeMv6 z*}ForK%B5~ov7UL2>O2wqNo7?4JRNt?Z;2wqh=ol<#D2;5YP|hb|N*K+nQMzhZ#jM z@ZCQ>a}Q>%M;?crL3Y8=HEm*cLH=v$6hQ(y;|Qk~vwtpdvQGtM`LOB8bQoJbmI3oAD+wWX&l zU_M0#NF8N>aF-^V;uu2+19gxlyuDM+_O{DlAQ#2?doBvs@Fz=>o( zYPQ=e!v;B31!7JWZt3@k+eeCK1ah!3411I^jbGKqjxn%et+i<6t zBzQ(l5^VnK0ACy?i(ud^e{SAZ=%6(Pobh7T;^=tRVr0e0b^uvmN_PMVUi0VY{Q^F% zGJKGZc~#7!+$d&Io_`@d7>9X^VBkG}0WjR0suXZ$i)o#Y_$aNDt9>UF#~DI6aHGGF zy#;pEDMJSZmuh;8S*G*FEYsk^q0u5C!Y6OYZp*x=?K8^OGl#A1Q{NVdggklSMFa**`yTqnfRkhheA1bm?7$0)J`I z^z`pg(SY^e4jB0ECjkalCk32oH)n6RemZC&0SzJ`IP#yHw?WPR-XhbiMFLmeOUx!; zl*lHJtsnCP;S44mc=ey1y8#1kmIq>=#?#xI2na{(Yg2wCoS}pR5C7A1)~ngPW*I&| zV4ZnD%(nj^k!_D{;ZnjGPB;qH#M$fAY?C|;TP`O57ZHjZ*ON*KdFsMKJ8GwU|;(GA%-dg@a;Ygu{ekr;Xq$f*7+Mm227S zYt-yi3J~!k4MRGLG++<7mOzlr{iV^U&q7c;v0?FEri(17L zHKBZ#0?MD`^($J*n^{kLzl}iIM#X$z$QD5^$bq0pnk`;UIwog&Jz z6i{Zzi`DoDrdZ(W-}{YVhHq1?#p*pTNMtJIU{FG#CSE+}OY%V*aJjyC=t066u?;us z+=N*HHSE>QdYML{oKKEe&gWjSoKJzEIPq-y5yBZsIP6V7!F(tOvy9divAob+E9m44 zT;-gjgfeQIYCU?molrK&qp%HPv7_q*qJyXR%fTlIWz06!2CN9#?P?hF>>4?o<+Qel z^_M1+e;p3mJ*xE6380NIopaj&#AepXbPftjofhjs?IM_K0%v^V455tO26qFS;Ukbg zr2sN5UY#mPD2V8G{qKS22?ixEHmTTaUV`~S4h9tg%j4y;en^zd!q)F1!DMcO+XDJ0 z;#`o&VV}m!cQwV!cX66mE)z`FHq{o)@VOrKChQ-BayTd_=6pabC-yOtFsR7dQ(}>|SK>w16z5(@ z*P(%SHL7j9Cvi1ULy4m&7Te7iz0aJ<&2`{yTMw!vo2ZY4VBQh>Rs_M8G+z5;?7 zuvN7UXBVe>GxncBIT+OAD-i48J!qxa4ES9SJ)Ley;A~g1$qwMKSv4{p4499_l6;%u zCHXkhOk)CM2MxA}@0)ufc`<_72k-5_pDHDsfm>BOU?l8B=8zl=iXFC!g$gJ7 zC{|>*!2Oz4oF=^O0o69pW{ zCJHzzTK_h%@^>KiW;5X|k;6eBj~9zczS^27CK+2dx;g=~OT}JnQsc-muQmmoE-JH`E|%FGeJx&QQ_=W-|N7s7*c*+6vsexX6YEr> z>gSq}0Ry%H_XJCZ+Y&%~RO|(t8i%{NjdDn^6+8NfRY=Ed5UY^F|9bkl^yUQ8UYcD5 z#j>kp+6F6_{~XmtRrXeWou3aLJc@DrH&~mtKl;sBd`^ z!oOiY)Twc`Ft7NjJ@Q;CQ3Gw~d0U#6yHyj^Sr1bH{;#SX3;xL>0RcuPHnlP>b>)5;KFf71_RP2>%2(u4ODSbFcPzs^N z!)nA$z+oD!YBla2XV<4Hj?D36&!*QWkywo;_Qp! z6s6&D)V%Byj||6AOxmpe4R;gaRHadTqWLca{Nk|%;xo)@^1+ymDSo^O+pA?Gg7D#N zgDajrZ&DvX%l8^m6h}RdbI+$o#4{YkXOKAiswhS2I&nW0!*$9w)k%E3Tn*pYd$Cl- zYlO7mcSAF9nuYL;ay1-uGyR1rej7zn4n2)S`6&!{nHt{48BGN#idF~;(>u5kh3H#l z>Ld87S)Zb)8AqaTb|ScdJy)te3Q2u_ijpW;vwJeCAVTzwQuQ&2Ue8NW6jgH!vry3S z49)6N^>LEbr6_AekjpOaVb8k$N{XT=YE}LIxO0f^V9y!U=h08Oms1qI zjLpfS2^UE8b%XkXn)|coQi`Ie>vd>K)@9WN3{SQ}eF=TM=|YOKC@fa-VdhoHvR8`K zm(j;H=Tj6tgW$|VuV-pVc6O2aDn7g6Y>Kic1*L!W6eR6kgs~`8Uq{&FhX`^_O)riK z%GM<>W$H=zjY72s3+uI0Dasxel)g2ujVq#9mxRgP`?h`2rBeE-UKy8F9d$~ZJ zr&heZK1%8BsVFlF|CN6;Wn4K4&ni&s5pTLNO6ldP2=5ZoqG$d#DYHU#8JeY6BPe)Y z_7O_YPDOe_{lcM}8p=Zpz<Tu-m8-) zD6+;u>)A_r>Spyl^JdJ<{@aqH_Dv}Q<-iy6N0;f^xx+iRtY7}4;XAe{`~&;hxZJh8 z=fi(V+IfBy!#*wL=Oz6H+9X~;MeH-9^3bx%C)$c-ljO)1XhNM9I|2Ncv`*o@VB$LQGGpp z&xf;Sf3vp~C;waZ2xympW|0e8|4vZ0?0$b>6xBS^9(ZZN`S$f)L7f7WQ4VU6ptNtC zf;Yb!c;$W5H`Z_J3Mm&zb#h2Q;)d`_Hs08(MY741ZSG&XLbBl%l>5SRP)l&3yHDjq zfg#0%9~rjY2DDXRgE54Y<%aNQICzeX_Mj#cH}(9Eu3)|Z%t|>J1VkApyHJmcd*SlV zE>O7AUYG_C*yV6mz}1$6_nOLi?hW(q+kh|`|BTuq3+3h_Jn%(h94HB<=<`kc-Y#G` zdw)EoGBF?rgrI;8cx9=C=SFDv-G&3JRER8N?x}h?%YxvG(1*>a(5C49U3mX(K$``w zpg$^COstoS^It1)o~cc!RL4zeK5!cjlFse#^+Ivu2Nnk8%p>qz#!b;hn0demGxaZ2xzi?iM!aP5;DsEXdO*4w*? z4CKw%dp9pSSf66^>iPeA>W#mz*m>g0wQHA7>|XU{_Qd<~TG9i>zuiVl9*-?<Y}s|kd|)4T1Lo668|7XW;bAED(e36) zjty4r@JN`4Pq5jj7J7!hy_e^o4crY5I|P{N5icr)DzEf^vhLSAZV~MGOQ;|;$l<{& z8eDV!?Iv2THCQn%*!-NKUE8g5GX>f2PYaWV zvRfg0<}PLb1k#U(?^1Xaw#@HRa!Y5@iZ*xnq9C|g?5b$O5NsK9dnlT#bN}CL&hWf) z8v>r$FE@k1?Gh^7F@Mg}10O{7jeGhHeLnk}-Ngv0_(Rlkc<~3XjCtbTDF26EkB)dj z{q@empdOELra8*5o!A@Q-DA&*%SCm;Yr;jLN7zwY+v2;5XO!+~KDX*`)5oUwfmrXy zM!ul_YP+tj4B4Ik9jU#xf9;}wfBNBvpa1)Zb^EW?L?~G2h7rD%FEgUk^E=aZ3M|yK z^!SEvKAtlzHuavj)SoTfdZ{+HQBamGn|gl`ReqEYO}#IwZBn^JWZuz?}x)6cklRr zoNTioOSVU(Xyacd+~?+d^qugRO~p})W0PQf9E{ygJk`b8a8_Dw#d|00SNv2{l{ox( zgtV&dA7%A%@oD{D{^pGLYT_?Zsjq3-m^PHIQcT?FLEb>+_ao|gMf$&ri}56k(tG4@ z!?9T${pk^JAtlOM7iYS$<9lXBGrC0lfDf;9e6~REk>8?qN*! zGq1Me@Sw;#7|l;mM@U(C`Gc((7B0((q@I!~*sJ#X$Ze)4cg*kgF5wk@|7kDlpgz16 z`IKtZWz2#Ci35D2<55^c_Y!LF4memRl%wX{=Y8=nqmEDxjYOXlh$L^+4LCW`hfViJOI)pUW=NweuuCHwSt z(rAD4`@OK$%SIZI8O3!LJb>-vR12k4$*@kB>TTrJ8DH|CfGNUs3lppn{dc6FovKQH z5kX0x>WM|r;H?$(l2CZXL-{zeSj{45bV&d;b-ZfS58Zh?XS9CzqlG*-#Ariu4tHb_ z%6;6wI%=1u{5`FKVbRERIY-m32{`e%QL&YKbYD?|GCKd~UM(o3$-N&z{NMRUQQ3Q8 zC0_U7O8y`A&O1J;GW-9}y%U0M6?HAECInEb6gyZE3s_NHMO|GRwzYt|iWLYQfzX-s zKzafp5K_pb_db(G8X>)tUPzz&`<$B@7#K45#_#^~d%fn5UGf^|zUT9t`}A|3^DN20 z-J9X1dcpPh&!r2IFtyZJFeoh_p?p)L8ZZIjTEED|4829ap)+D=qh5SJ`b4ls>r(iX zf`x6AO81A}e4SX>T)U=`vW|X-Z4S=YCd-O#DW}_&w60T-jow;$RUY=~=Ef}0ukmg_~HKoO2l zLayK4my5KpL!Mx3=$e{+4!50gLqFq6g{et26*HlcM({^R*NA-4^NI@f8c$i*Q=;5? zO=w>UWP;iCRdjB%^pSWdKTbwvc4$(E`e4b)NQ4}Jxk%nl*aBG(H8*3@&kcN%0EwA2 zO&wh#*KG}rnQf!g&r;ffm{(RLYUEc`&a9(cz+a*vRL{mGegD!{Q^KI4dAQtTYEh+L z;Z9gN{hkUM7%rE{+3kU;=M;C}(;R|q(g9dD2 zS+kYp#QUFFvgEl3*(3-}Ld_a_4IS0A$F)nir)HyB2UO#RFs^hSu0wggze=z8H|mLJ zBPsQ>&6m|q?s?p$I)2ha&n;Q9c>Yw>U!N8_WI6B=rYF|(7HXI9Pd|X4;udz%PJ@YJ ze1TQRr0Vuj4Q**P?coIr9-IcVz0y~L@|0OwJijiubZ`)}u&RhHFF}XJ60IOOV1hRH zt3#Qs1A;|&zR&mfqgT7XyGB5@sDHQ~23Yv{7LSmm;goTz0Ogtw=3|tzyHLA7i{-AXazm-OLI171#AVW-yQ2#&luQ*BrJQr&hRoYO3`wbvdf3 z_ERKB_q(*L;3tmI9+Zg}T8O2n zbrM}nd!@-D(wNQuCAM#vuCgoMvj{KY_!)e$8WY^G;cmL#d*IL)yU zC!=;1O$KLo*V6ri+K;ivF?F>XSHKU3{}UO6zrRqhXK|~fD-y<+URo|#ZjsM<%y$Nk zJO)cls%XQ^lMBa2AwO#yPJ#296|`wMtC2S8Mk^RrxARf3N7_3_DH!HmuO06nphMi5 zUrfZ_>a5yQ6b#MbzN2_SsD;g+p%h04URfZ`Wo zUtv;Bjs9glfYGX83jXtb%U5dGDSrC&mD$Mjc(3--BEo!+ofyUzOaE?sm+oH%ziK8X ztdrKYf~tNIyP0C%6BFgzfM5O)dk9y4acE6%r1WAk!etHgQ|<5Krxw-XIzR5L4Fp)PY{IzEw+4Grwiik@2_4Yjk~Y+=kNm28g>iKuzdvF1 zZ~dZTWX=i8P1)6l4m9o;nqD=V^vu?B^;U&!v z?V)^S5f5VXIpi#ggknziYNhcd5SJ?R)>{W@$oLYNtU9WGzIUU)dN8g`;Jj_{*X;gU z@lBy2b_l{QEOQ>%2c=x8=F-BzQqLD*3~yZu60W0e6xcqL!^#!nU6ia z<;|s-I@3rOdZ8F)!dYA-&d)g5i&=uf5&#|F_uyjd6pW|Zg(ke;DX@Tz7Z|7Kp$M_$ zOBn54pa_AGwiz?GE7vc)nF(4W@<{cJhpPga#+PaGX7 zd&9JRY}G;kcLTkn=*Qc9_;d%=Q8%0?=H_-|Y21MqGaWSn)4stMVZg~ruvN|^l%TL4 z!!19w5qs#|CT%hOcg)}K9jepSCN3%h+w{}?F;O=t1MFcFfG?Na1H`rtT7`$vD+nvX zGJ#%W9wmGl?G<3t@)!iY*4Q^n5zxOqQPWO42Ck@W2dMxkvQ1igxUHENOu~Mj^*4-&Doc!W=<&J&=UNBbyFu~i<^Ewp2mHn^YO}N^z@rBIUF~6 zlQ3Rc|BeCu%Jm+Md-7UoL>i*jd5nakExa*A%DGxR&AmQ^iRKCnj27m#%Xs?w7R<>sMZSc2kyZdx@r@FIHf&uX-z%XXoODvN@xODjdy zY^&8=&cdh7qIeH(u+nqx0?iW+WGkH`F)Ta ziQo2Ups~4T5IaK;W89fjnR%ID=8%JU0XP)dtWE*z<5UQp*NM*tAHrwxrWC{b zl{gta**q6E5DYc=zVU9LsF>ZE6srP>8vx4jCh2 z!L>=qxI`>U`^+F(?IeH;GWVoItjwo$AxE1T~*5NbkcHGU7a&9B0D z(8i}?p9o5$@xu?{bT)e*Kl7gknyOec$isFRSH+C?v-^KMj|`+M;j zy^YsQ33Wk#TZa_Qr1X?YrCcM~6ss1J%2w6V4|QYHnAxEM((dLPqS7r;>NTPijp6m7 zOQquLOOZ&VnY!$wq!l~GR%{T0_SSo0FMCwpi{TXgjPuW89(&0 zPHJo|y*e}u&bkItK|3nCZwV*A@+fV zk0@pD)R0jffM0+XG6O$1QxsZyQ79%1iw7@P$~Hh1)s}BbsHiUnpOoU04W@KDU|Rds zIowgePx>-9*0fF!=-i;wxkA)QL0+Wu*$yjFWwW75mYQ;zIhh?K1>u>GM3LX%#m^qh zL;{*=cLHP*x)~Zb;iL1EGIq2+3E3fr56=+2GY>d->m5%< zE-DO45Sa^+ffq%#2<#r%fa)d0Txv+nL~JUqsB-v%%5Ui{<0l>QNsTFyd*R6Y%DM}F z7=%^yVvI9kNp1+GVSiqta@Oc7*?$s^Oqn5EkoY8?{23Cd8_G8&aW@Xpzu1j9HvR$E z0d!@fD#W?~je~uDi9o9NqnMH9jxG=ji!N(C>J5d|L!_8exC?JOVE%cyEBHr`X)&~# zk_dkYTXKm+3~yJKh*`-S=qN6$j(Qt*3M>PxJSa@Tzfq-H=v$BITJB#61mM2t8gZhGs_$p$bN^rH!}_fqEHCIw!oRVmS_$QmDO@=j@As)Q zBR-T-^^xmo-~UM88L(8)C)pFyVP?K=(@bnw%!tO8%&1KSFPLICw)~F-Qsd2lKpIT4 zO&bt?iY|NHZp7L6&;~yqxZ*+)0)z42){QPOQ@FP6Y*zGfFK4@L>(;Fv{+|68)l4@N zN7rqlP2-hg5zf9%UB}+SzlEk1lkdTAA@(G!?P+t{gyIDJH{@;{tSkZWWRFB-No|dIYVBDX?e&%qzzw! z!Oz+k@70tAPeb2#qg${{u&6t>`ssOLD?T`gj<;(nZ+DPP?> zsC(SBI&6n^ZJvxZ`jURy(vh&8iN*mZRppik(#9t471QEcu`>N9_INk_-=x76nDoKK zl(9+sz_c_(ENKrjIIpckIH9Dt*)B)%$uKmzwS>v#~~Nq*^YuPx3UKX=619rVZe**W_9YpfCB zQ~5Knd-9xPL*-Z$(quB%v_gy=8zJzhguv$@@TJiOA_S!g8J)3vi>s~2U_#mvjg}I~ zwM@rm!7rv1BGf@kyKP^MF0mh8(B+8BnYgl|bSx6S{ShhfHaMAAF zO49-{CtU!6E%309+DI^~-VK4pquXylz*!rFQRNhlMcxv~dreZ_kC2DB3X}3a!bX|l zPWt6rTDVm&9r~U_G{4*y0`slFcV|oLqY&amQ~D60Bl-`P>L)$MFBtmXhqvmv=F?-* zXN#B85M;8W#_LUmzHrm}M9;z6(d7*Z+!^>4xd-a<$D;2r^uoos54GSz2=9|?aUtfp7=8*4hn35)rzBH#5uR-;D zOB6_61_S${2PcQ%8k72V;2S$~WSbB2mg9*$Np)3Fm!>n{Vo}{9BXytPlNgig-hwG? z>c=E+Gobq=&Byj&hT zhLX!r0y z@0j!<0FtGKn0&jih(Eq{4Dwcjzq*Qo;c6*f(xCQX&f-hPVJpS}`j9!rU+~x8Z)y88|>R5;PYB!EV(U@KYQ(O|5A4$qvfp2YqJT?CHt)`He z6p#&!hrNf~Nzgujz@$FvXp0f?(~S=B7kLV~w#oR>_%M?e#BiSqbE(k)y6B|!`=UmQ z^)%3kotvJ8V7ch`&9C@^sda=x;*XH{r5uSc#%Gu=K6#$9C67M(LRuewoqHVTmdIhr z*)-HpU|2Htk}eU+R^eL@h~edsg20~3=g;V&X;%RG>qQ^YYcfS5+>Wi0(#Zb6xAvn# zLIm4hLqS%9&tIyrVWj1F>AfRY6iCy##fT@>&*=svw&R)vVFK*Bk<)fRd<-QtGF=?Gpt27vjwUb_fp;Bnit}@jDc9p z&76>Vh?~=7Qmrdq|4)cn&$|!r<#Bmpx$b#TJ1;#)Q25WV`rNc!yx@+nu$M8n4SMtN z+&9_=ij1#c1W$^AUN~2}zokuOy`TAt#>HHYvyQ|0ijz}O-1J5n)fJ}~Jh0a@*;$KP zUi!{3;v_mv8W^uR>>*gg5AEg|2>w;uNT(2T9>TFZ1HlN2O@9J{SL!|Y#)5|g_7Vio ztHFtqejL+fE942rp(VuEEicDa5)Hph!a=NO2fIv4#zaH?He4+4X`$H#)?S6%JaO_v z>pZ3Y645v|*1UQmzObmFUWi zwc%!3H{5-L;mZ*|I=2x=R=Q?D*h^*S=+sT&GMq>>ur~5BblBn8J2$gbAIWhgdvl%B zq5O%n)woY-{UpTEKiWp;Vx+pXMx5usp6c}V6_tYG{PDNxyv)5VrcNN*f~puyS#v*p zl{Rsxvs+N|yX|n@F#P-F-`l`>u2auH<<{JW3dEPJosL&DDR$(@@s)-(Y`d&Sg`0U2 zx3%=T%tP44tDWMxB#9mwU48$HIE!ihmS+>PU9<;%HN6WRuW9|gf<=AY{tqalff5}+ z%M2VKnY+8GO&CVOqCT03!?t1x+K`ZBxqU89>>(_m^x#Vn&@;`JS?U@g7uF(3U5FAXDu3s2o;%us|Zk)RK(?9lk z919OmiV6>K+4AkuS*ZK}6tgLgHf_Q{5^HmmGRS>9grhF~PuE#pKYRJ__QzvVa`RK; zf}GdB&mMxkr+kSqQY>Gs)m4)pesTGVufPBPKZ=i*Eu>@92lWANS1KHL9=X62k8g}= zL!Ic(bo^*qtCeDYV+)<}oU2{HKIoBAM69{J!_j@4I$(%uRy*g270!%*iz887rcDt= zs(OmMk)rfciY2o-lsD?u0e0?_aZvx72jBS5YDDRL`Nkv2D`7FOOc1_9_qs%mP|ThV zs<1bF-qb-noYos$=1<4(e;I-ryCSO=E5$lN_!?7Uol-z-QY_dU#A%wL4~nf?tt?jIY`V`yb?7@D$-x|6+(f^U zI&N@z8p*>L^^06}*qiX36p5|v22-c#Fgj;X@}o2rvtuo2%{V46LR~(V?_IfWcnY%fF_omM1JzqU57KUr?#XNG5p-D2y{iOFG@rV)a#{~;ErNM%v$Q7)?hY(y3Ukx1y<0h z=P8L+{6m3SQ$6olq@I}ML&<5rtV_k{{oz?F9439e8qTZWixLq0bdkL=&>sA$3 zK=NcFXVGxTs~Ri*75_d{nP1>s?Rm%x$%pu9KjufnCLRw|(UBtS75NwiHmc~q&G`*m-gQi=i{>_zxe(>HWdOqNYCE!O-v1Ib6{Z!R{Kt_TZ`U7j$R z!scziE)`9w7SzyDt!b-^u^}HrVv%7gZ_A<@G=IPf6Gj!=iu4e_AnObN)S+&~Z{>fE z{0j2K7T_wZ;IC(uBC6np?b%vW8KE%UZl3Om&QdY&tD~(Uh_8$M9P@WA6~GHgzPO$j zdX}(K5Nmu^KH7kqteEur?)+GRb#*MEvJi7q$1R=kIAnO|h8&@t%Zk zJCK@?O(cEolg(BZlU~}Cgj8|Y_Nslh{q)(26+iBc?dc|k>Q)!l?}_iK1x6OjAzMFM zcn=<%y71lK+|qmE@v$wX@#`qhO^F-|w@{_zl(m(JpYGB9|E0;O$aZ{JP3dqxU)3@^ zs7sfK&bF(%K%38>t?!MvU(UGr1`OYZ`MZYJFx$*rAI$Z^&;sWAU}z0<|6r~U z=K5f00dsvYw1&BVFxLljeK53uxjqw~#I7+Szw9}KNw?jOwc!CW5 zhSo6m59az{t`CM5FxLk|Ynb~7bA2$^2SW>(>w}>+%>9G8KA7u+p#{wK!O$A!{=r-y z%=N+00_OT)Xbp4!V6G4Uhx%Y+YqJOclm7pcHtcSs7Gt(-5B?|p|0fx1F^no9$z46T?r;_A#`E@!w|q7~90~6SI8`tzrDP**?ZLG5o}A zA46*x|82I9u}us=G26$`8peN{?PF{c!%xiiF|>y9-)8$5+r;n_vwaM$Vf?q*KE^gN z{KRY@Lu(lSZMKiGO$F^no9$z46T?r;_A#`E@!w|q7~90~6SI8` ztzrDP**?ZLG5o}AA46*x|NZ}yeWDmsXeaP@Sxqaw*Y@6qdsAmACfzkbQFz(W2vbEm z&2F18^VxU5UAM#DJs>0^E;&uD$;rvh&d$-CR&P*qS(y{k(^8X@5)DCA|oRr zqEy#L#Kgu$hX)?o{P~mDR*m83s@Qe6J^IdSJNKZdnq&A5@ReN>5Enh>MQwRynDJXx{t# zDa~U5_OPq2d*aI-e$g4(Io@g)wPjX%N+M{@Dy7OIBG&(#zqgNpHq5T#Y~I@76`h%@ zaaDV$$7QA^#m7X}s`jZAQ4zcE>ypjdz_>f!wAkPmo1J@5?WZ1>m7W|Q6H%_(tx`n9 z9K7$mY|u6~e(J~jLNjvJ>OJaXYKyG2q`0VJ)lP6CH{RMWo3o3J`^S5`!RZI*q>huX z`cuV61uh+wjXA)^@ei%`OU~^ACQPl!NQsZusJ5v1m_M%8%BDE7aTW{LpUB8-1tk(< z(vxB%GgO;Yir9m<%ci(N%OmT8GIJV1i5;Otq^LHixadRduDzEWI~u)hc`%DRzVJ-R ztpOxKt$>n<1eL9dk9NCbzf6QLggm`nm7}QuBSo#qOpZg_uvG~#i}HqpGAT!y#no@Q zCg+?1BtxypN=raHvsDeN_}D*qdzp~q%;NeFJu`9&0a25Z*oaer463-8R~=+Bf|X{L%w&DiAZ1;+;c7&*@@N`J=B)KrvHT z0uTT|yC~rR2#6CZngi@y9{}r6$4??GChJ7G3syJ`{h)hBm<6j8K^#Pzqd=t9? zXuz8ocT^^zlJRq0vpoUmMHvz!?Et7pvlt&B6HtR@@n?p{9fW>0ml3}mfI1Zydet$R zfO^!0Ph)c202su3h}{N2Ehz|;320>e!@haWcwS33h~5G~4HQ@$mkDTQiW@g(Y8*jO zsI!tHHvv$s;sUu7G6AiOe>E&esotw*SzKbo20UM-VxDpz?_m6`yR-MJ_tP7Qu*K7r zDz-C7=8tzV{^juOy_o-4WF}xXHS#k;z&aoFmz4wXNDq&85e*iO-j)n7_Qow=#Zt zoMsr0`=Is4wdfw_B37tm{rq;uUA?{^kNaWaka$jfycp{5jF9#CPR391$nC@PN2u*a zHi>{D6+0pC`CW{EF*5r+omL%7pmBbNLfF>m+|9%&gjD9$58j;>U58Du@jUlhA`S^z&E2CCgeDu!q)5fJ^s(O&|PlaZ;fp!8N zVN|sa#zj3EEujWa-ms;uO$Zk(1~PUn93zwoP88@%8 zMFKcnMtao5F3N@9^s!Z8%imZKH8C*x=OkpK=Gs~R|n$axI_s>AT4VW zd~r?e-%3FWVu~AnD9+6XDUse}PEmeN@WHLF1PW$~sr$|q>2xkINZRLvjBx*necqbKxH;aDO9zybR;fvc9KNl(BN+DY8Jc&=0>P+HtyOl z3bf~PG+?EohmXk=S!xw?kwPgMJ3u6E;I1;DBG|Zz+ggS0!YrWD)LcqLh7QHWStLuy zLYFdC+ah=gY!k7f*to}!4hn;n8DM3gh;eBmD@(;bl|mh4ER;xG^VQ`*#iEA)TaC+6 zn{(3v%OuOE>S4h$V2fJ>Pl2rii_vdBnk@JfvqH1F5@TL zbpX~^5(QWx%9#))!qQdjIVsj&#xgs=;?DBbfaNp(>Epw=JhUl060jolg)xzO*ghGs z_dA3`0(+HMg^a)YlU!VM+gG9jtC(5(qO>K zVEyP&J?x|m*t{;mRbamntBUb+Tzb23`z$siY}Mt|FhlgLSSi*n#^Soc;%Y4G0IOv@ z27X)&J5+H3unILxJ*i`H5r5B+Fh5|+x&;@3y+f>e%n83Q!$q!L`NzSkL}wNxvQky- zO=%Q{wjN@o5erM~sr$M*Fwv>i1OiqK^T*RBoUID9tx_~QjBh=Hv%u!p1BT@`hBvxb zwy!7vuo}Q(kLzK+(lCs0=ZWS+G_1Wb!nIPxI0{%Ty~{v7EJ6yl6Js2)xWT)~_t4IG zjB$VsmHPu$hu%lrC=`nsD-FXS*DE;T#%_XjG9H6mi@N5bLF*C6xpM;7pz#H*0ab(cA8l1BD)z7p*5Y2lQDC1Es#hH5fEqmG4OAn# ze}6sdeQ6X%xjwMCJgy0_esPp*LYJH81y~cRnV%l^n-pw2#<)JgL151iYDgU8a4oL3 zUgHT?Gb%;`?U0Iv+%FBoAlFZ{Afjo-L9PLf{ERzb*yGEJ_tC>VrC@(zkRuj1eD^uP z6bxfrJ=#*z;|2tKf$cfR_F=c+B~GQSqc?d7ur`9xF0NS0Q&O;P z7~+V9A+DJnUu)>aH~gJ5BRYr)!+hPNRB)^Evn2CS1{w9zaUGFArc{XyX%2DldHEDmq|xaXJC zRy%^#1ySgYnMhVz?g1O3uZN>;kER1k%%u5{K z+67$otgSi#STDh7k6oTJz~&7L`vvxU8}kvzw^jk&^+54{u=RSS*)ef|tEbDN>vn^Mo#?D+2R%!&j$sS$2SL~?umv6L#K`bgEA*iA zDBA_t5VcBsJuE`XVu0P)MKIqEc2XSOsszlU28!&!8YULGD#SvDNwMHNJ^&Oqa8oA> z5eK&l0W-y(yq#ca!HPYoX9dV$P1WuZ*kheoq0-P+CSU^Fmc0Wg0jPNLe~7XUOQEo5 z8Vb^^PNouvwKGD$z#9J)K`ddvp0is9XE91w!gsPraZoE3uyoK?Z3Br@Cz3lw6!fDE z5XTBoOM9Q}VA0}`Rw!VBG*r43D3-iePg*8Lvc-^g5Np2RIqfV?9MJNGVZ4CCE$a0c zv-jvhQ>8%|&Kz*9_uhM2S%Ns2psT>gyv8@N)R6_7THu8iY=LirpEy!=krpOR z6EL717WiJ*IrS`ET(D&btYN)+Gpbay_9E)AEY#y30$=z0t+gyu9M3Xn(6Ci+p;j|| zk@cH2ON;T$Tj10GWm%0?DGg`on3$BIHf&L|_@RreXJxV8_Y?R*zXcU6M;y*l1;x-A z+O*%QW{HD3SQ=jCRdQ$;(2fdx%T}v0mM0EqDVWO@X@T3OW+?*~a4be@{b9?7F`{7y z^YrJ}l(N&}h?a~M+iCI${HbQ?{TE^Wa$p$Jf&|5I$aB~>EE31GL^P_rA>g*tY}$bL zhcs^pqgpVUz`m)4tVA5t63}_&4uZCWsz={Nb&trR%?m{%`2L2|tW+G<;xVJk9sq48 zXtBLI8rJi1QVVBWHi&^OT;OA0Q{=I7aa@ZPxONTsLU!V%p1%kSk_B59De!%+bF&#- zvRJsqU|7?TW5f=xwC5tsRt^k{w-~g8KWq8a?h*rp5tjXY2L)hw<}2g_1nXIGlmixDqh zYzUDIzGQ4uo&>BFume~OwqAfSFR9&FTP#g6=oN_#Asl6?IA=%Nc{aL@MY3S;H3$kV#)1=wNBbmK zfP;(G*NZq7*LZ=(BBY!@q>QtyKZgdee<})zP0C>b#cUw&pA+V14HscwOT)S_=CufX z`S%mR!XD)ye0c0!Em#Oa$cWIxa!~(yIW+FpzIHT#*A*wk5w8!vMb=USoD0krU9Zyy zx7%hZx0@|?jhI^(8i3n8Xu~e$dEq!F*_sg=ORUqua?uI>O%`olkHFWjxfL|*Q+C6D z%5{p)PFFQctGz&D`=or7w&-_QY@fhqzGsPYVxO`@2*T1gy9xz$qxzwzI)#${*rRyN&(zV6bo#kUWg3!Fp3NUO|wg|!4V9cw4 zxI>tCSLbsQI2%t6WlZc83-Y*01`p;%26 z(){r-y4Wh6oYQ!XH%c?$>c+lgoe+j4Wyx7E+%XG2YIBOMNPN?d4V39+ahc_M-(mFQHIq9ivmmyS+@ zI~qQ(1OY3kp#lm9K#WsXlpcZ@yU4esW9$;eQ6x@C!kaCnD1f6_oD}MWl&hGVbeLbV zICR7S!D?vD8bBu1BM>SWGhUhjmor9;NFf=GmI4R@&xTuR?`1bjC##zz~QD zNWM-7;zpydmWIHYj6vZf7_6Ma7LJoi^$Y~B#?F)uUWE@CgTe_R9c!^Pk--x3bTSY? z8~L_$0BwOdCCe5L!2_Rzih&sd}N(U0d zQH(LcU&w+%3n@|}2ro8Arvkyq5m!kw&WeMAFBq&Mc?1!yM<5_N_V%L^?lxQU3S&(0 z64U}~q8N*l7@D$mDiD+%bKen31f0Pb6FdYBRZ(IDQ~lCInou`h_Lqdzh=ammAsds9 zyhIVgk~KOZh%b-&&`*+qplTWv+=LwJ&?(3x1WF?H6vVkl{NgJ~f!h}=6K6nJEyZ?( zpzBcUgdo;FVw;a7;+!}rI10G}YmWm0QGb~c7a44ywL$Iz$^fK~G5pyt!C)>;r<;P%sGy@p?i#2p*DzZgEK1 zBb|6hE$y;=y1_O>BB|b zwWS+`67;{}BhM%3pYKOgpY9|nfUQ|CoWYt$L(fOz_fvGgKcM1H-Q+0oJiI78t6eXY zqTf7yYJ`xeC*YWthlSKJEf8kg;(1m@5js)mB5>$!WRX9Nx3E?zt>7(N;VddN1?5Cx z>mphAxE52KrBcV$@bmw+70T!h((?#W&5G0m1Xys&0qNg=jsUDQM0}nlC+U8lkMJBX zb>IiWoge~X^W(>?}MVp0c6rzwqmf}!}<3$nMaPD!pVn_x9yJ_5# zFzq%_SRKVG0g^BR`4jE%$pIM*?C(uG(6wEt!D>uH3`7NIMT|gpsQ5?+OF8FTvEz8- z59K?BS`?>%0-fS9wTlyrvlFlM*paTVi^lEgF#1Y5=bTTit$zWh>|E|r= zPC_FJQ*;DE5MiB#gR#_CDaBK*tuiR^He9_T*98>TNby}sSd&GI40{#lbc>wB;)u{& zbYl1rMWgg*>lm>k3?~&I?l+r4kEEI{d@_@Fb+`k<7C=_lUIf6N?QiPrOUO_RA zQXDwbu(|FB46F1JDJ(5gERTmuaWdeSt0=Zq3IhKg=FUeD0mHf|EG-2q#1V+M$|C%j z-6UN+rBD`lir?duBAwCDGWTJaEcrUhSgJ88z{*m zlq0Hfq5du&KVL=R^->skXK!2A5JZ7Eec3ur^a$se$}+^?P3if~I6BTC1YvQmlwq%#WZpxE0W;7aoe~ROp}HC>kNJDMyE@s|DHYC#-&bVFAjV-{{c3cg z&`s||hm0FR)~hVTLjwK14m+1Ad7sTTsWNbggqiJpJ_R^d?*@T5U6F+(0MzTY;I#xF z^L2MAQ7YUVU*eKw;1Hv8%P%!)6dBc@J;GxtVIrsjzonb$x;ioC>G+ z-cHE?j+MKL>KJ0eNn9^_jG!YP&iP9I@XoohGFXUcdf2O9jX*2bP0^28RMHXHpvodF z(8tX_PpNQnecvKl1`VNBcW!9PCR))5jirQ&$^?}nG{DO_8+F9iIzk5OB;&98C_5KX zTdbKPDRC$zj!>9lh8^R)oHa_`#o>ihGDz@?JaugNGzD!9qTlY<9F4g2w8cL>NmA0qai;8vz~;L&{twe`wFcCuN|HGXA=+ii!~f z#tmfaSnHDMUzYwM^rGT;uiWa3)HwehzgLEnUNne*9 zWg+Us)@jFNun_t<{a|;QFd(oV2NA{6f|8o3?;Z*%(t!0_BW(OrU$CvK)q5rSO)4LR9Uof7I0j#hNL06{I90xuSSJ zj`hk)CGWcFZ=Nzp&X{k$m)=MbbHjN$R1BdGLsWoUjj~!PIIxNCGEi;I;)Q)qUtW)D zzrc5}8A#T65aMv!DJuv>4^do|vPQ{yyl_Ycu!C{qjt&ca=bpR4ylYEyD~00?<>;U( z1oei@!dj&r4Q*1>mxJ5z3T@>v%kgcOe64hVDhx$02Q8p?$*KeF;QQ4>60^hv( zE);+A?v5TXS=D|B%|*>Q0pw8?chaLs*#w<;JIWw-;lx~CCp^GD^MSnn+cVHC^lNm; zBtjljaVHKJD4UhM^RJwPEGB!VRp8U!L3e@KZG?6};Dic_HHOMqLLNuH6}Nn4i;_G1 zm{J}ws9E4^e!B%CXF2qs!SrefNJrfwhvh#?{|TiLGU9Dm#|i^%rW34HXcJc@1cX43gRBeX=Kg(8`Si(1)% z5--{(1J=X1>pN=%{_HBW9`-C3nLScm7EQEMcqOix%1$Nce#c%}G`6ZzY&MX_?(xi_ zT9}Vk7zmgORpwASU~K#z87xHM@Mp_MnoBT_cyL#5pymf!D$ycUT!?$BvIp;B?Jik3 z_Uak2orEHukAEi)NkBwe0@0!|#Cj(y&nr3S6?XDy(Zyl|IYq}}<{lA`K0q4|B<)ef z;+6V4Bq@89oZHJgW#AB3HM>A;94b1pgB%ew$vF+f9Rn^7@6O=N*fC0v4v3qBO5>_-)uwOt0Tk8!v3=7_B#hE6&?dNP}q0Kg>@E(!aW z-Z9Dn^sQ6>l!arzA%+<3A&w4VA)N=UmOzUkTC$1@aEw+CqQ+TolR@i8uux5g*cuWU zLOB%QrPH#sfZ8kZ5HlToC{j5D-o&l4c!M8-DVB#`GS>7EW~OB zItDA5J^OmS4A>Bjkf+4vkk8;dd_P`88|a`V5DgJbr#yp{Y>TZd7W)*rGB7?A(3#i! zj^&Uy0jL;4A>inQQxLikP7Z6BMnq)GKtm{^)3`V77S9I*7C|tC>4f{7z+~|{tbwJ6 z8N_x!6DT%=GdLxz;Qy1NA=gzAhU+7sA>Jm~<%CjkXfl(F3kndM!C5-M{6t7LdE-D! zAsQlYj@qBVc=fVY77d;E-NQ%3c2G`-tN-DcLw-u&5(tODl`!`}C0jErlg9S=jx>WR zI`=*9#|-knf)+zGgs=oTf#y0Siw57)^_^Z~GpJz*8d##rCf7D-kwimsApc`%?thm{ zW2@Z7R!~Q$<)^rdnF@;03j6^>Fvux)&>Wv1l%n9%~&Ma6IqGGLTE>TeE>QlgUVQxp1Y;~VJl=A@`-Egz) zK(Yu0_fevz0IU*>qkdo^*y5zq5e$2r9GK`b>fI->eH}<*!9RQ=r)Y$gPAo)S9J2?@ z`QBa`!od0shnM_l!2{_p$6^eT{*LMVhig!}p_+1m3mNI2zXS%dRbIGGiW4WMsR zDZUS+L?R*j;gq`{YO94z)H?!Db2=H~xfX?qNoatIBNU<_LS2D!SllB|RT`Z=E63?9 z#FyRWoLe~}D~ebMh6r}@QFhA!ZA5}G@pRn}9mv+gTmF(!4bU09Kwp3m5plx77vtNV zGFiTK=#T5Vv4bJ}?v<$Qx)E3g!J1Vpz+1`w=#n7|2MF&P6b}#{Xs5h3nAtXrpi&9d zf=iSRNg+SnN~rAn4*Yirk!gRLo8VR4k#8H1gD8PbGU<4hpATxqR`2 zY5~_qnUZd_({zlKF^XWwVHxHI*x_~=x^N8lS@9U|7p+L&q~JbF)^vkaiYnm)7BXsv zxq2!&`-L)LC+U1J*LrO$L!>RHvgb!&nFK>nM5v30lDW0X5Vn;DHSw_Vwib%~#YDDm zgq21tL`Q@=c|h1Ac`&wDJW@Sq-9kCIEWS@47=a}d3~>@6PVTT+s|;b=7z zOp<60J3PWlBo+cDLL3h(*{kwcY?XLy{PAYwEVGz+IESJFVf;8kA#_4SxwpuW^(WSI zW#ZBJ%yVo%MzcS%L{bcq5JVB;cu2`UlSg7p`{|7R`*dEPe?2C9BT0%P5TYqU0YVoj zlN2o;{co@&6pm-i@Xgr_m^V-es|a;+Q?m8VGD?T^26M#p25ZPGI1G>77R^@VF2Tt{ zpoUOOf#RHQlgV-s(=PPgN-+4lk^F2s!O{taaE&k*S0!^iCqvf`TD%dAxluj{c)jnZ z1dd>(5(}{#r(9i>>=}71_Pdx`VjiL3{Jwcl_AWvt6ADor;fH|oXp$joCx)?FF@HuZ zc|f}{WBn>wvzK6r1mjiV?#@c~yF3gkGaF3 z(gjuYW|^#$l*EZ^xt3t?q(2grbA(vQUhoXC;{#x^!*w!>xR(YnF(K48a@xb4e#?HO zI0h=oOXY|;n}f(&FOS9cc2Lf%K`UY**qC3H8c3`JFJ$QFPC56JuE*rCkT&IpPJ%Ii zO2!4p`l3@gLBxvpg2#djKisEu#ax#R{DD~?#qw-+epR4c<= z`)T|V)0bsd0;R$1^w-Q#LLsG#i;4xFC)7{!P;6-%B|>|TNN}z%jY1MGkYc>xNZ~>p zMASnvQPEoS55@6qPzv4BqghCSYLzsAX5o(hh6jJTo(n~DnM$sJbqt6Y< zjwe)v7hFYLu)WB7Qyz=`E~WsSODH(dZ?e-Q>QL^eST3DPOdafRlEXrpL(5t*&0#F1 zIYi2MnwqA7=BaXru{wZa?$t8Pj^vB)HdDUD*9Zj1IcBA4BF6)@s+~BlGC65t634R& z0>Nc|yAo;e%h8p3sys27aS&OX!|&2mt%d{q<9^m2`lP%2$` z%#kO!LWlB45gQ5hh)mReO3TZoSyLPnT;|ALT%|)Dp%OMKv7qy+kWoTZuDemWjtl(2 zx^a{(_%O{%Q#7>~aLliPXxrt`(1O-c3S%yGMjlx3n=cH_uGgX9Jq@;RP|~{fet9rX z;n|F1uKaM&6FI=ad48uOZZH|C76B-zTRm{hvs^|&m5k?BpKrwxQ-xOZyA1_JIbw>s zI^*009y?k`xS!?VkeTcszr{6lv_-a!tH?OE`JcCEf`}h^F(SKFM}%)T%%M){g_+z< za+o7wUkAjL;qAmgUvUhRu38|NeVL3xju7^tS#QYd)DZ$vw`!Ewsc~2!AF*4UlJ@8j z@F<775QBM~m94@KGtnd2y@Wtld>jjaY9hQPpRfbd&mBlOGD0{()~r_g;C+|M7V#%W zs1?bYp$iP=RYiyo2-y7O zSFto00b~D342~5_?3;R&$OhQLE4?T@r%D6_<5fCWDE-l!K0X!%4zyUg;^H5g%LL_%~x7lLVQ84&EdqA{p|n|Yd7 z&N*?;iJ*Z{`!XfA>^-=#FnYu(Vv9Hf4#k}3tP(B+*I9*QkO6-(riSg}d^}9WLP~*P zs|&_JfDd_IKu)K)Isn15R0$7@J2w^t{Khx!!nPty^g_r33qGR^1j6d{7*tTE(=U=W zz2f2t439I)Pt12`}9t zZY+pe%=P}8F)S`~RS;3Egh$hJLhcw;R56Ps;n`{|x&iPgR-S}0XXK0l0H5!q!`WV{ z2vmq7CEUiY3$w@Yco{nVpQC-~ajzm}2$t6GXvXk39J{ZdjPyr@2@5S$hT<)Lp&rBI zaOKW$gFhILdlxFh@c4IGV|cs}leF~+g@{5QZ(pc9h39|H9K-XcQ4!w@jW_`S^D9t> zqj&q75{*f_kVn1)_w4=N(I+V)Cfu<=se+5^lk_n>4~Oi{+harUJPSCjjKKEP>uF zG>m_B@)#aZ!8GdosAvQLv5-7vEL@;JCXV58xKbA%kBXzmee#rX5dUPt7#@fBbh1-y z0>ul3JLV}9l!86GA$|-1_)M?<48$Vt`-f@_gdk?Yz2FoZaT*8~kgd#83Qla=sWA|aF~yX%!LdaIIFzlV zpl|y*p<@6XVHS!P_N$^xRf(vE8f6Ye#@hssf#Aa|#=m}06;nY3KaDaUvErWJT}w$9 zF^no9$z46T?r;_A#`E@!w|q z7~90~6SI8`tzrE4{~z`VV{CHAN_HnjT+%wygVUM0Q_^;Lg}L zxKC$jiJXY_D*-$h_rM^MinLnE3Bm|d;7*=E|jdDCoey?U2X)$&4hMNXfg@p4XX;6TDn3%^n94avtT z>+!u+sR29x^Yrb?D?y(?uA#|tm|L0R&JWy*wMgh=Q6K!rqHCP5gj)*SJUO`SOfl_u zH7?Su7ZiO_|DEb~CE6m;?vX=-uljGFruQO27hmxEWcMqvrowu|SIdFHcYfCnoF1=4 zq(RKvmR?t&af%MS*#bFlb}u&PmHk~v0>{_=I>E;X=E>Mmuy)8{AprfFbv+$Oh{tzq zn&5XO){9i$l1o*IXFeT}O#X&);|4sFc)CN^Q=%GWOqE z;d)`9B+`4o-CEmS2fR+@b|7`$`^K+84$qBoFAX&ae6jLh+)RsZW^wCNE4?bvGwe04 z9ddXWU~O8F+u+Qv_h=F2uDJW_$RT9oO0fKEIMgCV5-xs-d5#;RSohmjokqf`y4wT( zlJO41cxb`dPxsSV>8C@rl!|D9ag&l$PdMdSS%1m zs(R==qTRVgdB|Sl=Kq&U=z&X%LCU?ohfZ8u{6y(0GOzy2tQhnw**A3K#5H$!D$<=a zTN`(aaterU_+g+bZtp_WyoJTa;h|@I|5Et?@<9jH_dq9t=D8(b8~6BfNfw103XI#^aJqorGTx>a^m9uY;g^Y*2Y+dA9dL9>7qMwnB{~8@Bgyj zCwMr9aOmA#Pq* z+&1fpmxh-rUU+=gt%dmF#Xj12Ddxl2R2X&9rIK!7*UotE?JrlYUHjY075{u}@;DcG zgdg}htYrXsy%bGBKg=z`2Xj^)scaK0+Ei{oQFC#WzZbUkvegwjzj{jmPTkAs7otq1nho<}x2zGCb23b^f`JXnM2XS>f!7N^mzS={`lG7njAEC$v4 z-ncOv#}X9Wqq|Cw|0i$DycXThbmI^byAwb7NIO$Z{v|_;8-xZTKfk#Q$21gHUj#Ha z!e0I#-C8MKluuAK`dX+c6Yy7{Sd?A(Yo5L+NP}|qQpfUPq?}X?#QiimRrgIquvxsP z?m{j?UK_Evh7$CgMFN}J-~V1n_n+PVb=*)D?(d8H`nEher!nFCGZ<1d_p~u4;>997 zg&$hm#S~ZlJ3))PnfiR@S0HDC;`Z+{wbghw@&laIk$f4e0jV`rf<6SsEb;CdKt@wO z{mbh!bOk^dAOCM${Y}H}LpaoR`>rnBT-CMV`eGy;QSdJW4Pu5n5V+_xF8^X{k<%~{ zr_pX$+lE2^4&ze5920(TM3U*4$E)ZN&(p`~9<25qR&>-xqB?Cr3Cc~C0OuHQT3ykL zWeVT9^NuWC0gzqhp{zE%7k+r(bTq3 zYC!hUR-<Ornw{=D7I z8l8HSY5X?Kd2q>aG42WG7M5a$eDtPLI`hZBSC%VqakGo{;?K1+Zfa5;ZhJM>j(|?? z{dzpy^?5B$b#YH;VS3#Ct0f&hX>Ne75$4}1H$woSt$IqRk?7%~xBdORw zQt@k@&z4atp=)*xWztE2QoZWikbLW^!35(;*Udk5ty3H23h!K=r&En&FR%1AQC?*2CrG(2P$wMOXe*!jgY7u%OQBfXo5?Th@LxfO@XM@ zB9O5~{SA~syZvtDgPPZl-)o*!Nf*f}4$z&XPnYYZzJa1lsjd{*&da4*ti`a@26d%> zKZm2E+&_D8IcmwBG~<#`x&TVkMpug7H1>u3*Cl;c_B(EP0H@pGE-RY=ms zU2_sQ5VhZ1p%?l&`o$^L6#{$na-oW~>=n`$W6_LhKetkg5*FV=lUoU$w_*~jo!BSNSWfd#_ zN`CD#{fPqG)Qs5xTOEg&ehsbWO-b}->>NzFadd?xI89?wEGpyzm9>-szIQS*AKBx^ zqoIeY8D8!+$9+|e?D`CVF` zGr|pBQQJRWH1p006aF!E!P|fMSE4!Ok88zhm3`76SoWtL`1*zWZL||CZSGz4zU{F} zq{`uq4U+$*xN7L$ zQ@DWl7hFB@-KB*t18d7;7MP4q`92NSUD=8`8@G7qoS=*2moc(<=rZo>9>_YzZ-!7Cd1Fh`Iq5s$3nTJPJ zqA?x!?7K{_6?!Gr?JP+;arpS99Kv+w2b4`IA{NIqA#H88F@rlc zouPrOd@Ri^k3LR#f#C7EOrL&amPjV{7Zb%j+E)^p`O2Ogp07-Wpr{lg@_()pNIkjG zJwvq}zgxr1a{37NmCG(kyl~T1B1Ou2sigYC(~`-Wdk^#YsN3nvrRj;iL492^>VE=? zL_o+NM$A6rcJE>wrRfD}q;|AnWFg-wAU(+e8EV)wo5`fyw;Vh(Vk=_h-J_!&fP4aVkZOe_YX2E;>y)m+zU( zW#hZ7cZnB{O;l~k+eMVmYmYEvWM4?*^}y})G!)gYVsZZ55wk&)KPYsv)dg&_6dnvxWUU<}r0)e1LL28A zeO*~8mA24oPK4p!Y={pes>=3oGJ)NHZFrW6kDuukzw#!-_6PA52~7CY@iM8PIa*f@ z>$_bJ=&pvDBtv}7;dDtG^(s%DZ=MDjl1?HDhUEE31X)%5vU;)%T*ZYaY>ci+g?J^E zA|vah&{KU(jT)f{>L#fgRew*OTkffTnq;Riia38e5j|TK;VxJda;!`uXmsY;={yFK z6K`cIwb~S`v}2TfNj?}OxPg7|3 z#ItmY-|+sQ&}&$dsx$%L5<-2CGT(**(lqf_-H@Z!k~;;X8B1wO5*hk0_RkSM$}Ki4 ze6bPg#hjA%9o!ymjxU1~Df2(qF7ScR^9uWTT1RIbA{|ipl&v)~g`tGlj)0pGQ2w6T zAu%^em93HaMcA>#tCaE(S@1$>5~w#B?5Wby^WNq5Q?!EDl+;*jw9pT8xG#`<8{sOG z@irCD&q#kelhZf>cc|MgWvTM_>`oC&}$068@FB!QvyPNGD#Jx`!5q7 zJgYfneIW3&OW_$CrLMC~K^2fJ<_*L{96iUKL5aL{ra8H+lS-SI_Oi|8n>{K`8G;|E(jOL& z=!m~ONwE`oLM%kMt-Q2jGPz)POm#1$T+aYIs}!5@O3wWU@4^1dn5qQCljej_OHR) zyF*b+6&w*ww_e=)KpAKf9dncc3v=lrAxq73G$#IyENsTf>N%WjXT}{P#9w&u>Q?33 zP&@*m8BaU}^X^h+F)I-~WhaQqWa>OM6@*=Qml4cHE+$6@`_-*-GlTtKnrXQU^qIf_5lx&kLh* z-p7sKB@>iH>;$$?DJ(taYI!%Uhyo2iiD;j#vO^Vnd9x1Zdh&>M=D5=S116}uD5eSi z0RvtcNtY~ME#*}v8n|_k`&)|Rm%M6&hgOx|5v8>Bj0rXNmC=@j#ydf4%992vT=4{V z&OSs>tc=@qtYG8vJ6CldNks3r700&TV89FJdS0^b7VdLbRYnp;NOS^s053h_!F?6n zs8U>7Ay?16cj1aCs$VjfzvH2u&rvJRe9vz)GuAn#o(EHyN|`LYdqE3I!P; zi$guM%XvvMb*mY_@gCZq(2n=giWuh7H7zkWW>tkvH3(m1tJ)fn!S&mzim!8Opc(GJ z=%_xw#y34|JNwwS7~)FXMU?DTiYs;}C~ehb&3Gh}(1axY~~slU^Jlz#XW zuee@@G~yQNQboE+XgS5>yULTa1$V?{D;uOfN3Vgoio24{F#jRs^XchsoJR$7n(<(t z%@&wb5Hy0W!E=o#_p98({Pu24y5t?dl!qC98}nI?nu1BtHQ_8aX|28yvM#N>8tBEg z^?JT^J~Da(Fdqf8?;XrEAym;)g_Js8R!uM;DHqdu8}lFBdxgeKdAI7CVG@t-sY_YP z6XaSEN!kq5l$8s4;s<3oX}Qbi#LVAA87k98iRk^}HswCVxePLpFU9cN*inctg8<>yq+rtc#IG}CUdR&5ef2~R(Gon=OUXoQx zF=mI)EN7&rTHa6~yYbu4404K)9peg==P&6wNxy9b*^c@Xh^g(lCPA6=22zT8hLDrU zgkEDR)I*gxLWt_yE*Owv# z#@vym&Ly9W%36H!w_s#g6~wb%xy9Jqtlmr@n*Y0(L7Z1v`9!$2+%X6;{*}MI_ZuNL z8I9!iAZx=7DYtH7BSh8 z(LqhH8{qchZvhGYgn>$Y@7JF@lUVhCDAEwFgey zoqxhQ;&>2Et;-3_GTIub3=^iy7X`rL3o6CLc7|$xLUeiw;u}(NKmXCOvnduXh zPpj#2)|bhnRj_f52-VnOg>S+HVGn-h`<#Q;38z7L#hj3Fa+d@6Fc(^Qva%{4v2ek1Q>cpHRC7FhI?azUiSFv) z9Z8orKBNIsHTVnPe9Wmno3O27c<-Cz;jRf@$#^r)gf0@g4}H^7$r@~ks~Fu7b2@z0 z_L5l7Hn`Pt5>Y{a;oj?ZcdlT%rQgYB_?oc26T{bID9eAS*P93 z>?K66t+20(i&FzVnrZ30QsmDNZGQ4`H0U=DAmAowGpM5f>S;I<$&`QfouZg zP;*Gki8U~8GGfH4R8yZ*eKWG|qo<2CHCgWmo~;OEWga`u66BLWCYnI1iJB3 zHJ-L@eS_1M8JVlfB70_AVU(3JfUJ^aP;*c+3doK|km3twii_W6*#a-N)Vu?El52l9 zhs3)50mc?4j0O@~7M6RjL(_(xhGOZAvhr_P$k>eF%RGnED zON=dGe8z-v2v2*-h*7A_cbHPH!Kl`@$6w`2*2juNa{&HeoK8K^Ehf{Ncbxv zZju#3RPNM8mJspFi|1}3uJm-<3MldpBJ1DmsnnQc)+qX_F)UT&jk2i4uNBZy+Vd#m z7cEovyG0r2q5Sb~O7Ta|+#UewYYdF4ahiA3G9nJUecTbT#!7{$hmMclBHZU8JfI_- z#hK^4L$q=US8&CB6(Uqs`Xx(*%6ZTZLgg7e>mj_(QRJPRX1#yl4b?V=88WIRN2iWd zM8y%jXQd^^r(vu`Kj`8ex$$a|SU6|OFbZXxZ}rX-=v8zPyp$`ZR)`Q6t;`EnQEW|H z#*cY;4mRu!enT%SMCH|t)XFG!^S9Rw5g+1;0Tn@%GKE_PTS8pRl?OpQ!|#0_#1G3N zQj?i_aG?_k`;FLeSL)k4(BJ2Jw!p1-Z} zPFa5{=)#$PhKv(4-G?pL z7DQ~o6K7ZgT+Eei0sI?)I~AZ9#IPaqj)n{%C1p`2I1CA=RfLfBOf2=3IbrKeHKakQ zozJzYY*7%ea!|mo3n?km7T$ zoKIeM=ePHj(xrQ45m}m9o7R$48$wP6vN5ZfB+b_hilhKzJFM}_#%k-;c9ufho9%Z`GAE`~4$tM5qI*Gp67)Abn+6;U@$_hr z=~#ym|3*yqy2#5V?m#AGH)6+1qZ6zMbTztWq3p6r;w#p`pTF-oKGgSe-R_$aS*ALZ z<#kq|%2c+@R7z1&^66jZP^+!SgQmfzT?<*j(+@h0xTTB-d~YDzeR`*n?rGMzWvJR1 zmj8i+52wnf{#)!8KbVu_zX|$FCXSZ#RcHpLpnT!;*VIOn$TLZ0&~a4^;Pa9)tEqSC zgkJJuAtsafWp=)oQ~4X^-pp&5VnOp1){v4x#~$TNH}?LA2tf3R*-p?2G`_YP$2gt2?!{(>CQzda86gv0%CD-7BG(duUvu=mW4pdY;D% zzsaWd5s7HZnZa@d+9vrEo896bmn6IP*b6t==SnOqv+g8I*aLbmx=H?yqcFrmceL|$ zb}rg%&z@&#!L3pwSN~q^EVJ4AY@yPA>|I%-$1f7%Kjhw?hBW`JRQ_>s@;~Z6&-H~!We|Sewz1t62R`- z1LNAtEcRa6?wfp>wd66No$Lu?64b>;`BS;zz$x?V2gy&U6_K_Fx^*k==Ik@%ovGg+D`cU_ezosB24N1r(=1aEZX$fh z_jzo7_ay4NyHd)^4|+9}H%YC-(P~7@6?9nT@Gi~LXHKEulbbBbex3*lw(2jao-~_q zJGLvYg{E6b9k$Q-1b2|@+{!Os>D{4eST&aj46fC(`>;=zokDmq%Pf`jG7)LtyNP3R zDx7^mbuyCN&P%al`?jrVFJb#|*u77@ZTs#7(u>T@TZ!a~+~e!!d_MLK*Dx`>Qq;%) zSo!Nslv(BUu97P+nX+LHo1If<_NbgI9JbbPtj#Bt1zlUDxt&G(7tfeBZA`AE^h!Bz zBi2Tw*^W)Rqrd~p33MpW)`M#l8^CkZ)3b}+sQvGNT#P_Zj-7K~q@X(4eC1=bP{2%2 zvb$=*{+RKjp6=JL|BK`2?996Eb`%ewqoxf%Yy}%z#<>dY?Gy~-+D{Yu%`z3=;BYuw zaO9f*sxUx11I30rz!d$NcJI1Lz0~*@5iZ7|w<-HJ&rdx=knX{xJZb4`4Cc<-6G25F+ zw_ZDCsfxYnnqoh~R@IC%tSFamA~u#4zjC0_pF=Rzp;9W3L%?)yL?i!*4IAlQ%pMK?ga;# zyzfCtecvi2hU(K9TiLfY%&Z<^sSb)&3rttn+0Uyo&$($mXAl!aEWg9Z4(rTO(z|q9 zuO$Xg4;8@XbW8GH{(x0%Ny|&b{n@sIY@AoitR2H53cVJ~YF(Kya1S=hmGf-Lkm-L$ zl+kxM*;en0t#iPqn7HB}xOUVnmsCU6$~$R5Epc8{D~@jLa?7|5X4VO&)VGU?24c&O zuCj}A`tt=h+jG~~&u6{L9Zq_~ot?e=3iNVfso%4oV4c?ob5wOBg9J;M=Y=i&>w zqB1djd3GVX*>e{6v~3c$j_X_r?m_}LL(x9;^v~QM(PZ4sh`Ob$NSB<`NU>y;TZG_ku>5zZA9$4z@h64a+&zB z(v==3>`JHTZ8tBw9VN$RJ`6o~ zTt_B%B&tN!;GQ2X-FqdyFzd>;zdvU4q~VzxD@2tYo*RVI6L~L?hlQ|_CqfWw^oVde z+rRuxT!JgjT`6(W%wEU|_SZe;z&VvuXcy#RSftHu-~B{@ks3kow-UF^>qD-_6y{(K)hdxP6YO7S#Nq z{==i9#=RRg`q>_BLP`j&@2Fb8d1S|uZnmzGEo9xmNj&h1sAg-}Wx$J3W5!0kIjm2o zdmLNJyr}f0Yjly!v@rT(|MhxJv}gSKXw}dk`}NUlqCMl+N2`YZ*sqUX6YUwlK3X;O z$9{eEnrP4X_0g)KKlbaR*F<~9ua8y@{jpyky(Zc-etooR=#TyS=rz%v@#~{iLx1eo zN3V(Yj9(wE8v0|uK6*{GXZ-qT)zBaN_0emhJ>%C$tA_sAua906?HRv5S~c{?etq`sk5&!+v0op(CfYN8eY9%mkNx`SHPN2&>!Vdef9%&suZi}I zUmvX+`eVO7dQG%v{Q79s&>#Et(QBeTHIVQf6XUi IVv+lQ0q!l=!vFvP diff --git a/docs/assets/logo.svg b/docs/assets/logo.svg deleted file mode 100644 index 4bbdf7c..0000000 --- a/docs/assets/logo.svg +++ /dev/null @@ -1 +0,0 @@ -logo \ No newline at end of file diff --git a/docs/assets/multiple-tensorboard-jobs.png b/docs/assets/multiple-tensorboard-jobs.png deleted file mode 100644 index 8e3db797269a56279a31a5fc5df185985301e713..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 184717 zcmZ^~1yEdDu&50LCs=SDT!Op143OXf26uP2!QF$C;GW>_!5tDLxVyVMZ<2G)eYfiU zKUGt;_g>b^diCo5h)_}hq9PL_LqS2I%F0NpKta7BgMxw%M1+TY!51hlfP#99V<{n_ zBr737rsQOAW@%#z1tk-atbqVh9m37hRzXB!!hojFbuZA^*DZ0W!c2h5mHdeK-pxe0 zt3Jo5E3zVxt|`x-@jXRkh*YN@0QXapt0NB4dwUhp+1YmYcKeg((=X1yo_3eM+?zou z)fsN@nB~hsZJk}hPKdRS_7<4X>|=^TA#eGkDj8OXGz%*$8$u1wJ)T~iz}JO3P0JA< z>Oa1g(m6MYb3@5s_kJfP7eLrBhFUu~(h(zt3Rd{Wla`*!&@X{eicBU372bqj{Gqx9 zzgVuiu$P8=0o}+RYVZ^8htFvKfoVJ(*_mjYbm4ppXMBRfy^G{GCgxSV7^^{Z?6l_G zy^$v2@~RzCi7$<5-#6Jb%dQ+5e@ao9_+_#3q;tK#G7h|^WY|p1;XhO+;QCrgQuV&a&|h<;x-kONN?;Sy)&fjWo(+CNz3I&UX?PzdUIxb|k%Y5L z+2h6-(2KW_kJ;At8APCfGa8%H2fVzW$26?rW#DKcH};^_z{lV)OYBE^8-V|d^9m#; zZ4;P8yO1>&73U9v-mo)N|M+e6R!l5Zzc(#L6q{+s2Jw86Q_P@l3SM;#Gj=;fvsN>q zdQGRZ?ULOnsIVPGp^=8q-5=0%jsDrGlUK(#Bbo@_Jk`E#w2_xbK+Y`gc*_hy>ce3) z3Fgi~^!?3F7ZOeRn;W`BE^0aMnbxJYZy1p%`E)FK`rtEeV2ds04BPdcSo2b`%gaiW8IK+7Of+k>0=L>zaN$lQg3T(7DA#9;H zZ@$&R0%sJ zYXVom4>r{5ajpjDRZ$?68N{?X%QB?HUWLf>yN@0eUyzLRr9L#7cJa2c5v3ERL#L04 zME^{PVW~)EjT2x|Y{P#t+x>-iHpy|3ChWko!!B`WWBs8hGo~B`YU77)i))*q%#BU3 z<9>PteueB<{KUk>j(yA8A=Fe)y`<-(ytxW0)G;;`9&W8vAo#mN8_64(94M)#_niJ{ ztWZU)0D(2wr2rm8C{S82D&{k;#EF|3 zP?YaH4pWDy8)PTOFd<>_#tZ&Ov>xzrJavy1p4BrtVBb(Z4P_@x%4i5gNYjaHOby~w zkC-<4c_yOY_fREvM5)lb&x_R<=*)p1*E4@d3}$O5Tn*J&NA(c!#qkSAU)M+C48-jU zT$4s5r+PPu62&Hlgd5Q1#pXHP$cP9MlJWN>hrhX-zg3V51_3WuDP#KW28BXJbx!xde(8(SuJQT zyjehiYYD6u4~GF7Mu>-q2Z>j9Gf44CQAz>&zC^-BZbx26YG5NIZzV-1KP7?WqLSYy zDbOu{B2+J8SbPtBze`uCF8mFweBX>L+Xtc+4arw2sL|Li8#d;b=E-@Sn7`V-^0{)p z@>R<#iLeT{Dzf^1U^vY@P0oeGg;4KN?`ef&MLYd~kKdDq**$1hW=d?jWB~q}Bh+OM zJD z)M#52O%xfwc(`nkFnt=)VbHP;n9(a&C^xhvIVL;SIWAu?uSamj=U?If!cXL?u>W>% z(pAXSvxUf2@vz;Xgv}>yew1m{ZRc}Vie6QgjD4J5>PmQfgl~p#u5adx&zs1AD6y|y z(m~uoGY)Y&pwE z&r6T7QmzuX0>46h`n)m*9tE@epxw7!)Su(rk>2{8?(Q@WR!##h(JxrePmz_7!cpdM z&&ZTSScR%+9OwqwEX0(oS;=`hJ$%l7VjN?*$+!-VWAD;O71f2QNEnMZh6p2bpkoDd zh2^iScJlw6 zIdmH2qvxZ&d;i4f`)HFne`$8RrL~2-d-KyVz1H&AXR=RK`r(M?i0K!f*4c_xP2NAq zUa_unbWptZEZsFj8esG zWMTuU)D`$yj!%}DCYfrE__EZ|Gctf%1r0r&(H-EBH)zW+LTF0epojG%&1JoJNcQ^hq`%uEZ zT@zR{K-A5{X=7r?IDhB%yG$N$gk;#=w#Ww8_GIy0L!o8q`i!f#i2cZ%+mG(XJiFGJ z8@0vN)3u|$<^3PEZmBmFle*b%mu{;ISarp@lT9^X7DxM+mEy;ZTi2(Jix1bnKc5R9 zJBZf+d!>;TR+VlQ6~f(%SM5Aax?v~yz==U_jmR)9V8YL*57%*yEz@x z4}Z^7%`Zk#KyTb>K+BR9xoomkUtF$@Ft4mvv_0j=^E&Ci@4Pe@0P`#8pEZp;O&o7T zd|*x`WD(G{+jBV*d}-Z09cayHA*|rlw>)q=wmbQ<UhM3Wb>biXO`znwKwA0y+au@P6xEb&UG(v4ft%E&z-AU)uR^if^+s zB_brAE8!}EuUgO2n?C~@(d-vP^Fsk`Bc41L?OQ?pVI^_Q00CiYuopM`Eyw<43X7Tk z*N#x%A3R?<_`i<4tD*uzzvbp+LiO)J>vR@>2X$rV;j8p{gN&v#6cjG? zpC7cW3e_1D6bzi@Cy)zB{v*G!y)Cn$iM^32vxlt%BsUb4pa(zX(bm+(kj%r@#?G1F zLx|#U4t~hxR^PaSt*2($;ikAolMO5RV1bVEe?4T zqOfprao}fRad&rTcIRNWcQR*T-sU~=}fb20Q_vU8^Vr;`8bku-HS zcCvJEv9z}%`%|x>k-e*n5Cz4bhW_X8A304uEdOsycFzBH3(`TBKPfD1%&aW`U&UN3 z&HjIi{Ym+!*x!Er)12U+%J`KmJxpyhB`s}D?VKT^33GGv3jS^8|4I43g8r|Pp#NKv zjf0o-e;55i?WsoIn4ue4Ap5HGSr0#{Ws< z_3_7-l8Tb7wh$D&lqgz=mT`b34v-EI_4I7U#>O68YIY8}v@3Owx*N8}KH|fQ^`~4z zWhO4j^eF9dH$qLiNI9&Pl@cTc3eyrC@cSEhB4p1O*`V$^}8$fwG99|CMAX*q?#yrzN)!Bc!_VD@+-D z!6lf?rNuhkK%^IMpwg zV4Z$&up6RLe@L{L=wbXb;&>%FR=U3dr><-%c8K|k>6}3p(1Gtw(ZgC}oCm7uI>57i zMJY70;4L83P3+q7N z_wkH#{2fLMeAv;AYMXg>HGZvnE9%SLu{cI@#Cbt7i4ri6VbYfq)BUN4U7#)dY}{T- z7`HO*{8jE~?@L-~+C(@G{n+Os1=sC!Znvxo`Ihr}kKY%Vp%wX+o#PgZZ0W+^te=ZY z0W3T%=f*AE(v?;}EKVk;#|qIG5=(l#Js-!>y0f=zL z80|f)rIT0|cX0A%Drz>a!q2l( zZ$-Ea;4!S-q;>1#){R_gtMz7;qm=r)OfCw!TOVbg8k;Z?QAz z>#33n(`*qeUA2je@e=;ZbnpdX=Q5rkJ(TYJ-U4w-)#t%mR7L47;_uEv4H8{~QPIQI z6#Gan>u6Hy`aQZugiZJ$%Za*g;YvB3J6XugJ;fT(JQEhBv$&70Kfq)ie#($LSpQh*#J;L8^Nkgn7~bG~{~JJY!!5njYZwg?7UwXue3c z_Q{T8q#;+Q)&M(~>jN&=k!5VeHFi|7!0Kji!AG&85)=j6_?-TJ9)oHVKcOk=BwSgh?0$+Rb{XmiD(9Bh< zy82=q1I#6vJv3xfCddh^k2+C227DJVY@Hp480ErSFj6XM*OxKvoXtm1*7g>Koa+mt z$P2}LSgjGona0DwZkTf8S>`>$cU*u&WQLsxyeu4SY{XMiy7!DF7n2-2=}u}2@39kG z4qA7Vy-Snl)!edd`c9s`zZNkRGE57)R3SJKkIne7= zPoxSqSfD`kE+K_ZYOV9#nCAJAyzmr%-iN0@NSh6&7zKvKl9-GzH71=bw_5A2bU*DE zXAhgD+tTQ^x=ni)+AsX>_@n4SzOW_Q9vfME^g!52u@q(&V2$376vToaVO>3@A@5pZ zOqnpBmNw!cuWK!e&uEV>p7m6#p!Da-jQBNdF%A(rcseZiW!KcU*Ox~X5H?Z{VxIHP zX#DHTZO6sDd3K@tFJ%?qr*mNQ%fsPzaklRyI0+d`E7=UB>GyKKyB!ZCRTfJLJA#}r z^}^n3w2AdU)%O%;cKKEF7+)rYuQHpJQ7VoTW6?a%o$_%`Su_WR%b0;5)OoUiUvyb? zTRxqmvcyl(q}aP|v{{63`dI{Z^EhruHlOzsxsuL;oKXt}tY;Y2V5_}YX-6@E6<-Fv zs}>KBiM(cXj}A(3sIF?^4ws`1m{7311mF%W^d4%H0!xi;HwAmkozz*>NZp8PZX6eU zPY|bgV5Wtvp9Hj4YuBG4D*TV4FSCHP`XrhZK(_TI{TGkEA7vqRA$=+_b~M{*w6Yj3 zHC%2A!cLv#@2eo!o+S?@_MD(V@ywU!#}T(h+v09!mgR?=Mf>fS$5RdRM$?g$_oI^{ zuF7tI)aus2a=;|Cq|bp;D)*JS%j9%1v+G)>uLYjlsv=UcG{OqOn=7WmO;p11nxw5T zrwhjHcH56z1PW78w8L7BR!kpK7~=&_nk0Ph))9P^30$K|pV`fXx$%VCrEY{RR&&A3vvV7{o!%-$sraipA%JXX?D zV|;x5slw5!oD4R9INPq3gz4$~!ML5Ce&e|b^>Y-7V&S2Mc`$B0-9sN(3*hVWk52vf z6a}#%eoA)ueH9=&P{Jcl6u3`h-$sAA^D|K)lYf8Fi&im<(P#Fwbh!WN{<6?{_m>sZ z{YmR-o$xj2yMCQVe4X{80!Y^!u0n=o-_~p_ zs~p^5yV!u-;k@%pxvUFm6rb{V?+rAmJMXYeG(n4*PmSYZnkBj-9ey-m1Q{9XxT{?^ z%1z7)Z=1wx6graH)e`89b+w=EONXF%XO^*MVoQK`z5d0Qjy4`$(ZJ*q3e^Et@z*-) z*Xa0`QA}e~@c2e6Fc0mDzBt-?@3Pu6hxjYqfB~#fx+3+4A8|l3HncA-l`mE^%_GU~ z0<-S(_Bthr(3tbThnf!J)Hi?pRz%-kD6+PnnF5Mqjy+<~^OnV#TcwrlDz}-_8v42+ zt+I(ULp0Ca%Ft&$=psp}dS0?K`hGs1yP56<_N(peCW9EB_uHvzN=xS1K3gGpdY>IP z`@ge3cfLU%L=!m5als_)xZff2eAq8GJx}OsVeeS+IvgVPJ|Zu51F5AXGk*|blphQp znAP)^XL`RyK6lc*n`Py=-erX@7fXlH%P07B)-zdat{4+0dMCVJkXUE4H5lI=CJ1{J zAb_4!-moI~2%9*xDxU&rU%hB7t)iQ;Em!n<|2Gh_pLoi{$bNzbVjdaCk#N6MU9`_; zc@OmyLCzhat8s}19^Ub>S$#hy_Z81#Vuw!XVUDNtH6gDl3(wnScbr*Bk}g{@NhGP< zD#w^$;=8lOI!gxcjskdy4uSfMtTCDbs^A?z@pOU*+o_BUMq5-8r|KnG`&`dlfm3k0J8E}dpH&4+@Ku4-OUQOqSBG_aW>U&dvTjYr(FZjCH5nKLVCI_*;F2)fHMDK(t0Oac? z48j1uO*YkixbHbB!dJXcf4rB>$9_w~|Ec}y;sXv9CYgNhS{H&Mbs=?08JK5ZK+Q>k zcO7;feED-b%lkyx6iJLHtL*u9)sF?MUs0(KVI5y;ZJF(~WCLpKDkksxj1qlhH`}iw zkhM+ZZ0(JTx*p8{sdw4U00)l4p!_Ho%YR@IkiGK5tF)Bh#9Ft- zCH}Z^Rd3T!X~)4{f z4nrW+ol--2OVDV9y@L>9RzJ=Ey}SD1V7Wk}QZJw}{|Z!7H|b=;8-Qs$bJ&{omWcaf z^}I!X%%`RS@c`G27@ifSuGetN*w0vsg38>>E~?F^?T=IP(d}K(I#pBwILGU>SxwTO zRKLPcu>}pgL?NLO)9V;O|JxO+JMY8tMr;IZdYz%Pp4}{Og=!;aIzPxztE{3_wO!9> z!BH@f!L*YUL7FjtAe1OU_~#;$vbO41!q| z^_yB<4`<}zY#84*v5-F{qPH7_su_&78rK1^ITzv`Lh_h^!QdT?w{)~DE40_SVN&EQ zy*jMsH@Z1*QE*b=9;6+~a`AKN@}>*}0+>@O#U9Zo*;tt^63SR&r+S=v!<-m`iam@N zn`SimT)!;-xLIJh7J^Y_)NYE+Ein87V}CG_a!PyxrnALlX-3j@^nF^wv=~M_Yu#+T zI;RC3`eaDq`2te1Ep60er&GM4I-qXP0pGaIEgY+ zTfC7Ti2G|>@WQx;iOwJ+q9ed6VxunUgPws<1JmKjX0QV4-!TKLBgx7rugK>naJK`j zli-BMDYDU#a=)tCB+%3KN|SMl_bk=#jclOrjWtAVuZs)8PNQS5GiHW0iyPJ8n}+lA!`vgZxMog<9ZqQ40PFEBIdmDKI0a`UImE9;JP#0c_mv3d=5b@tT{w#|4i2mKrXT0Ci|sMb2xipf5N&o@ z6y45+Y`f2f&v_7#o=mgj+{yQl5ntDB-<19SaY&PaY&`OJ)a5{Ja3-PVX!nLTsavNp zTc1ixgL;4bg$q(2jc1&K#@OY*PKpwW&&e=GJWj#03N;Y7mhPBr#6`@YZ0 zs*6h1{&5$7;UQF!JJQC=4eM8NydG;BcK7yINH_t>t8Vjm zo@t+*sTd@l!JlKlV%qJVl-Z$_qGaW{J5QOx*OV?Rs$+b~e z_1YqpzHeXK`yj!-?eb~OQ*;S`j8#>bz24NOpR#VlrMaQt_)YAW;qoj1$v@7bzw;oD z)%s*@6AGzL8F)Q3L{!e7i^stSiYnVl%~M8Kc@|dZm*!9Dsy;&h z#pH^)FoZYaTu1@&?alX>opd&u-yBJMbudH>N*8;-Le%bH(pmZet0N4F@Kwx3Z+sJW zKMX2q2{%owAk{8QS|yBdn+m}9`v6}AShxw^5Jy}l%x|Gb1dJDqaNBz7OSP(auh&RT zW3ajbz~^w?L|QnL6+X_5n-u?u#JQghe#eFr9n#W|b${+`(RX>I#nF>}SAT5_13%DE zT8H`^0`#UWn;WpO?l_O)+?|1k4uchXM02n;uJ&qa(jwPUh6m6Y zt_3X;Fgwr{_EMdr5tVVCp}A!d2lR*fKkrzLXtW8b%Q6luwN{ZjSMCrVlHW2PTr951 zYz&@;Jz{hK%1S}%KTUt1a7-DW!)<2=OQm>|AdB46ymP&a5szbE($HKB!1GPr(hg+y zfye2tnIw&&2{|Gje6FaMv= zv%LmI!n%16tZDID_xpDXSxJ&v!vzy@@fd+$JwaqtSQx+L=a$^P5Y`i+td^?3^+@#E zoed>}dGkky`J9}0*MTBa!0(3B4-vFk<7#}^#CBJ((O94uBY$=ibTNywssO;A!>>27 zjbKG&W|-Df^?T+BD)#d*Kp-7@?uwxxNYz2WIAgp!dMxNGnU$N4*ToR+G)3KJtiXW; z>MiG8&oxpz$To<(l@rrqOd<|}%%$_YVz#hWb~4{n1;KB>mrDQvmsir!kJ*(4?&Y2s zHg;jwAOOtFyl&(j79+Yr7vIeLzz1cO&g3Uvp^8L$mYC_j10?|XV|?Ju!LmAfH8x4m zVy{3XQH8o-&OT8gN`_1*o9zbuFX*ddV^<7#4E3F{bQY4CgB)D?ep~>8YiTq!M!oez z$S#o7M{?%0wf%h%XlzEynh7Vi${{|Q#k%;*%K)ZDH{zUq@FN_Huhe=&c}1Myg$zzz zGY{rKzt69eLT(dZ0h`$KwIK9iRYf7wd8awUuzeru_GJEJT3{5D;`(AEXNw-mlgpm3VwStG;-u_UPtBoj@12gLA z81Tth1N2b3eLKD1!Rao-+IiwJb`gI%Drfle`10=7TSGY zEb=Tn5LMG3rKxP8ROX;z43zFSc=}{G$@1^Qn56hz4L`g zMeGM$b+jbRMX!|Q7Le(pNZI%+&(#pK5gpZdHJdom%A71pfIk8S`o|4DC5JiB$TfQh z^ATgWVeyE3UG@Mja8=$=bBxcdO3&w(K!FyTS$u-(Glp2r zk(3{dNg0%Ytn1dnzV3hMk!Sx7NP0AyPyHbIWz%r%7N!fvm&S)jR>Sz-PRw5R{GHmz z4V0oac%fjHB#J7Jqlp0*xWrS!RdiT{9t3{bm1uMkei(UF=ttcy9vFUY6=xRy-3(`! zfSphxyYUbzTrmZK2_stldgXc8c&N0EukI&CK;PbwR#i`YkvU#Ub zwt+pL<1xG!O~341h1i6D^yJfP`)or+bGE1coec$R)E}OI7)3kk*mm!_o@pD#T9yYgc`e%2^9UVQwn0 zQh#8;8Vw9Df?*hjb|hU2mlb5i*zw45=rP}3d^htpSY`N|qVAsI`kI)i?ghp>&E%cX zxXy?(1s_-?SZT;PdcG~S$9))v6x;uXb3aPWD+!j=pNC&mgK>U`hxCL@gWO4+w4#NB2*ZaN5o5!)<2SJ*{q4RJ0E zppIx6G~T9#FVMy+jLo+hPYI4k@2Im@#%4X8(7nXxIR;G>vv?Q+S?`KTjuVkSKsgd# z$>*VQ=Ah$J4aWc;OawvHYxT2QKMK?i)dO~?O*Uh=)sK`IEysq*fCp^$KfG^e8t9*l zpYZL+i&&fk{Ox~r5wzw0=z1X9a~lG`-s$-xToH&=;EmHd)}6xOyP#;JanMrju`(M) zq#^7int=C0UL9c%FriNb+)meTM{d9NL95KHesH;;8_RHGgf&=SBlUQ`o;_^XTFP(c z0iS!C$Zq}kxMW?Wu+|;v8VpCxxV%n~tG<^XC#>Z+*0AOX@dlKr#C`q+^Hy7{_W3$l zL+`s!6IHH z0;2#O=qP#+2Cn10E9`9w^dg#)?{WLxnBR-)FX2a$nv0 zLVlT!(-5`SPf+u1ZOmimT2aI#wB1r1K9M>xuJ&AB=B`FsXNhxi8hYmF!^>}wrv+j= zVcyslm`9zIFt9Ro@Aoccgy^=b&=^nw7sKuj(F!qnY05K=5vBe0#z0im1SeaPAmRZr znGW{+0Wrm_i!9q3R+r_nuOiH8we^;Fd%bnAGbmGB4N~16`1a2N%PLuVK~DyHH|v{7vPG7!*%d zj=VSN1D%Y{B{@0crBYGFIzE6_kQKo|E|1i99qD7&Xa2KvB-#b)-6%Gr05(Q^+DIg0 zLvQ0@*|TUTG4>2z;O8)w14H_Ci>JjAs9f3fI}hGsW@Plse!k6W{tSuqxR@y8?3_Wd zY;vECyRJ!Ob4gQjUA0 zZM^gpdc+g)_&)MY#|H+9dEnZPX?2shk=RdK+tgwE;WdtM%H4C~(Mu=a z3`tTxVVn1O|tpW!;7_B>#Opm*up{^^k{Z9`Xv>3TZc{`|1cWpQ@5W7 z6fkUHy39_fCVcq==U-vfXQA$-TI!^L%I$glWBynyQ|Xa@F})(bywQYnDR1FW-6HD+ zRIMI`)|K8kf4w)u4oT*y(e(%xhnWQLgh(b-v-{TW*F| zZx+Xj{+1;3t&NI-D)jGz`|vb_QC7{aZIhXNE3a{a(yc229{X8g55Kd1>EplUbhrdqKj$X`q3EGVMt6Wl4vq^Gv; z6cqQn@#ekrp*v7fchb*NgT$Tc7G63LDIyW%t%j$GoIq#aO*jgv;f28ri z7y#&<+X51w^8Nb~&jDi}vQ!7o)-p_v8Aaw56X0iu_@#ReXex(j^!~Ry?oZk z(k&$tDLNb(E?2CGX}Fdrz5LXLoccB4>Z&D=kt7aB$`=w6B!Ovg#(J~aY9E2mt_LQ3 zW$GLGZXSh@L7B05ik>S#zoe=V7&@^$rw-n$f^!f*-3k;&KOPlSk;7FxG@V?` zbM?mOD6PrK=|sFI!x7fKGL1+R(qoQV#9?kfmpp4Z$FMv6Iyd!ZmLn>r$2Hm?y!2bC zK=9unj7gm6bm8sMqUTR!SP+*nEe+{H+1GQ?(E>29#orSj61nMBsJ@(rcmOMgVR2y^ zR{CrsGBd+b*w(Wtqv+h^bGY`uT30ADoQ{6snBI7t?RZhUtiDSag^Tb&XGA~x1pEl+ zNP8qBW56TMFLv$ho0YGfk3}3u(Q~3TtLvT#@2K4&$N5xk9eW<9spY`;W4lPZ;1&0o z%OSJ8C3ghHQMR|#vP6kuPTgmz$&oOq+YE14-=W>E`4JLiu~y>8#ZF@1=tb(AsMG0Gpc7U`cw56Q0F*>m~R8Q+RSD_XB2VdX{6x3Fp~)+tcYfMtQ{elp1n6kr?Cho#wk`f4qus zekvO%@ha(I9O?Vsn=aEMPgww?ky>q+Ax{665u7NFBa@J|Uka)qPWVs{)FjM?a?>z+ zH|Sn1F*2UTr1WlRA(*9~58-2LzHjh!%;cK2rO#RQ07}z1Nhar80Ak4jTg~u39*A*z4=3`n; zg-LW6PZ!b5!r*_J`BRjr9wJ4V3t~l4Nx86^YG2gf^>1;3SP+E;nh4r>iOh*g@P|uY zvtxuud>CPv6UX}i4Ggwrgze?VDEoO+-xG?O2-$W@UbiRZ%paPVY@4T39@=S%c!r_W z;XHawky4r6f@^}+{8OtoPI_aNn~b`6PV~mDW*ahZ&>N=uaH5WF9nJHIN8pgdZ7UV{ zhLKL+LSqRRxq!0A2dLj>%pv3TMQ}4|*Cl2B@H!Aks%m1jd!SA+KANj;k@w85e;f=Y zl5Ay~gfGRI6GgX{?vQ_^m%i%r{?-|a3Y;?tE_Zj_7DqC?m53b?0CLknY;nlER@IO} zoJ-w5lfx98aI8$Bzqj}AqgOwO^SAnfg=>1gw_8mQfXT|VSe<-gqI~g*d}a$_j65Kx z{|mZX=0=EL6IMJ%6ASMvO!Mi><5gi`lT}|Ld|=r2_kuNhSF87pUc@nY0{tT;0t3_s zl^RcKxTE?x%oPTb8=Ar5hKo<{#^RYZ{oJBw$>WkN!J}}`X)u9(5a>{G(hyIgcBXd( z;`IC*{2L7Wn~ zRm+-^Bn{`TA7AG0Ai98a64LmY|B!=5c#VhcwscjmGa?&(>b7L@}*-Y!*G1t-6VdM zAXNT^4@4<}{vkMwux%Y-spI5F6b@f8TJq+LSx)MgwEfltari6C(O~5Jp>%b^vOISP z>cOm}I$`0?oySNhjnn0JW%EOc z;3R?lh-tx3JUdDc(}Hvk;=cpcJoPj7^1!cjerG!~yxajo2!X%wizYqU-DnN}F7D?d z;pJZ)kjT+gu&6UOr|rig2YmPx`&r+QasHc0q~Z;Uri7~se`bzLOroW&WN-ReP3ZPZJ&ejNrEBEBT_fxC5mBAgO=riUxjf|kCLr71e;9hQ zivMu{2!Uog@?udZ%)yMP%N^$lv2iY*>V8rrke2R1ge`uX)FgoYi?WwUes0O^^J-3) z*ZvRu!js#Y&p57SyTX?mQ@j}!e`92^qHc(v+*fCBZB2mv*8d(nyfE@G5TxvDFDG9j zM3^de@~Up#LUkHepR#{ti$Q~=6D}w5O8iN$A^+^s{eMrQg-yMC)|=*eIS!W6CYle-fm;#OOfEJoKvM&Er z(KJ&Z(#Du;TeOrAB-uYJ>tmzo1&8Iof znwQ8U%0oO%Le>9ZgKyffN6;z_Wgq2IlZQ9@q6#6j%VfKcw@>)At-Zp}|HwWI&>tEP z^z_61?*dn0Fumb+Spl`1488NYw@&A_y+YkDD&W=mcOqj&Re_z2>$d;#UmW6OPCXm8 z+kZ%x!Vjqj=_4OLe7KgXlI3V_0jf2Is8A_@4Qpp^c9y4$%LDGQwh#?NEwHZYQS#F>J0Y%xScq);1si2pCbzBZBh{U7>$`X48-9?* zX|OE@wcS%jbT5Vykrcld&Q*|;L#9Rw4B^HtvpZ%OX+D+SKKDxAp3s!auv=)EVJ^X1 z9?_(&Y2N@l0~%|16_qoGwOi}CgcDquvMI;nMAaTk7c}VJf|XL3rNF8x5!Ro^JfbhL zGHD%id<9vo6qmm#_Vi!mKYZEgxzlmH%moG8y+5z7R^J}l4f=9%AKu;%Q3S8C#~G_W zePe<*-jTlh(=RX2zR4{b1E*nMvH&Bw{=onT52X|qEwb${c~N^S9FfB`EzBayhws{Y zoFU16&8T|?jaJm2OxnOm8B@m;^MDpNgMmmhuQ(*Xqx2-|dYzIk0o~upK5WjG*<~m~ zD!SuxlQ)MgKm)0<*~lXO+wdv$zMb$7Pdst&jN}lI2Ww164iG@6egCbhZwRnfx&EIJ z?+vBw=C>kLE{20tguShlq+z~a81xM$eflk<8t#O_2)JLKjn7*SlX*F?-Zn$}jxpEs zTdM%d`YlO_WV@zXQsrlRQ{|ZLmne+jaV42m@qXT#eme8WDdJ{viq~{ zGJ22G1${Zj6uI1peACE{Nr_7Q7eNGUAfsV3#Z-)Xf^CE@R=;V5gjvISQQ9dav5bn_1#l?17Q(`d=T5L;DTdbxEwJ(GsUJHxEOw`-8`%#Mw6N=y0z#ZG z=A;Jpk`Um^$kslEx9Ug*0|RYfL|V!9Wi*=Nx5vEXhgIkvKhVw;iN5kdA{?p3aO zH9e!J=}#TZ!@sYa^BgKsd=CTRodK^3&F@t3zVV~}RV0x3N}y<=trz`A@$$TcCi z3)7D0n-54ij$#D~;)S2(7XPqu5dNZ4V7m;$fldDKcDIc)n1|rUnoSP55Ke=qgi)*m z0zZg5lp>u;<)Q`B4NqO||4t5rz)Plws*tXH=< zzGYiV_}-*~k=GlZRQ1}WoYW-D|}D}UTfR;RCJ zT9DGylXK{4RsE!S`ED5!09gG zLY!TxR0Pb>cdJ8B&2vh< zUF)0FovDzLhozU2rwWvr5PQY2T$Pv0;{Om?DI_bm>W76ycMxQZI|NG+YdjE}44DrR z>MBa?Hi*yiPp}3l@D4)D(1S!VFz(Y>MIcnxAG9(kRnx>a=dBkFtD_ynRD>BG9RT>1 zc{Uu#k_hj=3q1RSgwket52^a{fw^7>S(mssg)f%T4)X{_IT)-jq9-O!~w7^wyVu#5jbPMZSQ%x@^heZ8Di^kq(V=q)r=$pE zP%$+U(?zX%DaftdYe*d{L5tBNvRGoxhmg}N7`i)^x zDl~0(iJ{B18||!oM88x^W;T7mxgQsA7IpmNAkXjKgy6aFK};1dW7AGMr@xYRvwRe0 zwC#mFx05wK85qCSwy&*^20Itz;2Xk;1sL_cR{A}czNa3KMR7fo3>10DXYRf~9{{l2 z1ah9`EcFjy`VM6ade$7_Byj|*Gjf1fI$?CW23d1Zc|Y&{9_Him{WfO)hhqCn8fuzD z0vRn+xpo;vhVVc0#%Z_vDLt=juld3%Wer`Q8y4*nmGhQyAASe>ZRrkd!lb;P$g~)$2iNHvNNKn5{EGdR)&x76AkV zH@L_CtUpW)Eyd13hi;&QQ3hKpl8UPhptcon1Bwkmj)s!@(Z{G#M$S;9TwSH<#Y|<~6qVj?T0!oFgu=75 zogyUN2J1khH?rWE?wtZ=B&hinf^n*?J**D^wjg^n;#vm_O zMT%Mg_Y4g?Q4w=7v=A8vvK`uVyqD`+*yF}uA;{(6so$$N0k1<&9R$2B=lbLIsW3t( z<+;4s%splodx&D0V?gxd6r!gV-W(-Q96MDAF4lOu&~dA z%;;t;9j8uXS@dOXZp5Q_I|q29Xq7_&xM zFjnaQ@O0KuQEqP=rWqQfySqU;2c!iC5Ew!l>23+>ZV9DR8V01hQ$nS?K^hck_+HLA zzwcj{Yw5h}ojrR$_jOWqyQLm`w>`%r#CHDaP2x;Q$G`6d1NQ+0@SWQ9OB_AW`m5OGp z_Rp$mT(rFypIaNAw$ZZe=sZ+<;=CN-wxZM3-< z&KUpL;|D~}+L%4*E_qNhfu3^tr**j5qC80@NQ{Nv4IinLXZsIC)ctdVZUodPhU-F{ zPN{Dq<~vtY0L}d{e)a%Qp5hze+jdl^5>}^Ke&2qxn>otwosa4HYmw2?VH!K5k2)aK z=Conl)L9bczuikJUeJzPPqf7bNGKG?jQ!{%_INLm=};wi(Et&u%95*x2__QMjbf|cj{q8tj_*^T+@3$OcT~aq_Hj%jf#%$5!_w&G8n?3 zLZo6;Qcc_J-@IK_Tayy&{brQ-8&))As-rZQme!E&jFzVB_Mn2z{XzWBitrEKHf}#a zkxCF!<$B+vkqQMEMkhDOCEfucIOh|94r*1jB}hFsqnCnOK{`uLT^-8+a$44$#U7}Zo5zv| zM6G^LE^T~risZWYye+64xCk!Cw`0bS1-yuFf@%Pq6G}qd%R`j^;o;C&nOrW0g!ER{ zyNCjO32@9>v;U!}%yw?M;;7img!T?R>Af$m2IohR_yiQy*Xb8%IUn{Su} zlq?nm06$OOY#I9X>} z1_csZf`}_UOcJz19&gl4wU-^+j^BWN_Kv+Y-Bd{(J?|$VuZ;c9<>K5BymnD5ot?Jt zoPkYYMdn8E4Td{c#o0%*N}HU#sq@K?|9?&~#4Sy+w&SNuRihusqd4sQK{KCDj5;QZ z8yHdt&QidYqZ@@vzKaKzVJf1Ogf&I*d^Y-yd5_zb;(27IY-UbA8;)M8(GPZ7@EJ?4 zltNm^QvrefWyx@|2AQE=a6%g!Bi4X^=l4^>tcV+ z8@#R%$(Y+RjDc?E1O5C(GFXUuBA>LR1c~htG6BW?vVlw8+W90495mZgHAzwM;=(n-^<+&3cv*IMt}fLW+mqf!@$*jq(Btxjl{V zQEkK#fRlqwA4HqgtEzYfN2<}e!5n`idJyx0RAMotxIFKSAombljZbrWUX(XoPj^xS@D&vP;sC54&AW!m!OAkn zob6th<+)gP>xb~OUdKINee_u2hMHehhl|lUHfW0^yWw@?p zNEy5qpdq%e$t)`qX;w^>pRR3T%mg)H=?&dM+R{4{M3B&|ZGtvgF} zokU1@Z-@$^GWOOhaIbB@7in0qDi*AoN4~RbSATGMgG%1`p6KWbMXd-(({#5!eX`o` zWk-MgRfW}>)a#&N0qZB~e?3ar1r3DNfBM}wah%^F1~UZ zVo*0TkjN61z0efg`nv8ZAne*!4)f!{991|!6jBZ-i3@&3%E9Pos|+4yHRh3O)>e%) zf_~E3SCS2V4^|x6>Y&M8J8nTuEnI>V72*`xM-n8ie)dp@8J(2+ur%to#*;Z*h z*&n^2nD4R>E*6d{zp)Um2Rn3*12#K%?H%q*QVeArG535P)8n8I*P=j?$nyK99H09< zq~`(I4%Jbn(ve-h2P>lAyBp1vnwW}1S?cu-IAk+w684JnMQ~H2u@0Mx3SDKa*J#ft z3!gI?gX_)Vd0g-OpiI1I_+ZZF&r|l^8aV09DRBml9dba$uIl&~Vi2VeyY&wuFv$jG zEOUf+@{c^Y!gXHBOrZllHN(hA9Maz>B-+7gNGi+a$GX}vNNrZMCiHI%#L?z%@+nPi#OA*>cvvzW%nuzj*|$FNagGio z$IqlPvRzYT898Fzu@etgZhpx^`vL7ltwtrr_~G&=pV zO`mvPW#N2$E{{=_R`U{`RKMZI=FlglSscILw4@H1#s`Vbj`2#hdl3Yxa&8m_2_yfV zOc`ZqI*^hvK$fQ3eC>)b`@yEV_3D@+?`7Y`R*xsjqH)s?$wXo~Tn?zYns~qQTHcmj z)apA2p^vI0lF9hzR1(U>qKn())U$0P(XxPm!>AxS1M}ZP8R_z*9Y~GexeTi@pTdQH zjpjMWQ}KFAQDIsTWLzgmHBpvjeVG7R=O^COCUtnIbEx#tchAS3m1sMlx4GsvDeXIB8J}iu8IS3I|dC4>BLnm6;Sv1XtdBpVa$X$A)n61}9zZk4> zg&k$+I`5#;5Q}a^cv1}HC{Y%>{?PXGK@g?b4!_m6X=(FYh92@0L5driN@5gvp{y^X zq|630Kd916?W$YkZ4wjU)a((1?xwQ%_pE5=-+RM&0!ymCn180p%gz3Td(ac@f@cvQ zJa8||%|+6O;}*#i%Y!v&E=5_PLw`-vOm#bDzDhEL!QGzMvpj`L&12b_hg@S4M!x#i zYo*w-S^GQl)}U($JO1AKP&i`Bmi!>p`PX}(HSKY7!v)kWn?mk#j{7Y?E&7F^`5V-A zHor53BK}J7%hWwsig-VpbK#O3_tPbaaLr1P!6d#mG%qr-xiPzIej7f^8bf_u&e%_J zYS-7y-+<~m$@*tjvYDO;<+zQtB+>s4g9Jh4W1|i5@L)z3S|5itB=`^U9L-PYNv6b# zV{uK%vj#XRI+<8g&^VU$`%d(xia6O!m{}ac3w-x_UyF#>73Vz;Y~0PxN=q=gy({A= z`+99TUx$>>zDUVu$$b|K8^sYnC6n77P>>m!_Km=a<*c;dX!dDd8&Mf`M&L%pyna4| zYiA3?AJB9!MRUw)e3N6~a8V^aN31m38thk-16lMl;p&2?1TLX?%aSjSdXskE2CfUT$f=HWK5a#qa6=+Q@KMTVllr0RPnUc3cX;>oS(PDRZ zgQpZ^NaUbaLu|qEc-4BT%%;fQY#}?Sj0jSG9Hb0pCW@dq{H_cZuN8mYv-j*;c9=bb zCW<@)Ta2*W&@-&3emC3{Y;}`xI|2l$ip_5?+f9{tsq#%LZtLOgRxSihWS>Aw44#>y zSIce!d70UzFgBj1kHMCx-=6OGq$*6X-loWNC?L(@e?*k;-xmk^jiQ4pTrIC|WN*wQ zmHw!THQvdI$SUqiu(zGGR-hOdEF&s-&WK9dOFA!~4~+!eos>ksnB@$0>m*0ArQfD+ zzuNyUI|MelrG7j^#ZoK5(Hfp-#3W`K1kSEc`nBdp`?+?T`s;D01Ce<2FJU=CQCq=BaoOjilO$>k3V_#hJ z$M2?eceKQniHs*C{1=|lcp;$&(|9UPj0eMYV`~;uCtzxBrR14Zl2tD}u(hkxBITyP zCgDV05lZPjdyH#`@xAS|NaFC5WTCDJC*CdFp$9dAq3G%}Qy#eP!LBqhR!XZGw2)LU z_fi^sz^3u4G-r;jk}G09sLn|e-J>bJU66K{0i+IQQ=lQ{;#0Mp{47b>42LP@A~E2nON(RlGAfh$Om97qLbc}6qTw8LuJGbzsT_Y}()>6#1*V{r0>q$pRE+MZ z$^-ZNl1O51elm2qaob!SViY-#8`Yi73|Wq7na-8RA4V7j%i#JQv8Q6}hY6`hT!m~q ziM-LLba|f`+NUL0oYzlMcuI4Y5+JT0T|>?yhx(9PKW}ASN=@)78J9R8$I4eGqIIK- zjl`6>{Kq-<@Q=g4slnM?iA1QmxJDu`mVL_4@D7<>qJ0V3yFf@F3s5}MGR^&bi-0Ut ze%LCN$SYeC43poNDU~iQ#_Huk11F0cjE50jDuT2PWn)qtJ&5%IrDkp?9`*=-#w>TR zsCnRr+c2ujxTkBVa0#Uc)IXdmn8TwA3lL0*hpOK8m4`rV>un-rq}Tqa_+LO`t!1fl zg=;{tDMM~hW_u5X9SZvmR3BF@Uv(|*$GJMG$3Dg!e+p^}W~hj_X)2|zP$Ps2uMz>& z4polDv0l7h|9oRc5et;X-8|YV59CYgJY-xB;06ZqC&Jf<|74+WcE1z zeTW$;hlT`JVSXq%Auh~>V_y79%cGk zVrypcBO`Wm<>tX@ml@H3=zOJhGe#w%koqgNz4{$BIkNaLvRJfN50M!oF?H^Pm`C?fRq#(&*8REq$=1t5q+cIlr6DY@ zD~6jRqfruXeQiN)V`!YkaS&$iDLmJnxDUsX5s1dPnfmHFU}5vQ-g-f%3d1s=!Zg$3 zPbE%#xX@MsXBvvuNhQ^_>%mf2Pop@c5W?e`XGYq8J@h3JM17lYKZF^oq0_#gesl!FtkB%Srv2 zdpX8ShT1aDzCe;WSL*ljzljPvJHl8=;HwLH?IT>7G-R*Jzblpt+qIga=bR%>P45z4 z$Ox?13cW2XXW%npJ*Kg5La%7|#ZD?NHl2CMp)c|q-P!1%@l^?!o0??nc^h;cZ<5c7 z;Yc|)*u`DUZOG_TQN_&}p3Qx;;;Y+izcYavoXCiT5Xz{jDJ*?W$AlpD!3@h?s5Cm9 zNtpIXKe|aMBW2)loBuCn)L)R%`K?QaC)FOcW}1^lTs)eK4)!F2_t$od%-8j0>SE;S z4GDW-m4P+b4p$nJ8KH9_tr6T+t^=w)yYAz$GNGrc3s6zcB{xn}@L$e{5sBX&eZ8Ia zA)sEahA7)h+JBo}jXzV-^Yar#Ie-%D1)8uq75R-U`LY4t?-=mj67~2c>7)sTY6lpeTIHoGvIWr2U zdHqJorw0K{RjtNmro&p*3@Tvef=a2U+&?y(0A*{Y;O=vb_p{<44*N2LPLt}C*Z?JE z<1ST;zlX_lSKcG1jo>_Dos7ME7E65N7kYnMwsEe%*3Tb9Mow$h*7^JWrzA%zz8g)@ z2je0j_7ZXNLPeni3MTgD!LKw)4Ammb9n_2~Jwpf`)hlN!3^ZW4DIAt}+ksBl2uy!) zNAsgFUd$p)T@-t!1vE1+4ktZoFUw<4XKDTol!s4vjM8GW;3rFhfnS(fk8jBoTPsNuvXjAV+5|1CMr$$Nse;@r;2BO()Id*t&L!R&(CT zK=1F2Rh@k=32UZ!{EjA;8aKtY0qcBT*LF>V=XQZy7RUx!azquk|80Nh@|Q}#SI#rJ z+lT=yP7H2`W(~eJ-rS&(vzZusk9Dkaxx>bv;V>BOMP$9659#EN}dnMalT{Z_EIVu zg@=fp{MW_!Oo*u#iMrN$ZLNCCBMO^iI#v&R@XIBIEuz6O`maj$Jz=qe_L7jL&}1yi z7yfetS7;eUt$D?veD`H>KhlCytp3q(Oda74zlDcK2))UBx!rKeAcu%kZsu{#DD!<> z@+G?5d5JY0^>0ybl>XqPm^zbDWE?^c$_%rI=7mlKe5q$S;Kx_p^=I=A4sx;dte*;B z(Y(SJ@&FuP`(nED=;TeJ2Xx&Eb$;&H>S>dWqwPYGSH~0{(;BRv75KLePdu|Gr=>;s zM2X(NEQjK=x0|=(RgbrIC@Hr>%v0YJUTcr2xajzpnU{Vmd;i5Roa1`?gZRMG#R*OI z0#aW}(wimQ9G8XJG8+n)&VPY#pi3@&On?i_)qtT;vO=KGCYNERhD^+x@i>w4#0{rZ zPmgZ(a7Xc_=Y3WX3fKgBWmXfxsX5{6NJuNT3zZG=`*93L2U&RXw$#jClN*XMvCT`o zRxR>BuuzE943lS9qqqZg3X(Ss4tyI2hq6B~f%P|KcDGfYMRkbd1{SmPWV7c6wj*}$ z7%!)daZqO?#$_yXwUT`L?>9#4AD=u`KQkI>-VI6JYoHuUDHW8yeLiQBIVqX8YG?@Bwmu00wTYQKR?w=yan~kJV^=gMyuj438}w+-xyX= z8&W6XehzTi+FBdsCl97Ti!Qf1Ll?b=4(000W=fNSuU8~_4n{hF!pQodHxH`1i+ zSF`7!08lamQUK{1j6W;*u8P=E{kC;=f6gL&^sf>U?| zH|vG#Ut|BSZ>sP?J6{7|hT)0+D_VKUh;(48iW)TY0;hI;a7~b z20?Y_t*t+C0xQP3AfVsLq3~W0s+*L&8y@5C;`paUx+~PBu|d%anz5^_4POSlLaxKK z5yJqm#tLYv8qvQ2t~tN$UBb}I+T8fmjlPI60Dj}*Za)jA0Ax^gKh?y>fK036XyEQ; zK!sTE9FTu9^_PpE_v6cvOpAFVYuzi<4gZKgj?!;G zhB#gFVwm2xg#;j4!~p@=1<O6t^|E;GoR6e~&BJ{{qC^ z*DRmG&vo7-W`wpqS+^{R6fR{lik(0a(>Fq{a-BrOX@P1u1{EnEY44`SCjjQkNc95?)2ymBSM>|!YdCCQ)^3QY(=Fr_7 zKHB-;jx?xNUv}VRjvvLhY-TsCDWu(`n%5x|2@%3XVaUoA11xh zX^IBbqV(eei;u#M{3itydG9?Eb{LnT zsKA)f<)h;3En3Ib#Saj?PYBN?uLp zt@267mC;Qf^<$pH`~XJhvmH%4+!>?qGG_iGrRO}D5YwB^F%0_YdH7sgB4yYHk?h7t z4u55jjwZfgxz2?cGPbA|Ep-!)yr);P=vVCe{G2{b{_~s?D!b_Pd7pi&r@w1|j7PB3 zw5Ybs{nHM}GsW#j*UXG~FR+}kZXfI+pske#3f($*(aSp$YI@kWn39rKdKQb|eCmHS z>ZE>G)oImVN#7rnf;2F^7}1eeX|qUwxgP=m3@4?%;yS5-V^1L*o3gxGeQG)2?pO=` zRaPRa{+H5Ey+MqKVIW5I0gTv9b6zT@p8^ss^JzJ>qQ%X{!5ya z%yoMN(Kdxzd;%GXS~_*9%X&kAj&|LQVzxDS#C_sn?T;+dWF*fZ)I}IxC(GHJ_{@IV zc~yNvA;%*^ZKj4Tb?@x+ctdQ_cHF4K3P{mD|CsS<7}kzXXEIZTg<1x?Xc4O=2GLQb z8H%UwvJpmHu0mLg2m0Q$`o1E*48Y0Rvgnr+sHKdylyUbLXb%8~28bvz+4`zvirRmu zisn7##YR}dc{nVd5T2Mhg_Zzh#t*5}Z?w+`L^62+ZR21yWs$ zSCRO%k|BZ4l|oQX2#a?M?JO1ncd{fgLQH?O`0peBx~IGc?Uq39+d?Y8e3~9aG0WO9 zq9p=+UxZWH1d{S-bnvhK0YBgu^wyCGVOt{}R-Wf<>JhAv`Bj(;P~JWtILu$sa90++ z>4*`M=OTw!UtYdpNX60_Jld$QwEv9jPVxanK(H=E5sV_M2a&a~b7ndub61l=I1#F=0T6#i*akU4Vazp>|nFFqY*}C?h zW_?(K1glJHW&+d|Xkt2e?6o~8%R*IDM2W0`4L3lw zAR1lV1PcrrdWhr%9 zKkf`;WimAD@ZH#~e<2$g#7gH=1r$w4It8V&q)`#1mX)sGxwHx-gCe$=V|71@;}Bg` z*1SFzUjrUw1~J0@?iM;IxOzqXz_!TK7_7*QjR?*>Hq;=3$p0m;&wVCgPIfK0e}3(( zs(Q%| zGT?I=uMhGEUI>q0`_yH>)zyvQQ~7*Wpgcf7RQ{jyTRtwZ&BT&d;u>wqmZ9P;165$9 z&W2~V?fk+AVS_cZ7#toPMXJT^uc`Fluuro#h@8n1Z(fg>$T=(hdeQRdhe|4Tz|^$W z4rV^h&k%*E8|r_~R<=QKF;x9zXKEPBG0>YK%jj& zsp)dukb1#sA^q(Ipx0>3yab8h^lM4bNiQ85T4b)NN)X06U^*PADI1fZWJlG(C%`<} z5=0rjLqd+nVRbhyuGGKXz}ma5A*1S^e&Lt2`I7!yRrtTgIBPNxM-#$}6&!Y5Yg?%! zXY%+Qr3Pk=Araf=F zFHG>>r<~)0d-AX@TjYa!9D+ols=}HPI6Kcb803AXhu}!L;hVGw0fz#g*2Lbwux94- zK?kFhAqh_9u67~jQ#r#Yx*D10#)UfHtha8lO&CqxY;!s_w%Ok%$ts4DI-T{tiWge? z57uxdw5C;NpD#1B5chX{5*Qw>l2kb6r`U3@Ts{~&WH{8zj?}qqCpT6io6Y_2^BsXW z(t*#1WG-ZwgOz%9W_^@4#QWLIasJ$NgZak}4tYO{Pw;xZTbdskn zah?BLH9M3WLI)vHWFcq4tYo6{oHuQaGdJ=k2_Z%wXm9zwT~a1xlZ85qx6)X*nIH9{ z&_gDX{;|{W>SV^k&i1Z5y=p9t^HWE|BEzqh9@(%Bw+i*MImU$K)7+@CUzUX(Jr+7moX= z58mFhf(s$ui_TT6myh8H_Rv3Q^x3O6v{7>w2=zU~fUKZ=Ci-z!&1&r56{9fTbNgu_e_ z{>zPM%#QjI*NCM-5#6p#9QH%&gNW>n;kT*d*TI$!^s~p8Kf9 zut8e>#MB=&r4_3mIeVfVeWq|xUEmV~JSl@YL zZzpnsvo(DYOc<682_SDYGAtfvE6Z+#xC3;>0_|?Y^NU_a+wJctht{?HRq>0vb7#SA zu&37R@VKoX1Xhziz)mx0Fj9H~9VE1QpJxwjDMz;GnMd>{{g{6+eL76~YxnUDFUTSN zp1~`E(;jE(bJKbGBP9Q|1ygx@=%^fLZ>Dd^k2({jGW4fKx+&|K0!96%NHZ2?SrH@+ z`8p+WYuvN*q<2oLny*Q>W)V+Mt*$+QyTrR;Oh{5a4(j71-|TwUo)7A6*Ky;vf~!1rO`VH_hvO#-q`9`h(aULQ5w+p#x2Q943=#M`AXjJqxY74=fFO8|3`&wArig9E1-nxrmrPMUxu#DVZL3TFWT<&nKOIjC7c^>TV( zQqwh`#l!?Uw?8!rz;y?j5#p6xVLdpRov@-aI`$OOzfF6p?O&}X(>`ygws)a9^-zj? z!y4gnJ}54J0|W)u;UMRq-~3eU!x8_|{@0Cvsf%P=9GEA0Mqy7{AK?Q&drOj%AlE}z zfZ%*VYeS}V)I*w~SYh(=vp$7UV1xH(`=65US+zCJkfv;BnGg>^OPtZ@7PI$eKDSj$ zt_OB&V|6#heC~bPmI)rZsYGDj&wNeLYKqH`uRoa9-J41ii@d+`un5VEOvwukg-gjZ zu*ilPeab{I-|iDoz?fz5M64K?%9ou%=oJ9(L)qtNlxxu>xS%lU$(HyOj!omWRU`D>{7s%0fh`F%X&MM|BvJ$&7@0!^uyZS)zxwA+!@r$asGG!}a zRD_F$Y3H|3ZLg|7ybm_KIY@B*p0i>()hJQqJLmZ$AQcv(0xRXfJb{*kk)-nCe;MPQ z^k=ULxQbf#bC+81TbT)NFw@IRGx;Vu>|A8bK}}XfN`Mg4(cKFsMMq1+NXLtxAtTpN|d8Gq0yN$Sf#0sMzB6k4?~?=1Ns~)2f+6 zzSP0>1eBEN+gHk~BhUO~`HJ6TuJ?T~U7~88w!*>hO>pDp17K(@hXVk; z4Icew3zzYs)#D(#-~wqfz&(9p@9|xZcmyz?3j{vg9#+rst>&q`wSL%>dP<6*das!J zk=WQzBLL_zj*(hr(NgLh(_j#DzA1incjn+jDE71kdI?ZTLW}RDOsMnzn;E#to3wDy zxR~JX8K8JD2{S3VKp2uYB~G6lbw4rV2Vc~Jhjd)WH8RKE9lC40h>2Dah?ICg7@lVP z5GVuO*PvT@-}Q8(?z*9(wLRElH`XKe7p=`WjO6cT`ROnq`BnCzQRx;R9qEd2WLSE8 zmoF}QVIX4XEamZ2U&r(_go*DS?9+UCV`wF>Bu)Z837hb0GZnmFpY z6eHJdo0sh`d@boDeaL;fFL|E#mpj8yrCccOcT~QiIvSu-I0wd3h-f-CZ=m>((2k-y zu{kc37ykfjoIg*D*-;UeRaek89}ExinQx}bI-}D6bW=wuk2dQzEBO!feN@?jyL3CR zYCj4yP%$N4(i>M%PsZJV{~FX}Q^5Rd@)Wm6HuJh+oX&j69W>2Ssi=0ZY#=hCV_0{8 zQ+^uV8euOu=Gf1-eM}+RB1^T`_Hl?t=6bW_*jBX+xc zQL8lMoyTQdf>5e;7!J-(a0oC~55W?_Q#Vtn4)gFB$RVE7V4t3b3gG&P6USnfTWUaY zAd^=s&Oye1P@bpl#_ja2UCim9iNZ89!f;O9MvEr!&91y2nxgaeo6dS6;;=PSG-O*b zyr%F(W7jk~cjd}~g)V((azjGRL9Mj2wUFmWalP)nz-7NB_THuweLK|xU;X10?J3!f z+2M`rjia5?9(Gl+aKGDjiH2k>HW9ApfGy>6b>j-GV%Sb)2ZI1KxT z$SwTb>C?lv-zVqGV=gIeSFc<#P9-M4T6(_o%=Lfg`Ob@RNsLlSAgmyuI4RimxsB)a zG6g3fTg>aP)p8XmAFM$JwVxoRv2XDObd0Sp5GcrU8fffuRcN?UN+^~dk|W^!PBaWN zX5R~|WIVofS^toRXfUQ=Zf6fSxWyBXa!-=5#Ra3yvCB%|$YH0A-CB-l-uBKxqs^|( zY$chz3B&yn^x2QPrlj$nwz`r156$H$*ChRw4mVj`SI#5a^ol|Ldrw$Hc( z=-%ZDe`_5LZI#LK7NLpoKKW=9Q!?ja)KrXKn8Qx=u;>j~mf`_k$~6JN_H zsq;VEcW{}NMGok1X`K+-jW?Y)&%0l%xlv5lEc{A+xvz|!Z+MaFN6WQJ)z3U9OA&NG zMOYIfEYtp4VEGm455bg44CYiEm*8@bZz2LFH7a)ZZJckUr=8IZ4aN{^^O}1ne$6db zOL|xxP7AIrZd)$k7=L>{eaG zr&c4S;5W#-CXr3%yTNF(y7{GM{cw9@@I;Z)63+1l0mzBM_BpvY1{Cfy)H0)0SNQ~Q zgVG=oh-&xeZ+2|ZRVl1DyPs%KNzgBE`8{8TWl(^q-%VI&2>3P%(nN*U@J!U@D*%~| zA3|hQ)|<1$^W58XYdiOecV=UM7Ln33J~=JmUl-bIP>XTau`07223t*s+3{q;LY6!TEsbD3#EgC2Tekmx5tYOUxR~#-)Mi; zb8dpbqj@O${^aEIOC!MhlwO5Qx<^?ow_~IIw~yEg>f2&;JTIv3sM~g(fzw&c-A=!= z^tC>NR^;S`5zTZq1R%|3Q94p^4I zdJ-zE%8xUqXv*{UM!v=W;iGi>_t&AFyl`KkbR1=q2}3%@PRnd6(c~P-l|jg<$o($y zbuM}P~(lLtyL365c$e2SyaC}__K#MG@&aLM)C=rJ zY@O*hQ*v*oW&Qtva}Ym}mv;yfPY|)we4k>E2~CNh6&>2j8CfJf_>Oa|YjtERA=Uu< zoj_I;uV?w>_W_KxW4X-P)-CB98Nc)Kx zWX0tMom6c-;udqfWZTPTtcU!3kUM68DG~juhK#xEz(6z((p7sNcz8!-J0@MVI$b=! zbGv?fZ+s-v&{K92ypPuG$g-9;=)^X07OBT}P3+xS?BQ5y2rcYW`5cYwO;VkyIrQbi zO3TDSImg?-UIH8fwqp4%QDEwqvy7cW3Uic6N940|GiHOZmgkRJ6Nga0C42Z;IK@9A$_vEiGfX9#pgg zu@7w1<|^NFnzJ3E?^%WMifDVl&;3fiq@VE*X+?M&r%mi%#On=uJ1hhp(xfbnsm%?@ zJ&>mK`$<;FwQr^w)LK4tOMs{NR%D^fsX|q*YqgMp2$zH8P6_R1GJTBWI4a?Ik>9g6 zNA%-XTZEI<5GE@uc!F<|mD)}+T!O2Ky$Yx2LW5(+TuZ=h+eP#hhC_p$kLV{S)1+fT zh@Ge)EhOzLSXj)WH~EE_1w_niFS_wzMHud2C+r;$_E+Ne<#z9TkUPa@aNalmE0;0U zNpRq%GTF{YG0IC`hz9eCzBuzjP>+h)6|&TU7tz0%G`rfcKcLcAa(J04K=KF z+zj3eKVcU*cyWIgFn8HG9bvGJLm8V%SP+*u+M36FulbhPT?5GQOW8L~|2(J>;^c=2 zRwVApoBzSu53D|WP}^aM`&solW~&{EHNuamydJFRM3bw#ca zyd6fR0^C)<i(s~6n_B(!fv3~O>tffcf!UU1wiBu5JBB3{Z<+NdrXH4YiOz1n_TR2w?Pr5iJ;&Jj zkA1}&Y6Dgb+F%W}D0v)|a3b#gk$9f#L8z^8FWq)I#DLP>F>syVxh(4E?4jI0u|Fqa zQcpLNlCpO|qB+IYx=+U$o3+EljkJOzdENbZp73El;lsW8S|_m_1ITV&#vfD(m4}!K z$Knn!7A2+Y8E+yuh|_<224otGoRu16@I%wQNjGKunv*BESHJhbOMxfYdU8|tyhU&D z9wRZF5$rEeD3oxnhiuky2Y}n}`XFq>#s&*;#684owjAJY1i{M)K6tK4S_y17^Is{l zc$hIyh=%u`3q^r&l%c{7phH?n_}=!dEQK;b`!?=aWWx7q;*$8%(;fe^y85ea`oX_+sE^S%UCl^2*}A>{-xW^5zR);L@~qZl<4vXK(@C zcfkD=XPx8xv{Tp)=YQddy0)b$EQ3b4&qR&V_`rB(vz*hZn1=>WS<}-?9NDb4rQTiY z8iX?@_$wU~S6@ZlB%C(g2Tl*s8c#NX`|PqAiV9ZY_;2)u%nZ^pXbM}MFWfwOn@*UL zKai0-%q-4p3+nq1XCd8M?q|kn_?XYmko=j}9=c7Ie%o@W7?Uw-pPG`0xVSf;yJld0 z6`Ntf{rZ#5oTR`=s~xXSfLeIXO{u{RgmJaR&eI;{cG#8Sy3M`O&C}7LFXxl}mXt9| zkdjOm0eQq&WC8UJKjZYvj~Bcp&J8Pn@6-QIY-);Kts~g2h%b%SCrW@mk<-P*2l6zU z^!T-%dkHOa2b^QvUDo^`0AoR%zJIM5^K0zi|NgiAR4AN}Y@R#;f*!d-v^d=^r%0|)i+OduV>j=FGX;m31GLjhvT;ZHvK z#P--@4;MlyLm(gd*=Ylz5g2hn7DX%INL~cS5JJ5uWp~|mmmPWJk=0fqlsJUnP&W9K zB76-TIMDgPJ+#0FXrX>!5)Xe6N-2-B!gEOH$}@Du(}Q4#I}daO{J1Yy-g24EiQ`9o zfi~&^UPuED_=ft)M>_OVCkqczK2TcW2mGQe^@R2T2G0cYj8We~386gr*A;+807u#e z9tC&-$Ls{ZNN4vKV21uc*{{C(%KH$!C6HdwyTE;y!56*-<-{}SPoROm4ZbK@9IOc+ z!tOkwT;K<=;(a2(A`W<=t$+a?D68NJFGD(IHpY_xcbmA@916DylC~8h60hF2LQWGM zspLQql2TEJ#t3~vssrPHQ>ZTo5(6)+Y+`49nOST3EnWi>wMXr(vPKq;A+59R=JE4v z!MM4$leXIJjPkKj%SXVmcDT$0qd0VG-OR2$d3#&<(5H65ogdp1C-<{`ckFDfn&(In z(b@tPFIB$PI-u}_sf+F3qo>&eU#zgF&)eSi(7KUwrEO}D;zgdr?hEpXKVjGj?t4xg zC!-UvV)X9a+s2I>XBS?0p>4O_b{;=yhe7t+-~QH5H0Km^cJ^RKdC;IizGKRt{`4o$ z2P}RFS1ho{lEZ9tmo8mg2_O?fD)66s?m1r%F?jG`$EBcmfj#{2!|pzWqVW6Q|K7fP z_IK^*V~%#=jg#A7fBkiLV;VAKh@Ei43BFqe^&!|{SpX)=#7QTeZzytt|rikpgHcXaqd>dt`7uo!MzQEd&bNeHh3@5CtP>hIa1UR?r{l1xdT4@rtW=) z>|?kKA=F}B8aZ;LUw7DH2Rr4IQ*7s*cXq)QVHV!MB#Xi%xfG!Qa@ssRLy$$tCl5j{ zuwH%jRp<9P=bYnhGiuZ*>(Qf!D#xjO_(r2ZS|6U{K?0zyup{f_a5R(9{3W%)gQLCKT#7`Qw7CI zQPpWpH|ujCyd&$Uq%KCIcfxtaz z`#~;P|Lb4>vSB9-bDWr6=kP)V=YoO)Yu};0tzNU*P;d~S_u6YOS1ulU=pnn|h8tXg zK|n-UM@VOne3TE?tXzEY#rFRD?>o(lWlj0}Nl7;r=_{`HpXqcf=7#*pz8gT);;FM#1`e&ety3vVMhUtW78{xO!1vi7X@V zl`Zx-p9N(BUeF%ogHD8WloN1)x3ue(S6=DsM6e1`FSsD6v$lhsD^PCs-+zD43w&rg z_~3)>_19i^_{`+vlE>DW1n}h))@xD|nAR_LvuAk^T3+_q}S@KU@hfx#SXexdK<}gI=s3C?R1t4*E51 zj^%^)2z>~6v?aVlIREBpS zZn@!p|+XfG}i~$)eF# z=YQnrr-^$BA2G5L&qR?X9i-O4dqa8C56greb%cnQ;%>b%)FIWtx76+5wWVEu_AWMT zuf;a@+f9fIWy#Me?K~rB;aAT#Xz>v0AP)i^r>EmjkC28iigkk7eP+ln{=vmQ z%gxL>>rW66u`~b!VH%-t`|Y>)1?0@mj~P404m$84uZ}H&aRFk%HE?ku`{_@AYCr$^ z&)qtKqJrR#;0rDYejKXBH9RA<-+1GVKEu!25EKb40tl#YzWJsLu>bt$KV8uRZv;@C;D!PHVUKo(*G*wlIpANBP0d`dd}=%en&Q!>ziuco zwzAyXwP_X!7`#cfC?5eL<2}1t;f~c>J8d1hM-Ll3sFR(iQ_{;Mw4s2c31*v?dDgyV zuDfKFxj(;z;7uHXpfQBnwEW~3k4_UW1N!l2@*_MYcdqbE8baF`%?6_w^zPkT&)Vfn zf-FMzAOHAA`^#VcV*Bm4pC5E}#T8e$P)M0zaS8X#W+RXz>?1g{1>k(GV<8|wGjoqi z7i(Iu+Mqyi7!%4%SOWkL+5Q$9z>z#CDG1*Ps|dI}lZJ4N;>4^vRs!-OWOE=F_b6gv zww&F+5F}BMh{w7_S!TUC;glJ5l!lK!`p6X^gmCcPd+^>qOAn3Uy!&puJ3nz*!qUMk zJ_-f&Q5VV!FtK((2W~tlRKQ1&#_9rZ*)a-5Q^>r&Ky_b&N(Mq1WzA=Zg#h#PWVZE zv?*806TlUEIK&P7zz2l@Drz&u!kKs;5JZ*sDNm-O>`Y-() zix^gqn{K+vVWJ$;_fZg0PJu%nc+W4iM}qWi^RjN}ar)|N`)!i}^`ojW`K7M?jfC31 zN#6(}-?B>itjF6de*Y~aWj%D`v^3^BupT1YN<{44Zp`makQ25QHr7SQW-A~x1l!@} zWM|kJ2NhUxS%ussv`|z6e@tettIir}yfmC6a@LOR?AX2KBBf{P6*UHl8U+#$-Zxa3 zow0dRQsG4e_D9mn?Mmc47 zK^P%zV}bk#g$Rqd<)CaJj3W#p{GIWgGptkRPCiqNPd!QsZdmx^BUBTB0lh)cXV(9+ z%PzAY{NM*JEQc3}E5alJL6v*TB8Y-($Or!MKs5yg~S9cQ!0VxQO-X+s73z@Qeq_h57;x z;0SEsk-n;EmFIzWlt|Hit!h+?v*px{3l;gu6Y7Lc?!gt_GJ6j1 zfEDVEUnxtV3|0*mIb-!f2qqu!frWqzKbU<7U+5>`(gSR)2DBCY!u{&{>#z6Ocq|3D z1ObOY-arq+HQN*eiy3;XK0JdH`M@byk^-I%B=!d!13g4XhaE*3h^HL&g*pS?0fZkg zRT;fI#DOQcke~AKgg_i_a?r!#`l0GW;McK3M;kd}WHk=dN85z@C`-OLo_;U)NUj7F z2-dUU+C^S)pgjD+4UM%kJO|uK=Y1hB)(>_i?p7_@25U`d zSFd>kM7e4Rb1aBLvUjT>UKQVkYB-pJ2);B?$ zz6M(b?Wsh<-!+lhSd@O--?7bUi%5#woDzw=Fo}~`^K-RUK(0=0s^Buj+6)u`ggX}A5=cX+La@8}=9{Z$ z(s4sUm}QLy=?G=DeH4L@kcR6HZb7)GAb>IBj-ZABcGXo^xqm--zykrEz>GHmfgLv` z(y0ewjlex{m~93&0UVgEW^phI3hqzjL-}EsDTGjPB7_~3{6T+e;4k)oA7#OxwFj() zU@ZvvpfoW9P9U8%04#iGu`<>L@*t4n4uulMnik3s_rV7r`l4=xTUU@0?d!l2e}bX{ zj<_G)ar+%MW%3l?r3?CTiDC^1@Nvbu^UgbcEdjJ4(C)eCp5BHC-r#}@7jSS}0+%PB zeA43);0d@A!Cz+M+3jlP%$eR!D2&G(bBwQ@U@W4Xl9xfDeKYLMA&O zF++|5fv%>7y#O_E4YzTP3;}-wKN3!a{zOE*7Zcip0We6d!P7CLduOL7m;RXj^Dt z4GZuIEWXETLLL@LqhOGZ#RJO=_+W*hk8t)2J8sc#wBJlAD}>Mo5c1(IZAbkC`c;;; z6ebQugDr}&%Ai=%_uwOS2Ze!r+|yPW>5;qDb=O_z3+!3@gF?b~$tXZ5F}UmD>cmQFv)P;K6UKPlp_GsM88uc#Sg0kGi{c?N;4yv0_nw^1I_iH2rDfz&Fl;=so_% z(MS~n4e*Um6>9Z?n;3rU17fQwyN&n2E$4H68+jY;`&-V?hAWvS;iQSZb?`F?dME?T z=<-7-W9w8FBZsvN2#u_9V5S@a55aGrefDwXAP8|mxI~!3;z0SJJRo$x^6D%0_+yV( z&*Fm?LMC-1R5EkFdi5I3>UZ!Nd@LovL@-0Z1~&wF6cKR1pPt!pX2B6M5iq&uoD9l+ z@%b0_$)}$<^~9r4q2RDH7CSRhKH!K;6u4kHV78jsc?5E1yeWeq4qYrBr%r@(X4=_? z7v%$m0Q^{s5O^lp*#&6eqBP*51zfB=d+f2N6u*uxn1|i0fQj&mGK5Q6@7}$A@iXOF zY)%|>Bgn!Bgj@n;pdES;^x+$H1otZzK{s#S+}E8z8$vmCB9tS%v-=gw4DASw{pE(Y zmuBr**FYS!2l%+PVPS%ASXHQ-6YAf4|2^+Bv;%F$R>^zqxtF_%A$&tSeQ5XHcX$5c z&W6Q+fKU(av>5@I+@qYGcIs&^?2i~Z!q-lK2l3F)IvUCb`l$mqLHLLjivCJp04HdE zTRUH2Ej#Sc!>m>7R*n;G3!mUI`DtG)MPp={z)cD(2K)@l5qQBv>Y+Vo7oJg|fCWAT z_(uPstx$+@DZ>qozK$|U-vMvvpie*(?-TtJ98eT#pYU!u&~4-o79f;L`Z@fBzfED& zIe?N%e}#W2+DwixPQgq1R6~XUlSvZZK`hvu*%RVZQ5WL{lTmy-QcV|iF@eJN?rqy> zy&*$T!?LiNR~-I2Lv=BJGCrk(hoL>_BYc;zp!2OxRb2rtb@AO}EDdo1mj=5g+J?y+ z`aj>%cwJSpTBos-VgtSdeCrv5`G%w_Fdj0|#XUkXX(Bzz4 z%W9!D!bv+xCc_B)VxpFb!rqcGs4K)L=daImfQih&_Y(L14boMgic~h#wL+88^E7#g z41l~5;_C^1i;FiYAe+Ft&`1cH3|u@TNb%w!Fa?2-bOL!u=ZbO=|L9SchDRu4a1Zbh zs&aC3Y==RSauDha*JRk#OZ}wNX@MC6aCr_mgiamsL|DWniIZ(j{s0deC<6`Llc!YmRVL^UI0T%j1Kh}qg$8%FxEm7qQWtB3P@u4$;R45c zC13!b`pA<^KWPN6;KMKU7vP2;b(01h0(qd5xZv)E@&J6wa3ydbhZo{0M_LGRnnOAA zQg6VU=TM&Z32hIJv|&gKFt>#(Jc7=kfM9_|>PxV9TOcu|G=z7sF%%HiLgG3Ztgelw zfJ~PH(zTHk5GgzDC8VPm@cK4rKa2rnoI$Z_Oa-J>tJXfD7azYGvU3KwjiG=9R@SC~ zRB1=WQVE~gqBkvLovct_S{p?H5n+t;H5CwjYxtDZ)frW8&3sMBEuJUkqqXJt>|^Pf zk~0FMl8IM*1TxJ%MQT$(!uP8ozB{3BBr6~rLN6KJ&3O)WZEXrj!}Y|?;l{TtFP)7B zMEDFH4`GV?@XQqfDa0|DQYHv{fn?H2i_Xs-*}s3+h-Ixyn65m&}8QZOzNfEh0nhaUvt&^EQf zFVhytxp}$O_+km6&hU%Fre1cj5~o7-PE*JOzRco>XK*0|UUHwzU+N)%D>FX0GC@-a z+|!oiWA`sUaMXd4M;St>kNY_NaX91w4{%Iwn>fzEpe|rj2E~VKye{$(h>!Bpf1V?Ft3m462#`juZX?*#FF8(2b$?9oxV(6+l`dOinR(g- zBu`>rBEEh#HcshkT0(VBsQO^68&*nYC|%>GAx)4)w&-xhIXhgit2Lh4@gOwFJ36_$Jp!y~%Nu0Tux~ zN=l{NY6mI=kB|o639LIpfkpWsZ*qO)0e*m&To>t-Aq4!n4{_WR;&4NM4e_2K_9x04 z;H~3N$ih$`w#*K3Ttgj>Yi+z1p2>K{%Wo6+>-0<~C*CI81bwL{BI?Sit|ien^x3GN zH%f)6tRyksI6;Ye(tMJOiLQjpOJba;HyYF>Sd|hGixoH>nu41o!opY|+OmALHWw*gV-=;vQb1}RhMWRy8WiNZ@lW4AzGG4{N{d$E3Sn8z zV~u>^(I5y z7>tdj2YBRzAJBwLS>R2w@)7cf>!!jF`RlsYfTb}od@RGq#jolz!5UGa0k+>MH@O_GCG?IKe^mC@x1Y2V4EN_RYcVF4y3Bi#)i8o--^w~Nn>7eKp-nyy2#42 zq=0B$7{XkG1i>kn(owv4zLgiP)GW2!U^RX<6!;C{m}>YNs<$!X5tG+z9TALGfOQaj zKPqGiu~tE{-g2zIiFeHP0M-erPp+9i+tSr%=r^uVDG`|?Ju^G9d`KRF?n-^b`IcY} zK_OW$05p+ay0lPkYD+9lWi3lq6PT%V4!s5j){pYl>Z@8$;z4n#2>(mpz9t1E6+LJR zV5a1QvH?8k;3y2i)rIFUqg~tV_y)k#h-N^FyB1YxOXV;~eVbn>6c2ucZ<3C>>JFBW zXgo~Kpje}^n;ufjfh75$uC`AtB2CaY#(@;cARDW;dNN|888Rw7Rr)S4gUn1b zp=|k5E0dB?nkgZ!OIJ%n_(}+En+Q57TO=lzty*Dg7tZzB>@;@qlN%PZ)ChwPU!_vf z?~_q)knb))3CW!y#7C)04>zf}0zBev96GUOSU>N>?n66d9~4_26BAn|$RRBm}uBIelAvPS{nqMbesRs*3}>R6*IG!*d^= z>ngXQv;Yqn;YH%!U*-)J`WD0o{KIu?L>b&7{K62uHDcL>)0T1|yiZ$NzOl=JZ*4e- zcouF)_jO|y^2e`rmuURdgv`+R6*q8=%n+|#FvnKUo^B`y2yz}oU>bh&l8q{Y0Jo)e zJF}RPFSC-xI>=RmTzZzy3DPV!E?&4}sbf?_r`=N>)D!Dn1%hvxtT>K;99rOEhznII z9>KY|aG|Z4GfVtlsT?GR452`Dt(0Q6cHul*Gk3OCltgPW*Uw7X^~ZnO)!P$Zs@}>n zZG3_Ny(J;h9<)nE0!A{4TLN~I%TSqkT_q0-X&{j@fRdrW8W86Ryj4Gc%!(;rxX|bQq*0~X%|gA_%sxB5tT1wKB1hnbw3 zGww-@O~Ao=QL23W*jBdIAfBZ~uU?I07N1wFUF~fMF1RFBw{MM{H6IYLgLNUK1n~5e zVktzD@M{R^Azw}W&t51eyb`f#tQY!e5X zIMBp_CJs0U5Co!+XJYMFVwyI@leTElVw*l~hR*9*>UsTxu5!tNGVDCJeA#kav3!M} zQ^RH%xQ=ctP_`*-9tVPT12-LJli?sf^VM!q62}lceJ3GAv(4nOw+RBU1V$I;1Usuu zd-vg={ql=8>!E-7I)%-{dh>H9(f;dJiww8oi|Yw!APTm0V zfFgi!3%{%UFy~qjNg(T14>kdyZLmUly~+9Gwj8A;%9hKTg|MB`ths(I)TotFJ0ff+ zGb7NWw!u16Z7E5_hwNo?MWPLTJqeMC^f-N+dmkx0@pn6!z6hebSuqB{WBuH!fwH82 zB}5X{YJHIwsk2xe+{#w2i1;i8BCG?c(AZK&p2T=U8P$pO}HGKFB)~Z!YopL`^-}Fc+DJdzn zQKLp{hrD?@jIE2!oug~FE_TeZM_FFtjG>^6aGm_s6z!__st!}@rn7RQ?Woz#d%yjL z__pBz?*A&cCAu~U>4NufdZ4%~t*zH6D<4_=d!)vApvd*!RN(~~SB2;3Ptsw2uA(DEyIm$KVa zehXvugoi{vEDN}Fv0ehVGt*j6-q-3-3%u&I+HL||DYwv>Bc(JVBnC5-qaM-b{nX=R z?eKo9eu_dTp5e|1Z!2VBW3l*}1@mp@qjy=a?_6Z9`VLTSM`)g*@9o0dHGhNHBlK^QW}-_+Zk%%>o-V9O||?RM5L+eCJr=l zpos%b91sV#u5U!0O@jPDKq#6ybCx~$z@v8SEq}9>D^|K}6Q!Ds88g-`A7`I^h8=(W zF?Qyerz!tzn>c=A$l@@y;e%CT~>uXg~ZWfJy%NIaO96pz#Zt_^`o~{w#k46(Mp48PL&k;;;hk()s9PtrCIw{cY?mginmEwJ zf&Wzw)FE?ieJqKPWf#2}GiKRw7vAsJ}aE18ON3_n_IKk404@(Xe9nc@@iCB zZGv)badqOoiHQ!kAq1a@02ibXhLO5l_(=%Fz9?61;|qLQwK(M>(f{Z z^Al0b#$y4=ZrR$_E-ADx|8}#LeyJJdOtpWD&bIQc(Y8j5;IRrY!^{p`K?qK+2jLGF zn<`lkTo9y=1U+@Kkvs^FE@7_A>2%k{(-^N%76LxLra~?{JR=PIVsu?Oa|1yaVRp$E zpWCuAFX=bhXZfi$P5GC9^@YuN_Q}Xf5!NOMcB$x&EEkc0%^Hq5a#Nf3pF2EF1V;*B z0w>^6fB4ZpdT_-E-el=qiv?2dKK|o%Hs`Iews7Lx5~9DNm}dIP8VS-BdQZ!wU|{uH zqctAE1uM{sOqJS^|>T_H0=eukrik{9DQ7@0&)x;kxS+iew)|UO}Nt^xneYR@$ zjA(5XbZ-&8>oX<53D@;=)ITPbu(t%e26DlQ4?5mmVz`7f;<*p$8@i7bZMtpZKobX= zIMBp_t(F5WxCy%~ZR>f^K?i7dHBE<`er}5w6}o@|;(YWDIru<#y$T;dwgCU|qmQg- zuO5;Y5bbLR@netM>TaE_d8ZDR zUogNr?6J2s@7dc0u=VQ>-}hJw^{8o?F~^OF8T{$bK4were8}2d^d0MW-uGpv47#axF#q7Q%;WE2z z2gl#x3P!p5BeVYLa-XU-BzT1&S|TAiw@Y_-X~Hc{nzm)i-3N)LO73eFqI0e4ne*}s zwp@L@_|xaC;uEvgyO?zvyuWqWbx&VoF?Yn1w*21bRHoSapL>a);O%r_F;98v{M8|d07mP^<(b1H*Cpkqix3<{%pA&I!A&w)~keNq*zMT>V*re zS<4nyk(Ozh;wA5GRnbyeM@lWDWjjktoIbv>HmN}aXOZchFVkZCtW04FOto{V6eHZ8 z+${|zOX=_~#kv^bje^FN^)!Aih;~*(nOQkwnyr5KDNAqDSBD3$wiRzYWFHkv(J5MH zYhD{^Rwxc1In46A^^o zt$Oq&n_jS;wdgazvgO+53fxBeUYySA`=ss~+Av(J^EJTDI+#h7HURAUfT*7Wk{GON zB0vwRErj@RB~Q(JXA(WDDKv4Qi33d>XyU-Ph69Y<;X~}_=ER2aoSYonZu@~QFfUoM z#9n)Ctc@Q1igoYS)lNP2r1fY-;duM)cWvOn{x)RDU{^>+jCj%J&7W^)oppvQJ18>M zA60!uG!Iz~C!_^sC;3{Pu>o$9>k1%4o#DA5u26_DR3S@3nYPR=k&xD+xn_J7wzxjp zO*8gb6L4X{{i#XV2^)Q=z@GxsP^l0n6-$CwI?`JYN z7LJMj#2TL{)xkn&giFq!SorP)TX@$EmOIF-&xJp-&ifuC zZL0;`3tUmimJ66$IRwW8S1dMewNcBXJRz^EPt*uJdl{}ez>XPyxq!LSBA2pgcP|Ov zOBUN2Efz$uxqQZU>OPy@y2Au)5G#a8>7 zHeU+Niu>=g*5{mP&3D+{iar`=s~#I|U$tvvJ74=pYc2tth1%>yHs{6XZOO~`S=q#u zw)lj1toX{a=$Hm_#SJ1#F1tlx>~Ct2V1MbLoB;er>yH;ugcY8 zcNCE1_NWC@Wl}7h6D{6cQYx^rW#}v#DHP>uui~QB)~r)kZ%cPSON-WRV4*Ns=qjW< z0>;-Ssl7RvuylE$E&c3cEBV;0_uqeHEei^4>YuK%qPrio%pKJx2kdKW-+SBUzw)AW z8N81zn>xjc9(d7mj@nb!lKU-vw|%T_C-ns>JIkj{vAK`@%`$rRw>AeHZEFf9+u}dm zX4AIc!3LahZnW;il_Kbfh3ftni;La**dZmK5RISk0=7k0e`ugTjE~VF$_)>@J}7Rn z0unJV-7+#a9gL9d>2&xw}7 zUU=a-cKhxBlq=UX+kX4){39Jc+FVzyTxAOuEU1RTf?jsfTDfwi&6zXDchTa&&QM1~ zH5A`LT*?+MTJ~!|1@FY?1ni@}#dWv3YAtEk8HMR#ZrVkh@MsvqH-%ina%KyyLKBb*hvwTq^4a zvP#C%<(4f0wNlE++K=D2CC}b#>CIYNPWRqcx^RvaJw3|Ow#%~ovwv-^_821fo=H|U z_E}po_67Smt-@A+^sa>5=2qFVt)=bM#^yix3tKw&c`N>6yp?@vwzRt}CiCQuB%Dho zzi$~k43If|u&EEw_+-%FrmLe?Z(*>Bcrokkf_tJ>BVisKe2A>P}h zXsu0>EjV=3YC`r;3=@t>PzQ($-_Up* zT*r5?S%-GkN~T3$fX09k8gZlKNVj8~6y=WwsCBh_LxL-?HW}VVE3A=$Is#oJR1cDg zT%j{1$JYQ7d+=>0g>Iy+#u7Gi8|n$!YO61vXJhHWsVz@{53IVasCTJ# zeW^A&z`=Q{zQxRBDgylhKBtn`spMrUcoO)YYQCfb_br1NA7Qo(LgSVK-*sVyz7Go* zEVMqF!OfMx*H4Sf`L%7=*2az<=a!DVyvVhRQlg5U^)YagDaYjHZB%Ecdj%?MNC6}L! zRuaBr<1u(_YQPFmrjw&H@^Wp_xUmvU7g_gXhKYX}w)ow5tn7`smUHoUtl&piIbEwK zpKYrre_@NqyliWqdd-%;`MUK!e}Gkq&&9G1q~VezOF?eyc9t$)FoTSsSSn>9O-j;y z33jU=f5lo}aI*FJ&UubI)|O0J1}Mta8jgQjQafgc56YpEEv_+ zmQpSJ&cR(u!lzvL)IlPWp`D=^76d*>z-4$YlaQOvN!Oy84B4VFNBu-%y=6!-MoGz$ zs}D2iZgGhqx@^Omj1swoHIqviR-6hcV_9-@S~dS`Tkyoct^A`8tx88@XkRD~&5u98 z3VwQ>wb*HQ;is8=xdoLEyU42EyxW#OH`ywuthF{j`ib>A?_ygb9?to}Wmfe5cx!&z zA=dhcp0@J6=WWsTf3Wl&wE;lBS)a>)?JiNwJE#C;$ z%zKfGqQX_e@51-qv7&pQxBL_LvmS>XWw{+YTeJNSwicp&Zuzfm>4P`f(uZ!caw&wA z?{L|9)^7j9ZT^eT%3|}htvu{#>v8-kwo+|0XZWMG=7~owdxuWe=bHbxd)$1jZCUlv zc&nWEi7kEfPAi)FzV*2F@0KUa2<<9KH)2R=i|DDwU)n>blX!mthn!})viH!AQb43Z zU>V8E(tDhqZB=S>b$@r2L$FU%-_6d+^7g9AZ)NGS2&OmBw-rlQ*xFGaSewhgXB~Im zT}nWfbwA>Gt2+1y@w0_o=5lPFCMT9Z{#RS_(2bV1c7f&ZeWK;=y0WMW}_wlC0|&+2Z?dwmCogzODV^&DQh8(=Ag|r|YI7Fec*qS}aTC=8O@kz$L)k zdQuGSom>JOc&XuC5R{Vh)b}|EHYpKkgdBY|@N!ey6M91XZwimb78cs$PdsZ^U3IzM7YWb_ z#h_KIR<0m~cPF&t>#vWs<`N=~I_hvw540{WTx#8W$Ss1vzzERTHW@}eT*k7u8I$G;iEi9*_>XVgWOG9~1rWF-S zNz~%pwf}s`*0yhF&3pH?ikVZ)5S?}{Mv91HVC>i@H5z52p)_Gbr>ZQ0(&l{mnagLL zPr1N)?4(5~Sfexv&{A%1X{A@&%o~4V86CS=`zwc8+kx9#ry=`G$lg^Ji8Z!d3P{Bl zpIX*lgRNM~QSp9J6l7!wt{f8}aS#Vy-Iw2`1`Y2g?2aOHt z3#;TxR{GfoK16gr_$cezyN|TbQd?UgS1q-(G&w0^UCgxBsA%+GEwgn$EBktZwLfcL z>v_Uy_R*ASRyOKCmiFq?T92ahiu8K*zVZ$$kjo*VtYScXVyhqfldbL2 z)m^!m7${bmwO@Q}Yo~vu_p_C??c2XjR>)J%vLtVHRsTwLU~>>G!r>d9>iRYYf3p=3 z7x*<(P$r+pMX!vus&*2Z_Z=d$RgqqVgtoh}T1i)j(G-`@E|~UZE*bu|Egtu#b=v1Z z!HG<2;p0*pIQ)(AS;b_4oXzGM(>6&Tn8pmZB5w8xYSjb%&cf{lBKksLIN87zJy(f zw8)s9j*1t_O-AXgV_;H_S$v;#0|x-t8Z_A@c+2GHzUsr5%=T($bN>Dt%amJH#iHrf z{DN~VUqUjjFft|SGb(FO`!3dT_q}ZK$;a5T2S(YvQ{S?_?K{}~iQ{eFa}QXjqfW6N znr+VQ*p<(bTvJMI*_5wr*3%E!nz7TZ=U;EM&U^3Y*hFn27aR%yIdb)BbM*1nzI#t= zDXEODdZ&Iq+GbsSrQDr5ThGIf@v|u)2b`gmX3|&7GBgwJ3!g z(OOFi^!;0-#ogs>?Mu5!Az7^j&(=)i$tqj)(fihZ=iMw*IAqJUsk-3=t3(UROSR^s zTr$p#XCAX;7^jRIYRh)7=j_!et@aEw5{L>#FZbwyaWxgAcN4KZBmlT;S)+=O03+T)B?y)`Y;wf@Ny7O_%KXza1a=_3? z`Jhjzj`W;7>$vCMmi^~PEKhZ{>ekhATC~vQZzRmOlakr|$Q|Vt_PBjG^#fZw{vAtK z7wCWQ6V_wsVOFtXiSX5~Q(AzYFKbt4DTK==jIqVfy{GM!Ke1Lj@1ZtT|J2$VKS3Os zLGOLKl+r8->9ktZCDmT~mhz7B?xeA%Lsq@eUwM}+B0xk@LmtUvI*WuLy*?&!;G`N-QW zvqu|izw55nOz%#+z4x+}Pya{jPvq`3{$uO;r(3MxsN)?D_+Zh?l*O!%*6gH9!JTvE zuWizs-?5oT>}Aci-(K!)T2C_K9nZh`#8+*=Re!LqL!^wVT(GP`Gji+v@#D0>{Y`BY zu*{0L+sV2QJv8bU)T3X+jaR^urHS=ku97->-}s-5U;gr!H*78zFc0(Eg0W+?GsF9q z-de&@shkX}G$3eT+~}`D9ZWA}l?ILSuRoO;wv$yYn`gQE47HAWv0*yf)X`wI1s_<| znbh-a@p}_&>c9VHvo8FB6^$HWCE6vWWZ@z!dToR)xaoE){PG?7Bev2arcQ1$^zGU< z0Jqk1)&ou4k2~kym==6*=3hqW`&CjZHN>xX1@?j5$N$je(t&Fboka>D<~*% zA&;^I@5r%x;IUoh&wu`Nn>A~e?K5N_7jmNy8LU{J7o<@Rf$YsU->{J*N6N2yyy52u z9tg(NgTVOJS6?|UW5@=N+#D`Vf8ty!aJ7@ZCK3+;bg|T{U>Yr;sPW4LHTG@idRu zkN_J(S+2lmR`rT2uCT?67u()@?_C2I%DIdbvCkhv`DFMck`{iXgDXlVe)Eq#_L$S% zt($zB6(2&#&ogBLeA+YgiI5h`Bws@r;*;UU^Miz$c;QfTPIsYUZ^pmSBx2+C) zQ{A|(I!?MT(Yl3|8uPNnw;bV`*P)Y@H|uJv#tP=A&)U+db8W@Eg`#u0wP@SM1y{!h z+H&(<=|U!eeq5$lobHp92wYM!(p~O|CYM-vze-y@=V&4Sa_xFF^?R3D#-M)IMpl_j zDRa&r;RZih2u+={M?9m&^MAGSFP2!*_z$&U{#~n_v(^g!`VT8O`UI~_gS3QPDLoRj zU1>s|%cvU4Xtw2v)?S%;e@1uRqRib_hWY}FgXtx9WJ@^;$Q`rq_- z(RrfGNK)jMYAucO7fIZ!l0wtAMROg}Cn5UX7p$_^0BgV3zTQ5?+AM)Z`)nA%IuCYN zclXXUd37I+kpRfgBH>65cMzKMai4sp(>8Vg8E@IDXC_$X zsyWu;jB_k&y8>JD)T>tb{;R%Nzhyyh-=zx}Yqb_>(%)~f85dq+C6nH=@;UF@iu*>{ zqK{v-oPM&3$>q>_pt=Gt>T`u;$}=Vwttv8PyD)|l|4oI>wtyrfTE#a~8Y%-B4Y$$2 zY-M)7H0Xu$wamAcM_wR*$I;sJIbx822}IP$wXwxJf&4UiX}=!zyiHR>=N`1P6+EO} z9;AKd$=sTzSsFUXs#!B_p=K+loPL(A`1xfv;73@XQBSwtSE+EUa z3(HyVQ%w1{-g?U(dgvh++6N9CXe~5@5QJ^g5t5g@jfE#JgKKra)bkRk2{q@&tzx{yx?Qef;mt1m*wQk+oKK}S) z9prVi?Xt@*cG~Hu*~1S%Y*$}>wY~Ai8!pJrnKRdJy6F%0&wu{YZn@{jK><8acCe7#fB*g7k&n(GI<#ZMY9*i327-U~wglJUoZEKnpa4HmAM-GoDV}0U!EMfDgX{ zj=&*MPl&_ykbB?<{HUK0hac((Zor?oA_)=KT=Pr2@4kC&&pr2a7?dSnoR`21^^P7r z+Lfa-&N#z`N8nLcZ2_D@pnSakIDX^7+RroA5G@4bJo(O%e)^Pcl@y$hoT9UP){|3l5QHa4+wS9nS?+} z9_a((B?7kI4R#3PbnEm=32vM@Aw(jphbDX^F!P+Hng0q2XdM2RE1!H0q$4nSSh7UB zK1r}e&|IS}RhN%{+0rB@_W8jTmZRC-Pp-M#GWzYJ8RXq;smAp9;dk(#h30K{*u@r| zcDSv6|4}P?{ZZe-wB;FxXa;zk&HB;LY}rSjT6@hVm;R>_r~m*!07*naR4<-qD_^-w z-|3z<@bYV{xhxz$iOARh0~MeLfe_^Z{77dlMz@0xw~{%tZS}ajZ21EZ+rm{3TdVzA zTg%&q3r-Ksj;p-#y5gbxie-xgQ~W{D6nyaJOpbIZ8dxGY=K@QKAI?{~+?L2)YWZ{b zTjsvqZSKw2ShF6zt1W!B@5cZ;8$tWf8A$h2X- zjvnSR2mRQ)f+k^EkZ*Z0S1xFipqwH1r>+McA{_m{(~c#@d7wJ8q*TIRc9TLrDv@HD zm2hQ4frMPPCf@Gci)@Z&>*xLD`?m1GUs>~A_O>nu9UjrFbvR4k9%CghK4-1Y8Rpg% zy+qEZ@a|-2=AM(n(}ingrEpW7C6nHjWGw|@=n3Aw9d_T-R_(Z_HQ!lVXdj{XZ{SY8 zMz;cMlj!mBhzVy|Myk@9$%@k5%C#}UqIXAH(fo@fMECK0C|MkESg6JNS#qW7f%_8{ zy1*|HkHqIcf0@?3P~0&Y)6TK4B5{rcHULW$Ej}ZpdZnn z2-M5F#sQR>+6ZS#`5?zOK@J=50S@kbkQ z?!}g^_M57;H1n?ez2zRWr!R=-z0T^NXQi_~w$HCP*_u7{rnT8_2f9hrr@ZEE?@#>{ zkZSJGxC!R)hIm8Q!Yl@c9L=cf1*!aKu?=|U-_})rb+cbN#3qkBCovWUK(&=uN1_wx zrJwWSaGNUSqvNlBYJD&Gq2+h&;T=jNju&KxrDgx^rJ?R)^Y%Nyrk!@SeWga;?uwtQ zV|MgGE_A3`YN`>1);MwEMEl@_4|IyJOv^GwvzTYTwuLop<(GyWrA<;Diu` zYr*e+_d8c4f^f>LGXf^c3_=zP0s<5tUtSXO1UHN$Z_1A4by-3iD-!$-!6TQHIHgKCdb*d{c&kujTdSNHHF#|{*1VpSR(8v!S z-EhMVcKG3kThE^Q@Ca`NTj)wI1AWAk4sV$GCqM2@#1jXPQ1(9k^i$_Kao`KjDHqDX z*T8eq_+e34qgg$aG9j@x>QvlUBC>{s*WGLOp_ThVP<7J=Jhc<9(Y3@-b3I*bDXch z-IjuX?7syBsrme!09D$OKwEIn0`#6eHBKi2ar~nG7P*h0fP`}Nt$69~pHaM8u0%yzchSyg%9*ie@hd`iQQ-nxHRo$v`oVbXe*78M zpwsi7WHs_`1t^CVZZ1IFQEqzv7 zOYhXvvU_hADIroi46lj>vn-8Wu`-2oVjM)lVH@DtBcHbt%>Z{l=2$D&PF9Px;J9+$ zN20HM zqxVcOL*R7#Y$+k>Z92_dI%;vfmdU3-hJ4%Ywj-%5{aZdpC(lPQPNE7Ra2+Z}hY zC9jUK>>*vHD2xA0ATW_AFQV*TyIS$ci8k-eG1hv3Hf5r2c#z;vXuoacT0aFO&IOpH z7fG$E#*JJD;>jomY1vvdq?fW{(li_RuuVSoY-=%SC+j1{Wn&HN z1BQgIIbYAQzx?GdJ`0PGgyrCS-}|0i0zPqfsXg}C!>tb}B3KP5hhQ0mDujFlMBGIX z{&26tnu1jTq4A`XPO_6vKG_Bg7~tg)Xc2<{{qKLO9IqEk z$pa5OU_0)(qZXiEC2Pu0?8FmJbl0V4pL^Cuju`1{C=NU9FjwSIhEO8dlJ12UUhuLA zrO=Nc3jU{@a*EB-2XXjw!|kM#PjaQ^$tRzz7Vhu4=N=b;pm*2_T3DwKEJE~q@4e@i z8J@u5% zR(RWX*kK2Uf4~6;xFQDLPdxs(`sZ=p{=ma63qk*3S;`Rb>7($Iwnm{wA)w#Ura!;> z=Q{m*fVWRj4Cq7LQ#bsk&(p7g*G8@rXPkr)^WT; zo6r=|*rl;vc|)EkF7d4Rb@`%u{)W8kV!ru1XlTsff|%YBn8%EGR*r;p38w6Bgn(M9 zxS~0;tnl4&+M)78ooVodmA=nxycWX_(#i4&xcUZja9+9u$2D_jOE}anMk1nvCS7v0 zqfn{NguqI{JM5MT32RjnsG|@O%x;w&`qo}M3@z%>)7l+(k@Y(27#+^mPiq~zYiFWt zc_2)8C8tsf5eFBtHlj+4u+t>GiGYM)m4GVT(9sB+=jb15ZH8Q9G-l$?jgY@$ z+GGjAH`}VWaZvB4vQ(O4f7@IF8>C4-HZ%Yn8#TAgkQBPQr zcKga1+{ya?_CMD1(4(9ue0@2aq5?}ttP^l>o``UwDz)<$Yb`uoaT&T#OOpbrF+WYb zgMS2giDH4!ijZ8fXpWb`wLQB{dvE8;HF7D_Pt%Zo?gWedIS8=lNoQHHPUT)X=0*GR zU$<)Q#hzC9&g+t~)SlP=)Vl0@kk_GsRcJ+ut8d$@=M2d=6)OvEjkc>T8~?b3@8(iQ zimdqUmo4x3^WE($Ysow-8TY)U?SG>70O;ll9kN`-g4yy7#Z?XZq!+AOW~E7t)kYI0G+zf?N4hvYjf7Z$B2@qDs)^G>XqG1V$QH7z99cUAHWYgFKwwa{dsWI%_d z?@#ar_EC-#LFrO`pt=u8{H!vzYxsA#G4UU|tf24z{_3x8-iGIy296viME zG~(*3`V6xkXt3S2om{8uuCjUe++nL1%=6iY@X^~ql|nmmBSM(metTI{WJN$Y!a9KK z55g-#6hbkAK1v6IR`@Z?jezv(tFQWCjsW+Uzx>tRhY%nU`Vl-Y{mG@io&@0=W#zv6 z?sLn=jW^z?onVf#3of|8*LQ#?LM?779L~fC0wpHIhgo&-An=Uv%7R_|lF5${OF+0= zCZA27hYlTTKl|Cwv}LspR!WpXX=yG~JhT!AOz?kLLL@F;SY;>+Z72w*opzefQh)j7 zm%d(s-DmdNYcD(GkVAad90dyDoSA;y!!G^trC#pOfBv(tPr2%1;YZ$<)HiI{FzemBx6VGe)s+d9I20z} zBgE4u5X=KE^u2!SZzusM1b5zfr(5Q@zv-r%?8+;zbW0F@Wz3i{t`veN@ORmH7dzpE z6P(BJaJ8niP!!2;N)PajwOco$meBM5HE!XeM} z8({tbauMVagV|j<}V(qsdq|>amU9Nom z@e;`CsKxBebSruYY@1(xTFAiT|Iy_kgpjIP(4Lrb!x&at_QWf&!Ar$slqt$vCj!gkin*I;Z{HpSSk@ZFcQl z+iSn)9B^7=8;rpLOt8V^AP`7^P(V3nX{58`G> z?$f8LE3~yd@;l4Fh?d|3GE+KVxL$5Gm&@$vmw&e9?|z@Hl3!_~gpWZVd7sVx;q7+B z+_NL$gY`}wKsbwww{gZ4s=(mGK&nqpB?%{JLOj8rXg!BFaUn&8{Kx^|hz^7SM&seT z;pAz314bl(D8#b_Hw2oPn*wQrMPrc_-_u`$-S~HYK#{D>w(D@bWmmo1_I&&2mKta7 zoL(l=vy6Ovat&h0b<%lWzA#ae5FtUQ<^JDW$3s81_<%8%I`$%q50Tbl{%wjP^^|24 zwXFG$A6mz=zt!0!I-y=|Oa8O0&T?tF>!)7Ec{>42uU}!=jf=$RRmu0~c-#G#U)$m@ zf5vv*^gmX1%5XdK)|>38@7`&ZC!KD)zV~xmapMg#%M$OBjx<)LQ`CJ;5PhJh`_G78 z&i6qGC7AQ*AVRGp5?EarQQ5pSN-cViz(Wq0E#Fzuj_6qUss#E|FV9#>Xi#OLE$zG7 zPOn&G=~eSAt60bF5B<_w?)$y9NrRJk_zzb8=ufTnzMI9|cp)kwmTlxtJOS@z$2ri6r0cJFDSUq)1 zyqE|Q!8(lpMx5%a=^zV;2$@;?yqsrFu+*TVWfOXjCC1Fu!`SK*CSH!_Lyk*}SKHK| z{Z7Ki<^F&ne7x|vPg>jBc^20L8scuvSqEes9CB`=a%iDvwhz zd8ng7EL1LjF;O%b#f0OqH1gaFZRho0v--u0ta|i#Rf#5hPjy)o(pq>4s|dq}Rsx2O zYnXS;fM9IdRfd7W+zJL4rV9oMrV$v#y2s=Mh6yvSAN}ZucJICSx=#rAVMy5xXO|l0 z4yN}#?|zRnf!u@f#ewY?KmUdAzQY8<1oL3RRPr(>MGtC3vA}!*pF|nVXH>kYhPjycA0 zMQDM^M#F*QKIUKSs3V}zHq0fO1^h3l_a9=UKmYm9+Xp}RK{vr**B=Y z|H=177hU8GEZQCD$!S#+ z#{1v@erLcZPMqlDhY1pb2=EC+0JDy{2zY(xJKu2=J4~fuwCO9FGw!2VV%|Kdh%pl< zPH@c;K@2|n(U1ClgbV18FojTyxft|Ekj1R-yWjn;!|SK{783X&)G+Tbmx30I6>}2W zBWxi=Fg_<7uaJro%F!%P2h}kN+Cm4$0s)LMV2-1K0$=9trJDN)+l&Qxq4A?0LLBt! zp2$mSZ9t&HnV$KKhJx~Fst^>RKYqP4uB^-(uQeDvX$?PlBX*%xg6?eYnztJ6v3^K9++|I0e$ z_?l69wxmXX?!(q!S`QqN@hdCW*&_H#;2ezr0<-6lE|XETKNw^;9nxAnV8UeI7!=#+ zyY*TOw4M^?Hskj0_+PltM825F>@Eo*;s@dqo?Jt~i%EUpU7eCvhK;Zk444upi|1O! zxa%4w60??ZZ+@%A9{RZpCb9lQ~KG+idN9w@7`L=ECCL4C?I~7%G zq_sTwC(Au^n_hrslRorW*Z#ct-=DLZOHZ@0Z#u)qHlXiM$xuSW@e;Xoo41YZzcI^^VC)+f?cc0=x;RM8vQlS&|V)u9bA-109y=ryi9>>Rxh&w3d~UZ znV;JBCm*+@%%%uiJ7~&O8$3oD8fgNcc~0Y)*|p7aPt_geJO9mMn$s`bZLxvltm+E+ z{v0{Wn(tB&p9g+qZGZW>`Xbz0>n%2Dri79|TIR%aEhWCG?eV)Uvt^k`DLjWyw7kOK zBB1zrY{ILupZb>9=GGIB>BRAq`S=Q!P% zGyX32Qewijo+Eg&;z19m6&eh^AK=@du?rEZ*IF-uXw_oPHM43t)O+!)G+$v1pdG@Y z#slFuEWV~6+cI$ZTMvbRVwNKSptVSBL)sIU9RwbwMk6Chr zOxg7A6rv7Wy|>J|7p?WLH|flfn=CO(0RxWY%n{99wTTdvlphvO_h|`j_)`&7p#G|B zZM`gV+L!6D%Kj77o-7BYfcA;zuwJ5OIKlG?gFW)_BW|M)Lyjp83|J6K zVBAPBS^*wRCJZXO@4(=LITp++ZD9^IecE(~`|PvNy1CQZwQK!AuFrn%v(97!GYB1A zcTeEWOQn=df$63!_kE{b!VTs`7rpr+-(6;h8zvIi^pRcgfBxqWT3ub8!7;jp}>kld?^YmQ`lR=gxI46eeiUhy;#|6F4C70k>T+!57UReIXhN_|k9a6MRv+Oe}}i`G@gEXk#8z zmwqBt|Kuk>ar_v!Gv}UZ^Piq?zxc&3oPLadQqN6zuEMxep9G#HG%>uixX*l}Z_w;; zOKc28Om%N7)#29TH(q~ueqQUu2Ayj_nEzt*a)mYH}7H)ipNc z$mzbL4o;)bINNp}_a)o&=$*E(afh`meZt!AUuhL*o+vZs**fWZl#M^{0zaG$zYtPR z8jl1FQATSn%$u6T3@e6XHRdr&312&8=Bcs>MuaAHlPx`yT*G*k%i%U#zs>PY$WJ9N z_%Q6^@WqVomYuzr>|ta5nT~6xIHmP7B@Mq+9?pod{^a%U!Y2Sc61q2V#4ts>l%HE# zXOZpPYXhpw^%)`cNUf!&9dGHCimbUtn-t6bU@M!`mN-s)B)Lq?9W)Pxglg#1F2 z>f6qDear@q86RmL)SsBzA5c3{nxN_OAJDt#nB(QMFiK~djJAv%(H(DSURZzJTt@wN zt%c~~zoC^rM45sC#r({DI9Sg`7c?DJ!W|ey0mXz16Cs2-G#sM5A|kD}_63R(_m&UJ z=%)=7)=C)FQhV=lbfhMjntvPyTy`qGp+0>`L!-tpeU@*=uk&# z*w4G#l6$sG@cN-bF;BGiDJNQo&K;><{k0pupM$K?*m6>-# zeS;#|$>;KkB{t&opR!S>o({>BH1@sl!+!e>{^wN-APS{nx!o(Q-w7YoK{m4C??1q% zfAaITSc6{wtDjk7&MeCPlLv}2fmz~yfCo&NJD62=b-CsqrdBYT z*v7;7Q5VJzCYBWNBR{~RE^WaKlR}$xgEEvQj}Hv=s+B7}a@M7nTxuWs(1(fw0Qj*3 zebY@h`OZ1a9?T&9L(oEdgHt+w9pHEU_1C-ESlEdU?Q&)d3_B)6Xbp%o#g0EFV%-xs z2i%|qpVH)uk}@d6btnTvO}_#|P91QCiDs<0N8)~xojHvR^0{m||m zQt0pD)~~+)yi^MCobt}l8U!QCwLY9}!MPJJ{_F>~=huI-!PmXTW_z}9U>)jq z(YwXeRmlfJW>;EY{ZK&dG{?Y!5Bf<&VmeVTCjoqvg~-)P|Oea&pd(O`c&D$DHD4U%0=4 zaK-@~p~%lXQM;Jfq(;c(Q(6p!3pPMq!yz1Ea%nPkbrrP0ML7%ZiNy%)FM9_iA zR>FGS6H_+ZQiI5xKcE|TLBdG{?E%ajd980 z=b<_3W25owSpJ-4mOmhCoo6I0Xv14$jNeOQl7w*0!wNk&9G*!evUaIc5DbQl8E5VH z>RgqDKeo)1GG9}(>Y}wjGFxTU4~2G)k2q3~jI2sF%~KoCI}Oo*Ft75OuW`MX@C8Au zlauzZ^|?o^-@5tMZ^o(aD%y=(=S*G{vk?|Gk9Ygb{04rf`U>9hO){M?SZ{Z^~JC^EZ3^Rei2(tNCt@G)_Y zOV_a~se2Dd%Vlpo891}LBy(dEsSA@oU=g?fMA5d z38ogjz#T#3%m49Z?-yn=I2oe_ARii42nVN|t~ben9O2`)xBS+9C2%kU1|~uz%8}4M zcwOO!7KFs_kOE#|4EPTB`G$Us3wYLwW|(6^cYIf%JNKaj-!RCSJ>fS(zo8TP2wM1Z z;A;V$7#ncG=^hOMLMG)x+u@sXv;nPQ;xTE$q%Gtllz=}bUi1?toVt~I0irQ@@WBVY zE?N?BB;+t!rLTYO>+b79=x6%G;*F33ZZ5=V?9uRGzJ*qew$V7C>7Z@OKo7>AR9P8m zKLSnp1`o>eUHaR9l>7k}J6+x<(JxmhABxa_J|Qu#j-&FxhY!D($+Yno(tO}hPH+Pf zbpP7dz8cY0D+9PduP`@C;RZaxgU?}^I;Z_%*}cP|Q(+#yCVk;CVh(6M%S$*HcO}!M za%l-Nwoai|w|?pCR(Z-eoA?jcSapA`A!2e8gS1P|GpP^ZY)2~EWc^d;>0F5Wt?ujJ zvLnto%TM#p3l2g=4yFyJsnCJEOj!8s0zi1S*=`n72TYQi$>^QK84P;(+^h+o3<31R z^>iU7P>iYI#DxRefR;z@wDhwNYSVI^-u-K}qkN9#=3Ws+i=sUkT(HnOh~ERxdUo3; zYk&3;?Oady``OjcLILal_J6e*?-^vf@4DHx-v3LhO#amdo^`opQdLs0?6s-^NgF%m zC@a@G*WM;3QvMGWjhn6c_usSfxr&t3q0pyQ6X=Qe2dDfz+81qcdf()vO<&vuO67j@=GNwjk5HPt(IQ& zkW8M&MUhyyuh6rk$XydpvC31=w}gbvSXvRlrXDR#j5f-&;hGU2l{{*iB`&&F&hrWi z(@)Oq8n5gQS*xsDZ26rlEI#%atG@E%(i+KM=I6hZN!No`aop(|Gi`z@4}pd`lvK2~ za=q7@?)r;$JoOuy_D#|~J;Tgo(PwCN-i921t_{MUN18+DZx7e^Sr}-2zajyobjoPF z^}OnV9Xi$4eeh$t&f3#8xSSey3of3?QTuhI#jXXt@as8$y~r1_8(nwlWt1C=8W zxKb%h&*=U~4=fKYHlfsL-Mqo_(`Ixp)$?!FBT@lpgJf1Ou$mcje90+gWO}a1d}HS+ z?@TJpA|Gd_d02t#kXW)b;ab@x(V{DQP=@>1_Jy5UOnFF{*x=s)^NKkR%rBvI`Axn5 zko`SoDwrYR6pZsQCPbLy!1MzT*f4M-BoyGNe!~qnSZ!^sGo1Jx00&bp7*I@n&}a|} z7aVXf$7~8mUtq!r<6wQ$%{SQt4?N(^9vTnYz}Fz5zCI|X7+()G2{7#7ig5LrfBB3} zsGHz^AqX6Vb0txi1T()}yY|qHdZMW3Z`Wawe1c;;nbd))r>{6Jf2Okb1g5kFi z5`tDpVTUFB1`gwZumIzVnHV(1=YT$Jkxv0W6~Kpihl$7M1iulqJqQRev!ir^^Ho=0 z<&Nu^S>fLSE|{j_5RL#xpJ*@i7aXWdKIUeOBf=G03-CZtyzy5zx&M`J==>S2zBV1;QG{wJ7Z zA<$fR-F5EpzJA^MK(=B(O8XLSmgX_;945C*f*I`+@up-ryb6L&5agJf2vGDNf0BRu zw=dW=*IeWHAsCVniV(!mhEbmAa{lZIFzun~LlC4-k^4l{Hk3Z1w5ShR@NN8~6^OX(&7+epBla zW+3CQy3TTMdykDg_ISNVrJYw0l6bW?Y2-KyGw7NQnI^f@xi+8JnP-Q$N>PIH%iF9) zXNlmKP&P#-rsF0?4&Gv(JZ!9XtYczAbMiT0iRXRq8VkLv*a^;TUT3Y3-7WKJF{YJb z>P9IdR<%O5?pUFFYb`l=7%vOqAdK~H@xDs)0KC@6?zGGzIZMyihR2{ODkt2A)Y+g@ z&#@7MhRDZK8fIx`8Xve#=PTUkcKQP{{cVu&z?_TVIGbNkWT!WM()tgSY3G8U$Y%eC zRz2)2iw&P*9q;(Khw^nnOkr=^7d&jqBc@uJ4uo^fkerNL<>XGJr+$~eUo=zXF(FC> zrL0b$PjKS9Hk;aBcv=z1Zg(cP{LJ^rA7GBm&vv+=kj1R&>91S!038qTjt@&{5S>LY z?Fjh}eMU~)ZO=R?{$!ra+y?8OXtqLTWP2}>Feyi8=y%_*tm1SDPSa#QB%g=O@<*gu z5hGinKp_s5~$Y!c{;P~v`aKzM=OM|Oy>$IIdZJ7c;?1;&(?Mc6Iujnl^vXK+4V$P}7 zra6##qlcjSBDuR~rY`av(sklED>1+%OBC49`5 znyesv_=>~S3Q5oHv$j>35+hVaK7e@kdY%sI+G8h2X2^F{qToBbe|Q3q-(@9LJQhO z2*RA~YhV4EhxDZlG(ea!!SLeeLL&MW_`__26T%W_I^c8-qY15WoF>79vI|Z-_`AS_ z;^-XA%qZgvzxuSNUMg;VlfVbq z0s=xnNWiR-{qmDf+FgKtfVR2!qarowXtu#$I zbfZNgs%KfscTR7KS;5u!11M_@imSEQ}O{WMDLFH#E#$z7c}xE3`!DL0gBG zY}3X~K9&e)+z%QE>M*bP4tWGFz%PgA2SJrNf`$ko5L_5%o-t@fVtjZOfP*lF`5FC3 zKn^EOGe#j{V#b^aV-fNXhwskS&|k-gLziCDKKxy%RQd`#K<{9p(#?&Q(oSb7b9R7g z5mT+krO zgo_yGUXf%hNs{r9!(~H9+Mu~_*5P}% z*|y((S-vYn#PsP*4E$L1s>~lTOAP8n8+`U9Ry9z53WK#-qn-KO`WGy>;?HutmZR{s z|0-HYTk*s_5_E30jz!wNpM9R}{wG`80tp7o9?&A$WUWI+Tk`E6^ax9B5~wD0L&x0jLwQbJbQ?6aK*OVv%4AS_ebaTBB=kk7~?-?Y?eI@o{MqWLu>J z^_E&{($U)K7riA=l6W5g-(ivgPUMLP;GQlVMaPS4@l)ivHs$SF_Ev%L;wk@?+|(%h_#&b4ui2^;2o_z3OX2rkivVC*n;DP?^8K@&}2o-mU_TR?f>!N|fWEnmLE z=U>?Ahq0#&raEWLPluHb{o63jC2Fy#V%pbOu$ecP?K*@~4boKd~@+H0LT zMw0>K3WNE*?|;u3^(m95IMW*rZ$#h#2TYANZ`y1_hiRum3md%`sym^i@{Y*up$I+cJU_J&~G6$hM^ku#w?4m*9 z#Cx)CpOq)K<+k>9q!81UVG_+yh%bcTcXxo58 zdxC*%T4? zt>jFlc5+=)!S8aIOlk1-Ovj|*2w`C}I@_V;58tq|Sr=J_d@1k=X?y54F{3S(oN=*s z%(XtQU2M4xPs!Zm)0VyP;_5$7~$2+aCS19H6CD zn5Gk+FTTdgr_2H^G0xL0U8M~z?eyp7UhH}OmdUJ0!d1(ZIljZ*@%;TNSYegtzgHTC zSz<1w6_EK*Oae?=77qWgYcx7zr}YcjPER`Q-_4DSj||OSnQNW;eV_nSt;H|5xa&=l14y& z1oLjSma)24zdD}$4J@e`%m*d&1~T)y}sBq>JBg6|+u|+1UomJoN*a@hp;{A_fXP#uKu}4_?A?r&~(9_Hp^%BqZF$ z%5^|vy+Z#=7>!}tM0tlFHHYs9DIBT^c+EtApCDMI1UE`CJr-$=SscDa zj=OMdmNi3*WYUpu*GcWQljU%~+}fYKQ+Uf#W{@;f3cAqo>|fP@4h5ccg|tVQ)jef`xUHln zQtIrZZ1q3>lce9lipFu2E&29;S+gQ2l+El}_+a9PN5LP0lF1qn1HMN+(BeDlobzq_ z%+J}%|MPXLxc;j;`;F^U0%ctX<;~uMnz$ zg=PSADR7}q=pUnyNoQP$fJUJ|&;&dY4A8Ey`ySe^?qBVF3-pCv2q?@Q60k#gCO!2K zT1v+T_y`Zo83c^bH((-IoOar2j_Z!?J6!NYz+|ofD~vb&;2Ijyx3i?}$-%tn#RZ)y zOByg}pq+k(c5bxW1N@ms&-6J-{{jpIRPZK`GV}+H4gv|LdW=;H;lv^G2u4?EJaC#v zI06Qa_w+5mqB!vAKk!05@)67^%cnv%+-RJfcIp@SqrIbVj1LJx20DaspzIqqbw@oA zwtM~?wu7%N;;gB!cVfLhU@FYXj2JVbP2oVx;dEUR&rUCM*PUs_%%!!N*7UG611rtO zeD@nROosuwxs=xxqp9b^KLA!9!bU>tM!HcFtlP#=6!hh!EB#)_Q@@up`EDzl`+nCm`f;uRu`0)LBDXelt!L z{h_~ndQ2txUWPd=?SkH)5z}AhbaG9a`Vt)=2_QXT(qzcy+&aX_o3v3x3!|@bSq;R8 z&CnFsAmMMD#V1Yox#7(-FTI^YyNm;VxrNlxE}l$tGgT(d97%1uKp^3P^_=$z&o<|v z5wf{$_YT`V|52m#;L+L?*10CFkKbc?X%bQ=$PM6;u@6+dS5H*YsD!SxRx(5 zSele^bspRxy=tko-uYdNRgV&EjZi^&VZ1$rvD%3%P}2WP>7WT9PBbPLD%7N$U5_7Y ztH1U!TQ^X86z}VTy0qyqRh|cw-=#3Q zhLH>Td_!EAQ4&lW%w_i!%EPF09hk>Zu1nj>48KF$;dg)?@?mV9mcmPb9USoKBOgq2 z@EO3I2myrXTli=ov`~(^d;+{cGwPB@Li<8lganv&!v5a+yIWl_dGMi!ZM;r-$2gDipr*hD{G+_6pR@%dOgkigLsJAI@&ay*2e?AJ(iHBK7lZ-wz?pC0aoxRd zw25ZK1zHI{z^1)0h5;_$B*wVdK6!%a`QWRBaNVMpX{g5;DWpV_0>f~IZ6_*V*bph37#e!!_T zkNh`e>Lh`q?`&d$R&U7u^dTKRcN#;Svawrdo@Zq0NYu!Xvf9mOz2~&@kcv*X${>_H zOv~P-i>&cSH(S-4PquLvT&(x4H0*M+_R9VYX{S}|MD%n;klfr#_oC-Rd3ruQoUY82 zOm_Qe2^Q()Pk4A$ao5sV%$G@uc6+M^Tk~;mwlamvC6ZN2_VO`pj3i{H)%L`l*0J#C zG96hi=5&B%wWf%R6Y~?3AiV;RaLH-*F?bfH4 z>~Jj!Cs*fW_LZD*k%DVpr+f)6LyotqGcIw4*Tb^HgldNz2H3-#ieBYf!$|`tO}4=o zf7s=S>e1tLKE+5&hzEdfNoj}@+QBwiU%20a)=jNamYR8@rLwJxa`YExE>pALVpVcV z_A^TK?%>4llzc%_iZT_GITFstS%vt8xaDWO+p5ohyB14XIgA`50c5+(tvbzkMQrsq zdYCnGRz6CO$j8Z<`;Ut}KRHEFs4jiKd`)IL{-uACasZEyJH~R`*2pJ8eI7K%Dn*Bc z7*ri^DF22#w1a=5#v+RHghr!mx{f_ilesO@t`*+xr7#bC&HPZ;2n#H@z8lXxVZDal z3JO5Ki@Wp)vRc!#!!vnHD+%N5Gm%IWa z3_Qw^&<0>mhHnHBy*~1hkGTH~niJ^Q9slmXff4e+9qrB!fAm9#iP;zCNciKRMFAd6 zeZYyj-BW;7+6T(?RA>KrJF67X$^Kp!$<;==nUE9RdFN`#&zaZZ3c=^}s>0H^or+yTAM z5L6IGvRcm?SFiLP?qL^PVKw7xy>7(J2@n19-PFL`M0Z`&!e#`FP*@`3Vp?H=un_2w z_9M4lere}?L(!2=m#^gQmVNFwmXJR~M&?c)vB_kb!cMSu>dR;75Lum+-v0CyOFu8I z#nuJd&3~J$9CW7F6Y^hpQRiU^?~I(U6GvQVlVR4$&CQ}sF4zGjg#ja6q}=8>(SHGUllS#iX4&IW4} zHvg4pzs*|ytOMqbn5oEP=R0!>ywq4(5J=M!nKpr}qg?E3PIS|%Xl0WXWl7#Y*f>b#&^Z%{3oOwP!sCLC?;+g3WGT6VlNN)o7G_%V;ed@Uj07f-C|z}L<@G|FS5 z1RwSalOGNlm~G~v60{5S59h$RAi|gutiW;5{1Wq>kmf5^sd=HWx7r3&jM?>yqIH^8 z32%o*o)Q9OWIFFZ{ZD~xQ3ibgz7iq){hgv~NR*cU%+7g_S%nT!?AKqB$abxjc1si< zsME<$R~XwV+BD^zD2-BuqO7@d_n;D|dxzSkwTSlgJ3JtiQU9HnE#S=WF82cn$5Wa{ zopl4w_|U{F3&9|uorLD((1BKc#Rsj44cMiBbdxLQre!6d9rw1b{JQ#OA`-h zu&o^Rrn9Z`&IPvlulLx_o4#dRKfT3b(tcY1VP-Gx@M<+5|7WYc?=v>+*b@{XK{lzc zK=>$a|3KH^$8I`IFJ>hChB+k97nc$M-G7(ddd)6hNt>^vPWKM<1fzQ%zk@J5gx2<$BNWZC3YQqo+II0X>L7 zg_#rAfo?sO4|%U1{{Sg`YiCTCzKBK_ej^AUw1@VLZ)ol7g|2%`2Oq!QT6%-#_fEPu zXop@Sv|mR$?Pof7?VJk25TzR%qMc7MY%tKgkNoTl%n5ZbA(P?Y&**DZQ=|J=CfQYm zSCKH^D$`5SkYi7jJ-qDG`Qhdqg?B1Xq;`lsTV^hVhs9pMO5ySIisYo5)~<+6IFFaf zbSJ0CPw8dz#Oxof5Ta*VxejTI>5QbTgn*cQ7h*ZR;|r!T{)}P=FEcVsjS}a*!`esH z>Oi*@@~wD_hj7g)3Q^mAPbx~&JhQ#)EcK@M={$`wj*q|D3q*r~O^(urVU29{Ni1ZSbwmTAOfXS(vl9eJ0Av0 zLP|`I+3ZT24l&HjX&ZB^%5$#vwqTwS;M{QN3r14T+x;&6CkYz;oT=o# zo8qW1zP>rWbTyiUVa=mV4xvcnRdwbSF1W-Asar^#Z4v4Ske5r<9%=25D@xgz85$Gq zn8PP&4nY$H7k1`J_%VQQzD@Upvz5tjC7Km}|5g1d(oLESXer#{L6f1j5TwWhH;U5F z_+UjU>?bq#)sHDM*mpIjhbg+((-N3QTe(g@r=Rqe=K=b7^5KhU7GmTwiG$Fri}#qmLSDg*;ajh$dM@B3fYu|g5EwrO)- z^PwqGWz8dNb>>K|x9#AHSiH6u(MY_uZR`(v7^VG{>G2+egLW?aq7HPc)8d*DV^s6 zp8D0cW1DvCUr=$m=s~dp6e+05Tfn#|7zJ4 zzt@3m7dpdgIv>MLKx(J>yEU#TR>`9WSz2c*Io*2O-&jv&@g+oS?I6OJAHoVuv`ykA zh$IDl$#ON3zT6+6qq4|IqJ3cO5K>&Qf$4S=C6$#nDK1)bzo!IPD`*ws(xlK9V}#j` zCkoJQM}QphSJH4KCLAxva&4YUW8*ve5{A$~`L#AwJ<)%e{KQ&?pMsW;%iw%$|)YSJ_zJ8muWPh^eKYY(p@4sGJl73#D zb5zuk2v(G%zYw7?{^SWBPcsP;WyEJ@Wct2yp*+u}IH-_csJ`vn*DinVovAJsj;gTJ z4^Rj%rCuj(0nfg#eJKFV0^Op8qvu6^-{0qHdr-eovM<2dc+ zKw?fhq$$7|Jzq0G+K;`_J42cP1P@HHa=P~Dl48Oro0LCX+ujC+u3cbd@4nO$)zU;L z`8yf&C1-S;jh2nPev|y2toLBE&a9A$4vbNHjcnq#uavX!sWM$z74d3vbuK?o@X~4O@qcZsr<4zXDcexzgzOycWbx) zh^TG^K!5#h>|9w)8lQwh-DVfxWo5^nBgb=@$rSjAxC8}f2yOth5SQ z9^`b6O0HptWmo=HQPO5=cvC)SIoaIJ1znKo1z*v@$5Rcvre8H16xe6?Xp-%roP-WAN0T9SA?gAuJa0$-pG;%z53ee9?Q|T01-&I@mNk z*zgWds`vHkkfgxhV-b4=gy>CZ=$;?U277uYyO-_$`xT(|+E(dpY@AWU`CL)vB!G}o zVkp^}0cj3@#~VC?nn zyUV;w1+OR^={JYxrI$P@CVGt`TYXVG|3}K-;}8DoEK?X$65|ofM+Ct0!XMYJ6#5zy zLkClulX+LZr9pMX%&RVpSW3PQ>51q1&NO}jMbrYI(2igvwPS9lzRR@`dF=)}4DJWh zr;<9wO9YN;nO_xz05{hum}S8jyRZ-|@Dl7q!_X@+kBajR(;nd(D-#bPp~5#POLwg? z*K#H?bXateP~cAC;8tX41rzx3$Rw(WV`+Qv*JyM&v{imU{!_5`-4rdfg`gx_;)mkQ zGeCpz6u4n%T}V;;odQvyVYq)#zDwIJw4KAmUP7ER`D%oIK{J9BAkkr3#&yLRZ?#s1 zpzV12kCx62v;MR%?CXF&lc~nbJB*;H;6R zh{$6~U4#$)c0pMYx{CLr3;+Fc{*;h<-)hiB1sqp*k(Us}*n+#K&T;Z_3BU^VyzAr@ z@{99x-br*lwWE`l;S}*duzgQ_3)hWJv9a2waL*1V4 zbsr;k>%|Uq&wfpQ2Oa{v_Lnfd%IbhU7$VNdBH_D$20x$K>4Ju1jF6x_7_+QQP1syx zXP^FeH0-sOl}r6}kFr5BJ)s;XC`xSNd15y?$4B<{z|uR_eM<0I5L1+1y3jl!%uU55_JS=-@gSW4bzn}?X(B&1O?Fm;6sCd2&P#kp~wZe zqCbE$1)VSp_`7KoyVqhE{m@1)p|XXxIx7fe_c@WKL1lYnFiQ(}xdxv4EB_4W;jjZ< z;de=S`sK{DcE=s-GO=pG0}4rMvt<+71Dj4x_eqoFA~6(is4ujNkY>|50~eQi36ioTg=}Q`i|ru)y>R zK8JT7=06B2IXRkVWvb;Ha=KTB&w$!#*{Va=*2~^~x`IUwkw3?t?Ut_)Gbi&Kg`;yk z*p+vtn|Crc_Ly-=xZq30-GaE)Wztg@vdF3NL3OoxS+ta{Kfr|37=?nFWq* z5EfRhTy5X~-VHj0w9019njyX~Yv20T_igp+HF|MJCKjPA74N$19=qr6zbahzWScs5 zlHGI9-|R1cxwj~MQ1(zr2Smd;EnynaExhLtI1*?L*fB;6pzHD>MDO9OD;@YL=Gh}Q zirHm1zf9p^JDPRAhR!-jO_(F|D@AdlanaGgQ6110CPiX~fJyW#?h{5dCm)d3C;w)I z$BmEEiO@PhJK_QZV)_oa_C(lFtfzaSUZIRL>Fn;adk8!Yf9Px0vRAMrS~kS1G7MM&p$nAVGR$1i>H1gWpN- zVRx|JminN>6FWA^v~1%J{UC6FBEvD~3cg8EXA9`*%q_GZ%x|9y#eNs=znZb_2J4OT zQzO`y`Y6yxfj$cKQQ(lFK=+qj_uq#MqI&1*MGRv^sOtyrf5?_DTW)8}JzauEwKnC& zSc{>=*WISC+Xoe6^0#6#KRm!NV)cuX(WfqUoAk@I!G0uxh!2XhB>nI`2`ANzVV z9<-I&yw2L5c~A$S{Y?j+J#J;^|I)+XM%Wg65dG}!Zz$H=eey#Ym}N1dI?vE|hTZpp z`*b^$;kV|E@9c9;;t-3i^kBmN`35QtUS09NHU-j zM!KiaPH4CL{loEhp8#?=j%r_@`Y6yxfj2G%ctMpU=Zy}|JGBJr!McnPISUXo&XW; zhkr#*OJy;+!j~a0tw&Njrg0cG_X|-dS(#u_pWiT|m{GNC-{uDgmdl<#se=iLMv3o+ z?<7lu;8qAkb>jFpm^*zko7O7)>30D0Aa!QaY#ig{3 z()_}8aqh4qEhd&!q(v8)-P`E?o0>i4k>5iK$TLRtn<62vd+|UU?&}$HfzHbp|8%cW z{9Q^jFRcxL^iD-Vlm9_#SdGqE8Q5#HMIgOiboLiIhB=*WYPIxMnHN<`W5*O!axEMe z;E%S4AOV;KYK&uX&3opraDxtxb96zC0&O%lXjBkZM29HYP=|!`y*5AsNGv0PXUOCz zEHZV3T7(lnoVtK|MakPM!01lT0FbtFG8OfSDU1m;kpR!m0-bn}AA}BV7Wg&r8RtR@ z?GPfmBs<(b;5T&&D64GeI7Qb{_0YxvfxS)z`UH^IiO_w`^iiOX0(}&CITYx8Swt_j zutTDFui4N0?5UHprw{y-t(<&84wpr#A_=2ok zx6Yn<`dNGLd*2x`4SI7r^Pq3)*VWZIdZiBSBSs9jjT<+4ekjX#NZ~qsgA>lK{;fi# zutJ>!eV2e&(ayG_dK!^JfdD&vhx`Da!_yKnzu?e8H?7ePcciY86S){PKi5KeW%^B| zDmS?iD^n&-60mSUZ+h-&?fjYzkTxhf8JZa(x}p6L3{F-@n29MoZ6Yfl5{1WYd-{IM z?^>;sq0h5^mwmvJQ;rTOsXL)R;k)xz=qt3NPl1Nr`&C+_crCaHNO}5-{{jqY{-O>R$l zT_MF8d*-7Onl4X0^e?&*{Y?kjU)suNBq)n%W=`VYA@M>2lT3|}2$T|NKfuFrp-ajy6Ah#_F(O-4N3?-P2wKIl zDAf?DZc^~Gd+W_~m}aE}5ZNi}JRAikvK)I%{RF zrC?NLy4EIB95GhO-D0fN!Aw(=NBIe-p|_MbSf!Y?hP7*~@!^|vuEuoBD#BEg+Hf-~ zF?ZQAo$t}wWU*z>SZdKzmeZkZS>?xHTxi)9^W>;Lz}il_%yOeAT7I`oyCkr9gr$IB z58u!jrig+9=%T*+gM_o1QkJvsLiu3-Shcxr>#cIlijQYm*t9Wj{s4mqByFK9r} zb?s@8*;vIcF=z^Kqt8BVIiOeYhsmQReeQ?>W_Nz?_MMTLV1Jz-f;OZSzgN&iPgQ7- z`CqT`ZL4f^A^d>z5Za(2Y1SC;-s$Io$dN)?1gRDfHUpmQsB`Vie$+ZY8861JpPsoa zIcI#v57Wu#{PxnO(?=v`>%!guvm*@2OG6^b7#{DGfa4yMiwUtrOgvv4n zPH1V@kcts6*Eu!`?eYt(e-!o#(^a|$F)HakEeBDcG7lhZK&58wR7iAAGgq72YQhH022X@ zex-4eXQK3!ddcpo=)uVA6F?3I75iZHQJ{|keH1uY6yOC{nu;%l!ke%3-XV0|`BLlJ z0T`}!IcuT`88m31z2z;J*yV4zSdQj@vAgAHe&v;K(~Gy0(MW4&v`J@6bx*wTE32ZA zwBcTOS+|P`;sqXXfQf*CAfJ~mj5JR2(P3^8qY=S?xFw8O0IY9d0Y9W7Qx?WUx4?-P zJHiibHc5a04`41o%U7GWz0Ab~Dk zzrf5yjV_Y{78e5<$6QRb+0!UyE?Hj`KmzUgratrz$>Dl_ zlv9LDUciZ4Fq<&n@_nGT_g{=^qZmR$yT%9fQzTE7@f6|T{v4^8+(kO9 zU4AO~Ftt=jVAV6_lP7A*X}DW$HE!Ny6BWWXse?0f!zWowS$|9K&~q;wOlD>pNYSf9 z^G7C(g+3H%Dp=9jtDoB?-0@%z7452J<_NAzjI9fddR|*wT5NZX?n}VPOPGic)|n^J zqd;r?IP$yHW;=FPV&-g>E{$qpPEiW5#a&ThZ`PHWN0(Ea=C zMPEqe5>$3<-{HStdP%%Aw{P2_UEL7TD0&I|P5q(%q)C&)PZtVc#5Qi+Xye9>bDQx< zDCm5lhnH}mZ|RFadhd7k0l=j%bbg2O^aZAp&+y^HZNh{JT{R$LD%$&3S$kEPB3%u) z^5LV!$T)x^BM@+axoMO3C%t!4pIO<-L+r?Z{Fqgb9c}R!(l%_w z2=8}JQHJt+c36u{QnEwNx74O*Ewy`{3mZ0KrVTpt5*s>Zf*8ce@fp^`ad%Rb^wDqV zX5kxV2mu5-4IMhv2J2MoQUS#2C&tYkaWSir*-M})-GiO;j;g-*FCuD@ZeCW5e{QG7 zl(56{iOGp+8$4{74IZR0!-XAi&b#_nEu&1rx;4 zqemBM2%cTq5eVj(=W$PXl0#B%m$H~RW%o2|S6y1Q(L<#*lC!oGNA0PPm@|zVGfw&s z?b0{2Sf)&xFW@LYIckW-G#8!erVaHwo!X_HeC^;XJZy554$9QIBasH7fRD;WxH6;> zPWW$?S5`=1ZnDuyG3U$$wUMYm0Kq>=za&J*bOx=oulbPOt224PS8$VPOZ0Iewa`cAJ!91(0py4yYAvgI!dy#@ z6P*Jc*f5dckrCav2Q0Kdsj;H1v>rY-WqU0-W{4cqHLo=W>BLT}zw=S6Jn{&uo~}Mh zI7!KAy;@pe)~dR?y5d|Bs)eK(AsU2!kQuI>KApuhD$y8qW<}$~a8Z_dIB?(~+q!kD z&qw=aL#oN>U(z37gIxqpW5nl4NiBM9SGQy8C*vW&}{!;a5F^&o? z%7J=YpLoPJe*N=ay!JESwV|`-SlhPE9$n1)rMB<^$w+gO+p*5gbmB+MvFyedWN!7e zRh|C>D<4}IHMhU8ue~4?`UK8B(J;GLOz;kwP>EqJ8!fY#V5ZUwynV94U9`d6ALbB0 z8K)Dp(uahJOI{kRct7n_vwK`fS!uYa6PF3q{!*qxnj-moBxDv7mvBo;i+PM|Hy$VS zgc#*Sg~p^{VY5G2UG55UwsZrqAg^wmJS6m=%j(u zPknR06E&38PJd3cbVqjK3}ys82>s2=cS1S|%^f{2Dx1_`c<_MU=%HuNlNfIAlW_2{ zN~#?RS_y9(W>{uRnsW)6Rpngp)9yaf1cQyh>d&yoTlcbzyVEA&f=P$~7Bv+8O^TL- zIvN%IN}8Z?Cs_H^S#BPc6fA}UZ6HDbf{%JDA*L_}r9ilr&q|)TB~nC6w9Kb{dk<3#<@Q=&CT<%9zoA)j0NofG`FoqMe1_X{m| zR+Cj9Il)pR1|k~>q~?ZjPYK`X8R&{jDPFJkI-zktl-?%?=}CCCWO?J(XY%pT@y+Me zrh^6N)#A}tzmEca6gWgEz_Rk{mzLM9GiUv8FKSYJ!OsULoqUWYusyXP|?(S5&FT>E<}OCIN*_ztm{ z6nrqEy1FjHDYPMQMEk*6y=~_)Yi9b>a)9d z=wQONG7}kN)t9}`D$csvl1IPO%BLOcbwYdk(b;wn{VK(uvd}Voda9e1sY#X-o@Juq z5rMkFFNGIy==!Z5Rf`dmshKIa<}R~GJJ~Yb ziSX*$uc(~zRE`Ku^dX~Ncqry4QftROFQyXu5kA((Mn4=kzDU;is;>b?_|C~M0(h?J@scHF1%rO% zRF8f!4gr>r7m|q*uyT4HfyIZmv-%GA`1W?xPcJL8KE^WKcU+(g{{)LfTWOgSk!TAI z7-QeGc$IvZ6bJ!^TM_}~J*pYy{F?P3S`%Q>nde@gc^p2JWj@KDB&V@;81z;7$sL=l zYVFgOjY*&xJ;~w<%bSy6nw0>>JfJM)vce@(oEH(^0e6H${H|PU;d5c%c`Fe9d_nt+ zG-r|yR9-$x!prXkI^fr$em2ZoWGyS#yN?L8rH!n7Qs}#npUOkire{|Ox3slBw89!+ zSmAw++R~ht5Y}a`fCDt^;S+Eu_UQm+bX)Wf^C9{M#-WgU5fKjs)DAryG#&K#L=OBJn6edY{8JFDZ@iOd=gnB&|>dWk-KpzDTUkY?CG2TaCcY5Nu4>1aa zH4c-f;WDEMYZ+*se)_30;~C;1da*->3IFg%{>f@$XEWA&$E!yF2ZLsF$ORZ)8-Bx+ZbUWg*w;Jb$h_mZ_18KJxT=|#X zwM|aBPg`QlyX1g7+$v_DWMvbk$Q&ec<}dA2>2=hPfPkaD&mS*eQlwa)zKa3FtOp$2 z6iXZN#rq|YddlG!Q}uEhlB#H4br1+_XWM@cBLA@AT6&(mZJR^Lz=><(B%;TP%t5JGh_$L8z1V4Y+Cf8?`>ZOdAC9 z|7y)z!#z)1&1ti&Y`BCdgt;AiEH^?XaA>liPbu!+YS%wqa1DLzTBJ*V!n`i6*RA;9 zKDdkB%F2zTBA`>6r{AsRKVUTGckx7n~SUSri`#(I7K1GCIO zP7xQ=jKg}aUOVyfNluKJq^)8_KWb7Wq^jX!SQUZj)uh1O1at%H;K&ZJKI)W@I}F#$ zO|GFpkYJa&)RZXz5@Rgj-iGhsi`j&EgaLL<0t{v0eyCFXRzBJfXRu-Vg=cF6@-S=G@0uY;J5THp!bDr2XW&EM=(CbHBj(T#-P_S%Z5w4vFGd%$u*85W zort~N8vpj3rPpkCN94q4omC;zuFM)~MAq%K=CS>4hnVX@XC1EtyfrQWgdZrtj~a=x zd>36i@G#aHF{qeN<>W-48mYthBxtzS1wp~Hgbp!n0t&eb;kt(m66avK?D$&3nW;fk%$BZ$13_$z!R+lPTB5gtvs0c=4Bf! z^J2X<-tm<6n=;%g>xPICCK78UXd&&eNYsA~y{l$Mt^3;0b7Uv#ZW|Kp}xLOxf;J~-ZvfZ#+L3Kz^U(b5>8 zy+M%8%26C4HC3$;!EI_=G;MhCdE4`oze#ZDXI0bdtg`=DRneSNAHcPB)dra$%AaUc zz3u+PLpJiGZ?lxfplRVUYkcrI8~pY&tbFV+YgxY5(vNPo_)Ka0$`xJi`At@T&*N_P z)^P7LqGj4PO`LB7FFM8gA3x3W54E+9VLaHWPXKv|6h)BW<$+2zdO;@KN$Kvp@3xz6 zy22|$U3=srF+gsvA*XGa&0N!7F+nl`8GNKA1`QDth6#uYD->^1ek7i}a&-B!|AI2i zsgg5~5hl)nd1zPNhuO=q6HPzq^}Hg2~1TOL#dqh{+^zt^^}*(o!uW*a#7 zSl2cH#kB#Hmw=PYtMAo%|I@DUZCSL+8XkMzn(lkfGI#B;_#A1ObR!x4%**${@U0ot z-%WwiayU;&vl1@|APhqSpBC_v(2&zXgFZgc20?^=$PB1s%T8;Zzsh3ARN3C&Jz^D; z#^^vo9YzQMXsh-yCu?1@#%fMITK*&oY9OZEqlRfb9ks%k`WPUfh%PYfJZc&FHZ(uB z)Z%shEVFvI?YVEhmA`8)&JDs%pOC`bj{vG|G4jeI+i_7pfbYH|2!99{2uDiUy%OR! zEtRiGwY96wN(tm>-lF>oXDuPE;jX7F{md5Yc*j;T@+Vt=_0f?pnUjRsz*S3$6aX<&IN!O_S|;=ozc19p(MvIm|V-Sj)l{mT!`v zRa0gyw>)q4Q^x3E#A@69?Yk_qP)_lXK;zZ&+$uS`lGM$9) zkDOPHXw{LK|}P+ichsXGsWAB+~=GnX6^)CDT=Ra@99($|{8oVfZu6fC#8M*4JtL%acF0ikBHV3hOj_Z@K^oX0Eu)%uE$iT0ku{<>S|VY>PL6k3RzQT@{^~EFq}lCI;Do zf~oFh<*$KRRn(Baz(M_V0R%u^Kk8Mk5X!lI<2Gwsx5dha4iqz3VfA-BY905lxA>cM zpyL3As(om!ZNKhDYx(dB8+66#t|e$#y2k1kyy#k!ikeC**N(bXD%#n4G4l^EvyNL; zzplb6{%MK}MY;6~CwrazZ_b@#mD(wfi+OC{D8C%-qE}5FZ`*ckxBR@NmYl!Vn!f&o zG*+!P=KA+pnIcl5p(&orQWy~WNgq=+{oIFR_q|V8`+~JL^0QZ3a$uxA!Plf^#acO3 zM*I1+|XC(%VdE?i3Jh<@pdRG16o;dkL0Hf3k`D2msP)s~G9l=WOz(W4~f ziLpocqD=Fm6_$Q(tHRz&`|$lIt^I`!miyG@HsDm5ZPJ92Yr-Tbc5K;UjlX|Vep7mG zWM(zwEoW#VR$1GsP1d@6y$fS)3szg~flU^hKG4eMjFrY>gEjp4VXHpwDC<9KieSbh z$Zoeb2`GulgROkhXlqTZl(yu4h1!iYQ^^?vt!>^K+qU&qokHJY$zz5}`*f@eAPv8K zRL_(g_D3PSM$dF&NTuaQDQx&B|6mmp##oIsAqPJdh;i@%zaogQS^!~vI2g&N;h{wv zJs?^Dw8)e0xZ@66x^$`i^rt^{ZAV6qe=Aq6v`a3z#6JG%Ifd-aH>|Yy#1kb{)M(dVJF@IPD`Af=pWP@0WW}(jx9zrs z7}+F@HSh3l_&D8FJ|~kQlaE7Qw(gvJP^xKgUjbmU%dIaLAP{=uVk-hnOo;GLP&-6f zDkilDL+DJbcCuZYp?9KQdc`7K@D3y^rfqB2O32&>o&$6}%8}r^UB7ry*TU#UPPUqfwHBZDoYmj_xHbOULlQ1tw8X^0 z)+WtJ$Ho@5Ax3kd&RH=IkrRH}(vF+n&+nUJgWq|kRnMO40!YXDZ5|G{V%!L4idE41 zO|6UQ&rW?!(kh1zvVq6XwC#iLwbmP!*!Cmuu~Gm0R!b-pYhduHhe?oYYt*;BPdsl8 zf1R(nu-fuV+HKE?Pg~`ru}(JxsphXgEqX{>V(PcgGx?+@23u=3W(~(ovFf8HTJsZ2 z6sKCDWlx-B?E^Pk)Bk=_aHiUj3r=;qx5_`H<$=YPm^;v#f4e}TeH(1ZH5W*5I>N^^ zj{k{#6MQTr6y)S!&A62fSE$=v()v8R&a%?}4EXL@e!BUdPuykow=T5GS+lHihz?IA z`GE1KFfn49Gm0X`xJDz6ro{)^i${NSPc$H9H?5NIhR(>zYYs`^*nQjIY{;3X$k(Pu z0>v(CxceCww)FaPLlr}uRNE$=UXPrM%|Dy-2 zL(fOq;2LYb^>ORCX|1T(W{F7>R!W};Y@_{O_Ra%9>*DDDbG>s1cl36LfFdBMh`phr zVr(&LG_j-^U-M65Oz*yLjLDlA(|prSOf`wICiafKU_((5;gHT1uJ?PM|MxS$XOAD} z(M~i0htVNYN)LT) zy7)cu2r<(0=lFYGbc?Hqw%;)!ChWnl;PTu48Ze$9>h}&O7h4 zNs}ho)TvV){)lNt<_0iwRyJ7qK$&T6ZMA0?J!>z#@PeZjsFBV#gaV) zG3t$VPBmT+-wur!u1Y}^>_WKc=LfXC@{)u+v*Kwpe74s=>W|OjdR`K;W#+5-T?SmrAZ7J2L+HCF$=n3neK&oQvu|Gk6CmQ6?Bg9egu$TL2nJt$ zkg(kR{1VIEZH&x%*p*1f3A&=;m2!C5Nr-$nn;|GRC<#8ht?{mFV}o@_(aD)!AsITt z1Mv7A&(xQ4CCHod_dH~>)m5tl5}5^038}26bn1XPHy^?|UGMAedD7bMU1sS=4bgVJ zx!RssTL!l#t@Jx5TkWLbItVV$2A_1OWlb1mO^?55Ew?PRu6x#7+8O0mbfKJtWxsFo zBeA9HJbk8C1~TRAS+wsI%Neb2sSv;SHsU?A`@l>Uv}%)~1M~_eBaLSn+b$35*^*^3($rU;=`?#T&EYsnMe|^k-1Uh84*8JP& zEMrco6&}5(Wpe%m+r|n{EiYDD+aF{;^yho6b^3DaT)fUQ#t*ik=gqT5t#njh_gAa_ z_Kn_NgZA1(s~@je*ArEiJ#V}vhsm$umL<0CwJOV+Izoc74o{pi&W4|Nf>vIN{5+4k zyPvey=U!8}+U{ACuIY<(DCTS_SDM{t^0oEx#nyU_Ow`U^Zg~^NMi`=;5%`_8>?zkOuJA(r2MsEnr3;{^!vxG^XZi~_{_t7#iHZhO3Tt};jnX# zS08A%wOV0n`}-2Bx%M6a)j%r0%lZ5VEK@5E(frTnEPb>#3D|wKwJcj_wKqK_ zn=GAAvZT>+&aJRP$IY^q0{MiD9Bjq2wAHU*DL#5XYkh2~HUIJ%s}??r_TIx*C=vH6xDx5vV+oww>!Y5X>`hkx@`EVpr zXM|vpOai|aXkYica_E-=;)EisfUlaigtc~}z4kwlABW2fl5@Lq<3QNBL#2) zXMX~niPLmZ2G*=ug}37caIYOO`0_G@CzvzAG2gr%(4{P&Qb#U`6E0 zE3b5)jw`OX!j+J}{q1jd;e{94r#|&5U*)*?;*0Hj-}|0jaKQ!c)Xsrg_>w&M;Da`2 z&K!I6u}AHqPh4d4ADVCb&)(lxLi$sefiwdc7{I{07z6#}VejG^zbiq1#$*#mA{7^jHN_1O)Zx|TWdLoPPc6BVwI+y zr_!Z&WouQ5l?u)x34vya1Qu3j1g*bN6;!qd>c~s*#ebA2oswOkvbs(`*lL&D=Dq@1 zntd-hY@eQV_^s4G_>9&6?h*MGWZK|s=2@Z4acZxBz?y#ggsuO{4biFPoe3*C>mVC; z=CLxT+632{-L!k!Gb^m~+11wZ;#y0*&}2p5K2ZJ(qg-iiy?C)T|7d~L{QfTMnpZ4oI|;6oJWv@b+NkHVe$MT9BGoxXSgf1KCC zmbJe9tycIFRVyu-uERWadU~=^zD=WxtwUyCRae}kRV}T~G$(D)X$MLv1cpu>{(NFb;32cEO8$2VB<_l~n+A3WY_w8B(%&Ha|O&uA_z%12 zl!#7bu4g*ja?pX(t+Q5V96hwi>5B@onv`BHg-Gp(AB)qFS60lE1J9iFzgC8zG@ z-+k=C)Jor57A}>Ls52n`DW_h|@DG;zb4VNjK z@Y5|^QD&wbn!O&Wb^|njb|Enui^0ogf#+C!XamP?w$v?}J*;h zzRqXR)8&^__mGs2KRjf%UV`)wPO+h2Oy* zT+ml}v~xl`a;49kX&J&R2UMoZDZX$Yne$M8nZgZu@8Q}$w#nM(FSV+Lt9256tL1)r zy6V2C`*sYy@I(pC^`fT?W2L3x?=nyO#ltFlv30F&Fnmb{T{zu3)^C(A&1=G8jujoG zt#=jQG;tphxsV4iu@Ieek(#WQ38B*<=7a=L2fifyA(W#~xet%>=vpn4rJC2QGrhpt zo7d|=K<)0i?!;OFl|T-+1z*FY)2JZsgeRj!CkoH)@HitKFcbR!0Z zNfqIwlQbJsSm?^e+_`gY-n@DC{PWMdX%|WlJ78g!MLP01?X=VEs;jPY1qOv=<3@FS z#XIPrgY19<4(M4GA^t!Zz`y_ob}bCJ;PN&)R_|KadwXlc%EIO$^&AAP@R2b=f_tKI zqZEQhOJ~(w3JBYcHZ5DC9doqku=_riGh~R~NvhL!uH?jlV#)4K%UiqLI%?Kh*9z^f zBPArQSdPy{gZ;dLjW<4Q$wIdJltXP*t)ER01Q}N6U%PWA|Q1nMi9BRfko=a{8w)h7YW%)V>f52jI^QNjt|s#@L{gz(MlwZ*g=~0#mD6i@I;V(ma0_Ufcyyqb6ct%_JF00e7 zSvW8Wgbi|vU(jenq%dRRM+i9ahh6Z`4l5wwfOg>&))tvwmB~pzfnyv}OwCZ|Jgxtx`awLGwLR1T;=&U55_I zu!BctSw%^v^GQ})psnogA_0K$J=_BR;F-0@d+OQ;{S?mnX z^YGzBnP}VH{Kx)oT`L!BThh^%+*oP3Q)PxzHr%Rje#qMHmP7i~!PfOym9~y7|vo(=E?h#%wud-@42iPgrbO z5@b2E14rOyZQI)M=qk%TQVNCa6(-xO)yA*tYT~gFZD%em*|SHh#7={Gi`IrDcYUFxtFXoTs@u;=Y27PuIF!%0mz?CX8MZbk;zCQy(mvJraF&A z<9gX?M_ZPBNou}*gSGuij`HKRT2{NwNivT-FyD+sKyTWoNjf&dU z6J7Y%4tO0PXmcbRUPTBW75a%;A93gJ>fXw2{M76^_0* ze17Y%MMGUW#a!ovbY*GMIjI#Wy?2=hWf*~9RwD@=2HCZ0sQ}Bf4moKjx~0HLAJ42P zcGIUqDH7>_%$CAcp>m@YJm>_oyR5;*R&v4tPD5$(>G0jAgrUJF9PCOCN+qB`Q_x3} z)j8q0ui$wLznpNMr5(mf-+P4RNy($_$OFu$NjXOO)8ZKL53E8|Sj>n5yRZp9T@LK)EUask~UoLL5XIc_A zZ*YcPto@WnY1M;D)kv9nWn;J9S=D9Nt?RN+PRO=7<8-p73ef~dj{>xL?tMSOSkTy6 z1>xtFVsW&-Q0J5${n*a5^8PQ#(UkRxeOI_)b76L7@mCqz&hegjJSD z9(lwjOqgItAAPi^0ggE13+V^00~i>uv=?QTIh9 zK5<{mnL14Z*mP@HxYC;bBIQMAPGqD@uq#fpmgiozl0){61lg2XRhPB|t-tLN*`>d1 zoj1z1UjNu-3BQUG3G5k~eQtd6C9A*o5mgSjB@9l;wfdVLx2&0ytwg&3b;@zP`N>x- zq4N<2{b05g&)&<{v|ej1zgcKiU;L}3U6J84>G)~1{`@87A@eA$G$b43J8-jBRElH` zFiZ#a9yCUF^Cw&V0}HI_%lDbhS#D{E&hqNgj;?^{>i!dYTmQsDYgHL}pO|5TPtR=k6{i}dLI5E+TIlnLcwyE$vka6x|^;4*59o4u9vOj zj2g=;925C}$d91@zNf7Ii}zXD=o~Bj>H#_nqriPQYA?LSnog4$kc6wwrSdI#sLpb~ zwx4zGBSq-CM`Z86(l#FVf)$R`>EVkjt^I~qE&IfBE7Z9NoM%xgp`QV~^}3g=>hgcc zDPFVII-4Q;v@tgLg5xYlTadCPZ>tV(Yk6{spYmRE+99%$pXLY2HDx?%>5o-f+WRyi zHyA-oW2(kF@Q71#>jj(i-_ zb#Nf(Lr}ro(ZhAvWVA|=HL6s?w}f5lF1aBD1Xz?CU(G;)LODR-p^gd>y-`2?m*9&` z!tPwIkZ6*$TPto^tk9sKNRUPm9i#*MG8$w_5ha#6ly>b@+1k@7edcbkW8kPzJyjhkd`8#7B66KiYLu4lC@QWX#Brh35XXUFV>Ke7 z^GPzKIHgMgVTA}dvErfq;%yh6u|Pqwq-~Mid;(hO6GD}CICcS&Npvh@k;jk)k@HC3 z34NsKfV@#mLV$KyK?GmjY6HySvWLszyk0ATDdmHFx2VL1jCPT0{}qrv5J0;SQvD%% zi2da|%ExLcAE!(4ICXa|?`cWmC^g#6>($uw9Yyl={0SMR@}SR&25fCpx37F?Yis-L z^jw=L^D1p95UsE&4jqrAY@b$Ml40lWnTx5PeP>yR4OIs^XtW42mFKoD5EKMhR#s-0 zU3QsGo;=x=h23`B%^K<(?Df}QccOz5i3>4u^&d5%K6-|b_noz`eeUz0b03eN{p@F! zmz!rF`tXPByz|a;e-7ep*s#HUNmx&T67FTP(niI*;YLU zz7Jqv00Zwb48Q{w;0pu&Ji^8H{N-fl-ebr1q}v&B7<)qC&WAAF(1rvA%5DjsomDlK zDL(+(6+sQ>>E_j|Y~%g+T9(cqE8cyogcQx{cFQz{`D>YebXLh%BTZX)%J(DLR{o`rN zIApMPhC0!Ocnv1DQM+Z;{rLgwoWDjVs!Mp4jeXuH_RtLaJgdr(sj;>z?XHr4$^#2+ zrS6l<*ITl>+X{};Ho-dk0<$HA-LkXiT8)J3mOnkKL*be%V^on1z2v=Ce9#Q9KYxmL zpJ2@g?PYBmKZ_=p`+MNa`S2v2kMXj#owLMDCMsYLhhjfTT8HVazxr00bV+Fb-eEE? z+RM|i9cs%lFG|sR)rvoLr2C)vmaD3h_Zi`L^U&+L*CTNeuxT$BJe3}yk!Qx-Faa3e zh4;kuw2HH(5Q>5laK`VJ@UH1ZwWoGl!Yo5GqgiFzh(Nn1sX(Wdp1hRE{SYL`B;?G` zOl$Bd=!uiML4f7#4os1{8npedgk2PiPARZi+D(k@fbsk3lD~(Q>Yzhek0ew630=Z> zmy{1^vP0Gx8InUV2TIotV4Sa!-~d1ba>tQiXQm&2hk$1)nZiZn0}|0a-@7F5B(>V% zbpxN&llbbd-BLi1+Tv|S{Svi0z_D4|G^giUhqkoM?$l-p6SUa^K0g#C<%1Qgp5XZ@ zTM79nPAK|r{wFxQWwO_ikaD2Dl&6&>73}TGu?LvAqeO&$ikw9oqlEY*Gx!!h-Mmfs zq?LodgKWp-F<0^+kQOC1RW|fqWQ%2|7S$huB*1PFe)6#ACuh5>&(mwEIBM)eq zJmW!ar+h`UBG$*(cG@D@Z+#EtW3cQ@G2v5W()myKJfpC%E&3q&f}AoT$6jSMWMzl# zS(<6Zx$2N=Z-{71fzANafdIp4=9QI|zBMo3rtdY~h7BL)-zkxI-hq@Mgr_Ivug5Hd72I=l(5NxXa%xyPnT&*-P3IWM&)|?5 zvg6lkzs9$8jg^@tgKWe{Pqyk|I@s;+3vB4;PFC4dy$nB8PB`EI#O&xtopaNTI+(fmUZq-8+7`Sf=|0yF*Xk= zwn4}5XE}RSSjpl0rhE~=weY$<0cEvUVC?1>6c9d#cRsGG(UA-Ig=fsD5ki?b>??SD zgct&{fdt}o`J1r8fSc^dB+4XkXKG7chdmWFN}#_26M4c{7g(W@=@R}LQ9$bAEAjN# z^VbRhbd{P-M;=Q+N7=&JP?=jPe{Bok-${)kgfQ4CfgAZvT1!uzfd?}#%$*SU8+E)u zi?*m8K0@b&NN7vT-!#J?K#*jmr2>^2s;qbkRw6RBU9iKb)dEaW9BM%zq1?1W60MGq zi@xZ4cZ-xWt@?Fn)uU4iQC@q#6m+fXloq+7#CnS7r}*HQe&~46U;HniANp2O_)egR zdAmg`6_kO3v3&V*-|dv+6+%0c56VPnXQu@e5W&RCN=qh zo`&{|2Y=Kb-nS{v(EN0J&zLOx#w+c%tgg%UmA}ZAOWTwagoyG`US4kh@BjTjCrAhj z!o?qh0KuUBhCzsDv|pBM`C%6dQIckeb~QQcth4OYQ&08!=Hd9HGVlc<&FQC~?u?Io zu`A_UUrW7w9|!{&7{I`;j{*1zA@G-7zs7H_hB0yM&1JM5sc9OqXdeTJ9>kxJl$HY? zXZHHa>PLDqN3+WMfH0z2VN682>uasS?pq!F=~jFoO-Bb zRE*H-N}gqE>t4#@e1ukJbyYVGAWSsseaR3jJMnNU+;ft{fGi3Yd}dd9Bh+d4KhpeHTf#xSpN|AiMOS`j&hhNmahbYFbakTV1mRprK46EQgE_G2MEl< zwBsF|Ba37X9i%O7n_VC$iw><|xmlIqtf{GSxrHMHfCIB|c6CaZ(5!vJbSBzr+ptcD zH40X~v(mCDfb`T4`c4H`Qc+Yz!%0l8G?|R@;@AgKs=wvQ6scWw9uTJu8mxJvp3|dM zC=pV+&MV29Q7(lj-xZQfnQT!W^@mo$0rHYVK;5-^lTe>?#etZDIjnFIx2~?@@-^cmRo`ql~w?ilMaRC7sB|>x_{JIcfGvUAN5`#!8L8={>}|wE#gtkaS$``(h>`J;Ve7 z!jNvg^;Y}iAOC2-``zz+t6n+?1Pjw*>s|s(j5LAhxaS>#jzpkrLWtuJ1AhiEFo1#o z7z_;b{dZkQD8ZzjMM4S65=(}&Y^MU0-VNZoOZQS6^GzuYKAUn_Z1eF{rbYNZB&UwF&WB#JF6CiThB`OYTKf~rEp1G`6`g#b<;zrytzr{w zy$O5>zupL7Q@4VLKs&f8lE&Jtg}(X~@DTXsGvB&~cfbzJVWoo!M$E7gR@q>N8E}M7 z+8ZdygS7m@xXwG;hn=?ky@ZntXu`$js9aL_6`0k}#^gz%$5hAV7zzv&r&|D!0G^qx z?fwNvqA4=n#>6UH-|&&8mKiA}g0kD%+iblQ3+jWc!h|S-G%EvR^vl*687r1Alf_Vt zr>k61=~f*hM{3J9iqtSWQP>R7j1b&ok}mQTelJZ zlbuo=8rCU(p0(-pc(nG+8abg)7#^8~;S;4*6Le0Oo1`drYIOnm3)p?-M(4zEmJO?n z;Gs*qyJd?uBm8$t*{XKAjzgnYYr9|0bK~&o_3PJZ0$4j_e!SxWQ#5wrTEB9I zE1jA8hC)GJl(~Mrl(H1fRLiUig=6K)l{Qpo`S6~&&vR1{dA7!IaXS7~LVLE6V)5m}`ahEroJAGKQf_~T2F@-bR7 zJZy~{k!}p-@j~>PM}E!P-AXPXHd4D?^@D@tdRzGZ|T$_{zZdL*kldb`z}_zqDCv ztxlx=$0JtsvG-Zw*z(BMTvPg*xk4AF(kFDK4oQ?t}*K^b#G4sBtO; zW{eRD(-4&P-e-_eP^2^_-(i5Dad2W|^ z6BB)u6GFVLcn4Tp3Zx6P6vlpLxEb3qy+N>CBcZicZHEwvaJhEvS~sVT#`!2`((;Rs z=i!I0kz z-n0{fGVf8mii(PCjRbRi6`+qU?W%^L&B_76VLh%UDOE=q1gHJuXABa{v zk|?GsH%luDSZiUTm6nu`iKkLLDM5*iYovI{nxtC?AU1Sc&dib8RZ2%3kPmPRM(B?# zPTC#snR#uqm8|od`te|;+ z63({RrYU&)ci9TT_bdlN`t9&}a?5@dHPoSR^RbP(c)IAqFm?>xdY@j@KGd7JNE&<~sejU49)J4lH-*a2-e}QxwJ3+P4NgU6ckPJ}L8*MD;4Io)lVlyJmD>@3dk6 zGtY9hEv`DN3wYoRTmMc8d^q_QXosqjIkQ{}R?l=Xo;yt@8Y!K*6JoRf@_{9hk)@|6obrAKvgMHOQsjQ(v#MU_xll&X)NRg0u2L zFh%%8z~w+-giL16`JS&6))7WgP7v7Hv?hdrW1f)>5bnVNAt(g?pg$-hn6x1?Ag}^U zoaRG&aHUPcx8CtWeu~gj25~7b$RY^fl`q$--1O4Fi}SY zZ)WZh)~PQu|0CoN!fFY0n2@lq?FmG_5pMB&V8ulQDmu`WHp-X(i{7WHoier3p<|tW zH>`wKK@y6`T0l|j4Zg!DiU93ITe5;fIur@&*)45|HiB-TA?k>tLY*WXe%bqHMR|o)R8%-UfFoAIP(XqLhr)^y1I*wKyg^SP)YjB`8V;WZms@Pp zkf2}Jz?J%yc&8`omjV)zRrD8OK1+>PCljkHwW{%H@v}q5<=bAvbM52O78cd$Wba9Z zk;8dP`M5i!e1w&cK2bvUu@5}*6K%VH$;NPK;dY{gteR9{g8&{Se~=vw3?iB8@Dbyr zBS(ysd;-yPg>VUU3K%lP#*Yw~Mqs{ld^!&4;(>U?;TJkq{Cn?v;s;{womcO;+w5>Z|YUaHj9X1TeZ- zcsD6pffi!m`|TUvr&!(_-p3O5o9FZzJ7QVx^jkkBV{`W1XBp6~#7pTN;_HQjC8Wy< zH7NnUT6XxF0q&4+%K(=%MBmhxTyW38;$DgXLb+zxyCondYGrR0uzbp7IdmiGva2>9!k zt+Lf?*H~kBhgFnUNSc=Ev;N0U@-19hZBd{Op*;6_5HH&-MA0^T#Y3P+c8scAUg-iOv(gBv)D!rbu?Eiw=ETR8 z20wtsix;~<$rkzusBxZ8-T?=s;fG*~zXgIVc@kV$7wqkAt|q!1!TSIg<)Q=-NJHHS zz(-ple-Jkwybbk^^5M~ZN046e`U)4Ufs-+oZ>;P95BajPfgnu1sT1WA2a_a(cJieS zc~AMSfOx@L)zOYq?7YQ{aku<^C=<(=bR9m}1@2`!#d$XAqS-X%lir20ny*&ZR>x8v za#fFxHLr_~JFQ)2^9d>F`Ct2-gv-6$p*&MnOsGD9C=1+Ef0Q*84e-l5%+jbY&jG(E9HEWL zmpo8nfCG4lPg(+PPg%X&Yt^b%?te3L=1fmZI`Z6AL$6-BebtPkgL}l2LM<<}OSr#E z{vR;6L&oOYz9aK&uVJ~CCCZD;t{M#GV~otMSot9I4IuUz2&GrD3acsQtH|FqH>HkR`&QlR>luhzq70 z7+o~LM1+N1DBp+^CrIKjV}dr#`#_*{o8GD|Cc(@AoqcD700;Ga?6Jq3IZW4K zUIf1N1yg^^1!k653$*Ny+Z5nk6QF_#Uqcd=*~F6$Ok5Ab4D1VS%TK$Njh7Z%5l8hXK1f zvrL5KAUmj3s~9LGlEXCDn`qCr&LD7>4U;*NX0{OswR)bYS*Kl~7FpJq30hH*0M^nC6b7AjKqI%B((VGX(h&vE!9i|GGq5 z8(w(9+UGx_b27$TbDflv(bKKqh}o8q{|hI%*NNUJ8w-;LZG5n5rIcfh4d5XJV5U8Y zN8M2dh|fK31TI+#;m0>taaL#*4h4)hp`TD+6g?E?uoA*bM(}%~Ea(t?QSaV(2yI8Z z(5?jNp7!r6fKy=RJ8|$r9Jyf3yfx z?;7L-^5;bjcE|d58=o?}dIPYr{9?B~(I}%^+Vlwde#|OP*G^bncEsp}oZi#5%asNv zxO^W$NnH8R0*yVrq0@98jZN0py;vh^o+#R&qmOjq6@&#Lqh0^`&wsX?Z@$@y?6AWQ z^Yc6Cyu^Vi-hJ2IcJ*(sc4iIp`RGSKYKIP_6l{9t+ze8?wUiARWc5Wab7sWMX$d|8wZ zhmZ&SSN`xyJM7TIoEe7MagW<8Ki+ws@%&N|L%Dnpb-4ZZ+kIx?!yo>zGenqaJP;Qq zK)u+S_)o%pTmcDrhBUp)-qv^0!4Saf7r*#LKbwWYlXNhPIIP_F4%^C~@1&zWmM&dt z=bn46efi5@wi8c0(P_o=R2)U>$vWgo`7j`!!%{x?TMFd$1{f9Jw^K|d>MKqtj}ZU? zgTavUay2^(BW8Q(`|i8XckBSB5WhDp(DH*1K4^E}eYbt;Q=f9%==eYY2qA5NBRuo1 z_q*`Sw|JnO<(13r#cX#k|j%Rk3A;aiptkTCuMf(dr#`&S;PwiHNx!ex7{h;D8XAy9C{-D zK?fb+{9el?cBvGQ9K93YNYpO3=G*^a$=C0)tlbZlV5ZgemW`Io8ERd}9H{df3awSbOnYi< z0RIRu;2NHTur)eI2d~MoT#Vg)B&0QHu*L*R{0Z1n{Kp-J^-LbL0ly#+bFdn-#%ao< zSQApsnnXb$Q(|vB#vK$8;w)OU$fix#$?P&o;yd{ufODn32-TGme&ID?h8f|QRgejT zM_8+b;wIIxLuOTL8mesYV=_%Ud4jFeA&o8F5=0%L(T+llu?UasCIjuHx=YVkN?i!h zB;yN$XsB;^2d=oMuHhS3;G^-#7hX(S0?GygC}{#+I}G~9N(sU!xLLAfiMIvqfuaI_ z7|Y0)@fBP_)8tG3;9}IMQ7)WfmP7u)hFrn8hagMjML3hv}^+a)a{`uz}C%_BdX%FxXjv241 zEBSS+pMY!LL2I-vZG{5HI|6wJ{Bz$skRH6namu7B_>a?EJRNE16TnQJK&@WwlHrXQ z+m336j@~;eN=Tj*j)atuUuz|#P!8YYOS0|8C5^6pjFa+_G7H=+>6Y?~N1_3`MBVtl z9X=|{Zg`>1ZmVp!v!}@R)K_1k*rA<5p6>S{p8MFE4*SLGPW$9oZGooQl`cAGynsIL zAsUDTV&O2r|NYrkr&qhU%-Dz zLq5P3o=MA(bhP1Vr=8}EE8rl+3wctXFd&fzWtX_0|NQ4YPi$J*Cb6#&@WwabAaC*u zjFI=e3-o}H#0((cdC!34JGTAlk9PHMuGY!O5w1p$(at9+yyMgdJfTjc15V0DsJQ<6 z>wR{Q89vGm_~07S@jkRsz+Zrw_k1UR?&ED0a7o-uZQ`=A*adqxIDFG5TC(ba_ zsnl&UDZ%lYK1Lq~H%%H>5O`UoDAsItnI-{qGo%=*U-=GEC>|;shui|q#QXSyiKVI$ zcp~rU+q5aLvciIrQzB()QpIFz8Z)oNRuM!AM1ZwclJxT)klZNl$ z7NHmTcpvJ-H}K0dCR=r)qk3&COa9acff)fCGdW}e#&qKIoxBj%;VR5r_amGk{!o-F5c$uYcV;42+3oMwmBD z98Dd@0U={ENPLtKY*3jI;0N4j(ZG&?h~^IihOl8=FcrSD3`|F?sHkuTNS@@+4+V-2 z3e$p_la_&wrC4xNUS94Uo6b&oT!8@wM_F`CW?#b0Lg;v}yz+_<5GZ8Sm+~1fV3ZA- z0UNHv9jPCAQjQDXDtqm^wf35v5P^Z^$-q!U*_C4AC^s-(7!hp*Obi0xfc&X5%xIjL zQGSYXfDd4xEaDO;ETacJu|&;4K;6J4%#8YwmNd+4flCHP1}1RhgS)=-%(*YjkWmhU zH0k&bOtdfb0-k7J+LW38Hkn$`w%{@d1(ZnuR_^(cAN52T1qZYj^=HuHo^~T1@ULFA zT0CE~L1V`HcLqz^mNxz8E&ufLD2w z4WY9QGFjRGfLS(czrEGYRibee)JQmc<>kdX%=Kus@eq&8b>0cbYBusk?+egEplSM2 zOLMEtd8WD<1o;;h%BfXhYwaGsg?s`w!uxHd5Ak>G3QcYrNJ3eD72Lj)Pn)&@)qS_N z7)@fluK#{mulg3wx$QODo^!=>mbRBpKi7m$=bB1ux$avsx2m?Zy-&0BQM;QxcdrJw z8b2o?efT&X+$R4*2}PO>)Bhajb@VOzBIgsplbTwzov89IFCH3INh>YtbS@w-SKnmZ zDi@z(^@Dzn2@Cv<{)Qk%nu@3Qw za`7~TO!zE9CFKAwdBbzy8#o4Y58vcH^#T{b3NH@|2=8ele$+GYBA$s0PvU)0THw>b z%a}qSKI0Gp`XrDRens6FrzjuXP(C~ro(F8;8GIoJ05f$!VPUMKO!5f$XDr|w@!)~L z4bKe$zE3&eop_`VI&ee6eubQS1-fpyoSC+#y}&bX{uq&et|rUU$89 z6c4f06A!WGsl}Ep^SV0GVZCsLtiYHG{NM~)z$c@;yuynPZ4Ui`ciN5doA&1$&$KIP z!6_ls3A_-Gc5{5_8+8u5oROZm;af->-o@YZZL^^264=2FoI(p+d#9m{Fb4Pj7Ui&` ze^Krn^`Kk#JiRl*CQ9B>cv8qDS-d*DMhPj&lEB!eGdr5Q{GNCs#~7>TO%&qk!@It& z(6xA_%)88vE7#6a%J2uTi`nRGkh!C?Y}}v>DI(D}z|8_;eRH=xxxUM;(aGtD>f6Wm z$hF}G8QVNNq<7gcb^?w;%mm={5@rq%cwxLRzr0AR8)v%k5AzxzqihkNh6*Oj4T zjycBu{`bGzx4->u&-cRry3j8B)@63)nP>Wn3(5}6juY7DKQ!NGsYyfGFmYBPIHzRJ zoH@?$P*yOzx#W^dtWpCMS5|$1{g=P|r7Ke~O}??>^MMb1z?CGHh#6S^`q#hOCqD5B zJM^$a-MNrX3@%tb0$F(_RctJ1zW8ES3iiTeO0MuXk&WtUxMcieG@!^3P8ir5iH9N}$4-5L1) z@P|Lx94VkMD`5Kl?|<(mR`ce~vpes&-M;qqZ)g_yL#|kW>+{b)-`k0N{_&50I4zWy zm%CCxec7t{$3OnDa=m9N;>zVm^irEKV}`>G9g+{sm)$m+nwy+<5EP&TOsG(*Fh}DV28bg2+u#1S zM{s~Hd4Avf-sb}_Fi<|q2l)h>RhT#mIc8@l>9hxBfBMs()-3o!rz>cMwkG{E&pcyu z=OTU?DS|EqI-lWuB(-qiyLz%R2H5%PNxd z_PR<-Hm2c2 z%GOE&Da$IbB8@c}QdXFGMo>j5fG@%i5Z)N$P!NC#;hAxWeoVgLd#ol%Mh(}bmu3;u zB`7j>@t$@kP+x>*#zOdG5ZDo}F-Ky|BR&Ej<3-^8q(!(>2AV0?%Bf7R@{0toPHk^4 z(F%wL`K)2ZmZv%~`%F0q@4((9x*%WbPkovE!P0`gk_`$;&r+FU&`S64G;(>S6 zoBC5X>KP_Mz;|fp_Y5|Q_7&736x75U?7A#^(mZr3|Y2l zJRl7?p=<)UBQ0nRd9X^ErWH4IjZFQ?B(BnAYofSa_q0H|HeE>5ihiyrx90K*?J#E01ANhp5cn1HpBYA}Sdg9cdzTU;ZhkN8P%116B-w;So{=iH- zZf|}e{noC6*gsRBotf{}%G{oB{Z~LBI+Z}9`!!Y?&*D?QTUEXYlDSd{kN15A-bW-I z`?`h5l!s!SFM>X4Hz^c(>2}MiPP^o#Hk+20=3DzxsTwID&$lM6MD6>r(b;y?xNJW= zq(i`v$M%HKP@$6tVvVPTU}07;JURx?&%M0iHG2aGd7)ul^D#UP(;o-=NuoDfBy5I+s}XYa|rz4yKE^#SN}pZlDfsRew2zZFYYxZr#B)mJ;*FjEd{L_t8QfmtJT;(x+G z#Si9i*PVCSuYUC_#~0>8oJx;^$B#Ood|(E&|Ni^C0*4ZYK#dUlx4-?(SMEXS002M$ zNkl{ac4vDZ`qXU+H^rIiy&wlnZhlP4QAi*6NIl1)0 zk6-BRiBg6y2P<6Q4#g7x4seYkK|8VHL4EPzfsPg|Sm4YOT);FRdgvjKbJ9sCS*4Vk zqmMq??!4TyP{1YEK%dYE<`1mEopQ=4uCN|;)KNarK^F)F zl!HQwQbb##WKmbl_E>2H&%w-)!4qKyAp+X`#y7s)B0}ph2 zUD6Ww{PWN684%)l*yZlGlRv$a>J2T1!Mdv}vPlo{rE6kkuf3+Hcw;00JooJLcF#Qz z*d?F+q(_5ahQKQ5v(LU@GiFY+S+n+a-gx`%ciFXnxz5fz|AP`J0-xQ4DEKG57C4~6 zObIje3*OV;=u7-Up9y8X*(+ti_bHqDbM>-RF3=?!>*ZkEZk-aGFd0eD(|Ev`puR)@ zY16wF378$PnB|-~PA7xwAip}Tbkwb|v?HcjXMs*${?~oh@mi+k%--M9_dLqlh78y0 zs2r4~P;j_gP(CP^nPG%8&g*DUzAYMO*6Hkq?40o?tZ8MT(FJv21vjKcK;sHL@GR
      Ct>z>AFq}`Hvb&chcLVDu?Q%6SOdxeb2rKKC`$yRg9YajZ1 zf2@RT-M+j^T}+xb#Ob8Yx>&tj2DDTq=}`{sKm#K^MhN;2re*sFB~7a6$862=6kDQU z?yIqV3j!V)rq!hs)*TIjrk?ex#2q1Iuq$m%AQLz- z&^5{MVC3N3q3z$#PE&&Dkt3;o7ACWXbg)VyV%CoF;%iN^j;{9|G~sBM9F4F%CKB7?HWm$eFPKL~ zPH9B-9Wk%&R z2K0(!>nB22eQ==5j!SitB&k0xhxE7BIEmqj+t*i7G|iJyVgC&gu;e z$QCFLSsp*Q@vWa(q3;@fJmyYgsAAs3WXh&#Vc_|Dv|BXWoc+DHmXmDYu4Q|!r(%Rb z$;ezr$ltKx(irh&KynC#(tbFT8Nc})3)dduhQv?ZDM>`n)@Z}i>nkhl)5!VeWmv1C zPcgymqgv~xxubL#FVUck}aRa5}!gZhT>djkriiX}$+ zyVIIqm&CBtpVlI&c#5;$Y@uRJ$qhFvy&od6Hkosa*={RsNS>9**I+h{2ScZC=x4*A zm%)#uHryZb#3HGA))pn7Vq4Sg1pLO7mA7U)y;KYqbF;3l_@>=V!Zhk*L|5u`m7ajr zL5%SP?+n0GrzeO6A@5b{Nqlw-3%731Y*Zr6QQ0gG z5DC|J6eps$#h$%-AuizSi(rR$sWX&$7}B_A3DWL_yY1{D{Z+;1tJgm(T2nq>pPN^4 zhA2%3_R2yo!QS6U=JM}jL*a6G!p-T`#AVI_h<^Z11UV4D-5*n0JP%y{+0FTG0M?c^ zYQWPg3+tjyAk?}Pt6aV=xCp~TRP*a-=t6C%q@EXn$mQR}euO;ubhEndNkw(f)yuUI z0$?1x6#j5kY0sGt1{l#$jYkOfUOwr?(=~nNlOsiG$Ugt0iv#BT@-ndeAT=;CVYQ?Z ze$3|x3ru9>G&JI+WMr=YT`tA}9=v(?Pu|M+1Ci`wk$x|QLYArvwQ||Ot5>>ZV%sS0 z*WU}o_YDm##`t{`3_%l}{&E2>M_w~&;kt1i8g8EvTTKD#35Vu$qIVZgR8+3>UG!~k z;&b8%IMCIL>-zb~JDUtCs;KzG!IDF^4U-Ny|5jz4RUdSM*h=$-^GQ7eT(cTL41r5K zqi;gH#FH58N4>e#mFBjlsYNgTyy_QdO}{vO?M+^Dz~_RqSG|Ml$;9}3y7Qq*@aLO- zE8~wU6vf_bT`RvxYUj_CW&u4WJQXAVIUfYJ-ipigPxn-wsGlzi+6=e zb`9p3-c3~<=I4u)^L^rg{5!yE0Tg zmOHIO^_kgUYG#E#aL7M3f{Opr5)vAQhKE;5$Br{pD#2|YO&xEBROS_%&kfCi76*Zi zfa{h8u+T(B>%)b_qhk!s-eQZ@DSzJ4f+2lM39LC^9LDAOc>mYSsdi-mu-%0!MGFAj zw?A&k7P=3RR9T?IT>)BDCqgZi7QwKOF~6oCtvFvt&H`Wjp(V%OWB7a1*Gp+Df8{9I z&IC>2l2Mt8{l)ffBHjG1^S~c8!TbH%KGMTLP@&Lj%*#Tsp4bD-8?8~g(i2}N|WLl583lxa%tT-%6z~D>2%VF54@IZAW z>-JAr2yNx*@!FAZ^VA2<4vb&j`SZ8{);F(IhT+15+{-`i7U5l)i~o^?(m;NbOIh+C$O!9e_+WSF75p0Xr-`F!=Jm4XMg;9>2gl1tFR+?UPX5H4?K59R&+f2a|=Hp zlc0e)6vD^G#=D3DlOar@EdX8A1qb?cP98Nq=TU!qvK51lce)_*cC#CdOLV6!*H#n7;hYWCFa(UxTw13Mp9HGMJLKe)_Y}4$5Q_AR!`V{Fx@>-3XW=2U8&LBM%OTTByp{|b`dCbLH&EjB#tv!d-K2FdC}9A)t_UeQYj>a*YCspI zvxS%Fek>I`WInJt(f1kilp`=fcj(rDWMc$Mtf!?JuI~u8`?~QB4dojgX9J~RFk1q{ zUKh3gWSVxLK56>6T+zIpg|gO7kJiQB)Z?^p^wfha?{Ia>yU@bW0qGBuvJDSv`Mf3_ z#>3m<4iW(i)P+A8vPl)6Q}=ARp)ox+HZsZwiGPjNPt)gbN5E`~>U`33NQ9UJ%53n+ zG8u{s5g$@dpJ8elr6j2cXc>YON`(8>v!qD$JM6~~;Xa9rj-Xs#0 zgw>C>KRw<%N-F_H8I2bsm|rF6gs*$*ss_Ii%c3Ha&jcnEcc?b6r#xH>kPTz{qTvYY zCwtek$@s8o^aaw8o-yy;_C7?5WHtznks?|Hob*i`M}3N4P`Wz&fyD|Gt6o!}AE50` zg!O8kLo&h6ka*er-Gd&$>>)~yJH0&SVlac#j}3YZ6_42|%q1T4Yf<<0_8!zy%BChv zZc42eR8)+@KdqhnkQDOf0>^RY6M)+u6{Mpl4#bCZsll9I@Y~Y}O2=J<7ZY_|*iSqh z%?Ug|e#BK4i!<22~wQ@XSEblv3HriEyTsv}+JBQPO93c?&C;T|SVC`Lz_U&MBh z2eH2F%n)ghXn|+Q6-<*^eaVCAhpQ5*qQ|%?CiP$=Vxe#Hx{F~bNhgZqx~L*XjBz@N zU3s_g`yB7-ftv7V%r^k-+GvmLO^kJY_bAHZvx#yVdJ;}SxGH70NW4&LQgMDbW-3bU zk3+$p0*(aO_zBt_lhD^Xzvim$x0@j|`?*Wy#h#dZ0>Jo=0imnbp>cwX*Ue4=&?evLZu_sX0Er9G} zB2oj?uWo>k1Q=4Ln0Tj&MfU1UfL+d!$mA;(#%ajJSM6H;)ySVZajq^cqY{jh0P-Ks zD4xaT-2VP_h46HP5IrRA&L=5X9=y4ZsHN+Xpq#dnH9P1Pb%WHn;z0Z8hrbikwBYqF zI1-2Bi3Qbi*9?R_it+Fi-SQTo6Ii<*Q_Vstowi=xXx_oz2n`mx%U!ylM#Q*YjZ4Cd9foHa*CioJ)0}%N@~UN zoGvOQY-`QwD8f+rMk8n)^8j0P%=s}Y^)Lo*>^Bf=0o?LAR}cdZ5M6H1*B%}W0a5~^ zcH7;Jp9e)xlo!z%B3x<}d58~eP>QsHe_C197ti|AxSLMFkhK{Ovn(oGyG@;$o6rz) zAFjvy9S?e=PD9`MYXDF+)3s(@(7H{r{cEn+cB}3e2wLt!ke_`O{rQ8rIAF(i);UzV zDW1{f&lkmuc!nJf6jF$FUtg&P<*R@?ZSHY4?Og03=hudw=p!)*pV?h!nJ)j&^HA>Q zbSbby`v15v>ic?i0Xlm4?~&(LO$mk00_-0I;=7L?6qk^LO3D|VcNfV4Myd0t*G*Ea zBMH9aKMz+0Mi(^n!Mp`0jxay?o$<-vWQPvK^>F96RRy9fLlF7_I`|Wh2mVi=K!xI@ z+lKQvmnin3K`s}!j#0`7YT`!O^;n?1yL|omBBF<@bNB`su~?@^^qs$p*0t(q(HFU4 z)hl4y1Ud&|QOm!(0Zk!%Mb9%J7&zV8HpYw7?^iRw5){PIbkk7_bko;>)?V!u**(^h!5aforvPj)iwcq zL^PUKe2<|(!Thk`3@RDEi#sAV)@!Y#|IxqOLa8lW<)(@(SKdT1 z5NU-Pn0EZO1pD`mJM$4B)Tz@8n0M43HT=K6t~?ORwtL%2Dza6G5(y2FrG%+$m3>!Z ziI6?K(Q9p}Y@xEt7FjArc4BNzb|yPB$P&tuCC1M0e!P9n^nSjdzXtQn+|T{o_qorx z&ULQCx3`gUMXH>-B6@CeDq+tJfxN_;66cyUBn{)(Yrh~7kO?f3p4?k7P6NO+6W>F} z^8aIR|M-lCB47d$A&>?sG4B2SYEc&;K>yztM~<&QN;vfACuYE{turMgB#b;g%Riat z*(V9kg>eNbWP?^eP^k70 zYtX4p4>cjI`C=|e^3>o9bpM69JY}ui0L&+#wSjK$NWW3fARzdxbXpHh#q=?dvXeer zZgr&;J60dftf_h%bCQZtKmi%MAYyl7$Y6>@z8U_U9+*!groX_NSw(e$L7-HS<7lI8 zHjqNiXHqtJ5uO0i72(cw3c$wKhh~5@>F?#t67VoyvbVRFUD@)q)(z;Y#rg8~JjvT= z=IWq&a4W&rfMSaI2YeSRak7vU?3&y`=N*o3@HY!2Zl5xKclY`+3h8tth9CIJq7Z;K zp|8!f=ab1lJ-l-_2K~|X&Yu5f6ktKBfU|i2xQX_mJ>QWJ14}xa*>!IT#YIzK$3J(H(s_bJ#maZRiGij{Cp-<^SdRcImO13R<9(~l#nMgV#rL!oxA-EowMc*4?(Z9uaWaibEUNfY>02GG&vxDVZ>#$yT&wTy7sJHdz3OkcPKS3X&*IA? z`@bLhl$}$b-to`*D0ULq7~ZFxK&z0rOXvYccsUU?hAwsFLu16%7E6Pw)aW-G~!D=|e` zR@j&EEpM&j?mOIb_=f1pbF7SuS9C9qEqnM{@p`M^)PSTo?YrFZ!C6PNjFM5*EmJ#v z6N?`FZO`)roPk@MHM`sse|6nA0VZrf&gxxK5mV;P(bjia4725-;M>M)VpeArrV3`z5|xc z(fttV5M;l7yn&<|HVh&sX1{t>L+H2WzLjVGI3#b}=yNmmzMZXyG`Gsn*m|0btzYL9 zu$KF5jYhF9O1YmYLKkPfzYyi^_H#0(uUo^ZFin2p#Pp1~-KtH=Ebg;y)moiZaSE!- zfxBSCWUi2Pr=UG`TpW>-hi&UC>#fY|rNG-Oy~%M1$LVPl_q!ht!ab(#?%x?K8c3e) z?_|SsOs5grO$j&si*V@EQhkK|Y=%KM^u5q!y@Yb}L^OVmB6Js;1u5pm8Pn9lDU1?{ z8Q8^9hdidw0$yAaH4-z-V`*vWhO^1+XHw=IVV4C6VC9edzJ>>o-%M|=2^!}E8oRA6dwY9B%H7qp zXMi%9%EoHFyd%^^5F4h-$)mx4?A>}!>Unc1^tV+1YvTz4>-KdT9~{z~4HJxx=DCy% z?kjI8tny(j;Fj-kl6Vfg^>>GrWM)R!_GEe%y33yM-NAMy8f&n@J6mNLxAjfjH76|> z)8n%PT-;ykDs9dJ;; zO6g3D7+EKd`v=DBYo%!RKM@4Q^KO8AhktT_L$&70a(xzj(>CtP785a2opk(p;purW^M!ofRDYuXWZsD!%JYUOJ*#=fwd z#xP?+26D6kB`X1VHmS>k96g+cLKREc)rASR#);PhL{FBR3{mculVduk#P6o4_R1fk z8&X9COzT7Mg4#Cia;LF2Tv&&U%q$M_4Rjwz@W{V6GGvp><#$;Tw3(GPiZC9>4QZkI-cEgA66Wt8KZK>f#q<;^zcbf3+dxcJg67 z{xB#f$u0R%h_Vja*{0?(Ab8y!u9W7O@GLeeIvPiL=#m)_HWX1Kzq;&iXlm+&1su%x zZ+5alL*kZzjf-8*x-Y`H?FYVaV_WuHtJvP$5}Vpw(@iqrs2Un%`;d}|GH$O-`OB$r zaY%nU$M{<`#&dWo)L_s_>zwG)&vK5znQEUo$F7A`)LcU#S6)%G+@>jaK8)RW^QGM} z^xLzxF9YhV7HHc`$n)PWu3nJ)7HISn{;U&$Sow4xG#l_R?yY_j#1*$|9sv#2YV;m+ zH1V(pPCz@oz%9)!=C?-|0rnMhPgC6Dz}tL)`1H3cb2|WlF_)WV9Ac8C*)}rVw_*TGT0lcS3meBWc0_&c3r2KG_esai%C-)w9IGt~;S}q$N-k3#|El76v zeBMdQkz$|iY-n^`8vo*xS9fsG4K?dx8U9Z3QuQ%ZTk}~aJTRlKa}LED20{^{=09)X zX0E!vb@1+GknzsFIqmA7-<8liQTvducve_Sx>;(}ZCjeszq>28nJrWw$80xRGgv<~ zbm#Qo_{nGKm*(U;BP=OJiDEdk(-b%p&b!UN9rT;89xaxpSg;;T8$xZo{rT(+YLM0_t=+A8x z@A`WRSNff0S_`kr=}*&M{(EsN);s(5uK0sI86UcyF3fjYCHE zc9L;t*A&A!viL^hPb<&NjBoYe`t7Xe*tz$~WUZvV8`ELu(sjuEg0A`DSw2L4!osb# zO*|*Js`dEIqDGkExi4&`&r_s!{tnNXO%I*`z)2L%VTlt zwn8A{FR0}nI-lL1An`1?DVSAgljqE2f@|2J%`>;O$mQ>=az{STDB6AV9}_LdKG2-YDUS7Som~m>Zn?8!sBZ-{!0*7GTSRLCpLt6f9QTc%~rh-CSxl}reTiZMVh zt>>oHzG5FW)8d!^xV25yxqywG(^u|XUmtYxjcDw25&mT{1T@JdxJ-)ejg)LNTNDnU zw1NIgfi;$Zto%x8SIv3=claPDzmqtwBA;s+mFD_d&=!|1tccFF{P5a>^@508uuDc8 z+SmdU-J?A7UE-W4cEvY#=y?%V#?e#ar8?|@p4HZm65Ih^gl(wZVD|Fht3102{d)h( z>5Jkk)Awdtx>iKjJe1?*m)?J5o*TvSKM*;T;lIVdo=v^+51gx%^6C|`J>fKELnY~P z54e4{CKY$vQ?-N)b#%n1*7Nkkx@lAMS@yrVG$%&AEHRY-_WoDzNMq@n-!)^NUgL|n zjCp-kJOp^hEERAs>34p){H%M**^nU{K|G$2&9kv*$f!w0F%=IolS~75-;xAJ#L%<) z4t1B4Pz|P0Fn@1UO%eFCc`ACcRrx2db`3!DFH7FQ?;B>?e7R zLiMh%hB^zMtU8`q7~4k&0yc$*zQ^dlDrp}eJqkqMfj-qh2S=ce@!9k2IzdlIHV!-H z9vSk42MmmGz(N4=ROes@isZXkO8-E_%!561o+|V=sOVcn?exjm-Wd!YqI^VTWX-L&^jFjMjGHMS)dNV3`$5?hfxN)*=}OSNtQN$BY=S;4 zQA#L}wyMv`S{7mM>tm|cP>)M{&?6KGSmV@(#}y!x7pw?^(7XYgso&`uVE>uuB1`Es z^z@=Y9wm#;R;Em_$rcnjY28ka?X_|DuJp}T3-LfFh#7T!YZHse95aND$x^Di?OqE+ zfQ1F=?7+>Ys3QM1xOp?aXZWO!dz6mn#KMs?!&wYUaoSJzHz>+|r?Lu|Yds9E;o+t> zSF$pf8j3_|`A90Di99lliEP+Sjf|y@h z0ODvvB3Z6>S;2%V$!zZ)ZBO|@xy5;|9w3sw#K;pbE&GGgfEds{lOSKe)^hADEkKYN zAiP0TAmAz)(w>e{t>uYeJ#i7ms#AbUtjzKnAbSP3MH&h#iBEQ&7Y6zJH!Pa+%9r(y{0^Xa?cEC3RL`Lo#v%fZactBGe@c+=OBubwg&SRJN&w4(JX0~gb)LWCVD82C;1-?VH!<<&|~I7=Vd!LuCK3eWeF3= ztVY)r%L*m(iF)DbEkw@_T=~d9@S+nVi|V%OaW_801HVHNc5do;hTV{Qx`2lBDxTtv}W8opR{FB+i%>-WNjk(aoIC!s@|1ng3|0T;P(x$f2aW!-(z)FRp+ zDT5ZaS-r{H(P;-NGt%#0Cj}IF(kT2FFt404YBsXf*^=DEkIKr^LMOl2*_1CI_wifZ zj2Z*m<`I=2{Px?#t^GalzsO&mm)JUp5dx3f0DTB8nmS(QJ zkzKrF@$2kvM!@9^0G|-Ht}xKC;s%c%TuX*VL}w%=Rel)G{H^d{8);0f%8VS|lI$LT zS`6zZ2t%{(0ztk89Z=)8IzCZtxEAd-pS)vi2+rQPz9U44201`?s;WNhub#h3IBa~Q zp_}Z7M26Lj!vF*xahT2|wT_;R2Cp`ChqTC`nq~jIiOeUdhn>8j+XqQ`%Lt({Q9x~7|;Qg*|TA^L6O)(N9Oc4^1ddK?r)hO@w52UkR|0^ARFhZdkq{H7vxZ4Y&jF zAX#u$|ENzQ`71G4VTl3&Z|a9ZT{hy(5MLpKfGtlb zuln_hA1crrb(N!DTnpq`gx})TEQ#BmB^UQ% zmyw2`DEG8Vz2n}q9kZJr`gFhk&9AlV@ll5|NZ4m0OQmGRA!}Z7 z=NEx9dkZN!16Gl_^MJMO-j9TaszJ4d>}0^d*4RJ4rW}F%u#d(WVgDNPKfm6AgHx4; z@dAm|`z{#wj%CQuz~h>=Qu%Z?@^$E5mFk^TEd%ql3(yB^Oyg69SBxx(J?xyvcd)G%hi zQPK3G2-;a>X8vRi5B;w-YUV}32e7*_ynhZ8JVlfW!FX=F{!w5krv~TWYPWeb_y6A0 z|5-aK%J6d-H7;X)ZJ^xVMz9CzYHI%Bju*zFTI7m)_KzN(%)?NWPwW1>-6S$-UnEe9 z)zJxw(gkWemX_m~uv!xkVUy0 zYMD+EWJwr(=Y-#AozBV5K-I8CM%{8Z2v}YwKp;&I%#V^6c!x}P6J&a64}n7b!OS?n zkP(JY52hy{$V?gvPn2l6-i=z_{A|;zcoqNM5F}-|JLe+%G+g~RrYijLpAJtK>S;>L zZ+j?x#D*q`L=78#T^p;C_t|FHP8gm9Wp51ITfx6iGLE3j4gE^L3=FmSH$b(s2ASfn;RW;%^S+{^3OmQTBVgyCUsHX|AM Nxu&SDfVyJl_ka8FYbO8z diff --git a/docs/assets/notebook-list.png b/docs/assets/notebook-list.png deleted file mode 100644 index 6a90526d4e0898feccaf041c848f487e9933dc19..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65219 zcmZ^LbzGF|);2YOw1kL=por2S2na}tAc}-^gTjE+(47NYN|ht5#vhJJY@6JuhwlG3PGRR2I}-b5)9^K%bGD_U|NTOm5cB;vo-D2S#+ zLi`I)ZyKct6v9ai)n~6oDY6Oq);t(IChH{Pj(GOsxynQ4vG(>5cjKQZbeUvyG;rR! z#3Fi5ft1$`x9`5o#EEzK>Bxs8jwz0bhnL9iopHf&>wdWZ+#b;<-gkI-i^F($?|HEc zAK$|C+K{2RYkx@7{M>z(w!j@ai)}3O>BFN5RR3uezd`>18k0?XOw5t7%S$13cJ_ie z1Dzv--OI}@smsgDxQ6=rvjFJFOEDC)9L;Bm#pNM@LE{Y-RIF8`-t+02nX-P=Gy4Q) zwKp{f432{G(w-0auPNC2BaOYO3B-!eUf|K+Pw)Z%zxtZ(5zXI^SQ`sGQjwCS5jC>} z({QmqXJvmRh(kj|^U_jJpHJ?!_K+%_1-}1>C+JjA0UK^T%Ayz;eg3mZ!aK8Mz zz#l*T|0e%cRQ3NC<$A&O?~?!e)SCENdOFNnjy(CmzY zB8>9(wTOZ}>iQ%oR&f~Kwqp>oc}GO;9qKb|bTV}H!rOalqdmrLiuo=9#yWOMM~vJ! za-R~PV-w2_OtK&3T}F?$33$Ja)LA?mIi={~b;_?fRGW60soguuDV@{rI^(3};u@yM zrg29>`{R$SD<~u+ggNg++a|@=2v)Yb6g@p`ns3?lIoe)omX;xk64JK$n@<_~iAjiA z9zL9!o11$iRKZ<;3xh})1@+&5=;hIT^)0|zP1bi%G5n-;I!AJA3y+TM$x+@HSd(MC z59%#A^2ejbX0GJ#C;p=&p)g@b$I1#F9dSdX=P9kbFvBeqMEIv$tVEHKk)I8H4a4K( zKU1(0-Mvs2**ccNOx<@cXSrUB7=5B%qP=T3+p7=JuM+)l{rK@i&B!P^HI;!Va?_0z z&-!*l9lFPCyAA~<^`zME-4{lI)`9k`>Tof4V=ks2SBuiXFi0`pcjBO>y+LzVh1RzV z;Ro{+erfuA`})AW(eyCGo4h-|5z%J|TXQG&V*58=JTk+9-#@r+Bw-!$JAL{|tal|u zP@pPg+vDyX*!x0BFF($?7oLRaOkA6v1r2w@#)UIf&X*XwcW724$_NeqXkF;4^#p^T z5`VOHHNbXdpoU}O52(;xCZb;;{n|>QN$Za|*DZ$~Duc>G(u(zrn&t zbh_&|BwpOKirj^dN!ryo+4If<{BJ+J@rim{pr4R8jlZp#|5e_RjzZ}Z+Pl<|aq}pi zd@F@Yz;vDeSKznDpqBLY(a?qMB#y^7cHNRhC)ymsasSQrDZlDWV(hH~s06Q5A|BRF zeS=P5Xt1-hmRa3g8U#)6ou8Q?1H(^7}T z8mmTmUpSj~yly7~X3BYusU2kX*V60s1vBh@5;`~8rW4&wZs(9v^JDw zsFB{N)k;2p#J~5Pei=N} z`G&?g+Ps1KwcrNX#!53z_{1mb>;Y@DY}vXBI;Cu5i??LmbCVN`YPZ4_1RCa;+SE0Y zJ58*asMU<3O(Xdl?$kc3=NQRjh1dQXiT;{)xLR0OYCJh$G?D=+zKAubla4fT>(P!x zkR3m8+lBJ4$I8o;d=NS}!b&h#sy(o4!NFf0E?phYf_L#+*|lu;rxV{Pzq~m8`YX_G z!s1PEi74&0jYan~(L@-0vLW$d#^`W;+?BDg2!ny2O?EB{8fIhz>rjk|Y78<~4k#`O zK)6xNWeu0z(>zfbCh%5sZs`~ok5XWoVqA~c+wt|g5DR-;eDCzIpgFp9z1MB}zD?1x z&;v&u9;d@3ryR|g@bP;xl9I&++AeLI&dayd%UnfaR)yP1P4T&=X9W%6p`o7*v~A;R zkUL9->?W-~e;EG*S_k$-zpzd@LunEh=qC|g_WIE&@ucu$0fFJHQK5Du>{FP4N&kNO zBLSJL5xCL1O{n53d=Pv}_d4*DhxIuB)8J#tyf`=Gjb3!63dRzL7Kg1%8k^U%o5 zbK0>Xt8%59QQn}dM%DCMdxaOK?Z&AcRe^1eV`nwPF^kIqK6m9ZU}MA zM=+!v3MzGiu)o7gOZU@;t?oOCphGLidWCx7zE9d({bpu{$rF~)q3V;3;ofl*)2;qg zOX{ZMIY8e#ZERaukYi~9F@7`B;Cx>*ub@K;sEyHZk@D1O#yYC$)k@lt)@75ndu>l-;!P?A)04S7 zR|%TZ6I?4-(n} zFP(>}2*<<>;y<|%2sJY*NZ7`F^Dp&IaA}c)K}tJ&g%E+u!-K1%xw>^yu|}7!>uxYh zo5Rmln|2FgODb))ra3<$0qglKlBPbL`;^-wSmCQ4FGL)cdt!3J5$p?Jx4aM@b$1Zp zr8uxAzfB2le#J0yBe;rV)MNxVx&-LxKr=G_`fb)iE9*PLnD*8^M=sQ1CQ;pS{5*0ps?g|0c*cj6 zm+9o$8_DqZzXoN5xXzcSY8(%Wta^B#h8&a)x5zzk-WH+cHi-o8iC)&avt0@8gT=M{ zIvBOON!D=2hbBnH!kq+^z3nDKL+YTQdc?R}vr0dF&F`3zbDOVoyV%XWhp{2d2ppUHx@whA0JtW>IH zCz+$tG@v%zW0PEDi{E2W{EgYizua0fKk^ge4r_s;HeTUyllPJ4m#+;B>ffgcE*l7h zGQ15Tr-a(hI-Y`;ty5I{Q7+up<&^60V3lx1WQbMoew*OYey2%8{r5oLMl6z2Y<+8X zS>r9KBi8~$gQ>*(bGED(Z|Vj&{J-Y!i11OF4JB&*a4EHFP<8QKwbjcSykOzr?w8>};}mAa+{9&<|Ji z3}UVQZMLi&f8+&HTS&+_8PvN;H4G(wW@+8iEZFPujxWKAw`YCPWlTYIm)|z0=KK&b ze$n~uVn^v)kjHPUfJU|!V>bqr)+G!=Pw6~4SaV^2-%v5}&ee3uR&#%6WiUO)!xlMV z6~qOZ7@KlIYC5eKwwctsqt<4jL21SP3nbZUhE|6%b=hi`!w);laR;_KH2-bL-R7{a(zJL20YL}r)E$7XO zB{)#wFZ3@mf~se4At0G5T=A;!`K6RpriPiuCbL^IDlOtvxhK&iIj_$3d128Cv_`bS zIck8rJPiN5G7K9lN}np^q9*L#Iho@-YTwIONhjD?&yf$@Lv0w8Ue-NPEi$PPcs9f3 z^lLnVObU^S;4!PLGL&j;OK@rd{nQ_u+CY{tX@+Y^MFb;HE*}(fPX-m>Q*!H9d80uH z1-a@C_B9=+qF~BZ0vqeKZKr(swWq-WXBIheV@u}z$C0!y;@PT6a|k!y@SzPXP|Q|3u4VYT1yox) zAJprg{aJ1A?bEo>TvaK9T3~0NKcQz)hn4gST~0{zZ#?H;FKBWW0Fk^2yuacJ9cS%2 z=}UP-xHg)faQOq@Fib4NzZr*&@s~nPdtlgScJ{niRM}c~ZaiWyda_1WKJGoeL~!>~ zn%=4^D^rU*RY?s$tr%~DKnj@rQt1??Tyd-%Uqz?#s2NbaHH2+;Qonmiw0s&Ky*P^L zd@xDq;-1(0(fjB*2ryagE-VvHvZg&a`hQkxZpu)Kg_N6f=v9oC38SP#k{dFL)`Pmpz z`K4E|dhzh|(df4RD48rK%Qd&3#ukHgy)&DBX1LnHYA{qgmnA=0I5Ch#rGO@1a+1Ty zp)78xCFwihbMM52(WjUJ-Y3jZZ-=&L2@DN{yH76vBN+WSD#AJfH}y3BNTjuC?{8Cv;VrX{-Zf zke1JOF$RrP?LH>!XOtNtpr<4#0mjTuE{<*XVxc2_mzfM=X@*e`p! zqV#mK{aG3{cumt{me+QTD?&A_Bg`3wsDVh;dgyg5j2s^Q9E9Q4GH}YYl`4HqCvd~+ z_2BjjxNu^rDI`h9@HRan6nZmdP%gZfBeZm^qf=AqCexq@k|Gma8X`I0pYb|aQ===Z zv6GY2uP#>`W(?-`;6a}(Su&?#e-S^rhD>qmuss>QCGX5GJDBNNWVTdurVhpnJgO`6 zY`Q4b4=}n=H0GA;@NyrK=nI|UnRXt$Q+2@YnaqV=>MJ3FEANNPC?@b*5U4YH2OG^b z`c+jA-P243yFxN5!X7dtws_D3Q=TdNlwP=$JJ=(CVxK(N*To*ng-q(iA6O8LwE$`LZ&!DyALfYRR$|F%JJ=HV#j~ zR75)Tc2Y{1FASY4mTe7;sL>;miHFwB%dW&80xFSvzf8 zwff{WSfa(iG&w|mS~*`eX7D3!pm9y@auGu{LVD!HHLKWgFWf{?UQ<|>?o7;St`@NY zm+VEhDd%df@$9QqL27z&6bd*sMwKnyadV^HJJ*jF*8cB9T|JBsUpN1 zmKN}p=Ux1u055DFEsoEoh!RrXFy*kcWugQ^!!3rk2TsQ^UBegN$q9?((af`@pBnk) zxrRP02OH~aBsPxVTtu!ekrClx^;sHKCAMJ_-2ZG4XA`bz)y;JgVmPP~qNeoW)mIOF zwaW{@>p;FK)zYzV`kn|;byEB`2tqG5nBE}vlo&UPd5T}Cy7@FyRWiF;oun*SA~{vr zHZx_10%m$HjyM}^Zuh#A+P_5L1e=0%S7vhRi&qv28Vl6XY^RaHt!e2kSZzvF2U{E3 zHnhU1(ld)@soV~D+oNLyt$J)n*OyU26CT1dO_xsn5SQ(`G`v?*OYum=c6-_*ez@z$ zeEGu^Znl2b?iy)cp0>_|h!8m#M(AP=*IkcfYvWWA`QK0mRE&-Y;f0PcD|}2$sPG1i zvgU(N+T3dOI|!;ssV1oyst^c;i$x_S>g8S+XRyBUaMpqy(q;Awd5&7Ckt_Ob)AbJu z$iRsV(kc4*xjTD|6+j41q1&OsW9HOlt}d|4uYP(Up?bOzx{G8T@e!ZU#&UHx7Y=%?u{A9s6PEgM; zKCxN*1t*h=IX^mB%8}~qS}AZGHlR}O$h2K$$s+D4I-NsoaiT->c4!GUKT6rL9pk+; z{ggbAYiz*ZVrpMB3?_uws0MKX$N<~a1093=ZY8PZmyW^=PH3~29w~12h%z(nnS>%9 zHOJqhz~(ez0Bf+iUyf#sbI5>APK7-L;!Cs2N~z=xn}GLZLbTd?1W!$bnu?Y4wQL(e zWt&JFzZVYmYvyP1n`gY)*`C;l(P)fEP4=>SK;%eDXb5Q(5gg9(N8w zP7T7O7|%kd-%aw5FH&oI>D;;lYI{(=;V5K!n8tMR@uXitIX9m?wCaIthgn`y?+Qca z;p|NQde`@$;=DLMcu1yDrNST{-Q;+}9(gq2xn?qJlr-n2mIZYmS@=jsO&XDj^8c(p zI~1l|5FeagO-S)v+#QogDe<_iG;j9nU~lPTSs+LD2bfR;A6_ z2|gDPb$&OdcKd7CBZ5b*QGqw|#W<7+NX z)-I|!&{BBX6t-oBW;r0Sl3KW7!0&>)D}Rwlv!7#tm-~_$)GxCH-$yH07si_ecnf}x zWxcENicYX+HQuQ@_p~2BN1y9!_BRs>No6&Sb2y~w+am1Y!ydT{H6sejvhvIZRs^d+ z_uPauM<&y#%1L8t_=JOuq{RW}o&17wFB_IZaYY17FI9E8BYfybQuf+nicIWB3man< zOG%zB=bV@|O+5LxOKci?aRdTWT5cyF`Sz2|pvP|DK++X?RfMFlTb&ugfk)pdnko__MFIhw{gv;N4HQF@Eo@dV^_G~Pw! zSv;xtRFJ-Nv)q*&ku4+e%WkzMW7-hbZ@S=e+-)}w#adtEAshEyv|AqNG^<5`m8DBg zAr(E*&mq6u-w9#&0h45fiP{r9G><+0&;TMsY6wW{^oX`JBUN0;U^%3Au7>0?e5o zG}Zafc(N_b$<=onh$Ky9+l=VQo+#DqWT zf-l15@tYNvvNxz%ddcz7^ZO~u%za=jN`Ye(kyfJ44{Y+06ou-G35NV?M34-jGquA zV0StM-#&iiw8g<7xvuqPc^~j0X$SLgEhrT2ZliLX*al;X@ced1K#56Z`=lv7y5a@+ zEl1Bh+(lYqS2J1ApwPaans5nrcEetMrBqR->A}CE!%VwLek93k&#xoy&>(_s5{_ahph$m+F+#DBgF11SJgDbaZ=ni-Z zRKk!O^JJn)ibM;xm)nnqh8@Za4T*fBu_(LD{ySG79E`)PSvj;tnj@_6(Ju{?iT0bY z&c~tMyljIR4s={3%`POQ_!`>!&&M;CL>(>Qaxk53{DLrL+_lSH-zrh{u{{GDncGIh zorjjjm{0V;nhtI({fjX%Q47GxUEIxpJNOEPLzEbPPY}=f3h-AsMTi+WktP5tC&K7b zv|N(;Mp3@!RdOBIy9&5vQBXmku$?yy0??y@DlR+m>nHNxrhZylIr~!iBg6G3JFNR_MPu!~Y$uEfs3otu4M@kNBHM zXM$#7VX^1|CB3mU5&agL>fm4FQsvb`pIfhCkpJmU6x12(rX@(^^AKpdt*=QxMs&(rk!zXSSLQ$8P|IXW~^&}U~FsT>P_GhY#O3F664{Y)QMqg&d${cDf*s) zK~82au5RM*#4I9h6G46>q=|o+S9qLcyRN@#dToAweq!t77GUJF5beVUv;yLZpMlVE z?~>^8V-@F5)pSpusCb<2sOO{5*GO$FVh!28%OfN}5yCxZTd!M#6ed}AAx}h>qJmjfR6!agK5r_F(g}%E7G>XYb91Ao|)KHIRC3pL`>j7|( zG?j!Af9XTWDm!h118?RQg+JUX*P)^GAtigV@rS{$wo5@a&gVtyC}`E{V3PKABm7;0 zv=F7C{t;#>?~M!IRt)Ozj|avyV*BtXb^3StP&?ESJmxK#$ekOzID=6%g7=v7n;H6b zGydJ1LKq;0yOZdk->${HvER+^!XucEp0Ue${mC2w1%&-^3-opT-B9le z-q5hH$*oZM^I0G!ABW(twuN)2{6UIe%|;?Ah`5{M-Ps`yhV5$K$aLAKR6lNm%`@UH zbe@|wpfJq{hK9b5hHoG*HimR8-{k&azf+ZcQ+%|LJL?910jZT6o3IR>v;MeJ$fq}3wFVrXQWu*}p5R}^o2r);0L-g; zsgYu?$Rr=kwMm?k$F!0wM;@WJ-rqc+aYx3tCuTkQ5Jt9AE^%f`X06CLjHN|xaG*%)RFV7RD-X#GYq5>Yz%+6!IzaIP5a@a^ zju(wgH})WvP4-a~H2NZ&Mtehzt7}o8KyBPZ#N2!hW-6$X!I@QTbf6{#eo?I7a5*vO zVLdAxpEm?)oF(3pdpI~S(Byq)Ao5GeQb;%L5SIEQGK~xi+*1vL*-oC!(B=bI11(x- zI1A@_oBO0KBDc%mezvhIXAxlFYsOAqx|~=W_a#DyvlO$(Hbt7QtzZy&`+Ex}`}0?$ zcxjhjY$mH|aLm*i^(MB;U)ECAaa70E7JG|biF(U(e5@!H4ts&7M@ffr8u~L6AUE)- zFTp!6NSit!{2;#j!aVW(Y_AvLa76_?a67Y5FWcN=p4?#E@W5&fq^c5ix!7r=-iR`Y zFFaT)y9~kxghSC%aeSrqDRKOEc`RDh<@E;!U6CK_E-##*Yg-a639ctU!&x;eX(KH0 zf48deZQLJK-4>F1=)tikHAda{Vz}(Iq|^O2#u@>(4LDuY=f&}vAM*ZG<2GJR$L_To zjI{faQPUc5FPfXUKkebcBtf%x1sA#}{#)B0Qh9(nrs!!R7x|TTp*xxjk<^o3jyIoQ zcj4%rhp+t{+(8;6;ADG5v~>-xBJ#o3lOkcA;zFmjLx85b?ACCUtogCZ05Jg{%yfSA zH0GtLm#I0W+q%TghGNd=xQTn-7CRQTaR9QU+A&g>j=v>Qr2(8R;~;<$(FZ8Cuf6fv z>ScLUj>}0S1s_GV4Ue{Gm5TMH2A@x=7VE15eB64ZZeXF%<=LQiie>|H+<+QkoL}=O zfDs`b<=oLaSTaQ$_@XgOIsXB#_85<3ICJ4WE+Z8&t;c}kFAk=WNe$C`a%JEH*ZvXyKMfWi7qN;%sJguK6q z2G1MCkW@mh)mx%%fmFE$z45_=G2Es_Nuu6x4-hW%&)lZUrFbVe6zjp~ot-G(g_Hbu zDQ|+fC*?(?qVZh{-e)M)tq4$ZZ>q58Bu?gT zxPHi2$V^tWtfR-;(qxQt%eO(BFPh5k(J#A*x7}cQe{B3yPCc%PYX!1LxPceDII@G| z$Bh>?Z+jV6WggsZvBYgMK^hChmCBJlSm3X?tA_aX=KbPyYoZNJi8Z{CtZlT>MRDX; zP7t){kvTx`Nl|V*u6nOp^Mvk+TJq^zb7;Ih`3%9xAfDD&OAVZM1|RYotx4{(z-0g( z*VnAFEyZEA7qVJ>f4UfBmSc*5jnp{V0VjMIp&$cx+MdxHc}?V)E}>gMT8DJ>^Pk+6 zZleTz%QQSNJxX57AB07QCOCIpPdCagiaiXYm9lkImU`l7=ULWYJe7%GA8j@sc)Uf` zZDpjqcE~`V>HaH1+tm;tTl_Hwp1hCL383VG0SsQ%C9vDRE(#9m3;cPQB z$u!7;kP0x9@wr@5l%b=rmGqemk3xg2%tU&!psPR16qwh!K?Y;B2qh%aXd|_<4Nnz{Ha|9S&6k-_Kg+8}7G8B+~n& zi!47)ssiWSPc0wgkqfF4z(V4q^4{YPrmgWB{fQ!BZ zE>FWwU+JBuXKbLSnXi+4=8?RIbCebg>?&|vKI@Iv9nhIJp?B;TJG}{L2A@^5)QG~XoHY$ehcWaz9A3Z3b+QQ2vjM=JmBqCn+{06Uk< zm9vyx`H?tJ5(9WkC$mU%FHuQHPfZulmz<}jg~-Lt$GC_SOyE+rH+LoM;@5~ zXs!qwgRB6km(&^8;H{A;!3K5?LoYMd^^)gr&V4}j1C#mGfO>eOW= zHR5c{GjQ1r8z6G|>ll2}=#BB~b(R+Hu&5m|H|oq2ma@3z)?~ORxt3HF1Ty$!WHuQ| z%73vjEvNsSnbS54X}Y~({{A}2>;Sbd`$!)JrQ7PEx-FbYgog9kux#>Ulh?84m(r=} zXKnZAc`oQ*a|UM_$;kWH9nIki4J%Ume11B;ea|zvho(qAdpOckIMz9LbkPm&(k&g0%6DkzvbI)O*OEbFFqFa!Yc&ODu-UjgVpgX zV%wCeF|ml7um4=|be$7m353?LFxjsyc)G_k5za< zS*+zssqetZRgM}B?r82o3Cp!cy2s6LY)kOdzJ=>gb5SYE%YJ3tPCF#U7__%5`TSJx zToevmlvJjlyz}H26F9J}oLF&I8NQLT&Suum&Nn#au08#}d~oTp2b@s{sI|+so_m$) z@G*+sL>8@Uo{8U;M3UVY^9~_f?xQQ+C;hgf0#x`wa%00}=AEj2x1YVAxk%TqZ|XF% zqf4X(xFctsxh|%7Ay=Q<8Pjb&53L~v0-iAYYcU%A1JrZYm9$&`kX5#?XPQZ5o=d5x zT@Qq1l`zJHf8@MmIPnGi?^qOQz2;_c-@|J=@+C$n1pp{qI}raHlly>BJ)ni#p%lPj za=m_c;V#_I^AhBEfD0IT`2^(#V1HdYG*zsp?MUv^(S3+|3?@})D9PZe8;Qf?zLI@2UhVh1%h|~jiuh@n|}WE zzCM=%&};wK2>;d~Lsf`$(1TU%JN&QX7XLi`bjAZ}A^eA_{*GOR@vtAmTbjDKTk9n# z9-(3XqG4z7*1i8HMYK!*4S+_)9qv=={_*4A%|Pj)_Fr`ggXu{GZ?Y?m>?Q`F+n=}s zG&?6f!NPye9nhiIxO&ngJrZ99dklVG6aO7Iy#ZQO6qK1lrRM=t(~ah!F+eTTq3N%W zHGFY{h!{X4j&DoI$QX3j@9w>zxEa-~_`4V9FAc5(UjJAtM&#dL84+YJQ)kmTE0ybD_S+(ee`r0Bz zZh

      YElN)u;7%dX2?fQWiY9vatLuZ>q@8&o6Ni7T!t1)+V!baL{ zAKh85sy0ipuS$8-koIVaTO344X8)CdaZxE@{>FtCN(YsjmOA=6s41>}+vj|1^!aIe z=PIJ?!&Gium9mFa#f$NgN!bS1^$O*soPRrzDwVI)nJ#rGqze&apzZ>(P2Kwr`8#;M`8I)RX7%NlD~TO|O*;cEnka z_u5GIeFI&MJHJ3q24=Jx-pCuf_!_sl0`CPmUKhXp9hVOu++068M-OKd?B%jfMtl7X|Tke9ex#@JJuTPNd3eTO_Hd{@{)*)1OX-K0wSYcchmG(_n%7@}dh_>|$W znJtRq`=tPLzqIw}B*)9)i({#*gNeyf3x&haGw0rqRm8|+`1igmoSIrx*0{;Z>8+aU zjvh+b1*L9kRW9*tPW4s^?oV=Z>O@W-CvG|BZpPLM(*A5^?I{?YxaUEN(NR^^xL>2AlP@&X06#D2&n|eBOQ(xB3#_!T~AhC zu37v}$^pQeFik&)t*r;7PhnPj{=vj5+r5{ZW6gR?MUzu;(GY`@&Vn{gl&!3Xh%E_c z`7#VAJELgLEe|h7(WNv5H7o9RhYQJi_?EmW-0%HY?FfApuQj;^z2Z*f+k(MMwiXXT zh?HchjEvMSw87eVs+az||eMC7B`~P(;O+O9+($a2v^N z+zImk9((^;^mw=Q^f4J%6$3jKwA0n<2yWTx?XAn(a5W#=%u6*?n)fdq+F14kn#_AR zl4&^aX5861)Z2P}X=T!BFKIrkK5}+?4}8z7v(JHIggd(%C}dfizV`K<>yoGKH1EUy zLvzX``g#eG#OhnsKq$oxKsKK!mAp=a9*k<*#a%}6m}wPGdV5{JpT>qku%O6|Re_## zx3AoKM_qNJfs!R~h~13&Tg#Nm0v6}TdsddLw|x2XG#b9FahN1^ZVm<&p_ttZH)48K ze2+)}$+_6QsREX!5VB|1bi5HxS!^KQ1l7*7&_y+}`Sl{!3Ty6+b|y5i!b~9lW zLp8!Y)mnal)5KD@l7VK*A0cM}>Oe!*|OTreqcJ=2OP25l$&!j35WHkH*S90Klma&1-6-JFi&2-~(a}x8 z{n@c{a$(iR^zPCq(GXXi*0*WDlNuE1hS0txog%u*CWBVx0B=`NGKmRp7+g<7$b zR!lRhsUnHvT*ZVsv$T4FdaFT$tLH8!q;ia=|8*#E=*yc4)Zpr%%a-R^J#E zv&Mi?nr+n}wV;*BiBqMcTE;lehUg&&YoiFC+qCPuoor=SI`d#|0P$Y*{L+9bMWVEA zKA0wT@y)~3AlAZ5;B>uMkR~cN7RadCZosmguxJ|xQkgs?i)#eWwwn&?(Fw=?x%dnX5@+8Z5A`6WNUKSda($BEOh$FNfW=0iZo?zC%g z_8DM?3;BQ`M)_%bUY#i9`%Vs@D$lptU#mMx6;0p&72Ci7kq_)*t}@L#(G^M`C#fM> zuOaz5$A`EV-*=eObY$6mo>I7D>QbI6! z$w3eQ*4U4?-*bSY@S+dcAG-4C(g&(v8f+3=4x^~-XP_`Zic|$0OP-Rn`8Wd%v^%L0 zTDz#t32qnTfxL@%-7efNPZNNhqdktVd}+VN6h+wxa?@JOm8xq6YF@1)JB zX0UDPLmxDMK$30?=;GkOnS92D^L`{(eRP^Bzw2#)C_k0icu~vq4Yew+>*6~iY~06c zj)x3Iv){oB=Sf?yS>O@F7U0R1r}Xd_$FSKh zDN9**ei%bIlquaCFR(Y%w^@%vkfi}AB7;$q(iSe(v@dtZU4<@=QhKM1Co64WupR-V z2LI8F=lQb@Y3FGdWRyoJ&MyYs?N&;&{V2b|beS?hk$seynkJe(l&?K)AZqlk5Y4sY z4B>Wp?m{H58n}TdLn4u3lhn~g&U@WFrwPj1F2i}{b2#!e&o!Rc94CKeEdn(2V^Tbm zdP}iZ(nrt#0L-`1d|d@itgW-|nmbnbR|0GB_?rFzcw`kXU*0VIh_~tgf5E@Q~Av`y2gt19_&^<-6@|5r{j&tVz<|O|~ ziBMWj&GJeaLeUy)D6j|#Xf>Sg%mCOyXm0cfu11YxX?GN7Te2rqt%*$|ODWd~*!V%c za(En+mq+u2+Nr=o6f9=b&>sH=K)460zN^_DP>}=xP}(+EycE0(kTr<+@^MY)AH-*Y zJe#f4EW?4zqc$N}RXqB2$4(DIGnb+j#Xo(A{HFi}p5uCz5iP8R)=}UD95F8JYc1s3 z{(4hi^7~Jm)ywq7r+|xtNN`~qtBtgIu+kmQ{J1Q+`=vq&RKmUzV(kJ#G>WZJE|xH~ z0T9iaCp20-hq#1#pJBplib+&f-pSLk!C3mhMkYW^SFXk!P&5DVB!2&aKydGRWF$b@`Pl8o0yU|g$@?47aKQeYTYGVSdWz5eeDc5@ouFMwUEZ{mHId_lbbAoeJe#b` zh!eX&hOH2%1J5funR2^ysiQ3nd_$f)O3q5j11SOF-cbQg)Fy9Q$}o(L5gYUuLN9Yd zmlH8;N_yhCk3WwWfnn5>l7k_o^A^_qCtkD3>y1~m5;cy;Uo2`R+X-Rk=~4oKZOM$3 zb;A;=0V~cAz&%8!Jsm}y)SP73u(jOI4=%oO3-qgf`2(g%2Fr-Yqh?_aPTULZ+EE&K!Go_ghDYj0jT|w7rTC? z2~xG8KUrmmY@2r8lM>P#1I*)p_gQ1$%Uucn*}q8MN4fVe03$u9Ld9wuCYPF37eBikJP+J??t&>6$An7t(Q%dnx*7}OgSrvK!KgrgEF^RGL8jJp7US7KHFZXi;3`Mp|VX`*=Rshe`7zDr~C*fsgTg7`< zepvLqoaB{uV2NcO0A9bri3^a5jp^>L#a|? z8k!qmwhMb0ZnB_4zSd;C<0?a4;8na~c;yNy;9tjPnzP(PwC3&!l=ABCv;tK43neH8 z4_Z}ay^rWqRmHM?@i4})Nn^U~UmhAAa*~z}u)qE~k`R`nFsQQZhtx$g0#e{6=c=ga z=+$DZlyvy&t2p`Acr>Giv1F!NQ`<<76aGP(Q2?zRC#Gj>s4q&DHoG=MMDzkz(39xw z!2D9r^^@Z7gCo@6odbQI#ghwN(krIw+FA0?M_ETSHOwv$x@123#MQ3-C*t}IZ+jj~n3P_P;;${15kV`u8i$n{bG(?gvIBH)z>nsd+k{(Kw8)f0Z&^&s@?yuyEs zM1+fmfv!8tz$t#?cw^mhF^lwRrZH~(wWI0^Q1XCMEV#t_6W%!1NOGT`pr@Sdi*+EB zn~dK47XYO`+li!j{D0tFITYgU{8l<8Y=aMG1D@Qyq5CU}^JNb(9^mXwJpya@(v&iN0# zyv}oT`R33on;eu=Fr#5(pfNBoaO<@bAu4T*%`=9y?80iDk&|{X>y-gHEBdcITGjT2 zS9CqNa4mIYDdebj&FKvAszc#-E1vz!q*XhrLDO8Z&7g1ldVQc(}f{%RyLoEH7s|YwLO;kok8N`dCt3Zq;2v01md) z@b=W))fK;wx*k%l{IOMT%r&eT>9RRdaR?wh-UHXkGe!Fph?V}e)io^t=$r@sIKn{^cKO=TM?0EAm< zHavb+Ihs`?SOtT?I{{9Wz8JYFZzv~Wih%#MJU_h_uB&=n6l3lWNGyEoSs4>)W`JwN z3>_1%0C0Mn05X_lWkubr1{`pYYj@mf+VwP7$n{t78@NRq6?rD7C{4ePfkRJ+TO3Hftl}fS+aj=Dx*W8-;BTg7*NJrr03fq4f@{#%I8pE+&zF z(EtDd8@){Go1TP%1=Mb5{c`g1xyGY;wm>#3@Gcw6Unko!neyo;%+CT+0C%!B7YIM$ z)ed{>6-)7ZA}NU%K;uSD-h^e8X4TJL=w&PC9};xDMz|m+H>fXmvC8fi{#0eL4u3EudlD|e*YUplJ|pEgna!nuo(8CSIUENRIK|mlYn!( z+6(yjleKO@;F-EL-N{yG0xYP6ILi)(E1ieXqA$tQlcl6XCWQqg+Pj0 z(;a4&nNwTf+ENGP9iD^ZT3n{`8)v|seG&D*^=Nja*g!^m=?l5mHuBa6 zysfP{tHtV!U@Lp`z@ZsZx$@SFo3Zi5b@cn*tFex& znSz|wK=$KRe8>-YPq`NJt+h&8wpR$wRTwjhi_E5Rv)etX&29kL`eTb+;GHAU+@?n7 zr%0Z27aYI%;`dkbAYf@6Om6{G{^CX4hGOrBz!QFwi_?T$;(rJ4KDVzp!YpT)?FSPc)SC4Wi8=5O~;i~ZrxVAQ-JaGls^R0>Q82d0b!LP zxt4trp;9g2Jp}K~@~B~Lj2k4B0x7(m7w21Ur|wOAy+T`Csa80AUSHFm=4(`NIJaZr z0Xh}1vWCSMp$h=$h(vQ>EII-b^j-SqqmA>Pfl5fLPZuJzowwgW--E#1rtn{D#saUw zC2@9B4pY)zqTU1tOZ(nv@CK&n%&r>4{|6f{AW)^4Cl z2!H@k3oCeOK#U1iE9iwC0I>1cJ@@2Z~ z*k>&(y7iKF4LclYPBS=&k)QMLEvE#X2=hSeKT`?*|9hi3*}W5w`NAd;!%29w2j-Nr zPC?c`gGiFYFexkU;p@a2Al1pys;TT{ zl>7D!TZ!I0$)=g~1rA3ez;7=g2F|V7z(JX{9;O`wl>naQBA(cjtsVU?doPSpaUe`t4-|kM%Au019{?Dg~Mg zB}+Z&h>v~gP(&EbxF#KC+p#SFf#`k1YfbXd?Q;*^S!Dt8HU*RcZwo6I|bDpNnlGu z9k_?}l>X*B8=_RJdJCT#`9Ty2uDh<^q;uCn-ZgYX8TS|AIJ) z_?mToo`qtlSt}*YdpdW*?T86euP(@f>E;~uKZbidZTF$@iXUXXJDhixumf*6oMvvQ z!+{+6nyIy{t5?+IgvdC}@|eiX4Sd6}X^3J6h24M-o{(!nh?&itP9zbboZ@2;C=H3nfmPN~%9^eoZ5fRt@F>kxK3uphH44U?G-CMY`JQe0-hmy86*1 z+?}qvq7RgqAj7$Q<*JRBQ$Enr!tDl{G#9}Q_mrqX*P3)wL;Zg37o>^B8f=Mo4UJJ-HJ5fiszM!ZS)8`w6kZ za;gXeqd>|hOMVPwq%i>o7q3?a3b5v^g_Gn_uI9Q>I=w-$3>=|7`pan*$dBX(t3oX; zpHB>okf$|!Z70WE$#Z&qWG3*|tUug*i-^oz%YE|PbO7faCP%Sy(78&tqumacSanVF zQcHuMv)5uwHh|@X@471m{T~Bgsi~$d{ZFn z-eMe~!yv)&Jre<&QFJnY_zE^$cp|)HLp3p#T9`NvL<3btOB$Z)-K04S8f7FK8tQe` zMp)iv&EZz6;yaUNnG*8O7_BiPxbWr7Ym5i_z+OqaZUVDQwM53Ie{h*rM&L|FALXT2 z%Y4h~jd2SZHH{T!>fj+gbx>SIxS5h_WGl0aI;)5ZXMv!cex2Pb5XnU5o3WOeUM$wQ?O!3ECMF7(N-aaW3k=M3E&I`%rbVS4 zu-)xS?wy}wuQ0k?d}rtWk={T}Y~pHOF1nL)XbU|wJMsRYxWRSrj-9$X#Od~k4p)4oS!I0wetpDtsV_VaHZYcLM3gfbdmWafHjla_)0DPWZ^5!WR9`3r z1aZUV4=stl3y;{vVaby|%`q_aQH1dl1`1p285wQ2@V9Q~@QKHl5}gTMdyfg7NG_uw z7Dhb6#nxnfnAsRApE&GbrJGJ?7_Bt zi*e0HSlZnld7@4H5&T(h3hW-2?BO)0e(qDyX~f>Fu6X5*g*)y%TKYQ|MRdrEkia^> z-EcK=FiZ4~2Ve~)Qlq$e)Y0b6%4l^s|4S0x&U76@BxYN8A9$%ZgO4hV&A4cV9cb=C zdoOUj{SNy=q<3N*=mxQccHbHvP)PofZn!7IF{1b2h_64F|06b1sqqrTn7<+Oqa+hY zgz%-LvJE{(#(_((JDCNYv=tvnC7xq{W)ZN_%JK?&qwipIfVC;9dLe|HJ__ARskNwr zE`Zy=sweGy5v3XFma`oFDT}(twF4M4Ls1r@-;9l{4&?28J=bq$t0&EcLi370R#rRr zJchDHS$wipdSaF8p>Z@MCn0Inr-m+-6f$A=d%yy*Jl7~2rXFO_)OV$L&Cb(gKS21S zS%2|#;>7VP8C#xD0FJ2v6C_FzbONOA5yNsJA15uT4+>@)ahmExOtd}dLK;v8NxRM} zSEo=F`@8+`>Eni;f%k%?8w3EWahjTj?S>ib8`RMSdKTU8O!lGjFDX1(j1L*{xqQ zPQN0YmA1X*C3b#%l6BccNhs|6WJe4f4f?`xsGuuy?R9I|>dd;6ptSLPVY|^b$idM} zLHz|zxOcBTFZOFL8Xr_#3-Owq7uS%-q;W|tsSu}*ZW@<$r}}PqCEbQT{3SC5#E~fY zM6*`zK;H9H@$U@?H&Bw;rPQYLy~ygJ+0H8v14a5m)c1AGK>mz-+T7a6d0=u#kuQY5 zmKSzAnja`eQC_6idZDZv0B=iQ{j&4DqVZ+fm^&pcziW0w=)o7uj~IGAMa^J}9bH`= zINN)YE1i2fCA>9u2G6Sb=(AQtnF@UjM>7;ZWwkkoQ>uIEM?P4tXMzk=Sb#|3ftjh< zSx|==8c<2bhtvqn8alkTY+#NjvF7q!a*zqr*I|!A8|F@jkG)U2fw48AS?{0{tPGX^ zvRFoWW6?-JG2fP-N*#jnfn0a!bT@~blE)mc2z1>nR?NooEqL@6rYR{zTjfe_Jo~aZ zpfn&3&dRUnp{&idGq8bv%vg)A2hRH8W>+Ou);TC60nQB@I1*UErPS819U$}hQF%Om zN0VqAf0%(XP61N0R29Fm=90A3lIx>Oi_e7E+U8SB*Nt%?Ji87Y$_p-h2IjeexXiD#8!De zuz*3?n^hRDp zvk)w`lwDf??$@tteodeqDWt`7@DgS$5IbJXa6@IO(td1WceapDVPj{c5N8>I^ULQa zb=yKPE(ZW0se^CQE0ynb4}Fe8yqgt7+{c2`9vsMx?QAVuC7`dM(S!IbK@r5>*9Rum zzF{Y0OJW!2g}(!2IO!%Xij{jLl%{++1AsV!_x+Zx9x0g<)p@8p{Ro+yXNR>Y8E8E9 zLkBg|l?7EOy$q348fc^J>_^vFQNHIFRQFp(_>A6v0U9p($u;dGZ zhZGd7OJeEo@1nOYK`6#Uv<+k99OWrVj_x7K8iD+&yWz#EFb6jZp6q{|bl}PP+2puiI;H{@FS=eD1AM*q#XZIPMaFR7Pt&cJp>Zcng;q6E-4ikZz%3)&S58v9~prhQ(WQS@Q4>^#w z(JePvl-5NQMmf&YI*?va-{H757w6Q|XI|1TrX!y1&GB5(K*7vV=?-KDG~4;%0BIrL zbG*B0(s%{6wE=N<*Z>)vbRAp{e4FCB{ev(wy76giXBkrpgBoL%N2VO!a12fQ?u_DA zefM&|`+!K(0;d5u1=i#yq)Xp#^@ks{fqku7amLePz9rMoWSO~VrF7n$kj5}6^4vxK zsKm^#{YY3hD?{!%F^qtJJFv=v?Cy?eX(3wF@Q87DQ=%qr-tvjFt7d>c z!NIDX$BbB6i-al_KZy#+mzqZnNS5PIzwAvx8=fJ~!XaJ=Ea4!Zg{$y~f>stLFY+}l6 zR<*#Q1G>j}UCk4X*U`~|#&lIty`R!dyCb`o^RkH~TI)KCzup;Q3ta$Sh+Fzcs;a9Y5$U>-#lVy@kriF6yE%v-`Jksgswsb|+9z=~)PakAZ zlI7K1_vu_iBL8NQ#UnWBFG~e?K`k=D~_#zyPfd(}n)7-oI52zIgr|!X;{- zDopBoJfZz2+7^PzeHpP>-kYnT9eX>@$ouh$_(a?FG%SBR=c4pb{4Ga~U(9}RM+To_ zX^zRE=~+SjefwtB*y55z$-J@3%%F)>Adk|4L{zoSXv`O@{^1nH?`wYPVX_rn9*<9u+0*e^Ipj&kzoffE zwmkqt*l95e9shr8_KMn6cKX`yoVYXWYZZ`TlG}M1iqoq|$&a-oNeeQ^&#oNj7{kjX z3oJy&H9wDU-~Z;4#^Y3I61Ua`uqICe0EnXeyypjR-Hs5Q@`qls?f8}akx=B?eAXxo z{zKt#Me{@ol4!4v+L|nChC5-3_Ith3K4dz%%bFgGIe(@y=7jVlNtIr!r2U*_ zsNlNnm1XvtN~a>4)w0~N=NLeKb&%tJz_TS znVqD=yI0!$2&gn)&gOGG*aAp!)@(*dl{s%5&i2S2J@Js2ZptmH4ll*O@BAzNQ258) z-|oBrITpn`ELs4rtCeImN5k1>r7OVjfs%eF87OVtQA(@lRMM#^-Cngw)n&WI3pFJt-T^4gFe z3-#97Qdgck93Jz!nNk_+ejUIj z^S>Ye&xQbb?4@GOcrpf%=4_;Ym_2RrB>C6j{pX*-tW0mclX^b0v1ZbxS^ZOC`$uphPjVr*4MM-3?8QglQ+vZ1+I83Vx#nfcc*e`DJIan^_iuk*t+z0Hyeq$ZXP(gr z5H-KOYG#H72|VHXul&jj#Tn-Hk%Lt+l-nA}~6U9E&hLx_jjc+ z_@OYpo8(J-@sdxdcTRs|BAg-FIRBE7`fH-Azo8nS5dZf%Qk-FWq^imzUb0ai;B@B? zKLC6L6(b9aAnT)~;EkwTe-5jJ>2hD*9Dd0@-&Q{S-`hCdE#Vuw#90I&`&ho!3V2|8_nesOsCYor5Uv^Lz zXum)I&lvyhE4yF7#|SR4a&M4)`*xiMowOdW&4Vvsh}iIZK5{=|JkCN> z<8TV&Mw9uF8lI8yl<17r^fDzW|09s2f1TuqYhp-nM;Eo;jp;kW6r;u7n#3RNi{{fW zdFV>b+M%|U$aKrbnnRh~!^I2_r_o3yW;eiBm~wI)5wJJbvY-SHtVfRy!~$wr6y>>9 z#EfCmW^)9>skPJCPxMci55*ZqKB31?Z7d^c_KtZi_8M@(Gu~ScmDSwS+T^Q_l@@;0 zP>tB>s6N!wzPbaOIut{t!n$3ZNck6*=i6V%v3Nnw>#U>wE@aDpxT`<&(^DE5FAE10 zb($chtn$H9)1d4W%g%?$oqCm(!d(T#MFTuc)&P84oTs_o9sClt@0z7~2o&r~ zVu$qrW-{%@R2bH4!qB7)KtZG&dvqHW9Z!M~PWw+}7vr1N6W-Rl2MYll{baqNAND=>-cg∋8sBC_ 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 E0BQ1RD*ylh diff --git a/docs/assets/submarine-installer.gif b/docs/assets/submarine-installer.gif deleted file mode 100644 index 56b3b690f0ad4fd4f4d21c461bee6e1714070fbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 546547 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%0DdL@RpH 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

      7y3+qh6{=&r>MtsOQ-T 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≫>h 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 diff --git a/docs/assets/tensorboard-service.png b/docs/assets/tensorboard-service.png deleted file mode 100644 index 3251d74531bf0668193cb8e7c48422c5a2e6d130..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 107567 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

      ^le!HuR!f#dX*$=m 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 xzv4DE=QiC(!T}7g$^Q%gm(j_S&_{({k@r3_ -# Guide for Apache Submarine Committers - -This page contains Hadoop Core-specific guidelines for committers. - -## New committers -New committers are encouraged to first read Apache's generic committer documentation: - -* [Apache New Committer Guide](http://www.apache.org/dev/new-committers-guide.html) -* [Apache Committer FAQ](http://www.apache.org/dev/committers.html) - -The first act of a new core committer is typically to add their name to the -credits page. This requires changing the site source in -https://github.com/apache/submarine-site/blob/master/community/member.md. Once done, -update the Submarine website as described -[here](https://github.com/apache/submarine-site/blob/asf-site/README.md) -(TLDR; don't forget to regenerate the site with hugo, and commit the generated -results, too). - -## Review -Submarine committers should, as often as possible, attempt to review patches -submitted by others. Ideally every submitted patch will get reviewed by a -committer within a few days. If a committer reviews a patch they've not -authored, and believe it to be of sufficient quality, then they can commit the -patch, otherwise the patch should be cancelled with a clear explanation for why -it was rejected. - -The list of submitted patches can be found in the GitHub -[Pull Requests](https://github.com/apache/submarine/pulls) page. -Committers should scan the list from top-to-bottom, -looking for patches that they feel qualified to review and possibly commit. - -For non-trivial changes, it is best to get another committer to review & approve -your own patches before commit. - -## Reject -Patches should be rejected which do not adhere to the guidelines in -[Contribution Guidelines](contributing.md). Committers should always be -polite to contributors and try to instruct and encourage them to contribute -better patches. If a committer wishes to improve an unacceptable patch, then it -should first be rejected, and a new patch should be attached by the committer -for review. - -## Commit individual patches -Submarine uses git for source code version control. The writable repo is at - -https://gitbox.apache.org/repos/asf/submarine.git - -It is strongly recommended to use the cicd script to merge the PRs. -See the instructions at -https://github.com/apache/submarine/tree/master/dev-support/cicd - -## Adding Contributors role -There are three roles (Administrators, Committers, Contributors) in the project. - -* Contributors who have Contributors role can become assignee of the issues in the project. -* Committers who have Committers role can set arbitrary roles in addition to Contributors role. -* Committers who have Administrators role can edit or delete all comments, or even delete issues in addition to Committers role. - -How to set roles - -1. Login to ASF JIRA -2. Go to the project page (e.g. https://issues.apache.org/jira/browse/SUBMARINE ) -3. Hit "Administration" tab -4. Hit "Roles" tab in left side -5. Add Administrators/Committers/Contributors role diff --git a/docs/community/README.md b/docs/community/README.md deleted file mode 100644 index 160e9ee..0000000 --- a/docs/community/README.md +++ /dev/null @@ -1,71 +0,0 @@ - - -## Apache Submarine Community - -Welcome to the Apache Submarine Community! The main objective is to help members of the Submarine community who share similar interests to learn from and collaborate with each other. - -Your journey of becoming a contributor and committer starts from here: improving docs, improving code, giving talks, organizing meetups, etc. - -## Communicating - -You can reach out to the community members via any one of the following ways: - -+ Slack Developer: [https://the-asf.slack.com/submarine-dev/](https://the-asf.slack.com/submarine-dev/) - -+ Slack User: [https://the-asf.slack.com/submarine-user/](https://the-asf.slack.com/submarine-user/) - -+ Zoom: [https://cloudera.zoom.us/j/880548968](https://cloudera.zoom.us/j/880548968) - -+ Sync Up: [https://docs.google.com/document/d/16pUO3TP4SxSeLduG817GhVAjtiph9HYpRHo_JgduDvw/edit](https://docs.google.com/document/d/16pUO3TP4SxSeLduG817GhVAjtiph9HYpRHo_JgduDvw/edit) - -## Your First Contribution - -You can start by finding an existing issue with the [https://issues.apache.org/jira/projects/SUBMARINE/issues/SUBMARINE?filter=allopenissues](https://issues.apache.org/jira/projects/SUBMARINE/issues/SUBMARINE?filter=allopenissues) label. These issues are well suited for new contributors. - -If a PR (Pull Request) submitted to the [Submarine Github](https://github.com/apache/submarine) projects by you is approved and merged, then you become a Submarine Contributor. - -If you want to work on a new idea of relatively small scope: - -1. Submit an issue describing your proposed change to the repo in question. - -2. The repo owners will respond to your issue promptly. - -3. Submit a [pull request of Submarine](https://github.com/apache/submarine) containing a tested change. - -Once you become a contributor of Apache Submarine, check your name here: [CONTRIBUTORS](contributors.md) - -Contributions are welcomed and greatly appreciated. See [CONTRIBUTING.md](contributing.md) for details on submitting patches and the contribution workflow. - -## How Do I Become a Committer? - -First of all, you need to get involved and be a Contributor. - -Based on your track-record as a contributor, Per Apache code, PMCs vote on committership, may invite you to be a committer (after we've called a vote). When that happens, if you accept, the following process kicks into place... - -Note that becoming a committer is not just about submitting some patches; it‘s also about helping out on the development and user [Slack User](https://the-asf.slack.com/submarine-user/), helping with documentation and the issues. - -See [Become a Committer.md](become-a-committer.md) for steps of becoming a committer and more details. - -## How to commit - -See [How to commit](HowToCommit.md) for helper doc for Submarine committers. - -## Communication - -Communication within the Submarine community abides by [Apache’s Code of Conduct](https://www.apache.org/foundation/policies/conduct.html). - -## License - -Submarine source code is under the Apache 2.0 license. See the [LICENSE](https://github.com/apache/submarine/blob/master/LICENSE) file for details. diff --git a/docs/community/become-a-committer.md b/docs/community/become-a-committer.md deleted file mode 100644 index fb61776..0000000 --- a/docs/community/become-a-committer.md +++ /dev/null @@ -1,15 +0,0 @@ - - -# Become a Committer diff --git a/docs/community/contributing.md b/docs/community/contributing.md deleted file mode 100644 index e0fbfa9..0000000 --- a/docs/community/contributing.md +++ /dev/null @@ -1,264 +0,0 @@ - - -# Contribution Guidelines - -**Apache Hadoop Submarine** is an [Apache 2.0 License](https://github.com/apache/submarine/blob/master/LICENSE) Software. - -Contributing to Hadoop Submarine (Source code, Documents, Image, Website) means you agree to the Apache 2.0 License. - -1. Make sure your issue is not already in the [Jira issue tracker](https://issues.apache.org/jira/browse/SUBMARINE) -2. If not, create a ticket describing the change you're proposing in the [Jira issue tracker](https://issues.apache.org/jira/browse/SUBMARINE) -3. Setup Travis [Continuous Integration](#continuous-integration) -4. Contribute your patch via Pull Request on our [Github Mirror](https://github.com/apache/submarine). - -Before you start, please read the [Code of Conduct](http://www.apache.org/foundation/policies/conduct.html) carefully, familiarize yourself with it and refer to it whenever you need it. - -For those of you who are not familiar with the Apache project, understanding [How it works](http://www.apache.org/foundation/how-it-works.html) would be quite helpful. - -## Creating a Pull Request -When creating a Pull Request, you will automatically get the template below. - -Filling it thoroughly can improve the speed of the review process. - - ### What is this PR for? - A few sentences describing the overall goals of the pull request's commits. - First time? Check out the contribution guidelines - - https://github.com/apache/submarine/tree/master/docs/community/contributing.md - - ### What type of PR is it? - [Bug Fix | Improvement | Feature | Documentation | Hot Fix | Refactoring] - - ### Todos - * [ ] - Task - - ### What is the Jira issue? - * Open an issue on Jira https://issues.apache.org/jira/browse/SUBMARINE/ - * Put link here, and add [SUBMARINE-${jira_number}] in PR title, e.g. [SUBMARINE-323] - - ### How should this be tested? - Outline the steps to test the PR here. - - ### Screenshots (if appropriate) - - ### Questions: - * Do the licenses files require updates? - * Are there breaking changes for older versions? - * Does this need documentation? - - -## Source Control Workflow -Hadoop Submarine follows [Fork & Pull](https://github.com/sevntu-checkstyle/sevntu.checkstyle/wiki/Development-workflow-with-Git:-Fork,-Branching,-Commits,-and-Pull-Request) model. - -## The Review Process - -When a Pull Request is submitted, it is being merged or rejected by the following review process. - -* Anybody can be a reviewer and may comment on the change or suggest modifications. -* Reviewer can indicate that a patch looks suitable for merging with a comment such as: "Looks good", "LGTM", "+1". -* At least one indication of suitability (e.g. "LGTM") from a committer is required to be merged. -* Pull request is open for 1 or 2 days for potential additional review unless it's got enough indication of suitability. -* A committer can then initiate lazy consensus ("Merge if there is no more discussion") after which the code can be merged after a particular time (usually 24 hours) if there are no more reviews. -* Contributors can ping reviewers (including committers) by commenting 'Ready to review' or suitable indication. - - -## Setting up -Here are some things you will need to build and test the Hadoop Submarine. - -### Software Configuration Management (SCM) - -Hadoop Submarine uses Git for its SCM system. So you'll need a git client installed on your development machine. - -### Integrated Development Environment (IDE) - -You are free to use whatever IDE you prefer, or your favorite command-line editor. - -### Code convention -We are following Google Code style: - -* [Java style](https://google.github.io/styleguide/javaguide.html) -* [Shell style](https://google.github.io/styleguide/shell.xml) - -There are some plugins to format, lint your code in IDE (use [dev-support/maven-config/checkstyle.xml](hhttps://github.com/apache/submarine/blob/master/dev-support/maven-config/checkstyle.xml) as rules) - -* [Checkstyle plugin for Intellij](https://plugins.jetbrains.com/plugin/1065) ([Setting Guide](http://stackoverflow.com/questions/26955766/intellij-idea-checkstyle)) -* [Checkstyle plugin for Eclipse](http://eclipse-cs.sourceforge.net/#!/) ([Setting Guide](http://eclipse-cs.sourceforge.net/#!/project-setup)) - - -## Getting the source code - -### Step 1: Fork in the cloud - -1. Visit https://github.com/apache/submarine -2. On the top right of the page, click the `Fork` button (top right) to create a cloud-based fork of the repository. - -### Step 2: Clone fork to local storage - -Create your clone: - -> ${user} is your github user name - -```sh -mkdir -p ${working_dir} -cd ${working_dir} - -git clone https://github.com/${user}/submarine.git -# or: git clone git@github.com:${user}/submarine.git - -cd ${working_dir}/submarine -git remote add upstream https://github.com/apache/submarine.git -# or: git remote add upstream git@github.com:apache/submarine.git - -# Never push to the upstream master. -git remote set-url --push upstream no_push - -# Confirm that your remotes make sense: -# It should look like: -# origin git@github.com:${user}/submarine.git (fetch) -# origin git@github.com:${user}/submarine.git (push) -# upstream https://github.com/apache/submarine (fetch) -# upstream no_push (push) -git remote -v -``` - -### Step 3: Branch - -Get your local master up to date: - -```sh -cd ${working_dir}/submarine -git fetch upstream -git checkout master -git rebase upstream/master -``` - -Branch from master: - -```sh -git checkout -b SUBMARINE-${jira_number} -``` - -### Step 4: Develop - -#### Edit the code - -You can now edit the code on the `SUBMARINE-${jira_number}` branch. - -#### Test - -Build and run all tests: - -### Step 5: Keep your branch in sync - -```sh -# While on your SUBMARINE-${jira_number} branch. -git fetch upstream -git rebase upstream/master -``` - -Please don't use `git pull` instead of the above `fetch`/`rebase`. `git pull` does a merge, which leaves merge commits. These make the commit history messy and violate the principle that commits ought to be individually understandable and useful (see below). You can also consider changing your `.git/config` file via `git config branch.autoSetupRebase` always to change the behavior of `git pull`. - -### Step 6: Commit - -Commit your changes. - -```sh -git commit -``` - -Likely you'll go back and edit/build/test further and then `commit --amend` in a few cycles. - -### Step 7: Push - -When the changes are ready to review (or you just want to create an offsite backup of your work), push your branch to your fork on `github.com`: - -```sh -git push --set-upstream ${your_remote_name} SUBMARINE-${jira_number} -``` - -### Step 8: Create a pull request - -1. Visit your fork at `https://github.com/${user}/submarine`. -2. Click the `Compare & Pull Request` button next to your `SUBMARINE-${jira_number}` branch. -3. Fill in the required information in the PR template. - -#### Get a code review - -If your pull request (PR) is opened, it will be assigned to one or more reviewers. Those reviewers will do a thorough code review, looking at correctness, bugs, opportunities for improvement, documentation comments, and style. - -To address review comments, you should commit the changes to the same branch of the PR on your fork. - -#### Revert a commit - -In case you wish to revert a commit, follow the instructions below: - -> NOTE: If you have upstream write access, please refrain from using the Revert -> button in the GitHub UI for creating the PR, because GitHub will create the -> PR branch inside the main repository rather than inside your fork. - -Create a branch and synchronize it with the upstream: - -```sh -# create a branch -git checkout -b myrevert - -# sync the branch with upstream -git fetch upstream -git rebase upstream/master - -# SHA is the hash of the commit you wish to revert -git revert SHA -``` - -This creates a new commit reverting the change. Push this new commit to your remote: - -```sh -git push ${your_remote_name} myrevert -``` - -Create a PR based on this branch. - -#### Cherry pick a commit to a release branch - -In case you wish to cherry pick a commit to a release branch, follow the instructions below: - -Create a branch and synchronize it with the upstream: - -```sh -# sync the branch with upstream. -git fetch upstream - -# checkout the release branch. -# ${release_branch_name} is the release branch you wish to cherry pick to. -git checkout upstream/${release_branch_name} -git checkout -b my-cherry-pick - -# cherry pick the commit to my-cherry-pick branch. -# ${SHA} is the hash of the commit you wish to revert. -git cherry-pick ${SHA} - -# push this branch to your repo, file an PR based on this branch. -git push --set-upstream ${your_remote_name} my-cherry-pick -``` - -## Build - -[Build From Code](../development/BuildFromCode.md) - -## Continuous Integration - -Hadoop Submarine project's CI system will collect information from pull request author's Travis-ci and display status in the pull request. - -Each individual contributor should setup Travis-ci for the fork before making a pull-request. Go to [https://travis-ci.org/profile](https://travis-ci.org/profile) and switch on 'submarine' repository. - diff --git a/docs/community/contributors.md b/docs/community/contributors.md deleted file mode 100644 index 8cf332e..0000000 --- a/docs/community/contributors.md +++ /dev/null @@ -1,15 +0,0 @@ - - -# Hadoop Submarine contributors diff --git a/docs/database/README.md b/docs/database/README.md deleted file mode 100644 index bf0e4ad..0000000 --- a/docs/database/README.md +++ /dev/null @@ -1,163 +0,0 @@ - - -# Submarine Database - -Submarine needs to use the database to store information about the `organization`, `user`, `projects`, `tasks`, `metastore` and `configuration` of the system information, So consider using mysql to store this data. - -+ MySQL will be included in the `mini-submarine` docker image to allow users to quickly experience the `submarine workbench`. -+ In a production environment, the `submarine workbench` can be connected to the official mysql database. - -## Prerequisite - -Must: - -- MySQL -- MyBatis - -## Run mysql on docker - -By using the official docker image of submarine database, only one docker command is required to run submarine database - -```bash -docker run -it -p 3306:3306 -d --name submarine-database -e MYSQL_ROOT_PASSWORD=password apache/submarine:database- -``` -## Initialize submarine database -It will create users and tables that submarine requires -```shell script -sudo ./init-database -``` -## Manual operation of the submarine database - -### Modify character set (Optional) - -If you need to store Chinese character data in mysql, you need to execute the following command to modify the mysql character set. - -+ Set database character set - - ``` - bash > mysql -uroot -ppassword - - mysql>SHOW VARIABLES LIKE 'character_set_%'; // View database character set - mysql>SHOW VARIABLES LIKE 'collation_%'; - - SET NAMES 'utf8'; - ``` - -+ Configuration `mysqld.cnf` - - ``` - # install vim - apt-get update - apt-get install vim - - vi /etc/mysql/mysql.conf.d/mysqld.cnf - - [mysqld] - character_set_server = utf8 - - [mysql] - default-character-set = utf8 - - [mysql.server] - default-character-set = utf8 - - [mysqld_safe] - default-character-set = utf8 - - [client] - default-character-set = utf8 - ``` - -### Create Submarine Database - - -#### Create development database - -Run [mysql docker container](https://hub.docker.com/_/mysql) - -``` -docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag -``` - -Copy the files, submarine.sql, submarine-data.sql and metastore.sql to the mysql docker. - -``` -docker cp ${SUBMARINE_HOME}/docs/database/submarine.sql ${DOCKER_ID}:/ -docker cp ${SUBMARINE_HOME}/docs/database/submarine-data.sql ${DOCKER_ID}:/ -docker cp ${SUBMARINE_HOME}/docs/database/metastore.sql ${DOCKER_ID}:/ -``` - -Development database for development environment. - -``` -# in mysql container -bash > mysql -uroot -ppassword -mysql> CREATE USER IF NOT EXISTS 'submarine'@'%' IDENTIFIED BY 'password'; -mysql> GRANT ALL PRIVILEGES ON * . * TO 'submarine'@'%'; -mysql> CREATE DATABASE IF NOT EXISTS submarine CHARACTER SET utf8 COLLATE utf8_general_ci; -mysql> use submarine; -mysql> source /submarine.sql; -mysql> source /submarine-data.sql; -mysql> CREATE USER IF NOT EXISTS 'metastore'@'%' IDENTIFIED BY 'password'; -mysql> GRANT ALL PRIVILEGES ON * . * TO 'metastore'@'%'; -mysql> CREATE DATABASE IF NOT EXISTS metastore CHARACTER SET utf8 COLLATE utf8_general_ci; -mysql> use metastore; -mysql> source /metastore.sql; -mysql> quit -``` - -> NOTE: submarine development database name is `submarine` and user name is `submarine`, password is `password`, metastore development database name is `metastore` and user name is `metastore`, password is `password`, This is the default value in the system's `submarine-site.xml` configuration file and is not recommended for modification. - - -#### Create test database - -Test database for program unit testing and Travis test environment. - -``` -# in mysql container -bash > mysql -uroot -ppassword -mysql> CREATE USER IF NOT EXISTS 'submarine_test'@'%' IDENTIFIED BY 'password_test'; -mysql> GRANT ALL PRIVILEGES ON * . * TO 'submarine_test'@'%'; -mysql> CREATE DATABASE IF NOT EXISTS `submarine_test` CHARACTER SET utf8 COLLATE utf8_general_ci; -mysql> use `submarine_test`; -mysql> source /submarine.sql; -mysql> CREATE USER IF NOT EXISTS 'metastore_test'@'%' IDENTIFIED BY 'password_test'; -mysql> GRANT ALL PRIVILEGES ON * . * TO 'metastore_test'@'%'; -mysql> CREATE DATABASE IF NOT EXISTS `metastore_test` CHARACTER SET utf8 COLLATE utf8_general_ci; -mysql> use `metastore_test`; -mysql> source /metastore.sql; -mysql> quit -``` - -> NOTE: submarine test database name is `submarine_test` and user name is `submarine_test`, password is `password_test`, metastore test database name is `metastore_test` and user name is `metastore_test`, password is `password_test`, Cannot be configured, values that cannot be modified. - -#### mysqldump - -```$xslt -mysqldump -uroot -ppassword --databases submarine > submarine.sql; -mysqldump -umetastore -ppassword metastore > metastore.sql; -``` - - -## Travis - -1. In the submarine's Travis, the `test database`, `database name`, `username` and `password` will be automatically created based on the contents of this document. - - Therefore, do not modify the database's `database name`, `username` and `password` configuration to avoid introducing some problems. - -2. In the mysql database in Travis, the `submarine.sql` are executed to create the submarine database table structure and test data. - -3. The submarine database test case written in the `workbench-server` module will also be unit tested in the mysql database in travis. diff --git a/docs/database/init-database.sh b/docs/database/init-database.sh deleted file mode 100755 index f9bf047..0000000 --- a/docs/database/init-database.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/env bash -# -# 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. - -FWDIR="$(cd "$(dirname "$0")"; pwd)" -cd "$FWDIR" - -mysql -e "CREATE DATABASE IF NOT EXISTS submarine_test;" -mysql -e "CREATE USER IF NOT EXISTS 'submarine_test'@'%' IDENTIFIED BY 'password_test';" -mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'submarine_test'@'%';" -mysql -e "use submarine_test; source ./submarine.sql; show tables;" - -mysql -e "CREATE DATABASE IF NOT EXISTS metastore_test;" -mysql -e "CREATE USER IF NOT EXISTS 'metastore_test'@'%' IDENTIFIED BY 'password_test';" -mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'metastore_test'@'%';" -mysql -e "use metastore_test; source ./metastore.sql; show tables;" - -mysql -e "CREATE DATABASE IF NOT EXISTS submarine;" -mysql -e "CREATE USER IF NOT EXISTS 'submarine'@'%' IDENTIFIED BY 'password';" -mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'submarine'@'%';" -mysql -e "use submarine; source ./submarine.sql; source ./submarine-data.sql; show tables;" - -mysql -e "CREATE DATABASE IF NOT EXISTS metastore;" -mysql -e "CREATE USER IF NOT EXISTS 'metastore'@'%' IDENTIFIED BY 'password';" -mysql -e "GRANT ALL PRIVILEGES ON *.* TO 'metastore'@'%';" -mysql -e "use metastore; source ./metastore.sql; show tables;" diff --git a/docs/database/metastore.sql b/docs/database/metastore.sql deleted file mode 100644 index 041c96d..0000000 --- a/docs/database/metastore.sql +++ /dev/null @@ -1,982 +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. - --- fork by https://github.com/apache/hive/blob/master/metastore/scripts/ --- upgrade/mysql/hive-schema-2.3.0.mysql.sql - --- fork by https://github.com/apache/hive/blob/master/metastore/scripts/ --- upgrade/mysql/hive-txn-schema-2.3.0.mysql.sql - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `BUCKETING_COLS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `BUCKETING_COLS` ( - `SD_ID` bigint(20) NOT NULL, - `BUCKET_COL_NAME` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`SD_ID`,`INTEGER_IDX`), - KEY `BUCKETING_COLS_N49` (`SD_ID`), - CONSTRAINT `BUCKETING_COLS_FK1` FOREIGN KEY (`SD_ID`) REFERENCES `SDS` (`SD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `CDS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `CDS` ( - `CD_ID` bigint(20) NOT NULL, - PRIMARY KEY (`CD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `COLUMNS_V2` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `COLUMNS_V2` ( - `CD_ID` bigint(20) NOT NULL, - `COMMENT` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `COLUMN_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `TYPE_NAME` MEDIUMTEXT DEFAULT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`CD_ID`,`COLUMN_NAME`), - KEY `COLUMNS_V2_N49` (`CD_ID`), - CONSTRAINT `COLUMNS_V2_FK1` FOREIGN KEY (`CD_ID`) REFERENCES `CDS` (`CD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `DATABASE_PARAMS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `DATABASE_PARAMS` ( - `DB_ID` bigint(20) NOT NULL, - `PARAM_KEY` varchar(180) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PARAM_VALUE` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`DB_ID`,`PARAM_KEY`), - KEY `DATABASE_PARAMS_N49` (`DB_ID`), - CONSTRAINT `DATABASE_PARAMS_FK1` FOREIGN KEY (`DB_ID`) REFERENCES `DBS` (`DB_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `DBS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `DBS` ( - `DB_ID` bigint(20) NOT NULL, - `DESC` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `DB_LOCATION_URI` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `OWNER_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `OWNER_TYPE` varchar(10) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`DB_ID`), - UNIQUE KEY `UNIQUE_DATABASE` (`NAME`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `DB_PRIVS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `DB_PRIVS` ( - `DB_GRANT_ID` bigint(20) NOT NULL, - `CREATE_TIME` int(11) NOT NULL, - `DB_ID` bigint(20) DEFAULT NULL, - `GRANT_OPTION` smallint(6) NOT NULL, - `GRANTOR` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `GRANTOR_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `DB_PRIV` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`DB_GRANT_ID`), - UNIQUE KEY `DBPRIVILEGEINDEX` (`DB_ID`,`PRINCIPAL_NAME`,`PRINCIPAL_TYPE`,`DB_PRIV`,`GRANTOR`,`GRANTOR_TYPE`), - KEY `DB_PRIVS_N49` (`DB_ID`), - CONSTRAINT `DB_PRIVS_FK1` FOREIGN KEY (`DB_ID`) REFERENCES `DBS` (`DB_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `GLOBAL_PRIVS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `GLOBAL_PRIVS` ( - `USER_GRANT_ID` bigint(20) NOT NULL, - `CREATE_TIME` int(11) NOT NULL, - `GRANT_OPTION` smallint(6) NOT NULL, - `GRANTOR` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `GRANTOR_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `USER_PRIV` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`USER_GRANT_ID`), - UNIQUE KEY `GLOBALPRIVILEGEINDEX` (`PRINCIPAL_NAME`,`PRINCIPAL_TYPE`,`USER_PRIV`,`GRANTOR`,`GRANTOR_TYPE`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `IDXS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `IDXS` ( - `INDEX_ID` bigint(20) NOT NULL, - `CREATE_TIME` int(11) NOT NULL, - `DEFERRED_REBUILD` bit(1) NOT NULL, - `INDEX_HANDLER_CLASS` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `INDEX_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `INDEX_TBL_ID` bigint(20) DEFAULT NULL, - `LAST_ACCESS_TIME` int(11) NOT NULL, - `ORIG_TBL_ID` bigint(20) DEFAULT NULL, - `SD_ID` bigint(20) DEFAULT NULL, - PRIMARY KEY (`INDEX_ID`), - UNIQUE KEY `UNIQUEINDEX` (`INDEX_NAME`,`ORIG_TBL_ID`), - KEY `IDXS_N51` (`SD_ID`), - KEY `IDXS_N50` (`INDEX_TBL_ID`), - KEY `IDXS_N49` (`ORIG_TBL_ID`), - CONSTRAINT `IDXS_FK1` FOREIGN KEY (`ORIG_TBL_ID`) REFERENCES `TBLS` (`TBL_ID`), - CONSTRAINT `IDXS_FK2` FOREIGN KEY (`SD_ID`) REFERENCES `SDS` (`SD_ID`), - CONSTRAINT `IDXS_FK3` FOREIGN KEY (`INDEX_TBL_ID`) REFERENCES `TBLS` (`TBL_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `INDEX_PARAMS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `INDEX_PARAMS` ( - `INDEX_ID` bigint(20) NOT NULL, - `PARAM_KEY` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PARAM_VALUE` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`INDEX_ID`,`PARAM_KEY`), - KEY `INDEX_PARAMS_N49` (`INDEX_ID`), - CONSTRAINT `INDEX_PARAMS_FK1` FOREIGN KEY (`INDEX_ID`) REFERENCES `IDXS` (`INDEX_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `NUCLEUS_TABLES` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `NUCLEUS_TABLES` ( - `CLASS_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `TABLE_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `TYPE` varchar(4) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `OWNER` varchar(2) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `VERSION` varchar(20) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `INTERFACE_NAME` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`CLASS_NAME`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `PARTITIONS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `PARTITIONS` ( - `PART_ID` bigint(20) NOT NULL, - `CREATE_TIME` int(11) NOT NULL, - `LAST_ACCESS_TIME` int(11) NOT NULL, - `PART_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `SD_ID` bigint(20) DEFAULT NULL, - `TBL_ID` bigint(20) DEFAULT NULL, - PRIMARY KEY (`PART_ID`), - UNIQUE KEY `UNIQUEPARTITION` (`PART_NAME`,`TBL_ID`), - KEY `PARTITIONS_N49` (`TBL_ID`), - KEY `PARTITIONS_N50` (`SD_ID`), - CONSTRAINT `PARTITIONS_FK1` FOREIGN KEY (`TBL_ID`) REFERENCES `TBLS` (`TBL_ID`), - CONSTRAINT `PARTITIONS_FK2` FOREIGN KEY (`SD_ID`) REFERENCES `SDS` (`SD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `PARTITION_EVENTS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `PARTITION_EVENTS` ( - `PART_NAME_ID` bigint(20) NOT NULL, - `DB_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `EVENT_TIME` bigint(20) NOT NULL, - `EVENT_TYPE` int(11) NOT NULL, - `PARTITION_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `TBL_NAME` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`PART_NAME_ID`), - KEY `PARTITIONEVENTINDEX` (`PARTITION_NAME`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `PARTITION_KEYS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `PARTITION_KEYS` ( - `TBL_ID` bigint(20) NOT NULL, - `PKEY_COMMENT` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PKEY_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PKEY_TYPE` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`TBL_ID`,`PKEY_NAME`), - KEY `PARTITION_KEYS_N49` (`TBL_ID`), - CONSTRAINT `PARTITION_KEYS_FK1` FOREIGN KEY (`TBL_ID`) REFERENCES `TBLS` (`TBL_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `PARTITION_KEY_VALS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `PARTITION_KEY_VALS` ( - `PART_ID` bigint(20) NOT NULL, - `PART_KEY_VAL` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`PART_ID`,`INTEGER_IDX`), - KEY `PARTITION_KEY_VALS_N49` (`PART_ID`), - CONSTRAINT `PARTITION_KEY_VALS_FK1` FOREIGN KEY (`PART_ID`) REFERENCES `PARTITIONS` (`PART_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `PARTITION_PARAMS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `PARTITION_PARAMS` ( - `PART_ID` bigint(20) NOT NULL, - `PARAM_KEY` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PARAM_VALUE` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`PART_ID`,`PARAM_KEY`), - KEY `PARTITION_PARAMS_N49` (`PART_ID`), - CONSTRAINT `PARTITION_PARAMS_FK1` FOREIGN KEY (`PART_ID`) REFERENCES `PARTITIONS` (`PART_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `PART_COL_PRIVS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `PART_COL_PRIVS` ( - `PART_COLUMN_GRANT_ID` bigint(20) NOT NULL, - `COLUMN_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `CREATE_TIME` int(11) NOT NULL, - `GRANT_OPTION` smallint(6) NOT NULL, - `GRANTOR` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `GRANTOR_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PART_ID` bigint(20) DEFAULT NULL, - `PRINCIPAL_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PART_COL_PRIV` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`PART_COLUMN_GRANT_ID`), - KEY `PART_COL_PRIVS_N49` (`PART_ID`), - KEY `PARTITIONCOLUMNPRIVILEGEINDEX` (`PART_ID`,`COLUMN_NAME`,`PRINCIPAL_NAME`,`PRINCIPAL_TYPE`,`PART_COL_PRIV`,`GRANTOR`,`GRANTOR_TYPE`), - CONSTRAINT `PART_COL_PRIVS_FK1` FOREIGN KEY (`PART_ID`) REFERENCES `PARTITIONS` (`PART_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `PART_PRIVS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `PART_PRIVS` ( - `PART_GRANT_ID` bigint(20) NOT NULL, - `CREATE_TIME` int(11) NOT NULL, - `GRANT_OPTION` smallint(6) NOT NULL, - `GRANTOR` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `GRANTOR_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PART_ID` bigint(20) DEFAULT NULL, - `PRINCIPAL_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PART_PRIV` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`PART_GRANT_ID`), - KEY `PARTPRIVILEGEINDEX` (`PART_ID`,`PRINCIPAL_NAME`,`PRINCIPAL_TYPE`,`PART_PRIV`,`GRANTOR`,`GRANTOR_TYPE`), - KEY `PART_PRIVS_N49` (`PART_ID`), - CONSTRAINT `PART_PRIVS_FK1` FOREIGN KEY (`PART_ID`) REFERENCES `PARTITIONS` (`PART_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `ROLES` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `ROLES` ( - `ROLE_ID` bigint(20) NOT NULL, - `CREATE_TIME` int(11) NOT NULL, - `OWNER_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `ROLE_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`ROLE_ID`), - UNIQUE KEY `ROLEENTITYINDEX` (`ROLE_NAME`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `ROLE_MAP` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `ROLE_MAP` ( - `ROLE_GRANT_ID` bigint(20) NOT NULL, - `ADD_TIME` int(11) NOT NULL, - `GRANT_OPTION` smallint(6) NOT NULL, - `GRANTOR` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `GRANTOR_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `ROLE_ID` bigint(20) DEFAULT NULL, - PRIMARY KEY (`ROLE_GRANT_ID`), - UNIQUE KEY `USERROLEMAPINDEX` (`PRINCIPAL_NAME`,`ROLE_ID`,`GRANTOR`,`GRANTOR_TYPE`), - KEY `ROLE_MAP_N49` (`ROLE_ID`), - CONSTRAINT `ROLE_MAP_FK1` FOREIGN KEY (`ROLE_ID`) REFERENCES `ROLES` (`ROLE_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SDS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SDS` ( - `SD_ID` bigint(20) NOT NULL, - `CD_ID` bigint(20) DEFAULT NULL, - `INPUT_FORMAT` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `IS_COMPRESSED` bit(1) NOT NULL, - `IS_STOREDASSUBDIRECTORIES` bit(1) NOT NULL, - `LOCATION` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `NUM_BUCKETS` int(11) NOT NULL, - `OUTPUT_FORMAT` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `SERDE_ID` bigint(20) DEFAULT NULL, - PRIMARY KEY (`SD_ID`), - KEY `SDS_N49` (`SERDE_ID`), - KEY `SDS_N50` (`CD_ID`), - CONSTRAINT `SDS_FK1` FOREIGN KEY (`SERDE_ID`) REFERENCES `SERDES` (`SERDE_ID`), - CONSTRAINT `SDS_FK2` FOREIGN KEY (`CD_ID`) REFERENCES `CDS` (`CD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SD_PARAMS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SD_PARAMS` ( - `SD_ID` bigint(20) NOT NULL, - `PARAM_KEY` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PARAM_VALUE` MEDIUMTEXT CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`SD_ID`,`PARAM_KEY`), - KEY `SD_PARAMS_N49` (`SD_ID`), - CONSTRAINT `SD_PARAMS_FK1` FOREIGN KEY (`SD_ID`) REFERENCES `SDS` (`SD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SEQUENCE_TABLE` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SEQUENCE_TABLE` ( - `SEQUENCE_NAME` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `NEXT_VAL` bigint(20) NOT NULL, - PRIMARY KEY (`SEQUENCE_NAME`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SERDES` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SERDES` ( - `SERDE_ID` bigint(20) NOT NULL, - `NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `SLIB` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`SERDE_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SERDE_PARAMS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SERDE_PARAMS` ( - `SERDE_ID` bigint(20) NOT NULL, - `PARAM_KEY` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PARAM_VALUE` MEDIUMTEXT CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`SERDE_ID`,`PARAM_KEY`), - KEY `SERDE_PARAMS_N49` (`SERDE_ID`), - CONSTRAINT `SERDE_PARAMS_FK1` FOREIGN KEY (`SERDE_ID`) REFERENCES `SERDES` (`SERDE_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SKEWED_COL_NAMES` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SKEWED_COL_NAMES` ( - `SD_ID` bigint(20) NOT NULL, - `SKEWED_COL_NAME` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`SD_ID`,`INTEGER_IDX`), - KEY `SKEWED_COL_NAMES_N49` (`SD_ID`), - CONSTRAINT `SKEWED_COL_NAMES_FK1` FOREIGN KEY (`SD_ID`) REFERENCES `SDS` (`SD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SKEWED_COL_VALUE_LOC_MAP` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SKEWED_COL_VALUE_LOC_MAP` ( - `SD_ID` bigint(20) NOT NULL, - `STRING_LIST_ID_KID` bigint(20) NOT NULL, - `LOCATION` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`SD_ID`,`STRING_LIST_ID_KID`), - KEY `SKEWED_COL_VALUE_LOC_MAP_N49` (`STRING_LIST_ID_KID`), - KEY `SKEWED_COL_VALUE_LOC_MAP_N50` (`SD_ID`), - CONSTRAINT `SKEWED_COL_VALUE_LOC_MAP_FK2` FOREIGN KEY (`STRING_LIST_ID_KID`) REFERENCES `SKEWED_STRING_LIST` (`STRING_LIST_ID`), - CONSTRAINT `SKEWED_COL_VALUE_LOC_MAP_FK1` FOREIGN KEY (`SD_ID`) REFERENCES `SDS` (`SD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SKEWED_STRING_LIST` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SKEWED_STRING_LIST` ( - `STRING_LIST_ID` bigint(20) NOT NULL, - PRIMARY KEY (`STRING_LIST_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SKEWED_STRING_LIST_VALUES` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SKEWED_STRING_LIST_VALUES` ( - `STRING_LIST_ID` bigint(20) NOT NULL, - `STRING_LIST_VALUE` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`STRING_LIST_ID`,`INTEGER_IDX`), - KEY `SKEWED_STRING_LIST_VALUES_N49` (`STRING_LIST_ID`), - CONSTRAINT `SKEWED_STRING_LIST_VALUES_FK1` FOREIGN KEY (`STRING_LIST_ID`) REFERENCES `SKEWED_STRING_LIST` (`STRING_LIST_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SKEWED_VALUES` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SKEWED_VALUES` ( - `SD_ID_OID` bigint(20) NOT NULL, - `STRING_LIST_ID_EID` bigint(20) NOT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`SD_ID_OID`,`INTEGER_IDX`), - KEY `SKEWED_VALUES_N50` (`SD_ID_OID`), - KEY `SKEWED_VALUES_N49` (`STRING_LIST_ID_EID`), - CONSTRAINT `SKEWED_VALUES_FK2` FOREIGN KEY (`STRING_LIST_ID_EID`) REFERENCES `SKEWED_STRING_LIST` (`STRING_LIST_ID`), - CONSTRAINT `SKEWED_VALUES_FK1` FOREIGN KEY (`SD_ID_OID`) REFERENCES `SDS` (`SD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `SORT_COLS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `SORT_COLS` ( - `SD_ID` bigint(20) NOT NULL, - `COLUMN_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `ORDER` int(11) NOT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`SD_ID`,`INTEGER_IDX`), - KEY `SORT_COLS_N49` (`SD_ID`), - CONSTRAINT `SORT_COLS_FK1` FOREIGN KEY (`SD_ID`) REFERENCES `SDS` (`SD_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `TABLE_PARAMS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `TABLE_PARAMS` ( - `TBL_ID` bigint(20) NOT NULL, - `PARAM_KEY` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PARAM_VALUE` MEDIUMTEXT CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`TBL_ID`,`PARAM_KEY`), - KEY `TABLE_PARAMS_N49` (`TBL_ID`), - CONSTRAINT `TABLE_PARAMS_FK1` FOREIGN KEY (`TBL_ID`) REFERENCES `TBLS` (`TBL_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `TBLS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `TBLS` ( - `TBL_ID` bigint(20) NOT NULL, - `CREATE_TIME` int(11) NOT NULL, - `DB_ID` bigint(20) DEFAULT NULL, - `LAST_ACCESS_TIME` int(11) NOT NULL, - `OWNER` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `RETENTION` int(11) NOT NULL, - `SD_ID` bigint(20) DEFAULT NULL, - `TBL_NAME` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `TBL_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `VIEW_EXPANDED_TEXT` mediumtext, - `VIEW_ORIGINAL_TEXT` mediumtext, - `IS_REWRITE_ENABLED` bit(1) NOT NULL DEFAULT 0, - PRIMARY KEY (`TBL_ID`), - UNIQUE KEY `UNIQUETABLE` (`TBL_NAME`,`DB_ID`), - KEY `TBLS_N50` (`SD_ID`), - KEY `TBLS_N49` (`DB_ID`), - CONSTRAINT `TBLS_FK1` FOREIGN KEY (`SD_ID`) REFERENCES `SDS` (`SD_ID`), - CONSTRAINT `TBLS_FK2` FOREIGN KEY (`DB_ID`) REFERENCES `DBS` (`DB_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `TBL_COL_PRIVS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `TBL_COL_PRIVS` ( - `TBL_COLUMN_GRANT_ID` bigint(20) NOT NULL, - `COLUMN_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `CREATE_TIME` int(11) NOT NULL, - `GRANT_OPTION` smallint(6) NOT NULL, - `GRANTOR` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `GRANTOR_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `TBL_COL_PRIV` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `TBL_ID` bigint(20) DEFAULT NULL, - PRIMARY KEY (`TBL_COLUMN_GRANT_ID`), - KEY `TABLECOLUMNPRIVILEGEINDEX` (`TBL_ID`,`COLUMN_NAME`,`PRINCIPAL_NAME`,`PRINCIPAL_TYPE`,`TBL_COL_PRIV`,`GRANTOR`,`GRANTOR_TYPE`), - KEY `TBL_COL_PRIVS_N49` (`TBL_ID`), - CONSTRAINT `TBL_COL_PRIVS_FK1` FOREIGN KEY (`TBL_ID`) REFERENCES `TBLS` (`TBL_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `TBL_PRIVS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `TBL_PRIVS` ( - `TBL_GRANT_ID` bigint(20) NOT NULL, - `CREATE_TIME` int(11) NOT NULL, - `GRANT_OPTION` smallint(6) NOT NULL, - `GRANTOR` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `GRANTOR_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `PRINCIPAL_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `TBL_PRIV` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `TBL_ID` bigint(20) DEFAULT NULL, - PRIMARY KEY (`TBL_GRANT_ID`), - KEY `TBL_PRIVS_N49` (`TBL_ID`), - KEY `TABLEPRIVILEGEINDEX` (`TBL_ID`,`PRINCIPAL_NAME`,`PRINCIPAL_TYPE`,`TBL_PRIV`,`GRANTOR`,`GRANTOR_TYPE`), - CONSTRAINT `TBL_PRIVS_FK1` FOREIGN KEY (`TBL_ID`) REFERENCES `TBLS` (`TBL_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `TAB_COL_STATS` --- -CREATE TABLE IF NOT EXISTS `TAB_COL_STATS` ( - `CS_ID` bigint(20) NOT NULL, - `DB_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `TABLE_NAME` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `COLUMN_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `COLUMN_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `TBL_ID` bigint(20) NOT NULL, - `LONG_LOW_VALUE` bigint(20), - `LONG_HIGH_VALUE` bigint(20), - `DOUBLE_HIGH_VALUE` double(53,4), - `DOUBLE_LOW_VALUE` double(53,4), - `BIG_DECIMAL_LOW_VALUE` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin, - `BIG_DECIMAL_HIGH_VALUE` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin, - `NUM_NULLS` bigint(20) NOT NULL, - `NUM_DISTINCTS` bigint(20), - `AVG_COL_LEN` double(53,4), - `MAX_COL_LEN` bigint(20), - `NUM_TRUES` bigint(20), - `NUM_FALSES` bigint(20), - `LAST_ANALYZED` bigint(20) NOT NULL, - PRIMARY KEY (`CS_ID`), - CONSTRAINT `TAB_COL_STATS_FK` FOREIGN KEY (`TBL_ID`) REFERENCES `TBLS` (`TBL_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- --- Table structure for table `PART_COL_STATS` --- -CREATE TABLE IF NOT EXISTS `PART_COL_STATS` ( - `CS_ID` bigint(20) NOT NULL, - `DB_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `TABLE_NAME` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PARTITION_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `COLUMN_NAME` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `COLUMN_TYPE` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `PART_ID` bigint(20) NOT NULL, - `LONG_LOW_VALUE` bigint(20), - `LONG_HIGH_VALUE` bigint(20), - `DOUBLE_HIGH_VALUE` double(53,4), - `DOUBLE_LOW_VALUE` double(53,4), - `BIG_DECIMAL_LOW_VALUE` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin, - `BIG_DECIMAL_HIGH_VALUE` varchar(4000) CHARACTER SET latin1 COLLATE latin1_bin, - `NUM_NULLS` bigint(20) NOT NULL, - `NUM_DISTINCTS` bigint(20), - `AVG_COL_LEN` double(53,4), - `MAX_COL_LEN` bigint(20), - `NUM_TRUES` bigint(20), - `NUM_FALSES` bigint(20), - `LAST_ANALYZED` bigint(20) NOT NULL, - PRIMARY KEY (`CS_ID`), - CONSTRAINT `PART_COL_STATS_FK` FOREIGN KEY (`PART_ID`) REFERENCES `PARTITIONS` (`PART_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE INDEX PCS_STATS_IDX ON PART_COL_STATS (DB_NAME,TABLE_NAME,COLUMN_NAME,PARTITION_NAME) USING BTREE; - --- --- Table structure for table `TYPES` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `TYPES` ( - `TYPES_ID` bigint(20) NOT NULL, - `TYPE_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `TYPE1` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `TYPE2` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - PRIMARY KEY (`TYPES_ID`), - UNIQUE KEY `UNIQUE_TYPE` (`TYPE_NAME`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Table structure for table `TYPE_FIELDS` --- - -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE IF NOT EXISTS `TYPE_FIELDS` ( - `TYPE_NAME` bigint(20) NOT NULL, - `COMMENT` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL, - `FIELD_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `FIELD_TYPE` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL, - `INTEGER_IDX` int(11) NOT NULL, - PRIMARY KEY (`TYPE_NAME`,`FIELD_NAME`), - KEY `TYPE_FIELDS_N49` (`TYPE_NAME`), - CONSTRAINT `TYPE_FIELDS_FK1` FOREIGN KEY (`TYPE_NAME`) REFERENCES `TYPES` (`TYPES_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- Table `MASTER_KEYS` for classes [org.apache.hadoop.hive.metastore.model.MMasterKey] -CREATE TABLE IF NOT EXISTS `MASTER_KEYS` -( - `KEY_ID` INTEGER NOT NULL AUTO_INCREMENT, - `MASTER_KEY` VARCHAR(767) BINARY NULL, - PRIMARY KEY (`KEY_ID`) -) ENGINE=INNODB DEFAULT CHARSET=latin1; - --- Table `DELEGATION_TOKENS` for classes [org.apache.hadoop.hive.metastore.model.MDelegationToken] -CREATE TABLE IF NOT EXISTS `DELEGATION_TOKENS` -( - `TOKEN_IDENT` VARCHAR(767) BINARY NOT NULL, - `TOKEN` VARCHAR(767) BINARY NULL, - PRIMARY KEY (`TOKEN_IDENT`) -) ENGINE=INNODB DEFAULT CHARSET=latin1; - --- --- Table structure for VERSION --- -CREATE TABLE IF NOT EXISTS `VERSION` ( - `VER_ID` BIGINT NOT NULL, - `SCHEMA_VERSION` VARCHAR(127) NOT NULL, - `VERSION_COMMENT` VARCHAR(255), - PRIMARY KEY (`VER_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- --- Table structure for table FUNCS --- -CREATE TABLE IF NOT EXISTS `FUNCS` ( - `FUNC_ID` BIGINT(20) NOT NULL, - `CLASS_NAME` VARCHAR(4000) CHARACTER SET latin1 COLLATE latin1_bin, - `CREATE_TIME` INT(11) NOT NULL, - `DB_ID` BIGINT(20), - `FUNC_NAME` VARCHAR(128) CHARACTER SET latin1 COLLATE latin1_bin, - `FUNC_TYPE` INT(11) NOT NULL, - `OWNER_NAME` VARCHAR(128) CHARACTER SET latin1 COLLATE latin1_bin, - `OWNER_TYPE` VARCHAR(10) CHARACTER SET latin1 COLLATE latin1_bin, - PRIMARY KEY (`FUNC_ID`), - UNIQUE KEY `UNIQUEFUNCTION` (`FUNC_NAME`, `DB_ID`), - KEY `FUNCS_N49` (`DB_ID`), - CONSTRAINT `FUNCS_FK1` FOREIGN KEY (`DB_ID`) REFERENCES `DBS` (`DB_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- --- Table structure for table FUNC_RU --- -CREATE TABLE IF NOT EXISTS `FUNC_RU` ( - `FUNC_ID` BIGINT(20) NOT NULL, - `RESOURCE_TYPE` INT(11) NOT NULL, - `RESOURCE_URI` VARCHAR(4000) CHARACTER SET latin1 COLLATE latin1_bin, - `INTEGER_IDX` INT(11) NOT NULL, - PRIMARY KEY (`FUNC_ID`, `INTEGER_IDX`), - CONSTRAINT `FUNC_RU_FK1` FOREIGN KEY (`FUNC_ID`) REFERENCES `FUNCS` (`FUNC_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE IF NOT EXISTS `NOTIFICATION_LOG` -( - `NL_ID` BIGINT(20) NOT NULL, - `EVENT_ID` BIGINT(20) NOT NULL, - `EVENT_TIME` INT(11) NOT NULL, - `EVENT_TYPE` varchar(32) NOT NULL, - `DB_NAME` varchar(128), - `TBL_NAME` varchar(256), - `MESSAGE` longtext, - `MESSAGE_FORMAT` varchar(16), - PRIMARY KEY (`NL_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE IF NOT EXISTS `NOTIFICATION_SEQUENCE` -( - `NNI_ID` BIGINT(20) NOT NULL, - `NEXT_EVENT_ID` BIGINT(20) NOT NULL, - PRIMARY KEY (`NNI_ID`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE IF NOT EXISTS `KEY_CONSTRAINTS` -( - `CHILD_CD_ID` BIGINT, - `CHILD_INTEGER_IDX` INT(11), - `CHILD_TBL_ID` BIGINT, - `PARENT_CD_ID` BIGINT NOT NULL, - `PARENT_INTEGER_IDX` INT(11) NOT NULL, - `PARENT_TBL_ID` BIGINT NOT NULL, - `POSITION` BIGINT NOT NULL, - `CONSTRAINT_NAME` VARCHAR(400) NOT NULL, - `CONSTRAINT_TYPE` SMALLINT(6) NOT NULL, - `UPDATE_RULE` SMALLINT(6), - `DELETE_RULE` SMALLINT(6), - `ENABLE_VALIDATE_RELY` SMALLINT(6) NOT NULL, - PRIMARY KEY (`CONSTRAINT_NAME`, `POSITION`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE INDEX `CONSTRAINTS_PARENT_TABLE_ID_INDEX` ON KEY_CONSTRAINTS (`PARENT_TBL_ID`) USING BTREE; - --- --- Tables for transaction management --- - -CREATE TABLE TXNS ( - TXN_ID bigint PRIMARY KEY, - TXN_STATE char(1) NOT NULL, - TXN_STARTED bigint NOT NULL, - TXN_LAST_HEARTBEAT bigint NOT NULL, - TXN_USER varchar(128) NOT NULL, - TXN_HOST varchar(128) NOT NULL, - TXN_AGENT_INFO varchar(128), - TXN_META_INFO varchar(128), - TXN_HEARTBEAT_COUNT int -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE TXN_COMPONENTS ( - TC_TXNID bigint NOT NULL, - TC_DATABASE varchar(128) NOT NULL, - TC_TABLE varchar(128) NOT NULL, - TC_PARTITION varchar(767), - TC_OPERATION_TYPE char(1) NOT NULL, - FOREIGN KEY (TC_TXNID) REFERENCES TXNS (TXN_ID) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE INDEX TC_TXNID_INDEX ON TXN_COMPONENTS (TC_TXNID); - -CREATE TABLE COMPLETED_TXN_COMPONENTS ( - CTC_TXNID bigint NOT NULL, - CTC_DATABASE varchar(128) NOT NULL, - CTC_TABLE varchar(256), - CTC_PARTITION varchar(767) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE NEXT_TXN_ID ( - NTXN_NEXT bigint NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -INSERT INTO NEXT_TXN_ID VALUES(1); - -CREATE TABLE HIVE_LOCKS ( - HL_LOCK_EXT_ID bigint NOT NULL, - HL_LOCK_INT_ID bigint NOT NULL, - HL_TXNID bigint, - HL_DB varchar(128) NOT NULL, - HL_TABLE varchar(128), - HL_PARTITION varchar(767), - HL_LOCK_STATE char(1) not null, - HL_LOCK_TYPE char(1) not null, - HL_LAST_HEARTBEAT bigint NOT NULL, - HL_ACQUIRED_AT bigint, - HL_USER varchar(128) NOT NULL, - HL_HOST varchar(128) NOT NULL, - HL_HEARTBEAT_COUNT int, - HL_AGENT_INFO varchar(128), - HL_BLOCKEDBY_EXT_ID bigint, - HL_BLOCKEDBY_INT_ID bigint, - PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID), - KEY HIVE_LOCK_TXNID_INDEX (HL_TXNID) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE INDEX HL_TXNID_IDX ON HIVE_LOCKS (HL_TXNID); - -CREATE TABLE NEXT_LOCK_ID ( - NL_NEXT bigint NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -INSERT INTO NEXT_LOCK_ID VALUES(1); - -CREATE TABLE COMPACTION_QUEUE ( - CQ_ID bigint PRIMARY KEY, - CQ_DATABASE varchar(128) NOT NULL, - CQ_TABLE varchar(128) NOT NULL, - CQ_PARTITION varchar(767), - CQ_STATE char(1) NOT NULL, - CQ_TYPE char(1) NOT NULL, - CQ_TBLPROPERTIES varchar(2048), - CQ_WORKER_ID varchar(128), - CQ_START bigint, - CQ_RUN_AS varchar(128), - CQ_HIGHEST_TXN_ID bigint, - CQ_META_INFO varbinary(2048), - CQ_HADOOP_JOB_ID varchar(32) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE COMPLETED_COMPACTIONS ( - CC_ID bigint PRIMARY KEY, - CC_DATABASE varchar(128) NOT NULL, - CC_TABLE varchar(128) NOT NULL, - CC_PARTITION varchar(767), - CC_STATE char(1) NOT NULL, - CC_TYPE char(1) NOT NULL, - CC_TBLPROPERTIES varchar(2048), - CC_WORKER_ID varchar(128), - CC_START bigint, - CC_END bigint, - CC_RUN_AS varchar(128), - CC_HIGHEST_TXN_ID bigint, - CC_META_INFO varbinary(2048), - CC_HADOOP_JOB_ID varchar(32) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( - NCQ_NEXT bigint NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); - -CREATE TABLE AUX_TABLE ( - MT_KEY1 varchar(128) NOT NULL, - MT_KEY2 bigint NOT NULL, - MT_COMMENT varchar(255), - PRIMARY KEY(MT_KEY1, MT_KEY2) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - -CREATE TABLE WRITE_SET ( - WS_DATABASE varchar(128) NOT NULL, - WS_TABLE varchar(128) NOT NULL, - WS_PARTITION varchar(767), - WS_TXNID bigint NOT NULL, - WS_COMMIT_ID bigint NOT NULL, - WS_OPERATION_TYPE char(1) NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=latin1; - --- ----------------------------------------------------------------- --- Record schema version. Should be the last step in the init script --- ----------------------------------------------------------------- -INSERT INTO VERSION (VER_ID, SCHEMA_VERSION, VERSION_COMMENT) VALUES (1, '2.3.0', 'Hive release version 2.3.0'); - -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2012-08-23 0:56:31 diff --git a/docs/database/submarine-data.sql b/docs/database/submarine-data.sql deleted file mode 100644 index 93ed13d..0000000 --- a/docs/database/submarine-data.sql +++ /dev/null @@ -1,96 +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. - --- ---------------------------- --- Records of sys_dict --- ---------------------------- -INSERT INTO `sys_dict` VALUES ('ca2dd544ca4c11e9a71e0242ac110002','SYS_USER_SEX','Sys user sex','submarine system dict, Do not modify.',0,0,NULL,'2019-08-29 11:04:36',NULL,'2019-09-01 01:08:12'); -INSERT INTO `sys_dict` VALUES ('f405a7b1cc5411e9af810242ac110002','SYS_USER_STATUS','Sys user status','submarine system dict, Do not modify.',0,0,NULL,'2019-09-01 01:08:05',NULL,'2019-09-01 01:08:05'); -INSERT INTO `sys_dict` VALUES ('3a1ed33ae83611e9ab840242ac110002','PROJECT_TYPE','Project machine learning type','submarine system dict, Do not modify.',0,0,NULL,'2019-09-01 01:08:05',NULL,'2019-09-01 01:08:05'); -INSERT INTO `sys_dict` VALUES ('8a101495e84011e9ab840242ac110002','PROJECT_VISIBILITY','Project visibility type','submarine system dict, Do not modify.',0,0,NULL,'2019-09-01 01:08:05',NULL,'2019-09-01 01:08:05'); -INSERT INTO `sys_dict` VALUES ('8f0439c9e84011e9ab840242ac110002','PROJECT_PERMISSION','Project permission type','submarine system dict, Do not modify.',0,0,NULL,'2019-09-01 01:08:05',NULL,'2019-09-01 01:08:05'); - --- ---------------------------- --- Records of sys_dict_item --- ---------------------------- -INSERT INTO `sys_dict_item` VALUES ('27ef1080cc5511e9af810242ac110002','SYS_USER_STATUS_AVAILABLE','Available','SYS_USER_STATUS','submarine system dict, Do not modify.',1,0,NULL,'2019-09-01 01:09:32',NULL,'2019-09-01 01:13:19'); -INSERT INTO `sys_dict_item` VALUES ('4c5d736acc5511e9af810242ac110002','SYS_USER_STATUS_LOCKED','Locked','SYS_USER_STATUS','submarine system dict, Do not modify.',2,0,NULL,'2019-09-01 01:10:33',NULL,'2019-09-01 01:12:53'); -INSERT INTO `sys_dict_item` VALUES ('6d5ae3b2cc5511e9af810242ac110002','SYS_USER_STATUS_REGISTERED','New Registered','SYS_USER_STATUS','submarine system dict, Do not modify.',3,0,NULL,'2019-09-01 01:11:29',NULL,'2019-09-01 01:12:47'); -INSERT INTO `sys_dict_item` VALUES ('d018e2b0ca4c11e9a71e0242ac110002','SYS_USER_SEX_MALE','Male','SYS_USER_SEX','submarine system dict, Do not modify.',1,0,NULL,'2019-08-29 11:04:46',NULL,'2019-09-01 00:53:54'); -INSERT INTO `sys_dict_item` VALUES ('d94410adca4c11e9a71e0242ac110002','SYS_USER_SEX_FEMALE','Female','SYS_USER_SEX','submarine system dict, Do not modify.',2,0,NULL,'2019-08-29 11:05:02',NULL,'2019-09-01 00:54:00'); -INSERT INTO `sys_dict_item` VALUES ('7b9aafa0e83611e9ab840242ac110002','PROJECT_TYPE_NOTEBOOK','notebook','PROJECT_TYPE','submarine system dict, Do not modify.',1,0,NULL,'2019-08-29 11:05:02',NULL,'2019-09-01 00:54:00'); -INSERT INTO `sys_dict_item` VALUES ('8229a76be83611e9ab840242ac110002','PROJECT_TYPE_PYTHON','python','PROJECT_TYPE','submarine system dict, Do not modify.',2,0,NULL,'2019-08-29 11:05:02',NULL,'2019-09-01 00:54:00'); -INSERT INTO `sys_dict_item` VALUES ('ac80ab12e83611e9ab840242ac110002','PROJECT_TYPE_R','R','PROJECT_TYPE','submarine system dict, Do not modify.',3,0,NULL,'2019-08-29 11:05:02',NULL,'2019-09-01 00:54:00'); -INSERT INTO `sys_dict_item` VALUES ('b1070158e83611e9ab840242ac110002','PROJECT_TYPE_SCALA','scala','PROJECT_TYPE','submarine system dict, Do not modify.',4,0,NULL,'2019-08-29 11:05:02',NULL,'2019-09-01 00:54:00'); -INSERT INTO `sys_dict_item` VALUES ('8c53870be83611e9ab840242ac110002','PROJECT_TYPE_TENSORFLOW','tensorflow','PROJECT_TYPE','submarine system dict, Do not modify.',5,0,NULL,'2019-08-29 11:05:02',NULL,'2019-09-01 00:54:00'); -INSERT INTO `sys_dict_item` VALUES ('90ca63dfe83611e9ab840242ac110002','PROJECT_TYPE_PYTORCH','pytorch','PROJECT_TYPE','submarine system dict, Do not modify.',6,0,NULL,'2019-08-29 11:05:02',NULL,'2019-09-01 00:54:00'); -INSERT INTO `sys_dict_item` VALUES ('2ed844fae84111e9ab840242ac110002','PROJECT_VISIBILITY_PRIVATE','private','PROJECT_VISIBILITY','submarine system dict, Do not modify.',1,0,NULL,'2019-09-01 01:09:32',NULL,'2019-09-01 01:13:19'); -INSERT INTO `sys_dict_item` VALUES ('341d5a35e84111e9ab840242ac110002','PROJECT_VISIBILITY_TEAM','team','PROJECT_VISIBILITY','submarine system dict, Do not modify.',2,0,NULL,'2019-09-01 01:10:33',NULL,'2019-09-01 01:12:53'); -INSERT INTO `sys_dict_item` VALUES ('3866b369e84111e9ab840242ac110002','PROJECT_VISIBILITY_PUBLIC','public','PROJECT_VISIBILITY','submarine system dict, Do not modify.',3,0,NULL,'2019-09-01 01:11:29',NULL,'2019-09-01 01:12:47'); -INSERT INTO `sys_dict_item` VALUES ('3cc1a373e84111e9ab840242ac110002','PROJECT_PERMISSION_VIEW','can view','PROJECT_PERMISSION','submarine system dict, Do not modify.',1,0,NULL,'2019-09-01 01:09:32',NULL,'2019-09-01 01:13:19'); -INSERT INTO `sys_dict_item` VALUES ('44e90f6ce84111e9ab840242ac110002','PROJECT_PERMISSION_EDIT','can edit','PROJECT_PERMISSION','submarine system dict, Do not modify.',2,0,NULL,'2019-09-01 01:11:29',NULL,'2019-09-01 01:12:47'); -INSERT INTO `sys_dict_item` VALUES ('40dbb5ece84111e9ab840242ac110002','PROJECT_PERMISSION_EXECUTE','can execute','PROJECT_PERMISSION','submarine system dict, Do not modify.',3,0,NULL,'2019-09-01 01:10:33',NULL,'2019-09-01 01:12:53'); - --- ---------------------------- --- Records of sys_department --- ---------------------------- -INSERT INTO `sys_department` VALUES ('e3d69d19c8d211e98edc0242ac110002','A','Company',NULL,0,'','0',NULL,'2019-08-27 13:59:30',NULL,'2019-08-27 14:02:05'); -INSERT INTO `sys_department` VALUES ('eec10fe9c8d211e98edc0242ac110002','AA','DepartmentA','A',0,'','0',NULL,'2019-08-27 13:59:48',NULL,'2019-08-27 14:04:11'); -INSERT INTO `sys_department` VALUES ('f8b42e19c8d211e98edc0242ac110002','AB','DepartmentB','A',0,'','0',NULL,'2019-08-27 14:00:05',NULL,'2019-08-27 14:07:19'); -INSERT INTO `sys_department` VALUES ('13a1916dc8d311e98edc0242ac110002','ABA','GroupA','AB',0,'','0',NULL,'2019-08-27 14:00:50',NULL,'2019-08-27 14:09:21'); -INSERT INTO `sys_department` VALUES ('1bc0cd98c8d311e98edc0242ac110002','AAA','GroupB','AA',0,'','0',NULL,'2019-08-27 14:01:04',NULL,'2019-08-29 16:48:56'); - --- ---------------------------- --- Records of sys_user --- ---------------------------- -INSERT INTO `sys_user` VALUES ('e9ca23d68d884d4ebb19d07889727dae', 'admin', 'administrator', '21232f297a57a5a743894a0e4a801fc3', 'avatar.png', '2018-12-05 00:00:00', NULL, 'dev@submarine.org', '18566666661', NULL, NULL, NULL, 1, 'admin', '2019-07-05 14:47:22', 'admin', '2019-07-05 14:47:22'); - --- ---------------------------- --- Records of team --- ---------------------------- -INSERT INTO `team` VALUES ('e9ca23d68d884d4ebb19d07889721234', 'admin', 'Submarine', 'admin', '2020-05-06 14:00:05', 'Jack', '2020-05-06 14:00:14'); - --- ---------------------------- --- Records of metrics --- ---------------------------- -INSERT INTO `metrics` (`id`, `key`, `value`, `worker_index`, `timestamp`, `step`, `is_nan`) VALUES -('application_123651651', 'score', 0.666667, 'worker-1', 1569139525097, 0, 0), -('application_123651651', 'score', 0.666670, 'worker-1', 1569149139731, 1, 0), -('experiment_1595332719154_0001', 'score', 0.666667, 'worker-1', 1569169376482, 0, 0), -('experiment_1595332719154_0001', 'score', 0.666671, 'worker-1', 1569236290721, 0, 0), -('experiment_1595332719154_0001', 'score', 0.666680, 'worker-1', 1569236466722, 0, 0); - --- ---------------------------- --- Records of params --- ---------------------------- -INSERT INTO `params` (`id`, `key`, `value`, `worker_index`) VALUES -('application_123651651', 'max_iter', '100', 'worker-1'), -('application_123456898', 'n_jobs', '5', 'worker-1'), -('application_123456789', 'alpha', '20', 'worker-1'), -('experiment_1595332719154_0001', 'max_iter', '100', 'worker-1'), -('experiment_1595332719154_0002', 'n_jobs', '5', 'worker-1'), -('experiment_1595332719154_0003', 'alpha', '20', 'worker-1'); - --- ---------------------------- --- Records of environment --- ---------------------------- -INSERT INTO `environment` VALUES -('environment_1600862964725_0001', 'notebook-env', '{"name":"notebook-env","dockerImage":"apache/submarine:jupyter-notebook-0.5.0","kernelSpec":{"name":"submarine_jupyter_py3","channels":["defaults"],"dependencies":[]}}', 'admin', '2020-09-21 14:00:05', 'admin', '2020-09-21 14:00:14'); - --- ---------------------------- --- Records of experiment_templates --- ---------------------------- -INSERT INTO `experiment_template` (`id`, `experimentTemplate_name`, `experimentTemplate_spec`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES -('experimentTemplate_1599498007985_0013', 'tf-mnist', '{\"name\": \"tf-mnist\", \"author\": \"author\", \"parameters\": [{\"name\": \"learning_rate\", \"value\": \"0.2\", \"required\": \"false\", \"description\": \"The parameter of train mnist.\"}, {\"name\": \"batch_size\", \"value\": \"150\", \"required\": \"false\", \"description\": \"The parameter of train mnist.\"}, {\"name\": \"experiment_name\", \"required\": \"true\", \"description\": \"experiment name, you should change it to avoid duplication with other experiment names.\"}, {\"name\": \"spec.Ps.replicas\", \"value\": \"1\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Ps.resourceMap.cpu\", \"value\": \"1\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Ps.resourceMap.memory\", \"value\": \"1000M\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Worker.replicas\", \"value\": \"1\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Worker.resourceMap.cpu\", \"value\": \"1\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Worker.resourceMap.memory\", \"value\": \"1000M\", \"required\": \"false\", \"description\": \"\"}], \"description\": \"This is a template to run tf-mnist.\", \"experimentSpec\": {\"meta\": {\"cmd\": \"python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate={{learning_rate}} --batch_size={{batch_size}}\", \"name\": \"{{experiment_name}}\", \"envVars\": {\"ENV1\": \"ENV1\"}, \"framework\": \"TensorFlow\", \"namespace\": \"default\"}, \"spec\": {\"Ps\": {\"replicas\": 1, \"resources\": \"cpu=1,memory=1000M\", \"resourceMap\": {\"cpu\": \"1\", \"memory\": \"1000M\"}}, \"Worker\": {\"replicas\": 1, \"resources\": \"cpu=1,memory=1000M\", \"resourceMap\": {\"cpu\": \"1\", \"memory\": \"1000M\"}}}, \"environment\": {\"image\": \"apache/submarine:tf-mnist-with-summaries-1.0\"}}}', NULL, '2020-09-10 16:31:32', NULL, '2020-10-19 17:05:21'); - -INSERT INTO `experiment_template` (`id`, `experimentTemplate_name`, `experimentTemplate_spec`, `create_by`, `create_time`, `update_by`, `update_time`) VALUES('experimentTemplate_1606489231336_0014', 'pytorch-mnist', '{\"name\": \"pytorch-mnist\", \"author\": \"author\", \"parameters\": [{\"name\": \"experiment_name\", \"required\": \"true\", \"description\": \"experiment name\"}, {\"name\": \"spec.Master.replicas\", \"value\": \"1\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Master.resourceMap.cpu\", \"value\": \"1\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Master.resourceMap.memory\", \"value\": \"1024M\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Worker.replicas\", \"value\": \"1\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Worker.resourceMap.cpu\", \"value\": \"1\", \"required\": \"false\", \"description\": \"\"}, {\"name\": \"spec.Worker.resourceMap.memory\", \"value\": \"1024M\", \"required\": \"false\", \"description\": \"\"}], \"description\": \"This is a template to run pytorch-mnist\\n\", \"experimentSpec\": {\"meta\": {\"cmd\": \"python /var/mnist.py --backend gloo\", \"name\": \"{{experiment_name}}\", \"envVars\": {\"ENV_1\": \"ENV1\"}, \"framework\": \"PyTorch\", \"namespace\": \"default\"}, \"spec\": {\"Master\": {\"replicas\": 1, \"resources\": \"cpu=1,memory=1024M\", \"resourceMap\": {\"cpu\": \"1\", \"memory\": \"1024M\"}}, \"Worker\": {\"replicas\": 1, \"resources\": \"cpu=1,memory=1024M\", \"resourceMap\": {\"cpu\": \"1\", \"memory\": \"1024M\"}}}, \"environment\": {\"image\": \"apache/submarine:pytorch-dist-mnist-1.0\"}}}', NULL, '2020-11-29 17:56:10', NULL, '2020-11-29 17:56:10'); diff --git a/docs/database/submarine.sql b/docs/database/submarine.sql deleted file mode 100644 index 76dfc49..0000000 --- a/docs/database/submarine.sql +++ /dev/null @@ -1,281 +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. - --- ---------------------------- --- Table structure for sys_dict --- ---------------------------- -DROP TABLE IF EXISTS `sys_dict`; -CREATE TABLE `sys_dict` ( - `id` varchar(32) NOT NULL, - `dict_code` varchar(32) NOT NULL COMMENT 'dict code', - `dict_name` varchar(32) NOT NULL COMMENT 'dict name', - `description` varchar(255) default NULL COMMENT 'dict description', - `deleted` int(1) default 0 COMMENT 'delete status(0:normal, 1:already deleted)', - `type` int(1) default 0 COMMENT 'dict type (0:string,1:number)', - `create_by` varchar(32) default NULL COMMENT 'create user', - `create_time` datetime default NULL COMMENT 'create time', - `update_by` varchar(32) default NULL COMMENT 'last update user', - `update_time` datetime default NULL COMMENT 'last update time', - PRIMARY KEY (`id`), - UNIQUE KEY `UK_SYS_DICT_DICT_CODE` (`dict_code`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for sys_dict_item --- ---------------------------- -DROP TABLE IF EXISTS `sys_dict_item`; -CREATE TABLE `sys_dict_item` ( - `id` varchar(32) NOT NULL, - `item_code` varchar(32) NOT NULL COMMENT 'dict item code', - `item_name` varchar(32) NOT NULL COMMENT 'dict item name', - `dict_code` varchar(32) NOT NULL COMMENT 'dict code', - `description` varchar(255) default NULL COMMENT 'description', - `sort_order` int(3) default 0 COMMENT 'sort order', - `deleted` int(1) default 0 COMMENT 'delete status(0:normal,1:already deleted)', - `create_by` varchar(32) default NULL, - `create_time` datetime default NULL, - `update_by` varchar(32) default NULL, - `update_time` datetime default NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `UK_SYS_DICT_ITEM_CODE` (`item_code`)/*, - CONSTRAINT `FK_SYS_DICT_ITEM_DICT_CODE` FOREIGN KEY (`dict_code`) REFERENCES `sys_dict` (`dict_code`)*/ -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for system department --- ---------------------------- -DROP TABLE IF EXISTS `sys_department`; -CREATE TABLE `sys_department` ( - `id` varchar(32) NOT NULL COMMENT 'ID', - `dept_code` varchar(32) NOT NULL COMMENT 'department code', - `dept_name` varchar(64) NOT NULL COMMENT 'department name', - `parent_code` varchar(32) default NULL COMMENT 'parent dept code', - `sort_order` int(3) default 0 COMMENT 'sort order', - `description` varchar(255) COMMENT 'description', - `deleted` varchar(1) default 0 COMMENT 'delete status(0:normal,1:already deleted)', - `create_by` varchar(32) default NULL COMMENT 'create user', - `create_time` datetime default NULL COMMENT 'create time', - `update_by` varchar(32) default NULL COMMENT 'last update user', - `update_time` datetime default NULL COMMENT 'last update time', - PRIMARY KEY (`id`), - UNIQUE KEY `UK_DEPT_CODE` (`dept_code`)/*, - CONSTRAINT `FK_SYS_DEPT_PARENT_CODE` FOREIGN KEY (`parent_code`) REFERENCES `sys_department` (`dept_code`)*/ -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for sys_user --- ---------------------------- -DROP TABLE IF EXISTS `sys_user`; -CREATE TABLE `sys_user` ( - `id` varchar(32) NOT NULL COMMENT 'id', - `user_name` varchar(32) NOT NULL COMMENT 'login name', - `real_name` varchar(64) NOT NULL COMMENT 'real name', - `password` varchar(255) NOT NULL COMMENT 'password', - `avatar` varchar(255) default NULL COMMENT 'avatar', - `birthday` datetime default NULL COMMENT 'birthday', - `sex` varchar(32) default NULL COMMENT 'sex', - `email` varchar(32) default NULL COMMENT 'email', - `phone` varchar(32) default NULL COMMENT 'telphone', - `dept_code` varchar(32) default NULL COMMENT 'department code', - `role_code` varchar(32) default NULL COMMENT 'role code', - `status` varchar(32) default NULL COMMENT 'status', - `deleted` int(1) default 0 COMMENT 'deleted status(0:normal, 1:already deleted)', - `create_by` varchar(32) default NULL COMMENT 'create user', - `create_time` datetime default NULL COMMENT 'create time', - `update_by` varchar(32) default NULL COMMENT 'last update user', - `update_time` datetime default NULL COMMENT 'last update time', - PRIMARY KEY (`id`), - UNIQUE KEY `sys_user_name` (`user_name`)/*, - CONSTRAINT `FK_SYS_USER_DEPT_CODE` FOREIGN KEY (`dept_code`) REFERENCES `sys_department` (`dept_code`), - CONSTRAINT `FK_SYS_USER_SEX` FOREIGN KEY (`sex`) REFERENCES `sys_dict_item` (`item_code`), - CONSTRAINT `FK_SYS_USER_STATUS` FOREIGN KEY (`status`) REFERENCES `sys_dict_item` (`item_code`)*/ -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for sys_message --- ---------------------------- -DROP TABLE IF EXISTS `sys_message`; -CREATE TABLE `sys_message` ( - `id` varchar(32) NOT NULL COMMENT 'id', - `sender` varchar(32) default NULL COMMENT 'sender user', - `receiver` varchar(32) default NULL COMMENT 'receiver user', - `type` varchar(32) default NULL COMMENT 'dict_code:MESSAGE_TYPE', - `context` text COMMENT 'message context', - `status` int(1) default 0 COMMENT '0:unread, 1:read', - `create_by` varchar(32) default NULL COMMENT 'create user', - `create_time` datetime default NULL COMMENT 'create time', - `update_by` varchar(32) default NULL COMMENT 'last update user', - `update_time` datetime default NULL COMMENT 'last update time', - PRIMARY KEY (`id`)/*, - CONSTRAINT `FK_SYS_MSG_SENDER` FOREIGN KEY (`sender`) REFERENCES `sys_user` (`user_name`), - CONSTRAINT `FK_SYS_MSG_RECEIVER` FOREIGN KEY (`receiver`) REFERENCES `sys_user` (`user_name`), - CONSTRAINT `FK_SYS_MSG_TYPE` FOREIGN KEY (`type`) REFERENCES `sys_dict_item` (`item_code`)*/ -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for team --- ---------------------------- -DROP TABLE IF EXISTS `team`; -CREATE TABLE `team` ( - `id` varchar(32) NOT NULL, - `owner` varchar(100) NOT NULL COMMENT 'owner name', - `team_name` varchar(64) NOT NULL COMMENT 'team name', - `create_by` varchar(32) default NULL COMMENT 'create user', - `create_time` datetime default NULL COMMENT 'create time', - `update_by` varchar(32) default NULL COMMENT 'last update user', - `update_time` datetime default NULL COMMENT 'last update time', - PRIMARY KEY (`id`), - UNIQUE KEY `UK_TEAM_NAME` (`team_name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for team_member --- ---------------------------- -DROP TABLE IF EXISTS `team_member`; -CREATE TABLE `team_member` ( - `id` varchar(32) NOT NULL, - `team_id` varchar(32) NOT NULL COMMENT 'team id', - `team_name` varchar(64) NOT NULL COMMENT 'team name', - `member` varchar(100) NOT NULL COMMENT 'member name', - `inviter` int(1) default 0 COMMENT '0:inviter, 1:accept', - `create_by` varchar(32) default NULL, - `create_time` datetime default NULL, - `update_by` varchar(32) default NULL, - `update_time` datetime default NULL, - PRIMARY KEY (`id`)/*, - CONSTRAINT `FK_TEAM_MEMBER_USER` FOREIGN KEY (`member`) REFERENCES `sys_user` (`user_name`)*/ -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for project --- ---------------------------- -DROP TABLE IF EXISTS `project`; -CREATE TABLE `project` ( - `id` varchar(32) NOT NULL, - `name` varchar(100) NOT NULL COMMENT 'project name', - `visibility` varchar(32) default NULL COMMENT 'dict_code:PROJECT_VISIBILITY', - `permission` varchar(32) default NULL COMMENT 'dict_code:PROJECT_PERMISSION', - `type` varchar(32) default NULL COMMENT 'dict_code:PROJECT_TYPE', - `description` varchar(255) COMMENT 'description', - `user_name` varchar(32) NOT NULL COMMENT 'owner user id', - `team_name` varchar(32) default NULL COMMENT 'team name', - `tags` varchar(128) default NULL COMMENT 'Comma separated tag', - `star_num` int(8) default 0 COMMENT 'star number', - `like_num` int(8) default 0 COMMENT 'like number', - `message_num` int(8) default 0 COMMENT 'message number', - `create_by` varchar(32) default NULL COMMENT 'create user', - `create_time` datetime default NULL COMMENT 'create time', - `update_by` varchar(32) default NULL COMMENT 'last update user', - `update_time` datetime default NULL COMMENT 'last update time', - PRIMARY KEY (`id`)/*, - CONSTRAINT `FK_PROJECT_TYPE` FOREIGN KEY (`type`) REFERENCES `sys_dict_item` (`item_code`), - CONSTRAINT `FK_PROJECT_TEAM_NAME` FOREIGN KEY (`team_name`) REFERENCES `team` (`team_name`), - CONSTRAINT `FK_PROJECT_USER_NAME` FOREIGN KEY (`user_name`) REFERENCES `sys_user` (`user_name`)*/ -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for project_files --- ---------------------------- -DROP TABLE IF EXISTS `project_files`; -CREATE TABLE `project_files` ( - `id` varchar(32) NOT NULL, - `project_id` varchar(32) NOT NULL COMMENT 'project id', - `file_name` varchar(128) NOT NULL COMMENT '/path/.../file.suffix', - `file_content` text default NULL COMMENT 'file content', - `create_by` varchar(32) default NULL COMMENT 'create user', - `create_time` datetime default NULL COMMENT 'create time', - `update_by` varchar(32) default NULL COMMENT 'last update user', - `update_time` datetime default NULL COMMENT 'last update time', - PRIMARY KEY (`id`)/*, - CONSTRAINT `FK_PROJECT_FILES_PRJ_ID` FOREIGN KEY (`project_id`) REFERENCES `project` (`id`)*/ -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for jobs --- ---------------------------- -DROP TABLE IF EXISTS `job`; -CREATE TABLE `job` ( - `id` int NOT NULL AUTO_INCREMENT, - `job_id` varchar(64) default NULL COMMENT 'job id', - `job_name` varchar(64) NOT NULL COMMENT 'job name', - `job_type` varchar(64) NOT NULL COMMENT 'job type', - `job_namespace` varchar(32) default NULL COMMENT 'job namespace', - `job_status` varchar(32) default NULL COMMENT 'job status', - `job_final_status` varchar(32) default NULL COMMENT 'job final status', - `user_name` varchar(32) default NULL COMMENT 'user name', - `create_by` varchar(32) default NULL COMMENT 'create user', - `create_time` datetime default NULL COMMENT 'create time', - `update_by` varchar(32) default NULL COMMENT 'last update user', - `update_time` datetime default NULL COMMENT 'last update time', - PRIMARY KEY (`id`) - ) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for environment --- ---------------------------- -DROP TABLE IF EXISTS `environment`; -CREATE TABLE `environment` ( - `id` varchar(64) NOT NULL COMMENT 'Id of the Environment', - `environment_name` varchar(255) NOT NULL COMMENT 'Name of the Environment', - `environment_spec` text NOT NULL COMMENT 'Spec of the Environment', - `create_by` varchar(32) DEFAULT NULL COMMENT 'create user', - `create_time` datetime DEFAULT NULL COMMENT 'create time', - `update_by` varchar(32) DEFAULT NULL COMMENT 'last update user', - `update_time` datetime DEFAULT NULL COMMENT 'last update time', - PRIMARY KEY `id` (`id`), - UNIQUE KEY `environment_name` (`environment_name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for metric --- ---------------------------- -DROP TABLE IF EXISTS `metrics`; -CREATE TABLE `metrics` ( - `id` varchar(64) NOT NULL COMMENT 'Id of the Experiment', - `key` varchar(190) NOT NULL COMMENT 'Metric key: `String` (limit 190 characters). Part of *Primary Key* for ``metrics`` table.', - `value` float NOT NULL COMMENT 'Metric value: `Float`. Defined as *Non-null* in schema.', - `worker_index` varchar(32) NOT NULL COMMENT 'Metric worker_index: `String` (limit 32 characters). Part of *Primary Key* for\r\n ``metrics`` table.', - `timestamp` bigint(20) NOT NULL COMMENT 'Timestamp recorded for this metric entry: `BigInteger`. Part of *Primary Key* for ``metrics`` table.', - `step` bigint(11) NOT NULL COMMENT 'Step recorded for this metric entry: `BigInteger`.', - `is_nan` BOOLEAN NOT NULL COMMENT 'True if the value is in fact NaN.', - PRIMARY KEY (`id`, `key`, `timestamp`, `worker_index`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - --- ---------------------------- --- Table structure for param --- ---------------------------- -DROP TABLE IF EXISTS `params`; -CREATE TABLE `params` ( - `id` varchar(64) NOT NULL COMMENT 'Id of the Experiment', - `key` varchar(190) NOT NULL COMMENT '`String` (limit 190 characters). Part of *Primary Key* for ``params`` table.', - `value` varchar(32) NOT NULL COMMENT '`String` (limit 190 characters). Defined as *Non-null* in schema.', - `worker_index` varchar(32) NOT NULL COMMENT '`String` (limit 32 characters). Part of *Primary Key* for\r\n ``metrics`` table.', - PRIMARY KEY (`id`, `key`, `worker_index`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - --- ---------------------------- --- Table structure for experiment_templates --- ---------------------------- -DROP TABLE IF EXISTS `experiment_template`; -CREATE TABLE `experiment_template` ( - `id` varchar(64) NOT NULL, - `experimentTemplate_name` varchar(32) NOT NULL, - `experimentTemplate_spec` json DEFAULT NULL, - `create_by` varchar(32) DEFAULT NULL, - `create_time` datetime NOT NULL, - `update_by` varchar(32) DEFAULT NULL, - `update_time` datetime NOT NULL, - PRIMARY KEY `id` (`id`), - UNIQUE KEY `experimentTemplate_name` (`experimentTemplate_name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; diff --git a/docs/design/architecture-and-requirements.md b/docs/design/architecture-and-requirements.md deleted file mode 100644 index d41e879..0000000 --- a/docs/design/architecture-and-requirements.md +++ /dev/null @@ -1,323 +0,0 @@ - - -# Terminology - -| Term | Description | -| -------- | -------- | -| User | A single data-scientist/data-engineer. User has resource quota, credentials | -| Team | User belongs to one or more teams, teams have ACLs for artifacts sharing such as notebook content, model, etc. | -| Admin | Also called SRE, who manages user's quotas, credentials, team, and other components. | - - -# Background - -Everybody talks about machine learning today, and lots of companies are trying to leverage machine learning to push the business to the next level. Nowadays, as more and more developers, infrastructure software companies coming to this field, machine learning becomes more and more achievable. - -In the last decade, the software industry has built many open source tools for machine learning to solve the pain points: - -1. It was not easy to build machine learning algorithms manually, such as logistic regression, GBDT, and many other algorithms: - **Answer to that:** Industries have open sourced many algorithm libraries, tools, and even pre-trained models so that data scientists can directly reuse these building blocks to hook up to their data without knowing intricate details inside these algorithms and models. - -2. It was not easy to achieve "WYSIWYG, what you see is what you get" from IDEs: not easy to get output, visualization, troubleshooting experiences at the same place. - **Answer to that:** Notebooks concept was added to this picture, notebook brought the experiences of interactive coding, sharing, visualization, debugging under the same user interface. There're popular open-source notebooks like Apache Zeppelin/Jupyter. - -3. It was not easy to manage dependencies: ML applications can run on one machine is hard to deploy on another machine because it has lots of libraries dependencies. - **Answer to that:** Containerization becomes popular and a standard to packaging dependencies to make it easier to "build once, run anywhere". - -4. Fragmented tools, libraries were hard for ML engineers to learn. Experiences learned in one company are not naturally migratable to another company. - **Answer to that:** A few dominant open-source frameworks reduced the overhead of learning too many different frameworks, concepts. Data-scientist can learn a few libraries such as Tensorflow/PyTorch, and a few high-level wrappers like Keras will be able to create your machine learning application from other open-source building blocks. - -5. Similarly, models built by one library (such as libsvm) were hard to be integrated into machine learning pipeline since there's no standard format. - **Answer to that:** Industry has built successful open-source standard machine learning frameworks such as Tensorflow/PyTorch/Keras so their format can be easily shared across. And efforts to build an even more general model format such as ONNX. - -6. It was hard to build a data pipeline that flows/transform data from a raw data source to whatever required by ML applications. - **Answer to that:** Open source big data industry plays an important role in providing, simplify, unify processes and building blocks for data flows, transformations, etc. - -The machine learning industry is moving on the right track to solve major roadblocks. So what are the pain points now for companies which have machine learning needs? What can we help here? To answer this question, let's look at machine learning workflow first. - -## Machine Learning Workflows & Pain points - -``` -1) From different data sources such as edge, clickstream, logs, etc. - => Land to data lakes - -2) From data lake, data transformation: - => Data transformations: Cleanup, remove invalid rows/columns, - select columns, sampling, split train/test - data-set, join table, etc. - => Data prepared for training. - -3) From prepared data: - => Training, model hyper-parameter tuning, cross-validation, etc. - => Models saved to storage. - -4) From saved models: - => Model assurance, deployment, A/B testing, etc. - => Model deployed for online serving or offline scoring. -``` - -Typically data scientists responsible for item 2)-4), 1) typically handled by a different team (called Data Engineering team in many companies, some Data Engineering team also responsible for part of data transformation) - -### Pain \#1 Complex workflow/steps from raw data to model, different tools needed by different steps, hard to make changes to workflow, and not error-proof - -It is a complex workflow from raw data to usable models, after talking to many different data scientists, we have learned that a typical procedure to train a new model and push to production can take months to 1-2 years. - -It is also a wide skill set required by this workflow. For example, data transformation needs tools like Spark/Hive for large scale and tools like Pandas for a small scale. And model training needs to be switched between XGBoost, Tensorflow, Keras, PyTorch. Building a data pipeline requires Apache Airflow or Oozie. - -Yes, there are great, standardized open-source tools built for many of such purposes. But how about changes need to be made for a particular part of the data pipeline? How about adding a few columns to the training data for experiments? How about training models, and push models to validation, A/B testing before rolling to production? All these steps need jumping between different tools, UIs, and very hard to make changes, and it is not error-proof during these procedures. - -### Pain \#2 Dependencies of underlying resource management platform - -To make jobs/services required by a machine learning platform to be able to run, we need an underlying resource management platform. There're some choices of resource management platform, and they have distinct advantages and disadvantages. - -For example, there're many machine learning platform built on top of K8s. It is relatively easy to get a K8s from a cloud vendor, easy to orchestrate machine learning required services/daemons run on K8s. However, K8s doesn't offer good support jobs like Spark/Flink/Hive. So if your company has Spark/Flink/Hive running on YARN, there're gaps and a significant amount of work to move required jobs from YARN to K8s. Maintaining a separate K8s cluster is also overhead to Hadoop-based data infrastructure. - -Similarly, if your company's data pipelines are mostly built on top of cloud resources and SaaS offerings, asking you to install a separate YARN cluster to run a new machine learning platform doesn't make a lot of sense. - -### Pain \#3 Data scientist are forced to interact with lower-level platform components - -In addition to the above pain, we do see Data Scientists are forced to learn underlying platform knowledge to be able to build a real-world machine learning workflow. - -For most of the data scientists we talked with, they're experts of ML algorithms/libraries, feature engineering, etc. They're also most familiar with Python, R, and some of them understand Spark, Hive, etc. - -If they're asked to do interactions with lower-level components like fine-tuning a Spark job's performance; or troubleshooting job failed to launch because of resource constraints; or write a K8s/YARN job spec and mount volumes, set networks properly. They will scratch their heads and typically cannot perform these operations efficiently. - -### Pain \#4 Comply with data security/governance requirements - -TODO: Add more details. - -### Pain \#5 No good way to reduce routine ML code development - -After the data is prepared, the data scientist needs to do several routine tasks to build the ML pipeline. To get a sense of the existing the data set, it usually needs a split of the data set, the statistics of data set. These tasks have a common duplicate part of code, which reduces the efficiency of data scientists. - -An abstraction layer/framework to help the developer to boost ML pipeline development could be valuable. It's better than the developer only needs to fill callback function to focus on their key logic. - -# Submarine - -## Overview - -### A little bit history - -Initially, Submarine is built to solve problems of running deep learning jobs like Tensorflow/PyTorch on Apache Hadoop YARN, allows admin to monitor launched deep learning jobs, and manage generated models. - -It was part of YARN initially, and code resides under `hadoop-yarn-applications`. Later, the community decided to convert it to be a subproject within Hadoop (Sibling project of YARN, HDFS, etc.) because we want to support other resource management platforms like K8s. And finally, we're reconsidering Submarine's charter, and the Hadoop community voted that it is the time to moved Submarine to a separate Apache TLP. - -### Why Submarine? - -`ONE PLATFORM` - -Submarine is the ONE PLATFORM to allow Data Scientists to create end-to-end machine learning workflow. `ONE PLATFORM` means it supports Data Scientists and data engineers to finish their jobs on the same platform without frequently switching their toolsets. From dataset exploring data pipeline creation, model training, and tuning, and push model to production. All these steps can be completed within the `ONE PLATFORM`. - -`Resource Management Independent` - -It is also designed to be resource management independent, no matter if you have Apache Hadoop YARN, K8s, or just a container service, you will be able to run Submarine on top it. - - -## Requirements and non-requirements - -### Notebook - -1) Users should be able to create, edit, delete a notebook. (P0) -2) Notebooks can be persisted to storage and can be recovered if failure happens. (P0) -3) Users can trace back to history versions of a notebook. (P1) -4) Notebooks can be shared with different users. (P1) -5) Users can define a list of parameters of a notebook (looks like parameters of the notebook's main function) to allow executing a notebook like a job. (P1) -6) Different users can collaborate on the same notebook at the same time. (P2) - -A running notebook instance is called notebook session (or session for short). - -### Experiment - -Experiments of Submarine is an offline task. It could be a shell command, a Python command, a Spark job, a SQL query, or even a workflow. - -The primary purposes of experiments under Submarine's context is to do training tasks, offline scoring, etc. However, experiment can be generalized to do other tasks as well. - -Major requirement of experiment: - -1) Experiments can be submitted from UI/CLI/SDK. -2) Experiments can be monitored/managed from UI/CLI/SDK. -3) Experiments should not bind to one resource management platform (K8s/YARN). - -#### Type of experiments - -![](../assets/design/experiments.png) - -There're two types of experiments: -`Adhoc experiments`: which includes a Python/R/notebook, or even an adhoc Tensorflow/PyTorch task, etc. - -`Predefined experiment library`: This is specialized experiments, which including developed libraries such as CTR, BERT, etc. Users are only required to specify a few parameters such as input, output, hyper parameters, etc. Instead of worrying about where's training script/dependencies located. - -#### Adhoc experiment - -Requirements: - -- Allow run adhoc scripts. -- Allow model engineer, data scientist to run Tensorflow/Pytorch programs on YARN/K8s/Container-cloud. -- Allow jobs easy access data/models in HDFS/s3, etc. -- Support run distributed Tensorflow/Pytorch jobs with simple configs. -- Support run user-specified Docker images. -- Support specify GPU and other resources. - -#### Predefined experiment library - -Here's an example of predefined experiment library to train deepfm model: - -``` -{ - "input": { - "train_data": ["hdfs:///user/submarine/data/tr.libsvm"], - "valid_data": ["hdfs:///user/submarine/data/va.libsvm"], - "test_data": ["hdfs:///user/submarine/data/te.libsvm"], - "type": "libsvm" - }, - "output": { - "save_model_dir": "hdfs:///user/submarine/deepfm", - "metric": "auc" - }, - "training": { - "batch_size" : 512, - "field_size": 39, - "num_epochs": 3, - "feature_size": 117581, - ... - } -} -``` - -Predefined experiment libraries can be shared across users on the same platform, users can also add new or modified predefined experiment library via UI/REST API. - -We will also model AutoML, auto hyper-parameter tuning to predefined experiment library. - -#### Pipeline - -Pipeline is a special kind of experiment: - -- A pipeline is a DAG of experiments. -- Can be also treated as a special kind of experiment. -- Users can submit/terminate a pipeline. -- Pipeline can be created/submitted via UI/API. - -### Environment Profiles - -Environment profiles (or environment for short) defines a set of libraries and when Docker is being used, a Docker image in order to run an experiment or a notebook. - -Docker or VM image (such as AMI: Amazon Machine Images) defines the base layer of the environment. - -On top of that, users can define a set of libraries (such as Python/R) to install. - -Users can save different environment configs which can be also shared across the platform. Environment profiles can be used to run a notebook (e.g. by choosing different kernel from Jupyter), or an experiment. Predefined experiment library includes what environment to use so users don't have to choose which environment to use. - -Environments can be added/listed/deleted/selected through CLI/SDK. - -### Model - -#### Model management - -- Model artifacts are generated by experiments or notebook. -- A model consists of artifacts from one or multiple files. -- Users can choose to save, tag, version a produced model. -- Once The Model is saved, Users can do the online model serving or offline scoring of the model. - -#### Model serving - -After model saved, users can specify a serving script, a model and create a web service to serve the model. - -We call the web service to "endpoint". Users can manage (add/stop) model serving endpoints via CLI/API/UI. - -### Metrics for training job and model - -Submarine-SDK provides tracking/metrics APIs, which allows developers to add tracking/metrics and view tracking/metrics from Submarine Workbench UI. - -### Deployment - -Submarine Services (See architecture overview below) should be deployed easily on-prem / on-cloud. Since there're more and more public cloud offering for compute/storage management on cloud, we need to support deploy Submarine compute-related workloads (such as notebook session, experiments, etc.) to cloud-managed clusters. - -This also include Submarine may need to take input parameters from customers and create/manage clusters if needed. It is also a common requirement to use hybrid of on-prem/on-cloud clusters. - -### Security / Access Control / User Management / Quota Management - -There're 4 kinds of objects need access-control: - -- Assets belong to Submarine system, which includes notebook, experiments and results, models, predefined experiment libraries, environment profiles. -- Data security. (Who owns what data, and what data can be accessed by each users). -- User credentials. (Such as LDAP). -- Other security, such as Git repo access, etc. - -For the data security / user credentials / other security, it will be delegated to 3rd libraries such as Apache Ranger, IAM roles, etc. - -Assets belong to Submarine system will be handled by Submarine itself. - -Here're operations which Submarine admin can do for users / teams which can be used to access Submarine's assets. - -**Operations for admins** - -- Admin uses "User Management System" to onboard new users, upload user credentials, assign resource quotas, etc. -- Admins can create new users, new teams, update user/team mappings. Or remove users/teams. -- Admin can set resource quotas (if different from system default), permissions, upload/update necessary credentials (like Kerberos keytab) of a user. -- A DE/DS can also be an admin if the DE/DS has admin access. (Like a privileged user). This will be useful when a cluster is exclusively shared by a user or only shared by a small team. -- `Resource Quota Management System` helps admin to manage resources quotas of teams, organizations. Resources can be machine resources like CPU/Memory/Disk, etc. It can also include non-machine resources like $$-based budgets. - -### Dataset - -There's also need to tag dataset which will be used for training and shared across the platform by different users. - -Like mentioned above, access to the actual data will be handled by 3rd party system like Apache Ranger / Hive Metastore which is out of the Submarine's scope. - -## Architecture Overview - -### Architecture Diagram - -``` - +-----------------------------------------------------------------+ - | Submarine UI / CLI / REST API / SDK | - | Mini-Submarine | - +-----------------------------------------------------------------+ - - +--------------------Submarine Server-----------------------------+ - | +---------+ +---------+ +----------+ +----------+ +------------+| - | |Data set | |Notebooks| |Experiment| |Models | |Servings || - | +---------+ +---------+ +----------+ +----------+ +------------+| - |-----------------------------------------------------------------| - | | - | +-----------------+ +-----------------+ +---------------------+ | - | |Experiment | |Compute Resource | |Other Management | | - | |Manager | | Manager | |Services | | - | +-----------------+ +-----------------+ +---------------------+ | - | Spark, template YARN/K8s/Docker | - | TF, PyTorch, pipeline | - | | - + +-----------------+ + - | |Submarine Meta | | - | | Store | | - | +-----------------+ | - | | - +-----------------------------------------------------------------+ - - (You can use http://stable.ascii-flow.appspot.com/#Draw - to draw such diagrams) -``` - -`Compute Resource Manager` Helps to manage compute resources on-prem/on-cloud, this module can also handle cluster creation / management, etc. - -`Experiment Manager` Work with "Compute Resource Manager" to submit different kinds of workloads such as (distributed) Tensorflow / Pytorch, etc. - -`Submarine SDK` provides Java/Python/REST API to allow DS or other engineers to integrate into Submarine services. It also includes a `mini-submarine` component that launches Submarine components from a single Docker container (or a VM image). - -Details of Submarine Server design can be found at [submarine-server-design](./submarine-server/architecture.md). - -# References - - diff --git a/docs/design/environments-implementation.md b/docs/design/environments-implementation.md deleted file mode 100644 index 14e51c8..0000000 --- a/docs/design/environments-implementation.md +++ /dev/null @@ -1,194 +0,0 @@ - - -# Overview - -Environment profiles (or environment for short) defines a set of libraries and when Docker is being used, a Docker image in order to run an experiment or a notebook. - -Docker and/or VM-image (such as, VirtualBox/VMWare images, Amazon Machine Images - AMI, Or custom image of Azure VM) defines the base layer of the environment. Please note that VM-image is different from VM instance type, - -On top of that, users can define a set of libraries (such as Python/R) to install, we call it kernel. - -**Example of Environment** - -``` - - +-------------------+ - |+-----------------+| - || Python=3.7 || - || Tensorflow=2.0 || - |+---Exp Dependency+| - |+-----------------+| - ||OS=Ubuntu16.04 || - ||CUDA=10.2 || - ||GPU_Driver=375.. || - |+---Base Library--+| - +-------------------+ -``` - -As you can see, There're base libraries, such as what OS, CUDA version, GPU driver, etc. They can be achieved by specifying a VM-image / Docker image. - -On top of that, user can bring their dependencies, such as different version of Python, Tensorflow, Pandas, etc. - -**How users use environment?** - -Users can save different environment configs which can be also shared across the platform. Environment profiles can be used to run a notebook (e.g. by choosing different kernel from Jupyter), or an experiment. Predefined experiment library includes what environment to use so users don't have to choose which environment to use. - -``` - - +-------------------+ - |+-----------------+| +------------+ - || Python=3.7 || |User1 | - || Tensorflow=2.0 || +------------+ - |+---Kernel -------+| +------------+ - |+-----------------+|<----+ |User2 | - ||OS=Ubuntu16.04 || + +------------+ - ||CUDA=10.2 || | +------------+ - ||GPU_Driver=375.. || | |User3 | - |+---Base Library--+| | +------------+ - +-----Default-Env---+ | - | - | - +-------------------+ | - |+-----------------+| | - || Python=3.3 || | - || Tensorflow=2.0 || | - |+---kernel--------+| | - |+-----------------+| | - ||OS=Ubuntu16.04 || | - ||CUDA=10.3 ||<----+ - ||GPU_Driver=375.. || - |+---Base Library--+| - +-----My-Customized-+ -``` - -There're two environments in the above graph, "Default-Env" and "My-Customized", which can have different combinations of libraries for different experiments/notebooks. Users can choose different environments for different experiments as they want. - -Environments can be added/listed/deleted/selected through CLI/SDK/UI. - -# Implementation - -## Environment API definition - -Let look at what object definition looks like to define an environment, API of environment looks like: - -``` - name: "my_submarine_env", - vm-image: "...", - docker-image: "...", - kernel: - - description: "this is the most common env used by team ABC" -``` - -- `vm-image` is optional if we don't need to launch new VM (like running a training job in a cloud-remote machine). -- `docker-image` is required -- `kernel` could be optional if kernel is already included by vm-image or docker-image. -- `name` of the environment should be unique in the system, so user can reference it when create a new experiment/notebook. - -## VM-image and Docker-image - -Docker-image and VM image should be prepared by system admin / SREs, it is hard for Data-Scientists to write an error-proof Dockerfile, and push/manage Docker images. This is one of the reason we hide Docker-image inside "environment", we will encourage users to customize their kernels if needed, but don't have to touch Dockerfile and build/push/manage new Docker images. - -As a project, we will document what's the best practice and example of Dockerfiles. - -Dockerfile should include proper `ENTRYPOINT` definition which pointed to our default script, so no matter it is notebook, or an experiment, we will setup kernel (see below) and other environment variables properly. - -## Kernel Implementation - -After investigating different alternatives (such as pipenv, venv, etc.), we decided to use Conda environment which nicely replaces Python virtual env, pip, and can also support other languages. More details can be found at: https://medium.com/@krishnaregmi/pipenv-vs-virtualenv-vs-conda-environment-3dde3f6869ed - -When once Conda, users can easily add, remove dependency of a Conda environment. User can also easily export environment to yaml file. - -The yaml file of Conda environment by using `conda env export` looks like: - -``` -name: base -channels: - - defaults -dependencies: - - _ipyw_jlab_nb_ext_conf=0.1.0=py37_0 - - alabaster=0.7.12=py37_0 - - anaconda=2020.02=py37_0 - - anaconda-client=1.7.2=py37_0 - - anaconda-navigator=1.9.12=py37_0 - - anaconda-project=0.8.4=py_0 - - applaunchservices=0.2.1=py_0 -``` - -Including Conda kernel, the environment object may look like: - -``` -name: "my_submarine_env", - vm-image: "...", - docker-image: "...", - kernel: - name: team_default_python_3.7 - channels: - - defaults - dependencies: - - _ipyw_jlab_nb_ext_conf=0.1.0=py37_0 - - alabaster=0.7.12=py37_0 - - anaconda=2020.02=py37_0 - - anaconda-client=1.7.2=py37_0 - - anaconda-navigator=1.9.12=py37_0 -``` - -When launch a new experiment / notebook session using the `my_submarine_env`, submarine server will use defined Docker image, and Conda kernel to launch of container. - -## Storage of Environment - -Environment of Submarine is just a simple text file, so it will be persisted in Submarine metastore, which is ideally a Database. - -Docker image is stored inside a regular Docker registry, which will be handled outside of the system. - -Conda dependencies are stored in Conda channel (where referenced packages are stored), which will be handled/setuped separately. (Popular conda channels are `default` and `conda-forge`) - -For more detailed discussion about storage-related implementations, please refer to [storage-implementation](./storage-implementation,md). - -## How to implement to make user can easily use Submarine environments? - -We like simplicities, and we don't want to leak complexities of implementations to the users. To make it happen, we have to do some works to hide complexities. - -There're two primary uses of environments: experiments and notebook, for both of them, users should not do works like explictily call `conda active $env_name` to active environments. To make it happen, what we can do is to include following parts in Dockerfile - -``` -FROM ubuntu:18.04 - - - - - - -# This is just a sample of Dockerfile, users can do more customizations if needed -ENTRYPOINT ["/submarine-bootstrap.sh"] -``` - -When Submarine Server (this is implementation detail of Submarine Server, user will not see it at all) launch an experiment, or notebook, it will invoke following `docker run` command (or any other equvilant like using K8s spec): - -``` -docker run --kernel -- .... python train.py --batch_size 5 (and other parameters) -``` - -Similarily, to launch a notebook: - -``` -docker run --kernel -- .... jupyter -``` - -The `submarine-bootstrap.sh` is part of Submarine repo, and will handle `--kernel` argument which will invoke `conda active $kernel_name` before anything else. (Like run the training job). - - - diff --git a/docs/design/experiment-implementation.md b/docs/design/experiment-implementation.md deleted file mode 100644 index ccc37a5..0000000 --- a/docs/design/experiment-implementation.md +++ /dev/null @@ -1,500 +0,0 @@ - - -# Experiment Implementations - -## Overview - -This document talks about implementation of experiment, flows and design considerations. - -Experiment consists of following components, also interact with other Submarine or 3rd-party components, showing below: - -``` - - - +---------------------------------------+ - +----------+ | Experiment Tasks | - |Run | | | - |Configs | | +----------------------------------+ | - +----------+ | | Experiment Runnable Code | | +-----------------+ - +----------+ | | | | |Output Artifacts | - |Input Data| | | (Like train-job.py) | | |(Models, etc.) | - | | | +----------------------------------+ | +-----------------+ - | | | +----------------------------------+ | - +----------+ | | Experiment Deps (Like Python) | | +-------------+ - | +----------------------------------+ | |Logs/Metrics | - | +----------------------------------+ | | | - | | OS, Base Libaries (Like CUDA) | | +-------------+ - | +----------------------------------+ | - +---------------------------------------+ - ^ - | (Launch Task with resources) - + - +---------------------------------+ - |Resource Manager (K8s/YARN/Cloud)| - +---------------------------------+ -``` - -As showing in the above diagram, Submarine experiment consists of the following items: - -- On the left side, there're input data and run configs. -- In the middle box, they're experiment tasks, it could be multiple tasks when we run distributed training, pipeline, etc. - - There're main runnable code, such as `train.py` for the training main entry point. - - The two boxes below: experiment dependencies and OS/Base libraries we called `Submarine Environment Profile` or `Environment` for short. Which defined what is the basic libraries to run the main experiment code. - - Experiment tasks are launched by Resource Manager, such as K8s/YARN/Cloud or just launched locally. There're resources constraints for each experiment tasks. (e.g. how much memory, cores, GPU, disk etc. can be used by tasks). -- On the right side, they're artifacts generated by experiments: - - Output artifacts: Which are main output of the experiment, it could be model(s), or output data when we do batch prediction. - - Logs/Metrics for further troubleshooting or understanding of experiment's quality. - -For the rest of the design doc, we will talk about how we handle environment, code, and manage output/logs, etc. - -## API of Experiment - -This is not a full definition of experiment, for more details, please reference to experiment API. - -Here's just an example of experiment object which help developer to understand what included in an experiment. - -```yaml -experiment: - name: "abc", - type: "script", - environment: "team-default-ml-env" - code: - sync_mode: s3 - url: "s3://bucket/training-job.tar.gz" - parameter: > python training.py --iteration 10 - --input=s3://bucket/input output=s3://bucket/output - resource_constraint: - res="mem=20gb, vcore=3, gpu=2" - timeout: "30 mins" -``` - -This defined a "script" experiment, which has a name "abc", the name can be used to track the experiment. There's environment "team-default-ml-env" defined to make sure dependencies of the job can be downloaded properly before executing the job. - -`code` defined where the experiment code will be downloaded, we will support a couple of sync_mode like s3 (or abfs/hdfs), git, etc. - -Different types of experiments will have different specs, for example distributed Tensorflow spec may look like: - -```yaml -experiment: - name: "abc-distributed-tf", - type: "distributed-tf", - ps: - environment: "team-default-ml-cpu" - resource_constraint: - res="mem=20gb, vcore=3, gpu=0" - worker: - environment: "team-default-ml-gpu" - resource_constraint: - res="mem=20gb, vcore=3, gpu=2" - code: - sync_mode: git - url: "https://foo.com/training-job.git" - parameter: > python /code/training-job/training.py --iteration 10 - --input=s3://bucket/input output=s3://bucket/output - tensorboard: enabled - timeout: "30 mins" -``` - -Since we have different Docker image, one is using GPU and one is not using GPU, we can specify different environment and resource constraint. - -## Manage environments for experiment - -Please refer to [environment-implementation.md](./environments-implementation.md) for more details - -## Manage storages for experiment - -There're different types of storage, such as logs, metrics, dependencies (environments). For more details. Please refer to [storage-implementations](./storage-implementation.md) for more details. This also includes how to manage code for experiment code. - -## Manage Pre-defined experiment libraries - -## Flow: Submit an experiment - -### Submit via SDK Flows. - -To better understand experiment implementation, It will be good to understand what is the steps of experiment submission. - -*Please note that below code is just pseudo code, not official APIs.* - -### Specify what environment to use - -Before submit the environment, you have to choose what environment to choose. Environment defines dependencies, etc. of an experiment or a notebook. might looks like below: - -``` -conda_environment = -""" - name: conda-env - channels: - - defaults - dependencies: - - asn1crypto=1.3.0=py37_0 - - blas=1.0=mkl - - ca-certificates=2020.1.1=0 - - certifi=2020.4.5.1=py37_0 - - cffi=1.14.0=py37hb5b8e2f_0 - - chardet=3.0.4=py37_1003 - prefix: /opt/anaconda3/envs/conda-env -""" - -# This environment can be different from notebook's own environment -environment = create_environment { - DockerImage = "ubuntu:16", - CondaEnvironment = conda_environment -} -``` - -To better understand how environment works, please refer to [environment-implementation](./environments-implementation.md). - -### Create experiment, specify where's training code located, and parameters. - -For ad-hoc experiment (code located at S3), assume training code is part of the `training-job.tar.gz` and main class is `train.py`. When the job is launched, whatever specified in the localize_artifacts will be downloaded. - -``` -experiment = create_experiment { - Environment = environment, - ExperimentConfig = { - type = "adhoc", - localize_artifacts = [ - "s3://bucket/training-job.tar.gz" - ], - name = "abc", - parameter = "python training.py --iteration 10 --input="s3://bucket/input output="s3://bucket/output", - } -} -experiment.run() -experiment.wait_for_finish(print_output=True) -``` - -##### Run notebook file in offline mode - -It is possible we want to run a notebook file in offline mode, to do that, here's code to use to run a notebook code - -``` -experiment = create_experiment { - Environment = environment, - ExperimentConfig = { - type = "adhoc", - localize_artifacts = [ - "s3://bucket/folder/notebook-123.ipynb" - ], - name = "abc", - parameter = "runipy training.ipynb --iteration 10 --input="s3://bucket/input output="s3://bucket/output", - } -} -experiment.run() -experiment.wait_for_finish(print_output=True) -``` - -##### Run pre-defined experiment library - -``` -experiment = create_experiment { - # Here you can use default environment of library - Environment = environment, - ExperimentConfig = { - type = "template", - name = "abc", - # A unique name of template - template = "deepfm_ctr", - # yaml file defined what is the parameters need to be specified. - parameter = { - Input: "S3://.../input", - Output: "S3://.../output" - Training: { - "batch_size": 512, - "l2_reg": 0.01, - ... - } - } - } -} -experiment.run() -experiment.wait_for_finish(print_output=True) -``` - -## Summarize: Experiment v.s. Notebook session - -There's a common misunderstanding about what is the differences between running experiment v.s. running task from a notebook session. We will talk about differences and commonalities: - -**Differences** - -| | Experiment | Notebook Session | -| --------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -| Run mode | Offline | Interactive | -| Output Artifacts (a.k.a model) | Persisted in a shared storage (like S3/NFS) | Local in the notebook session container, could be ephemeral | -| Run history (meta, logs, metrics) | Meta/logs/metrics can be traced from experiment UI (or corresponding API) | No run history can be traced from Submarine UI/API. Can view the current running paragraph's log/metrics, etc. | -| What to run? | Code from Docker image or shared storage (like Tarball on S3, Github, etc.) | Local in the notebook's paragraph | - -**Commonalities** - -| | Experiment & Notebook Session | -| ----------- | ------------------------------------------------- | -| Environment | They can share the same Environment configuration | - -## Experiment-related modules inside Submarine-server - -(Please refer to [architecture of submarine server](./submarine-server/architecture.md) for more details) - -### Experiment Manager - -The experiment manager receives the experiment requests, persisting the experiment metas in a database(e.g. MySQL), will invoke subsequence modules to submit and monitor the experiment's execution. - -### Compute Cluster Manager - -After experiment accepted by experiment manager, based on which cluster the experiment intended to run (like mentioned in the previous sections, Submarine supports to manage multiple compute clusters), compute cluster manager will returns credentials to access the compute cluster. It will also be responsible to create a new compute cluster if needed. - -For most of the on-prem use cases, there's only one cluster involved, for such cases, ComputeClusterManager returns credentials to access local cluster if needed. - -### Experiment Submitter - -Experiment Submitter handles different kinds of experiments to run (e.g. ad-hoc script, distributed TF, MPI, pre-defined templates, Pipeline, AutoML, etc.). And such experiments can be managed by different resource management systems (e.g. K8s, YARN, container cloud, etc.) - -To meet the requirements to support variant kinds of experiments and resource managers, we choose to use plug-in modules to support different submitters (which requires jars to submarine-server’s classpath). - -To avoid jars and dependencies of plugins break the submarine-server, the plug-ins manager, or both. To solve this issue, we can instantiate submitter plug-ins using a classloader that is different from the system classloader. - -#### Submitter Plug-ins - -Each plug-in uses a separate module under the server-submitter module. As the default implements, we provide for YARN and K8s. For YARN cluster, we provide the submitter-yarn and submitter-yarnservice plug-ins. The submitter-yarn plug-in used the [TonY](https://github.com/linkedin/TonY) as the runtime to run the training job, and the submitter-yarnservice plug-in direct use the [YARN Service](https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/yarn-service/Overview.html) which supports Hadoop v3.1 above. - -The submitter-k8s plug-in is used to submit the job to Kubernetes cluster and use the [operator](https://kubernetes.io/docs/concepts/extend-kubernetes/operator/) as the runtime. The submitter-k8s plug-in implements the operation of CRD object and provides the java interface. In the beginning, we use the [tf-operator](https://github.com/kubeflow/tf-operator) for the TensorFlow. - -If Submarine want to support the other resource management system in the future, such as submarine-docker-cluster (submarine uses the Raft algorithm to create a docker cluster on the docker runtime environment on multiple servers, providing the most lightweight resource scheduling system for small-scale users). We should create a new plug-in module named submitter-docker under the server-submitter module. - -### Experiment Monitor - -The monitor tracks the experiment life cycle and records the main events and key info in runtime. As the experiment run progresses, the metrics are needed for evaluation of the ongoing success or failure of the execution progress. Due to adapt the different cluster resource management system, so we need a generic metric info structure and each submitter plug-in should inherit and complete it by itself. - -### Invoke flows of experiment-related components - -``` - +-----------------+ +----------------+ +----------------+ +-----------------+ - |Experiments | |Compute Cluster | |Experiment | | Experiment | - |Mgr | |Mgr | |Submitter | | Monitor | - +-----------------+ +----------------+ +----------------+ +-----------------+ - + + + + - User | | | | - Submit |+------------------------------------->+ + - Xperiment| Use submitter.validate(spec) | | - | to validate spec and create | | - | experiment object (state- | | - | machine). | | - | | | - | The experiment manager will | | - | persist meta-data to Database| | - | | | | - | | + + - |+-----------------> + | | - | Submit Experiments| | | - | To ComputeCluster| | | - | Mgr, get existing|+---------------->| | - | cluster, or | Use Submitter | | - | create a new one.| to submit |+---------------> | - | | Different kinds | Once job is | - | | of experiments | submitted, use |+----+ - | | to k8s/yarn, etc| monitor to get | | - | | | status updates | | - | | | | | Monitor - | | | | | Xperiment - | | | | | status - | | | | | - |<--------------------------------------------------------+| | - | | | | | - | Update Status back to Experiment | | - | | Manager | |<----+ - | | | | - | | | | - | | | | - v v v v -``` - -TODO: add more details about template, environment, etc. - -## Common modules of experiment/notebook-session/model-serving - -Experiment/notebook-session/model-serving share a lot of commonalities, all of them are: - -- Some workloads running on YARN/K8s. -- Need persist meta data to DB. -- Need monitor task/service running status from resource management system. - -We need to make their implementation are loose-coupled, but at the same time, share some building blocks as much as possible (e.g. submit PodSpecs to K8s, monitor status, get logs, etc.) to reduce duplications. - -## Support Predefined-experiment-templates - -Predefined Experiment Template is just a way to save data-scientists time to repeatedly entering parameters which is not error-proof and user experience is also bad. - -### Predefined-experiment-template API to run experiment - -Predefined experiment template consists a list of parameters, each of the parameter has 4 properties: - -| Key | Required | Default Value | Description | -| --------------- | ---------- | ------------------------------------------------------------ | ---------------------------- | -| Name of the key | true/false | When required = false, a default value can be provided by the template | Description of the parameter | - -For the example of deepfm CTR training experiment mentioned in the [architecture-and-requirements.md](./architecture-and-requirements.md) - -``` -{ - "input": { - "train_data": ["hdfs:///user/submarine/data/tr.libsvm"], - "valid_data": ["hdfs:///user/submarine/data/va.libsvm"], - "test_data": ["hdfs:///user/submarine/data/te.libsvm"], - "type": "libsvm" - }, - "output": { - "save_model_dir": "hdfs:///user/submarine/deepfm", - "metric": "auc" - }, - "training": { - "batch_size" : 512, - "field_size": 39, - "num_epochs": 3, - "feature_size": 117581, - ... - } -} -``` - -The template will be (in yaml format): - -```yaml -# deepfm.ctr template -name: deepfm.ctr -author: -description: > - This is a template to run CTR training using deepfm algorithm, by default it runs - single node TF job, you can also overwrite training parameters to use distributed - training. - -parameters: - - name: input.train_data - required: true - description: > - train data is expected in SVM format, and can be stored in HDFS/S3 - ... - - name: training.batch_size - required: false - default: 32 - description: This is batch size of training -``` - -The batch format can be used in UI/API. - -### Handle Predefined-experiment-template from server side - -Please note that, the conversion of predefined-experiment-template will be always handled by server. The invoke flow looks like: - -``` - - +------------Submarine Server -----------------------+ - +--------------+ | +-----------------+ | - |Client |+------->|Experimment Mgr | | - | | | | | | - +--------------+ | +-----------------+ | - | + | - Submit | +-------v---------+ Get Experiment Template | - Template | |Experiment |<-----+From pre-registered | - Parameters | |Template Registry| Templates | - to Submarine | +-------+---------+ | - Server | | | - | +-------v---------+ +-----------------+ | - | |Deepfm CTR Templ-| |Experiment- | | - | |ate Handler +------>|Tensorflow | | - | +-----------------+ +--------+--------+ | - | | | - | | | - | +--------v--------+ | - | |Experiment | | - | |Submitter | | - | +--------+--------+ | - | | | - | | | - | +--------v--------+ | - | | | | - | | ...... | | - | +-----------------+ | - | | - +----------------------------------------------------+ -``` - -Basically, from Client, it submitted template parameters to Submarine Server, inside submarine server, it finds the corresponding template handler based on the name. And the template handler converts input parameters to an actual experiment, such as a distributed TF experiment. After that, it goes the similar route to validate experiment spec, compute cluster manager, etc. to get the experiment submitted and monitored. - -Predefined-experiment-template is able to create any kind of experiment, it could be a pipeline: - -``` - - +-----------------+ +------------------+ - |Template XYZ | | XYZ Template | - | |+---------------> | Handler | - +-----------------+ +------------------+ - + - | - | - | - | - v - +--------------------+ +------------------+ - | +-----------------+| | Predefined | - | | Split Train/ ||<----+| Pipeline | - | | Test data || +------------------+ - | +-------+---------+| - | | | - | +-------v---------+| - | | Spark Job ETL || - | | || - | +-------+---------+| - | | | - | +-------v---------+| - | | Train using || - | | XGBoost || - | +-------+---------+| - | | | - | +-------v---------+| - | | Validate Train || - | | Results || - | +-----------------+| - | | - +--------------------+ -``` - -Template can be also chained to reuse other template handlers - -``` - - +-----------------+ +------------------+ - |Template XYZ | | XYZ Template | - | |+---------------> | Handler | - +-----------------+ +------------------+ - + - | - v - +------------------+ +------------------+ - |Distributed | | ABC Template | - |TF Experiment |<----+| Handler | - +------------------+ +------------------+ -``` - -Template Handler is a callable class inside Submarine Server with a standard interface defined like. - -```java -interface ExperimentTemplateHandler { - ExperimentSpec createExperiment(TemplatedExperimentParameters param) -} -``` - -We should avoid users to do coding when they want to add new template, we should have several standard template handler to deal with most of the template handling. - -Experiment templates can be registered/updated/deleted via Submarine Server's REST API, which need to be discussed separately in the doc. (TODO) diff --git a/docs/design/implementation-notes.md b/docs/design/implementation-notes.md deleted file mode 100644 index 12417eb..0000000 --- a/docs/design/implementation-notes.md +++ /dev/null @@ -1,31 +0,0 @@ - - -# Submarine Implementation Notes - -Before digging into details of implementations, you should read [architecture-and-requirements](./architecture-and-requirements.md) first to understand overall requirements and architecture. - -Here're sub topics of Submarine implementations: - -- [Submarine Storage](./storage-implementation.md): How to store metadata, logs, metrics, etc. of Submarine. -- [Submarine Environment](./environments-implementation.md): How environments created, managed, stored in Submarine. -- [Submarine Experiment](./experiment-implementation.md): How experiments managed, stored, and how the predefined experiment template works. -- [Submarine Notebook](./notebook-implementation.md): How experiments managed, stored, and how the predefined experiment template works. -- [Submarine Server](./submarine-server/architecture.md): How Submarine server is designed, architecture, implementation notes, etc. - -Working-in-progress designs, Below are designs which are working-in-progress, we will move them to the upper section once design & review is finished: - -- [Submarine HA Design](./wip-designs/SubmarineClusterServer.md): How Submarine HA can be achieved, using RAFT, etc. -- [Submarine services deployment module:](./wip-designs/submarine-launcher.md) How to deploy submarine services to k8s, YARN or cloud. \ No newline at end of file diff --git a/docs/design/notebook-implementation.md b/docs/design/notebook-implementation.md deleted file mode 100644 index cac946b..0000000 --- a/docs/design/notebook-implementation.md +++ /dev/null @@ -1,111 +0,0 @@ - - -# Submarine Notebook Implementation - -## Overview - -### User's interaction - -Users can start N (N >= 0) number of Notebook sessions, a notebook session is a running notebook instance. - -- Notebook session can be launched by Submarine UI (P0), and Submarine CLI (P2). -- When launch notebook session, users can choose T-shirt size of notebook session (how much mem/cpu/gpu resources, or resource profile such as small, medium, large, etc.). (P0) -- And user can choose an environment for notebook. More details please refer to [environment implementation](./environments-implementation.md) (P0) -- When start a notebook, user can choose what code to be initialized, similar to experiment. (P1) -- Optionally, users can choose to attach a persistent volume to a notebook session. (P2) - -Users can get a list of notebook sessions belongs to themselves, and connect to notebook session. - -User can choose to terminate a running notebook session. - -### Admin's interaction - -- How many concurrent notebook sessions can be launched by each user is determined by resource quota limits of each user, and maximum concurrent notebook sessions can be launched by each user. (P2) - -## Relationship with other components - -### Metadata store - -Running notebook sessions' metadata need persistented in Submarine's metadata store (Database). - -### Submarine Server - -``` - - +--------------+ +--------Submarine Server--------------------+ - |Submarine UI | | +-------------------+ | - | |+---> Submarine | | - | Notebook | | | Notebook REST API| | - +--------------+ | | | | - | +--------+----------+ +--------------+ | - | | +->|Metastore | | - | +--------v----------+ | |DB | | - | | Submarine +--+ +--------------+ | - | | Notebook Mgr | | - | | | | - | | | | - | +--------+----------+ | - | | | - +----------|---------------------------------+ - | - +--------------+ - +--------v---------+ - | Notebook Session | - | | - | instance | - | | - +------------------+ -``` - -Once user use Submarine UI to launch a notebook session, Submarine notebook manager inside Submarine Server will persistent notebook session's metadata, and launch a new notebook session instance. - -### Resource manager - -When using K8s as resource manager, Submarine notebook session will run as a new POD. - -### Storage - -There're several different types of storage requirements for Submarine notebook. - -For code, environment, etc, storage, please refer to [storage implementation](./storage-implementation.md), check "Localization of experiment/notebook/model-serving code". - -When there're needs to attach volume (such as user's home folder) to Submarine notebook session, please check [storage implementation](./storage-implementation.md), check "Attachable volume". - -### Environment - -Submarine notebook's environment should be used to run experiment, model serving, etc. Please check [environment implementation](./environments-implementation.md). (More specific to notebook, please check "How to implement to make user can easily use Submarine environments") - -Please note that notebook's Environment should include right version of notebook libraries, and admin should follow the guidance to build correct Docker image, Conda libraries to correctly run Notebook. - -### Submarine SDK (For Experiment, etc.) - -Users can run new experiment, access metrics information, or do model operations using Submarine SDK. - -Submarine SDK is a Python library which can talk to Submarine Server which need Submarine Server's endpoint as well as user credentials. - -To ensure better experience, we recommend always install proper version of Submarine SDK from environment which users can use Submarine SDK directly from commandline. (We as Submarine community can provide sample Dockerfile or Conda environment which have correct base libraries installed for Submarine SDK). - -Submarine Server IP will be configured automatically by Submarine Server, and added as an envar when Submarine notebook session got launched. - -### Security - -Please refer to [Security Implementation](./security-implementation.md) - -Once user accessed to a running notebook session, the user can also access resources of the notebook, capability of submit new experiment, and access data. This is also very dangerous so we have to protect it. - -A simple solution is to use token-based authentication https://jupyter-notebook.readthedocs.io/en/stable/security.html. A more common way is to use solutions like KNOX to support SSO. - -We need expand this section to more details. (TODO). \ No newline at end of file diff --git a/docs/design/security-implementation.md b/docs/design/security-implementation.md deleted file mode 100644 index 611f5bc..0000000 --- a/docs/design/security-implementation.md +++ /dev/null @@ -1,24 +0,0 @@ - - -# Submarine Security Implementation - -## Handle User's Credential - -Users credential includes Kerberoes Keytabs, Docker registry credentials, Github ssh-keys, etc. - -User's credential must be stored securitely, for example, via KeyCloak or K8s Secrets. - -(More details TODO) \ No newline at end of file diff --git a/docs/design/storage-implementation.md b/docs/design/storage-implementation.md deleted file mode 100644 index 8b2961d..0000000 --- a/docs/design/storage-implementation.md +++ /dev/null @@ -1,165 +0,0 @@ - - -# Submarine Storage Implementation - -## ML-related objects and their storages - -First let's look at what user will interact for most of the time: - -- Notebook -- Experiment -- Model Servings - -``` - - - +---------+ +------------+ - |Logs |<--+|Notebook | - +----------+ +---------+ +------------+ +----------------+ - |Trackings | <-+|Experiment |<--+>|Model Artifacts | - +----------+ +-----------------+ +------------+ +----------------+ - +----------+<---+|ML-related Metric|<--+Servings | - |tf.events | +-----------------+ +------------+ - +----------+ ^ +-----------------+ - + | Environments | - +----------------------+ | | - +-----------------+ | Submarine Metastore | | Dependencies | - |Code | +----------------------+ | | - +-----------------+ |Experiment Meta | | Docker Images | - +----------------------+ +-----------------+ - |Model Store Meta | - +----------------------+ - |Model Serving Meta | - +----------------------+ - |Notebook meta | - +----------------------+ - |Experiment Templates | - +----------------------+ - |Environments Meta | - +----------------------+ -``` - -First of all, all the notebook-sessions / experiments / model-serving instances) are more or less interact with following storage objects: - -- Logs for these tasks for troubleshooting. -- ML-related metrics such as loss, epoch, etc. (in contrast of system metrics such as CPU/memory usage, etc.) - - There're different types of ML-related metrics, for Tensorflow/pytorch, they can use tf.events and get visualizations on tensorboard. - - Or they can use tracking APIs (such as Submarine tracking, mlflow tracking, etc.) to output customized tracking results for non TF/Pytorch workloads. -- Training jobs of experiment typically generate model artifacts (files) which need persisted, and both of notebook, model serving needs to load model artifacts from persistent storage. -- There're various of meta information, such as experiment meta, model registry, model serving, notebook, experiment, environment, etc. We need be able to read these meta information back. -- We also have code for experiment (like training/batch-prediction), notebook (ipynb), and model servings. -- And notebook/experiments/model-serving need depend on environments (dependencies such as pip, and Docker Images). - -### Implementation considerations for ML-related objects - -| Object Type | Characteristics | Where to store | -| ---------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -| Metrics: tf.events | Time series data with k/v, appendable to file | Local/EBS, HDFS, Cloud Blob Storage | -| Metrics: other tracking metrics | Time series data with k/v, appendable to file | Local, HDFS, Cloud Blob Storage, Database | -| Logs | Large volumes, #files are potentially huge. | Local (temporary), HDFS (need aggregation), Cloud Blob Storage | -| Submarine Metastore | CRUD operations for small meta data. | Database | -| Model Artifacts | Size varies for model (from KBs to GBs). #files are potentially huge. | HDFS, Cloud Blob Storage | -| Code | Need version control. (Please find detailed discussions below for code storage and localization) | Tarball on HDFS/Cloud Blog Storage, or Git | -| Environment (Dependencies, Docker Image) | | Public/private environment repo (like Conda channel), Docker registry. | - -### Detailed discussions - -#### Store code for experiment/notebook/model-serving - -There're following ways to get experiment code: - -**1) Code is part of Git repo:** (***Recommended***) - -This is our recommended approach, once code is part of Git, it will be stored in version control, any change will be tracked, and much easier for users to trace back what change triggered a new bug, etc. - -**2) Code is part of Docker image:** - -***This is an anti-pattern and we will NOT recommend you to use it***, Docker image can be used to include ANYTHING, like dependencies, the code you will execute, or even data. But this doesn't mean you should do it. We recommend to use Docker image ONLY for libraries/dependencies. - -Making code to be part of Docker image makes hard to edit code (if you want to update a value in your Python file, you will have to recreate the Docker image, push it and rerun it). - -**3) Code is part of S3/HDFS/ABFS:** - -User may want to store their training code to a tarball on a shared storage. Submarine need to download code from remote storage to the launched container before running the code. - -#### Localization of experiment/notebook/model-serving code - -To make user experiences keeps same across different environment, we will localize code to a same folder after the container is launched, preferably `/code` - -For example, there's a git repo need to be synced up for an experiment/notebook/model-serving (example above): - -``` -experiment: #Or notebook, model-serving - name: "abc", - environment: "team-default-ml-env" - ... (other fields) - code: - sync_mode: git - url: "https://foo.com/training-job.git" -``` - -After localize, `training-job/` will be placed under `/code` - -When we running on K8s environment, we can use K8s's initContainer and emptyDir to do these things for us. K8s POD spec (generated by Submarine server instead of user, user should NEVER edit K8s spec, that's too unfriendly to data-scientists): - -``` -apiVersion: v1 -kind: Pod -metadata: - name: experiment-abc -spec: - containers: - - name: experiment-task - image: training-job - volumeMounts: - - name: code-dir - mountPath: /code - initContainers: - - name: git-localize - image: git-sync - command: "git clone .. /code/" - volumeMounts: - - name: code-dir - mountPath: /code - volumes: - - name: code-dir - emptyDir: {} -``` - -The above K8s spec create a code-dir and mount it to `/code` to launched containers. The initContainer `git-localize` uses `https://github.com/kubernetes/git-sync` to do the sync up. (If other storages are used such as s3, we can use similar initContainer approach to download contents) - -## System-related metrics/logs and their storages - -Other than ML-related objects, we have system-related objects, including: - -- Daemon logs (like logs of Submarine server). -- Logs for other dependency components (like Kubernetes logs when running on K8s). -- System metrics (Physical resource usages by daemons, launched training containers, etc.). - -All these information should be handled by 3rd party system, such as Grafana, Prometheus, etc. And system admins are responsible to setup these infrastructures, dashboard. Users of submarine should NOT interact with system related metrics/logs. It is system admin's responsibility. - -## Attachable Volumes - -It is possible user has needs to have an attachable volume for their experiment / notebook, this is especially useful for notebook storage, since contents of notebook can be automatically saved, and it can be used as user's home folder. - -Downside of attachable volume is, it is not versioned, even notebook is mainly used for adhoc exploring tasks, an unversioned notebook file can lead to maintenance issues in the future. - -Since this is a common requirement, we can consider to support attachable volumes in Submarine in a long run, but with relatively lower priority. - -## In-scope / Out-of-scope - - Describe what Submarine project should own and what Submarine project should NOT own. - diff --git a/docs/design/submarine-server/architecture.md b/docs/design/submarine-server/architecture.md deleted file mode 100644 index 530dc00..0000000 --- a/docs/design/submarine-server/architecture.md +++ /dev/null @@ -1,165 +0,0 @@ - -# Submarine Server Architecture And Implementation - -## Architecture Overview - -``` - +---------------Submarine Server ---+ - | | - | +------------+ +------------+ | - | |Web Svc/Prxy| |Backend Svc | | +--Submarine Asset + - | +------------+ +------------+ | |Project/Notebook | - | ^ ^ | |Model/Metrics | - +---|---------|---------------------+ |Libraries/Dataset | - | | +------------------+ - | | - | +--|-Compute Cluster 1---+ +--Image Registry--+ - + | | | | User's Images | - User / | + | | | - Admin | User Notebook Instance | +------------------+ - | Experiment Runs | - +------------------------+ +-Data Storage-----+ - | S3/HDFS, etc. | - +----Compute Cluster 2---+ | | - +------------------+ - ... -``` - -Here's a diagram to illustrate the Submarine's deployment. - -- Submarine Server consists of web service/proxy, and backend services. They're like "control planes" of Submarine, and users will interact with these services. -- Submarine server could be a microservice architecture and can be deployed to one of the compute clusters. (see below, this will be useful when we only have one cluster). -- There're multiple compute clusters that could be used by Submarine service. For user's running notebook instance, jobs, etc. they will be placed to one of the compute clusters by user's preference or defined policies. -- Submarine's asset includes project/notebook(content)/models/metrics/dataset-meta, etc. can be stored inside Submarine's own database. -- Datasets can be stored in various locations such as S3/HDFS. -- Users can push container (such as Docker) images to a preconfigured registry in Submarine, so Submarine service can know how to pull required container images. -- Image Registry/Data-Storage, etc. are outside of Submarine server's scope and should be managed by 3rd party applications. - -## Submarine Server and its APIs - -Submarine server is designed to allow data scientists to access notebooks, submit/manage jobs, manage models, create model training workflows, access datasets, etc. - -Submarine Server exposed UI and REST API. Users can also use CLI / SDK to manage assets inside Submarine Server. - -``` - +----------+ - | CLI |+---+ - +----------+ v +----------------+ - +--------------+ | Submarine | - +----------+ | REST API | | | - | SDK |+>| |+> Server | - +----------+ +--------------+ | | - ^ +----------------+ - +----------+ | - | UI |+---+ - +----------+ -``` - -REST API will be used by the other 3 approaches. (CLI/SDK/UI) - -The REST API Service handles HTTP requests and is responsible for authentication. It acts as the caller for the JobManager component. - -The REST component defines the generic job spec which describes the detailed info about job. For more details, refer to [here](https://docs.google.com/document/d/1kd-5UzsHft6gV7EuZiPXeWIKJtPqVwkNlqMvy0P_pAw/edit#). (Please note that we're converting REST endpoint description from Java-based REST API to swagger definition, once that is done, we should replace the link with swagger definition spec). - -## Proposal - ``` - +---------------------+ - +-----------+ | +--------+ +----+ | - | | | |runtime1+-->+job1| | - | workbench +---+ +----------------------------------+ | +--------+ +----+ | - | | | | +------+ +---------------------+ | +-->+ +--------+ +----+ | - +-----------+ | | | | | +------+ +-------+ | | | | |runtime2+-->+job2| | - | | | | | | YARN | | K8s | | | | | +--------+ +----+ | - +-----------+ | | | | | +------+ +-------+ | | | | YARN Cluster | - | | | | | | | submitter | | | +---------------------+ - | CLI +------>+ | REST | +---------------------+ +---+ - | | | | | | +---------------------+ | | +---------------------+ - +-----------+ | | | | | +-------+ +-------+ | | | | +--------+ +----+ | - | | | | | |PlugMgr| |monitor| | | | | | +-->+job1| | - +-----------+ | | | | | +-------+ +-------+ | | | | | | +----+ | - | | | | | | | JobManager | | +-->+ |operator| +----+ | - | SDK +---+ | +------+ +---------------------+ | | | +-->+job2| | - | | +----------------------------------+ | +--------+ +----+ | - +-----------+ | K8s Cluster | - client server +---------------------+ - ``` -We propose to split the original core module in the old layout into two modules, CLI and server as shown in FIG. The submarine-client calls the REST APIs to submit and retrieve the job info. The submarine-server provides the REST service, job management, submitting the job to cluster, and running job in different clusters through the corresponding runtime. - -## Submarine Server Components - -``` - - +----------------------Submarine Server--------------------------------+ - | +-----------------+ +------------------+ +--------------------+ | - | | Experiment | |Notebook Session | |Environment Mgr | | - | | Mgr | |Mgr | | | | - | +-----------------+ +------------------+ +--------------------+ | - | | - | +-----------------+ +------------------+ +--------------------+ | - | | Model Registry | |Model Serving Mgr | |Compute Cluster Mgr | | - | | | | | | | | - | +-----------------+ +------------------+ +--------------------+ | - | | - | +-----------------+ +------------------+ +--------------------+ | - | | DataSet Mgr | |User/Team | |Metadata Mgr | | - | | | |Permission Mgr | | | | - | +-----------------+ +------------------+ +--------------------+ | - +----------------------------------------------------------------------+ -``` - -### Experiment Manager - -TODO - -### Notebook Sessions Manager - -TODO - -### Environment Manager - -TODO - -### Model Registry - -TODO - -### Model Serving Manager - -TODO - -### Compute Cluster Manager - -TODO - -### Dataset Manager - -TODO - -### User/team permissions manager - -TODO - -### Metadata Manager - -TODO - -## Components/services outside of Submarine Server's scope - -TODO: Describe what are the out-of-scope components, which should be handled and managed outside of Submarine server. Candidates are: Identity management, data storage, metastore storage, etc. \ No newline at end of file diff --git a/docs/design/submarine-server/jobspec.md b/docs/design/submarine-server/jobspec.md deleted file mode 100644 index beb776a..0000000 --- a/docs/design/submarine-server/jobspec.md +++ /dev/null @@ -1,97 +0,0 @@ - - -# Generic Job Spec - -## Motivation -As the machine learning platform, the submarine should support multiple machine learning frameworks, such as Tensorflow, Pytorch etc. But different framework has different distributed components for the training job. So that we designed a generic job spec to abstract the training job across different frameworks. In this way, the submarine-server can hide the complexity of underlying infrastructure differences and provide a cleaner interface to manager jobs - -## Proposal -Considering the Tensorflow and Pytorch framework, we propose one spec which consists of library spec, submitter spec and task specs etc. Such as: -```yaml -name: "mnist" -librarySpec: - name: "TensorFlow" - version: "2.1.0" - image: "apache/submarine:tf-mnist-with-summaries-1.0" - cmd: "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150" - envVars: - ENV_1: "ENV1" -submitterSpec: - type: "k8s" - namespace: "submarine" -taskSpecs: - Ps: - name: tensorflow - replicas: 2 - resources: "cpu=4,memory=2048M,nvidia.com/gpu=1" - Worker: - name: tensorflow - replicas: 2 - resources: "cpu=4,memory=2048M,nvidia.com/gpu=1" -``` - -### Library Spec -The library spec describes the info about machine learning framework. All the fields as below: - -| field | type | optional | description | -|---|---|---|---| -| name | string | NO | Machine Learning Framework name. Only `"tensorflow"` and `"pytorch"` is supported. It doesn't matter if the value is uppercase or lowercase.| -| version | string | NO | The version of ML framework. Such as: 2.1.0 | -| image | string | NO | The public image used for each task if not specified. Such as: apache/submarine | -| cmd | string | YES | The public entry cmd for the task if not specified. | -| envVars | key/value | YES | The public env vars for the task if not specified. | - -### Submitter Spec -It describes the info of submitter which the user specified, such as yarn, yarnservice or k8s. All the fields as below: - -| field | type | optional | description | -|---|---|---|---| -| type | string | NO | The submitter type, supports `k8s` now | -| configPath | string | YES | The config path of the specified resource manager. You can set it in submarine-site.xml if run submarine-server locally | -| namespace | string | NO | It's known as queue in Apache Hadoop YARN and namespace in Kubernetes. | -| kind | string | YES | It's used for k8s submitter, supports TFJob and PyTorchJob | -| apiVersion | string | YES | It should pair with the kind, such as the TFJob's api version is `kubeflow.org/v1` | - -### Task Spec -It describes the task info, the tasks make up the job. So it must be specified when submit the job. All the tasks should putted into the key value collection. Such as: -```yaml -taskSpecs: - Ps: - name: tensorflow - replicas: 2 - resources: "cpu=4,memory=2048M,nvidia.com/gpu=1" - Worker: - name: tensorflow - replicas: 2 - resources: "cpu=4,memory=2048M,nvidia.com/gpu=1" -``` - -All the fields as below: - -| field | type | optional | description | -|---|---|---|---| -| name | string | YES | The job task name, if not specify using the library name | -| image | string | YES | The job task image | -| cmd | string | YES | The entry command for running task | -| envVars | key/value | YES | The env vars for the task | -| resources | string | NO | The limit resource for the task. Formatter: cpu=%s,memory=%s,nvidia.com/gpu=%s | - -## Implements -For more info see [SUBMARINE-321](https://issues.apache.org/jira/browse/SUBMARINE-321) diff --git a/docs/design/wip-designs/SubmarineClusterServer.md b/docs/design/wip-designs/SubmarineClusterServer.md deleted file mode 100644 index 8588018..0000000 --- a/docs/design/wip-designs/SubmarineClusterServer.md +++ /dev/null @@ -1,162 +0,0 @@ -# Submarine Cluster Server Design - High-Availability (working-in-progress) - -## Please note that this design doc is working-in-progress and need more works to complete. - - - -## Below is existing proposal: - -## Introduction -The Submarine system contains a total of two daemon services, Submarine Server and Workbench Server. - -Submarine Server mainly provides job submission, job scheduling, job status monitoring, and model online service for Submarine. - -Workbench Server is mainly for algorithm users to provide algorithm development, Python/Spark interpreter operation, and other services through Notebook. - -The goal of the Submarine project is to provide high availability and high-reliability services for big data processing, -algorithm development, job scheduling, model online services, model batch, and incremental updates. - -In addition to the high availability of big data and machine learning frameworks, -the high availability of Submarine Server and Workbench Server itself is a key consideration. - -## Requirement - -### Cluster Metadata Center - -Multiple Submarine (or Workbench) Server processes create a Submarine Cluster through the RAFT algorithm library. - -The cluster internally maintains a metadata center. All servers can operate the metadata. - -The RAFT algorithm ensures that multiple processes are simultaneously co-located. - -A data modification will not cause problems such as mutual coverage and dirty data. - -This metadata center stores data by means of key-value pairs. it can store/support a variety of data, -but it should be noted that metadata is only suitable for storing small amounts of data and cannot be used to replace data storage. - -### Service discovery - -By storing the information of the service or process in the metadata center, we can easily find the information of the service or process we need in any place, -for example, the IP address and port where the Python interpreter will be the process. Information is stored in metadata, -and other services can easily find process information through process IDs and connect to provide service discovery capabilities. - -### Cluster event - -In the entire Submarine cluster, the servers can communicate with each other and other child processes to send cluster events to each other. - -The service or process processes the corresponding programs according to the cluster events. For example, -the Workbench Server can be managed to Python. The interpreter process sends a shutdown event that controls the operation of the services and individual subprocesses throughout the cluster. - -Cluster events support both broadcast and separate delivery capabilities. - -### Independence - -We implement Submarine's clustering capabilities through the RAFT algorithm library, without relying on any external services (e.g. Zookeeper, Etcd, etc.) - -### Disadvantages - -Because the RAFT algorithm requires more than half of the servers available to ensure the normality of the RAFT algorithm, -if we need to turn on the clustering capabilities of Submarine (Workbench) Server, when more than half of the servers are unavailable, -some programs may appear abnormal. Of course, we also detected this in the system, downgrading the system or refusing to provide service status. - -## System design - -### Universal design - -Modular design, Submarine (Workbench) Server exists in the Submarine system, these two services need to provide clustering capabilities, -so we abstract the cluster function into a separate module for development so that Submarine (Workbench) Server can reuse the cluster function module. - -### ClusterConfigure - -Add a `submarine.server.addr` and `workbench.server.addr` configuration items in `submarine-site.xml`, `submarine.server.addr=ip1, ip2, ip3`, -through the IP list, the RAFT algorithm module in the server process can Cluster with other server processes. - -### ClusterServer - -+ The ClusterServer module encapsulates the RAFT algorithm module, which can create a service cluster and read and write metadata based on the two configuration items submarine.server.addr or workbench.server.addr. - -+ The cluster management service runs in each submarine server; - -+ The cluster management service establishes a cluster by using the atomix RaftServer class of the Raft algorithm library, maintains the ClusterStateMachine, -and manages the service state metadata of each submarine server through the PutCommand, GetQuery, and DeleteCommand operation commands. - -### ClusterClient - -+ The ClusterClient module encapsulates the RAFT algorithm client module, which can communicate with the cluster according to the two configuration items `submarine.server.addr` or `workbench.server.addr`, -read and write metadata, and write the IP and port information of the client process. Into the cluster's metadata center. - -+ The cluster management client runs in each submarine server and submarine Interpreter process; - -+ The cluster management client manages the submarine server and submarine Interpreter process state (metadata information) -in the ClusterStateMachine by using the atomix RaftClient class of the Raft library to connect to the atomix RaftServer. - -+ When the submarine server and Submarine Interpreter processes are started, they are added to the ClusterStateMachine and are removed from the ClusterStateMachine - -+ when the Submarine Server and Submarine Interpreter processes are closed. - -### ClusterMetadata -Metadata stores metadata information in a KV key-value pair。 -ServerMeta:key='host:port',value= {SERVER_HOST=...,SERVER_PORT=...,...} - - - -| Name | Description | -| --------------------- | ------------------------------- | -| SUBMARINE_SERVER_HOST | Submarine server IP | -| SUBMARINE_SERVER_PORT | Submarine server port | -| WORKBENCH_SERVER_HOST | Submarine workbench server IP | -| WORKBENCH_SERVER_PORT | Submarine workbench server port | - -InterpreterMeta:key=InterpreterGroupId,value={INTP_TSERVER_HOST=...,...} - -| Name | Description | -| ----------------- | ------------------------------------ | -| INTP_TSERVER_HOST | Submarine Interpreter Thrift IP | -| INTP_TSERVER_PORT | Submarine Interpreter Thrift port | -| INTP_START_TIME | Submarine Interpreter start time | -| HEARTBEAT | Submarine Interpreter heartbeat time | - -### Network fault tolerance - -In a distributed environment, there may be network anomalies, network delays, or service exceptions. After submitting metadata to the cluster, -check whether the submission is successful. After the submission fails, save the metadata in the local message queue. A separate commit thread to retry; - -### Cluster monitoring - -The cluster needs to monitor whether the Submarine Server and Submarine-Interpreter processes are working properly. - -The Submarine Server and Submarine Interpreter processes periodically send heartbeats to update their own timestamps in the cluster metadata. - -The Submarine Server with Leader identity periodically checks the timestamps of the Submarine Server and Submarine Interpreter processes to clear the timeout services and processes. - -1. The cluster monitoring module runs in each Submarine Server and Submarine Interpreter process, -periodically sending heartbeat data of the service or process to the cluster; - -2. When the cluster monitoring module runs in Submarine Server, it sends the heartbeat to the cluster's ClusterStateMachine. -If the cluster does not receive heartbeat information for a long time, Indicates that the service or process is abnormal and unavailable. - -3. Resource usage statistics strategy, in order to avoid the instantaneous high peak and low peak of the server, -the cluster monitoring will collect the average resource usage in the most recent period for reporting, and improve the reasonable line and effectiveness of the server resources as much as possible; - -4. When the cluster monitoring module runs in the Submarine Server, it checks the heartbeat data of each Submarine Server and Submarine Interpreter process. -If it times out, it considers that the service or process is abnormally unavailable and removes it from the cluster. - -### Atomix Raft algorithm library - -In order to reduce the deployment complexity of distributed mode, submarine server does not use Zookeeper to build a distributed cluster. -Multiple submarine server groups are built into distributed clusters by using the Raft algorithm in submarine server. -The Raft algorithm is involved by atomix lib of atomix that has passed Jepsen consistency verification. - -### Synchronize workbench notes - -In cluster mode, the user creates, modifies, and deletes the note on any of the servers. -All need to be notified to all the servers in the cluster to synchronize the update of Notebook. -Failure to do so will result in the user not being able to continue while switching to another server. - -### Listen for note update events - -Listen for the NEW_NOTE, DEL_NOTE, REMOVE_NOTE_TO_TRASH ... event of the notebook in the NotebookServer#onMessage() function. - -### Broadcast note update event - -The note is refreshed by notifying the event to all Submarine servers in the cluster via messaging Service. diff --git a/docs/design/wip-designs/submarine-launcher.md b/docs/design/wip-designs/submarine-launcher.md deleted file mode 100644 index 7465267..0000000 --- a/docs/design/wip-designs/submarine-launcher.md +++ /dev/null @@ -1,75 +0,0 @@ -# Submarine Launcher - -## Introduction -Submarine is built and run in Cloud Native, taking advantage of the cloud computing model. - -To give full play to the advantages of cloud computing. -These applications are characterized by rapid and frequent build, release, and deployment. -Combined with the features of cloud computing, they are decoupled from the underlying hardware and operating system, -and can easily meet the requirements of scalability, availability, and portability. And provide better economy. - -In the enterprise data center, submarine can support k8s/yarn/docker three resource scheduling systems; -in the public cloud environment, submarine can support these cloud services in GCE/AWS/Azure; - -## Requirement - -### Cloud-Native Service - -The submarine server is a long-running services in the daemon mode. -The submarine server is mainly used by algorithm engineers to provide online front-end functions such as algorithm development, -algorithm debugging, data processing, and workflow scheduling. -And submarine server also mainly used for back-end functions such as scheduling and execution of jobs, tracking of job status, and so on. - -Through the ability of rolling upgrades, we can better provide system stability. -For example, we can upgrade or restart the workbench server without affecting the normal operation of submitted jobs. - -You can also make full use of system resources. -For example, when the number of current developers or job tasks increases, -The number of submarine server instances can be adjusted dynamically. - -In addition, submarine will provide each user with a completely independent workspace container. -This workspace container has already deployed the development tools and library files commonly used by algorithm engineers including their operating environment. -Algorithm engineers can work in our prepared workspaces without any extra work. - -Each user's workspace can also be run through a cloud service. - -### Service discovery -With the cluster function of submarine, each service only needs to run in the container, -and it will automatically register the service in the submarine cluster center. -Submarine cluster management will automatically maintain the relationship between service and service, service and user. - -## Design - -![cloud-service](../assets/design/multi-dc-cloud.png) - - -### Launcher - -The submarine launcher module defines the complete interface. -By using this interface, you can run the submarine server, and workspace in k8s / yarn / docker / AWS / GCE / Azure. - - -### Launcher On Docker -In order to allow some small and medium-sized users without k8s/yarn to use submarine, -we support running the submarine system in docker mode. - -Users only need to provide several servers with docker runtime environment. -The submarine system can automatically cluster these servers into clusters, manage all the hardware resources of the cluster, -and run the service or workspace container in this cluster through scheduling algorithms. - - -### Launcher On Kubernetes - -submarine operator - -### Launcher On Yarn -[TODO] - -### Launcher On AWS -[TODO] - -### Launcher On GCP -[TODO] - -### Launcher On Azure -[TODO] diff --git a/docs/development-guide-home.md b/docs/development-guide-home.md deleted file mode 100644 index 6035df7..0000000 --- a/docs/development-guide-home.md +++ /dev/null @@ -1,30 +0,0 @@ - - -# Development Guide - -## Working-in-progress components - -### Submarine Workbench - -[Submarine Workbench Guide](./workbench/README.md) - -## Development - -[Submarine Project Development Guide](./development/README.md) - -[Submarine Project Database Guide](./database/README.md) - -[Submarine Quick Development Tips](./development/QuickDevTips.md) \ No newline at end of file diff --git a/docs/development/BuildFromCode.md b/docs/development/BuildFromCode.md deleted file mode 100644 index 5ede0c9..0000000 --- a/docs/development/BuildFromCode.md +++ /dev/null @@ -1,96 +0,0 @@ - - -## Build Submarine From Source Code - -## Prerequisites - -+ JDK 1.8 -+ Maven 3.3 or later ( 3.6.2 is known to fail, see SUBMARINE-273 ) -+ Docker - -## Quick Start - -### Build Your Custom Submarine Docker Images - -Submarine provides default Docker image in the release artifacts, sometimes you would like to do some modifications on the images. You can rebuild Docker image after you make changes. - -> Note that you need to make sure the images built above can be accessed in k8s -> Usually this needs a rename and push to a proper Docker registry. - -```bash -mvn clean package -DskipTests -``` - -Build submarine server image: - -```bash -./dev-support/docker-images/submarine/build.sh -``` - -Build submarine database image: - -```bash -./dev-support/docker-images/database/build.sh -``` - -### Building source code / binary distribution - -+ Checking releases for licenses - -``` -mvn clean org.apache.rat:apache-rat-plugin:check -``` - -+ Create binary distribution with default hadoop version - -``` -mvn clean package -DskipTests -``` - -+ Create binary distribution with hadoop-2.9.x version - -``` -mvn clean package -DskipTests -Phadoop-2.9 -``` - -+ Create binary distribution with hadoop-2.10.x version - -``` -mvn clean package -DskipTests -Phadoop-2.10 -``` - -+ Create binary distribution with hadoop-3.1.x version - -``` -mvn clean package -DskipTests -Phadoop-3.1 -``` - -+ Create binary distribution with hadoop-3.2.x version - -``` -mvn clean package -DskipTests -Phadoop-3.2 -``` - -+ Create source code distribution - -``` -mvn clean package -DskipTests -Psrc -``` - -## TonY code modification - -If it is needed to make modifications to TonY project, please make a PR -to [Tony repository](https://github.com/linkedin/TonY). \ No newline at end of file diff --git a/docs/development/IntegrationTest.md b/docs/development/IntegrationTest.md deleted file mode 100644 index 3acb7ae..0000000 --- a/docs/development/IntegrationTest.md +++ /dev/null @@ -1,122 +0,0 @@ - - -# Integration Test -## Introduction -1. Now, Apache Submarine supports two kinds of integration test: `test-e2e` and `test-k8s`. These two modules can be found in the [submarine/submarine-test](https://github.com/apache/submarine/tree/master/submarine-test) directory. - -2. Currently, there are some differences between `test-e2e` and `test-k8s` in operation mode. To elaborate, `test-e2e` needs to deploy Apache Submarine locally, while `test-k8s` deploys Apache Submarine via k8s. - -3. These two test modules can be applied to different test scenarios. (In the future, these two test modules may be combined or adjusted) - -## k8s test - -k8s test: When the user submits the code to his/her repository or the `apache/submarine` git repository, the travis test task will automatically start. - -test-k8s runs test cases in travis. It will first create a k8s cluster by using the kind tool in travis, - -and then compile and package the submarine project in `submarine-dist` directory to build a docker image. - -Then use this latest code to build a docker image and deploy a submarine system in k8s. Then run test case in the `test-k8s/..` directory. - -### Run k8s test in locally - -Executing the following command will perform the following actions: - -``` -mvn -Phadoop-2.9 clean package install -DskipTests verify -DskipRat -am -pl submarine-test/test-k8s -``` - -1. The submarine project will be compiled and packaged to generate `submarine-dist/target/submarine-.tar.gz` -2. Call the `submarine-cloud/hack/integration-test.sh` script - - + Call the `build.sh` script under `submarine/dev-support/docker-images/` to generate the latest `submarine`, `database` and `operator` docker images. - + Call `submarine-cloud/hack/kind-cluster-build.sh` to create a k8s cluster - + Call `submarine-cloud/hack/deploy-submarine.sh` to deploy the submarine system in the k8s cluster using the latest `submarine`, `database` and `operator` docker images. - + Call the test cases in `submarine-test/test-k8s/` for testing. - -### Run k8s test in travis - -Each time a code is submitted, travis is automatically triggered for testing. - -## E2E test - -### E2E tests can be executed both locally and in Travis (For workbench developer) -* Run E2E tests locally: - * Step1: Follow [HowToRun.md](https://github.com/apache/submarine/blob/master/docs/workbench/HowToRun.md) to launch the submarine-server and database. - * Step2: Run workbench (Angular version) locally - ``` - cd submarine/submarine-workbench/workbench-web - npm start - // Check 127.0.0.1:4200 - ``` - * Step3: Modify the port from 8080 to 4200 - * [WebDriverManager.java](https://github.com/apache/submarine/blob/master/submarine-test/test-e2e/src/test/java/org/apache/submarine/WebDriverManager.java): `url = "http://localhost:8080";` --> `url = "http://localhost:4200";` - * [Your Unit test case](https://github.com/apache/submarine/tree/master/submarine-test/test-e2e/src/test/java/org/apache/submarine/integration): `8080` --> `4200` - * Step4: Comment the `headless` option - * [ChromeWebDriverProvider.java](https://github.com/apache/submarine/blob/master/submarine-test/test-e2e/src/test/java/org/apache/submarine/ChromeWebDriverProvider.java): `chromeOptions.addArguments("--headless");` --> `//chromeOptions.addArguments("--headless");` - * With the `headless` option, the selenium will be executed in background. - * Step5: Run E2E test cases (Please check the following section **Run the existing tests**) -* Run E2E tests in Travis: - * Step1: Make sure that the port must be 8080 rather than in [WebDriverManager.java](https://github.com/apache/submarine/blob/master/submarine-test/test-e2e/src/test/java/org/apache/submarine/WebDriverManager.java) and [all test cases](https://github.com/apache/submarine/tree/master/submarine-test/test-e2e/src/test/java/org/apache/submarine/integration). - * Step2: Make sure that the `headless` option is not commented in [ChromeWebDriverProvider.java](https://github.com/apache/submarine/blob/master/submarine-test/test-e2e/src/test/java/org/apache/submarine/ChromeWebDriverProvider.java). - * Step3: If you push the commit to Github, the Travis CI will execute automatically and you can check it in `https://travis-ci.org/${your_github_account}/${your_repo_name}`. -### Run the existing tests. -##### Move to the working directory. -``` -cd submarine/submarine-test/test-e2e -``` -##### Compile & Run. - -> Following command will compile all files and run **all** files ending with "IT" in the [directory](https://github.com/apache/submarine/tree/master/submarine-test/test-e2e/src/test/java/org/apache/submarine/integration). -* For linux - ``` - mvn verify - ``` -* For MacOS -``` -mvn clean install -U -``` -> Run a specific testcase -``` -mvn -Dtest=${your_test_case_file_name} test //ex: mvn -Dtest=loginIT test -``` - -##### Result -If all of the function under test are succeeded, it will show. -``` -BUILD SUCCESS -``` -Otherwise, it will show. -``` -BUILD FAILURE -``` - -### Add your own integration test -1. Create a new file ending with "IT" under "submarine/submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/". -2. Your public class is recommended to extend AbstractSubmarineIT. The class AbstractSubmarineIT contains some commonly used functions. -```java - WebElement pollingWait(final By locator, final long timeWait); // Find element on the website. - void clickAndWait(final By locator); // Click element and wait for 1 second. - void sleep(long millis, boolean logOutput); // Let system sleep a period of time. -``` -3. There are also some commonly used functions except in AbstractSubmarineIT.java. -```java - // In WebDriverManager.java: - public static WebDriver getWebDriver(); // This return a firefox webdriver which has been set to your workbench website. -``` -4. Add [JUnit](https://junit.org/junit5/docs/current/user-guide/) annotation before your testing function, e.g., @Beforeclass, @Test, and @AfterClass. You can refer to [loginIT.java](https://github.com/apache/submarine/blob/master/submarine-test/test-e2e/src/test/java/org/apache/submarine/integration/loginIT.java). -5. Use command mentioned above to compile and run to test whether it works as your anticipation. - - diff --git a/docs/development/QuickDevTips.md b/docs/development/QuickDevTips.md deleted file mode 100644 index e614a46..0000000 --- a/docs/development/QuickDevTips.md +++ /dev/null @@ -1,36 +0,0 @@ -## 1. Introduction - -This document describes some useful tips that can accelerate your development efficiency. - -### Run server outside of k8s -If you are working on submarine-server, you do not need to bundle submarine-server into docker-image, and restart the helm-chart every time. - -You can run each module individually and only need to re-package the submarine-server, getting rid of other unnecessary process. - -1. Run db docker - -``` -docker run -it -p 3306:3306 -d --name submarine-database -e MYSQL_ROOT_PASSWORD=password apache/submarine:database-0.5.0-SNAPSHOT -``` - -2. Run k8s - -``` -minikube start # or other alternatives, such as kind -kubectl apply -f ./dev-support/k8s/tfjob/crd.yaml -kubectl kustomize ./dev-support/k8s/tfjob/operator | kubectl apply -f - -kubectl apply -f ./dev-support/k8s/pytorchjob/ -export KUBECONFIG=/home//.kube/config # (in ~/.bashrc) -``` -3. Package server - -``` -mvn clean package -DskipTests -``` - -4. Start server - -cd submarine-dist/target/submarine-dist-0.5.0-SNAPSHOT-hadoop-2.9/submarine-dist-0.5.0-SNAPSHOT-hadoop-2.9/ -./bin/submarine-daemon.sh start getMysqlJar -``` -``` \ No newline at end of file diff --git a/docs/development/README.md b/docs/development/README.md deleted file mode 100644 index f917d77..0000000 --- a/docs/development/README.md +++ /dev/null @@ -1,133 +0,0 @@ - -# Development Guide - -## 1. Introduction - -This document mainly describes the structure of each module of the Submarine project, the development and test description of each module. - -## 2. Submarine Project Structure - -### 2.1. submarine-client -Provide the CLI interface for submarine user. (Currently only support YARN service) - -### 2.2. submarine-cloud -Define submarine operator. (Work in progress) - -### 2.3. submarine-commons -Define utility function used in multiple packages, mainly related to hadoop. - -### 2.4. submarine-dist -Store the pre-release files. - -### 2.5. submarine-sdk -Provide Python SDK for submarine user. - -### 2.6. submarine-security -Provide authorization for Apache Spark to talking to Ranger Admin. - -### 2.7. submarine-server -Include core server, restful api, and k8s/yarn submitter. - -### 2.8. submarine-test -Provide end-to-end and k8s test for submarine. -### 2.9. submarine-workbench - -- workbench-server: is a Jetty-based web server service. Workbench-server provides RESTful interface and Websocket interface. The RESTful interface provides workbench-web with management capabilities for databases such as project, department, user, and role. -- workbench-web: is a web front-end service based on Angular.js framework. With workbench-web users can manage Submarine project, department, user, role through browser. You can also use the notebook to develop machine learning algorithms, model release and other lifecycle management. -### 2.10 dev-support - -+ **mini-submarine**: by using the docker image provided by Submarine, you can -experience all the functions of Submarine in a single docker environment, while -mini-submarine also provides developers with a development and testing -environment, Avoid the hassle of installing and deploying the runtime -environment. -+ **submarine-installer**: submarine-installer is our submarine runtime -environment installation tool for yarn-3.1+ and above.By using -submarine-installer, it is easy to install and deploy system services such as -`docker`, `nvidia-docker`, `nvidia driver`, `ETCD`, `Calico network` etc. -required by yarn-3.1+. - -## 3. Submarine Workbench Development Guide - -Submarine workbench consists of three modules: workbench-server, workbench-web -and database. - -First, you need to clone the entire Submarine project: - -``` -git clone https://github.com/apache/submarine.git -``` - -## 3.1 Database - -Submarine selects mysql as the workbench database, and stores the table -structure and information of all the data in workbench in mysql. Please browse -the project's [Submarine Database Guide](../database/) documentation and follow -the instructions to install a mysql database via docker in your development and -test environment. - -## 3.2 Workbench-web - -+ **Install dependencies** - -You only need to execute the following command when you run workbench-web for -the first time, so you can follow the depend. environment of node.js in the -workbench-web directory. - -```bash -cd submarine-workbench/workbench-web -yarn install -``` - -The node.js dependency library will be installed in the node_modules directory. node_modules does not need to be uploaded to the git repository. We have excluded it in the submarine/.gitignore file. You can clean this by manually deleting the directory or executing mvn clean. table of Contents. - -+ **Compiles and hot-reloads for development** - -```bash -yarn run build -``` - -By executing the above command, `workbench-web` will publish the web page to the `workbench-web/dist` directory. Later we will also add the feature of `workbench-web` to a WAR package, which only requires a `workbench-web.war` file. Package can release submarine workbench. - -+ **Lints and fixes files** - -When you write the `Angular, js` file in `workbench-web` through IDEA, because IDEA can't format these files well, you need to execute the following command to format the angular and js files to avoid some warnings during the yarn build. - -``` -yarn run lint -``` - -In fact, you must execute this command when you develop and submit any workbench-web feature. Otherwise, chances are that you won't be able to check the code specification we set up in Travis. - -## 3.3 Workbench-server - -Workbench-server has a built-in jetty server service, so you don't need to install any web container service. You can start submarine workbench by launching `workbench-server` directly in IDEA. - -+ **Run / Debug** : In the IDEA, add a Run/Debug Configuration, `Main Class:` select `org.apache.submarine.server.SubmarineServer`, `Use classpath of module:` select `submarine-server-core`. - -![img](../assets/Run-Debug-Configuration.png) - -So you can pass http://127.0.0.1:8080 debugging or running to submarine-workbench. - -+ **It should be noted**: - -1. Because `workbench-web/dist` is the webapp default directory of the workbench-server Jetty Server, the workbench-server will automatically load the `workbench-web/dist` directory after startup. - -2. The `workbench-web/dist` used by `workbench-server` is used as the webapp directory, which is configured via `workbench-site.xml`, but we do not recommend you to modify it. - -3. The submarine-workbench, IP and 8080 ports that are accessible locally through the port 8080 of 127.0.0.1 are configured via `workbench-site.xml`, but we do not recommend you to modify it. - -4. When you modify the `angular` or `js` of workbench-web, you need to execute the yarn run build command in the workbench-web directory, and let your modified code update to the dist directory, so that you can see the effect of your code modification in the workbench. diff --git a/docs/ecosystem/kaldi/RunningDistributedThchs30KaldiJobs.md b/docs/ecosystem/kaldi/RunningDistributedThchs30KaldiJobs.md deleted file mode 100644 index 2eb32b4..0000000 --- a/docs/ecosystem/kaldi/RunningDistributedThchs30KaldiJobs.md +++ /dev/null @@ -1,678 +0,0 @@ - - -# Thchs30 Kaldi Example With YARN Service - -## Prepare data for training - -Thchs30 is a common benchmark in machine learning for speech data and transcripts. Below example is based on Thchs30 dataset. - -1) download gz file: -``` -THCHS30_PATH=/data/hdfs1/nfs/aisearch/kaldi/thchs30 -mkdir $THCHS30_PATH/data && cd $THCHS30_PATH/data -wget http://www.openslr.org/resources/18/data_thchs30.tgz -wget http://www.openslr.org/resources/18/test-noise.tgz -wget http://www.openslr.org/resources/18/resource.tgz -``` - -2) Checkout https://github.com/apache/submarine.git: -``` -git clone https://github.com/apache/submarine.git -``` - -3) Go to `submarine/docker/ecosystem/` -``` -cp -r ./kaldi/sge $THCHS30_PATH/sge -``` - -4) optional,Modify `/opt/kaldi/egs/thchs30/s5/cmd.sh` in the Container,This queue is used by default -``` -export train_cmd="queue.pl -q all.q" -``` - -**Warning:** - -Please note that YARN service doesn't allow multiple services with the same name, so please run following command -``` -yarn application -destroy -``` -to delete services if you want to reuse the same service name. - -## Prepare Docker images - -Refer to [Write Dockerfile](WriteDockerfileKaldi.md) to build a Docker image or use prebuilt one: - -- hadoopsubmarine/kaldi-latest-gpu-base:0.0.1 - -## Run Kaldi jobs - -### Run distributed training - -``` -# Change the variables according to your needs -SUBMARINE_VERSION=3.3.0-SNAPSHOT -WORKER_NUM=2 -SGE_CFG_PATH=/cfg -THCHS30_PATH=/data/hdfs1/nfs/aisearch/kaldi/thchs30 -DOCKER_HADOOP_HDFS_HOME=/app/${SUBMARINE_VERSION} - -# Dependent on registrydns, you must fill in < your RegistryDNSIP> in resolv.conf -yarn jar /usr/local/matrix/share/hadoop/yarn/${SUBMARINE_VERSION}.jar \ -job run --name kaldi-thchs30-distributed \ ---env DOCKER_JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre/ \ ---env DOCKER_HADOOP_HDFS_HOME=$DOCKER_HADOOP_HDFS_HOME \ ---env YARN_CONTAINER_RUNTIME_DOCKER_CONTAINER_NETWORK=calico-network \ ---env PYTHONUNBUFFERED="0" \ ---env TZ="Asia/Shanghai" \ ---env YARN_CONTAINER_RUNTIME_DOCKER_MOUNTS=${THCHS30_PATH}/sge/resolv.conf:/etc/resolv.conf,\ -${THCHS30_PATH}/sge/passwd:/etc/passwd:rw,\ -${THCHS30_PATH}/sge/group:/etc/group:rw,\ -${THCHS30_PATH}/sge:$SGE_CFG_PATH,\ -${THCHS30_PATH}/data:/opt/kaldi/egs/thchs30,\ -${THCHS30_PATH}/mul/s5:/opt/kaldi/egs/mul-thchs30/s5 \ ---input_path /opt/kaldi/egs/thchs30/data \ ---docker_image hadoopsubmarine/kaldi-latest-gpu-base:0.0.1 \ ---num_workers $WORKER_NUM \ ---worker_resources memory=64G,vcores=32,gpu=1 \ ---worker_launch_cmd "sudo mkdir -p /opt/kaldi/egs/mul-thchs30/s5 && \ -sudo cp /opt/kaldi/egs/thchs30/s5/* /opt/kaldi/egs/mul-thchs30/s5 -r && \ -cluster_user=`whoami` domain_suffix="ml.com" && \ -cd /cfg && bash sge_run.sh $WORKER_NUM $SGE_CFG_PATH && \ -if [ $(echo $HOST_NAME |grep "^master-") ] then sleep 2m && cd /opt/kaldi/egs/mul-thchs30/s5 && ./run.sh fi" \ ---verbose -``` - -Explanations: - -- `>1` num_workers indicates it is a distributed training. -- Parameters / resources / Docker image of parameter server can be specified separately. For many cases, parameter server doesn't require GPU.We don't need parameter server here - -For the meaning of the individual parameters, see the [QuickStart](project/github/submarine/docs/userdocs/yarn/QuickStart.md) page! - -*Outputs of distributed training* - -Sample output of master: -``` -... -Reading package lists... -Building dependency tree... -Reading state information... -The following additional packages will be installed: - bsd-mailx cpio gridengine-common ifupdown iproute2 isc-dhcp-client - isc-dhcp-common libatm1 libdns-export162 libisc-export160 liblockfile-bin - liblockfile1 libmnl0 libxmuu1 libxtables11 ncurses-term netbase - openssh-client openssh-server openssh-sftp-server postfix python3-chardet - python3-pkg-resources python3-requests python3-six python3-urllib3 - ssh-import-id ssl-cert tcsh xauth -Suggested packages: - libarchive1 gridengine-qmon ppp rdnssd iproute2-doc resolvconf avahi-autoipd - isc-dhcp-client-ddns apparmor ssh-askpass libpam-ssh keychain monkeysphere - rssh molly-guard ufw procmail postfix-mysql postfix-pgsql postfix-ldap - postfix-pcre sasl2-bin libsasl2-modules dovecot-common postfix-cdb - postfix-doc python3-setuptools python3-ndg-httpsclient python3-openssl - python3-pyasn1 openssl-blacklist -The following NEW packages will be installed: - bsd-mailx cpio gridengine-client gridengine-common gridengine-exec - gridengine-master ifupdown iproute2 isc-dhcp-client isc-dhcp-common libatm1 - libdns-export162 libisc-export160 liblockfile-bin liblockfile1 libmnl0 - libxmuu1 libxtables11 ncurses-term netbase openssh-client openssh-server - openssh-sftp-server postfix python3-chardet python3-pkg-resources - python3-requests python3-six python3-urllib3 ssh-import-id ssl-cert tcsh - xauth -0 upgraded, 33 newly installed, 0 to remove and 30 not upgraded. -Need to get 12.1 MB of archives. -After this operation, 65.8 MB of additional disk space will be used. -Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libatm1 amd64 1:2.5.1-1.5 [24.2 kB] -Get:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libmnl0 amd64 1.0.3-5 [12.0 kB] -Get:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile-bin amd64 1.09-6ubuntu1 [10.8 kB] -Get:4 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile1 amd64 1.09-6ubuntu1 [8056 B] -Get:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 cpio amd64 2.11+dfsg-5ubuntu1 [74.8 kB] -Get:6 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 iproute2 amd64 4.3.0-1ubuntu3.16.04.5 [523 kB] -Get:7 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 ifupdown amd64 0.8.10ubuntu1.4 [54.9 kB] -Get:8 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libisc-export160 amd64 1:9.10.3.dfsg.P4-8ubuntu1.15 [153 kB] -Get:9 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdns-export162 amd64 1:9.10.3.dfsg.P4-8ubuntu1.15 [665 kB] -Get:10 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 isc-dhcp-client amd64 4.3.3-5ubuntu12.10 [224 kB] -Get:11 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 isc-dhcp-common amd64 4.3.3-5ubuntu12.10 [105 kB] -Get:12 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxtables11 amd64 1.6.0-2ubuntu3 [27.2 kB] -Get:13 http://archive.ubuntu.com/ubuntu xenial/main amd64 netbase all 5.3 [12.9 kB] -Get:14 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxmuu1 amd64 2:1.1.2-2 [9674 B] -Get:15 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-client amd64 1:7.2p2-4ubuntu2.8 [590 kB] -Get:16 http://archive.ubuntu.com/ubuntu xenial/main amd64 xauth amd64 1:1.0.9-1ubuntu2 [22.7 kB] -Get:17 http://archive.ubuntu.com/ubuntu xenial/main amd64 ssl-cert all 1.0.37 [16.9 kB] -Get:18 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 postfix amd64 3.1.0-3ubuntu0.3 [1152 kB] -Get:19 http://archive.ubuntu.com/ubuntu xenial/main amd64 bsd-mailx amd64 8.1.2-0.20160123cvs-2 [63.7 kB] -Get:20 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-common all 6.2u5-7.4 [156 kB] -Get:21 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-client amd64 6.2u5-7.4 [3394 kB] -Get:22 http://archive.ubuntu.com/ubuntu xenial/universe amd64 tcsh amd64 6.18.01-5 [410 kB] -Get:23 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-exec amd64 6.2u5-7.4 [990 kB] -Get:24 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-master amd64 6.2u5-7.4 [2429 kB] -Get:25 http://archive.ubuntu.com/ubuntu xenial/main amd64 ncurses-term all 6.0+20160213-1ubuntu1 [249 kB] -Get:26 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-sftp-server amd64 1:7.2p2-4ubuntu2.8 [38.9 kB] -Get:27 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-server amd64 1:7.2p2-4ubuntu2.8 [335 kB] -Get:28 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-pkg-resources all 20.7.0-1 [79.0 kB] -Get:29 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-chardet all 2.3.0-2 [96.2 kB] -Get:30 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-six all 1.10.0-3 [11.0 kB] -Get:31 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 python3-urllib3 all 1.13.1-2ubuntu0.16.04.3 [58.5 kB] -Get:32 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 python3-requests all 2.9.1-3ubuntu0.1 [55.8 kB] -Get:33 http://archive.ubuntu.com/ubuntu xenial/main amd64 ssh-import-id all 5.5-0ubuntu1 [10.2 kB] -Fetched 12.1 MB in 0s (15.0 MB/s) -Selecting previously unselected package libatm1:amd64. -(Reading database ... -(Reading database ... 5% -(Reading database ... 10% -(Reading database ... 15% -(Reading database ... 20% -(Reading database ... 25% -(Reading database ... 30% -(Reading database ... 35% -(Reading database ... 40% -(Reading database ... 45% -(Reading database ... 50% -(Reading database ... 55% -(Reading database ... 60% -(Reading database ... 65% -(Reading database ... 70% -(Reading database ... 75% -(Reading database ... 80% -(Reading database ... 85% -(Reading database ... 90% -(Reading database ... 95% -(Reading database ... 100% -(Reading database ... 21398 files and directories currently installed.) -Preparing to unpack .../libatm1_1%3a2.5.1-1.5_amd64.deb ... -Unpacking libatm1:amd64 (1:2.5.1-1.5) ... -Selecting previously unselected package libmnl0:amd64. -Preparing to unpack .../libmnl0_1.0.3-5_amd64.deb ... -Unpacking libmnl0:amd64 (1.0.3-5) ... -Selecting previously unselected package liblockfile-bin. -Preparing to unpack .../liblockfile-bin_1.09-6ubuntu1_amd64.deb ... -Unpacking liblockfile-bin (1.09-6ubuntu1) ... -Selecting previously unselected package liblockfile1:amd64. -Preparing to unpack .../liblockfile1_1.09-6ubuntu1_amd64.deb ... -Unpacking liblockfile1:amd64 (1.09-6ubuntu1) ... -Selecting previously unselected package cpio. -Preparing to unpack .../cpio_2.11+dfsg-5ubuntu1_amd64.deb ... -Unpacking cpio (2.11+dfsg-5ubuntu1) ... -Selecting previously unselected package iproute2. -Preparing to unpack .../iproute2_4.3.0-1ubuntu3.16.04.5_amd64.deb ... -Unpacking iproute2 (4.3.0-1ubuntu3.16.04.5) ... -Selecting previously unselected package ifupdown. -Preparing to unpack .../ifupdown_0.8.10ubuntu1.4_amd64.deb ... -Unpacking ifupdown (0.8.10ubuntu1.4) ... -Selecting previously unselected package libisc-export160. -Preparing to unpack .../libisc-export160_1%3a9.10.3.dfsg.P4-8ubuntu1.15_amd64.deb ... -Unpacking libisc-export160 (1:9.10.3.dfsg.P4-8ubuntu1.15) ... -Selecting previously unselected package libdns-export162. -Preparing to unpack .../libdns-export162_1%3a9.10.3.dfsg.P4-8ubuntu1.15_amd64.deb ... -Unpacking libdns-export162 (1:9.10.3.dfsg.P4-8ubuntu1.15) ... -Selecting previously unselected package isc-dhcp-client. -Preparing to unpack .../isc-dhcp-client_4.3.3-5ubuntu12.10_amd64.deb ... -Unpacking isc-dhcp-client (4.3.3-5ubuntu12.10) ... -Selecting previously unselected package isc-dhcp-common. -Preparing to unpack .../isc-dhcp-common_4.3.3-5ubuntu12.10_amd64.deb ... -Unpacking isc-dhcp-common (4.3.3-5ubuntu12.10) ... -Selecting previously unselected package libxtables11:amd64. -Preparing to unpack .../libxtables11_1.6.0-2ubuntu3_amd64.deb ... -Unpacking libxtables11:amd64 (1.6.0-2ubuntu3) ... -Selecting previously unselected package netbase. -Preparing to unpack .../archives/netbase_5.3_all.deb ... -Unpacking netbase (5.3) ... -Selecting previously unselected package libxmuu1:amd64. -Preparing to unpack .../libxmuu1_2%3a1.1.2-2_amd64.deb ... -Unpacking libxmuu1:amd64 (2:1.1.2-2) ... -Selecting previously unselected package openssh-client. -Preparing to unpack .../openssh-client_1%3a7.2p2-4ubuntu2.8_amd64.deb ... -Unpacking openssh-client (1:7.2p2-4ubuntu2.8) ... -Selecting previously unselected package xauth. -Preparing to unpack .../xauth_1%3a1.0.9-1ubuntu2_amd64.deb ... -Unpacking xauth (1:1.0.9-1ubuntu2) ... -Selecting previously unselected package ssl-cert. -Preparing to unpack .../ssl-cert_1.0.37_all.deb ... -Unpacking ssl-cert (1.0.37) ... -Selecting previously unselected package postfix. -Preparing to unpack .../postfix_3.1.0-3ubuntu0.3_amd64.deb ... -Unpacking postfix (3.1.0-3ubuntu0.3) ... -Selecting previously unselected package bsd-mailx. -Preparing to unpack .../bsd-mailx_8.1.2-0.20160123cvs-2_amd64.deb ... -Unpacking bsd-mailx (8.1.2-0.20160123cvs-2) ... -Selecting previously unselected package gridengine-common. -Preparing to unpack .../gridengine-common_6.2u5-7.4_all.deb ... -Unpacking gridengine-common (6.2u5-7.4) ... -Selecting previously unselected package gridengine-client. -Preparing to unpack .../gridengine-client_6.2u5-7.4_amd64.deb ... -Unpacking gridengine-client (6.2u5-7.4) ... -Selecting previously unselected package tcsh. -Preparing to unpack .../tcsh_6.18.01-5_amd64.deb ... -Unpacking tcsh (6.18.01-5) ... -Selecting previously unselected package gridengine-exec. -Preparing to unpack .../gridengine-exec_6.2u5-7.4_amd64.deb ... -Unpacking gridengine-exec (6.2u5-7.4) ... -Selecting previously unselected package gridengine-master. -Preparing to unpack .../gridengine-master_6.2u5-7.4_amd64.deb ... -Unpacking gridengine-master (6.2u5-7.4) ... -Selecting previously unselected package ncurses-term. -Preparing to unpack .../ncurses-term_6.0+20160213-1ubuntu1_all.deb ... -Unpacking ncurses-term (6.0+20160213-1ubuntu1) ... -Selecting previously unselected package openssh-sftp-server. -Preparing to unpack .../openssh-sftp-server_1%3a7.2p2-4ubuntu2.8_amd64.deb ... -Unpacking openssh-sftp-server (1:7.2p2-4ubuntu2.8) ... -Selecting previously unselected package openssh-server. -Preparing to unpack .../openssh-server_1%3a7.2p2-4ubuntu2.8_amd64.deb ... -Unpacking openssh-server (1:7.2p2-4ubuntu2.8) ... -Selecting previously unselected package python3-pkg-resources. -Preparing to unpack .../python3-pkg-resources_20.7.0-1_all.deb ... -Unpacking python3-pkg-resources (20.7.0-1) ... -Selecting previously unselected package python3-chardet. -Preparing to unpack .../python3-chardet_2.3.0-2_all.deb ... -Unpacking python3-chardet (2.3.0-2) ... -Selecting previously unselected package python3-six. -Preparing to unpack .../python3-six_1.10.0-3_all.deb ... -Unpacking python3-six (1.10.0-3) ... -Selecting previously unselected package python3-urllib3. -Preparing to unpack .../python3-urllib3_1.13.1-2ubuntu0.16.04.3_all.deb ... -Unpacking python3-urllib3 (1.13.1-2ubuntu0.16.04.3) ... -Selecting previously unselected package python3-requests. -Preparing to unpack .../python3-requests_2.9.1-3ubuntu0.1_all.deb ... -Unpacking python3-requests (2.9.1-3ubuntu0.1) ... -Selecting previously unselected package ssh-import-id. -Preparing to unpack .../ssh-import-id_5.5-0ubuntu1_all.deb ... -Unpacking ssh-import-id (5.5-0ubuntu1) ... -Processing triggers for systemd (229-4ubuntu21.22) ... -Processing triggers for libc-bin (2.23-0ubuntu11) ... -Setting up libatm1:amd64 (1:2.5.1-1.5) ... -Setting up libmnl0:amd64 (1.0.3-5) ... -Setting up liblockfile-bin (1.09-6ubuntu1) ... -Setting up liblockfile1:amd64 (1.09-6ubuntu1) ... -Setting up cpio (2.11+dfsg-5ubuntu1) ... -update-alternatives: using /bin/mt-gnu to provide /bin/mt (mt) in auto mode -Setting up iproute2 (4.3.0-1ubuntu3.16.04.5) ... -Setting up ifupdown (0.8.10ubuntu1.4) ... -Creating /etc/network/interfaces. -Setting up libisc-export160 (1:9.10.3.dfsg.P4-8ubuntu1.15) ... -Setting up libdns-export162 (1:9.10.3.dfsg.P4-8ubuntu1.15) ... -Setting up isc-dhcp-client (4.3.3-5ubuntu12.10) ... -Setting up isc-dhcp-common (4.3.3-5ubuntu12.10) ... -Setting up libxtables11:amd64 (1.6.0-2ubuntu3) ... -Setting up netbase (5.3) ... -Setting up libxmuu1:amd64 (2:1.1.2-2) ... -Setting up openssh-client (1:7.2p2-4ubuntu2.8) ... -Setting up xauth (1:1.0.9-1ubuntu2) ... -Setting up ssl-cert (1.0.37) ... -Setting up postfix (3.1.0-3ubuntu0.3) ... -Creating /etc/postfix/dynamicmaps.cf -setting myhostname: master-0.XXX -setting alias maps -setting alias database -changing /etc/mailname to master-0.XXX -setting myorigin -setting destinations: $myhostname, master-0.XXX, localhost.XXX, , localhost -setting relayhost: -setting mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 -setting mailbox_size_limit: 0 -setting recipient_delimiter: + -setting inet_interfaces: all -setting inet_protocols: all -/etc/aliases does not exist, creating it. -WARNING: /etc/aliases exists, but does not have a root alias. - -Postfix is now set up with a default configuration. If you need to make -changes, edit -/etc/postfix/main.cf (and others) as needed. To view Postfix configuration -values, see postconf(1). - -After modifying main.cf, be sure to run '/etc/init.d/postfix reload'. - -Running newaliases -invoke-rc.d: could not determine current runlevel -invoke-rc.d: policy-rc.d denied execution of restart. -Setting up bsd-mailx (8.1.2-0.20160123cvs-2) ... -update-alternatives: using /usr/bin/bsd-mailx to provide /usr/bin/mailx (mailx) in auto mode -Setting up gridengine-common (6.2u5-7.4) ... - -Creating config file /etc/default/gridengine with new version -Setting up gridengine-client (6.2u5-7.4) ... -Setting up tcsh (6.18.01-5) ... -update-alternatives: using /bin/tcsh to provide /bin/csh (csh) in auto mode -Setting up gridengine-exec (6.2u5-7.4) ... -invoke-rc.d: could not determine current runlevel -invoke-rc.d: policy-rc.d denied execution of start. -Setting up gridengine-master (6.2u5-7.4) ... -su: Authentication failure -(Ignored) -Initializing cluster with the following parameters: - => SGE_ROOT: /var/lib/gridengine - => SGE_CELL: default - => Spool directory: /var/spool/gridengine/spooldb - => Initial manager user: sgeadmin -Initializing spool (/var/spool/gridengine/spooldb) -Initializing global configuration based on /usr/share/gridengine/default-configuration -Initializing complexes based on /usr/share/gridengine/centry -Initializing usersets based on /usr/share/gridengine/usersets -Adding user sgeadmin as a manager -Cluster creation complete -invoke-rc.d: could not determine current runlevel -invoke-rc.d: policy-rc.d denied execution of start. -Setting up ncurses-term (6.0+20160213-1ubuntu1) ... -Setting up openssh-sftp-server (1:7.2p2-4ubuntu2.8) ... -Setting up openssh-server (1:7.2p2-4ubuntu2.8) ... -Creating SSH2 RSA key; this may take some time ... -2048 SHA256:hfQpES1aS4cjF8AOCIParZR6342vdwutoyITru0wtuE root@master-0.XXX (RSA) -Creating SSH2 DSA key; this may take some time ... -1024 SHA256:gOsPMVgwXBHJzixN/gtJAG+hVCHqw8t7Fhy4nsx8od0 root@master-0.XXX (DSA) -Creating SSH2 ECDSA key; this may take some time ... -256 SHA256:3D5SNniUb4z+/BuqXheFgG+DfjsxXqTT/zwWAqdX4jM root@master-0.XXX (ECDSA) -Creating SSH2 ED25519 key; this may take some time ... -256 SHA256:SwyeV9iSqOW4TKLi4Wvc0zD8lWtupHCJpDu8oWBwbfU root@master-0.XXX (ED25519) -invoke-rc.d: could not determine current runlevel -invoke-rc.d: policy-rc.d denied execution of start. -Setting up python3-pkg-resources (20.7.0-1) ... -Setting up python3-chardet (2.3.0-2) ... -Setting up python3-six (1.10.0-3) ... -Setting up python3-urllib3 (1.13.1-2ubuntu0.16.04.3) ... -Setting up python3-requests (2.9.1-3ubuntu0.1) ... -Setting up ssh-import-id (5.5-0ubuntu1) ... -Processing triggers for libc-bin (2.23-0ubuntu11) ... -Processing triggers for systemd (229-4ubuntu21.22) ... -Reading package lists... -Building dependency tree... -Reading state information... -0 upgraded, 0 newly installed, 0 to remove and 30 not upgraded. -``` - -cat $SGE_CFG_PATH/setcfg.log -``` -finish master -add worker node worker-0.XXX -``` - -Sample output of worker: -``` -please wait -Reading package lists... -Building dependency tree... -Reading state information... -The following additional packages will be installed: - bsd-mailx cpio gridengine-common ifupdown iproute2 isc-dhcp-client - isc-dhcp-common libatm1 libdns-export162 libisc-export160 liblockfile-bin - liblockfile1 libmnl0 libxmuu1 libxtables11 ncurses-term netbase - openssh-client openssh-server openssh-sftp-server postfix python3-chardet - python3-pkg-resources python3-requests python3-six python3-urllib3 - ssh-import-id ssl-cert tcsh xauth -Suggested packages: - libarchive1 gridengine-qmon ppp rdnssd iproute2-doc resolvconf avahi-autoipd - isc-dhcp-client-ddns apparmor ssh-askpass libpam-ssh keychain monkeysphere - rssh molly-guard ufw procmail postfix-mysql postfix-pgsql postfix-ldap - postfix-pcre sasl2-bin libsasl2-modules dovecot-common postfix-cdb - postfix-doc python3-setuptools python3-ndg-httpsclient python3-openssl - python3-pyasn1 openssl-blacklist -The following NEW packages will be installed: - bsd-mailx cpio gridengine-client gridengine-common gridengine-exec ifupdown - iproute2 isc-dhcp-client isc-dhcp-common libatm1 libdns-export162 - libisc-export160 liblockfile-bin liblockfile1 libmnl0 libxmuu1 libxtables11 - ncurses-term netbase openssh-client openssh-server openssh-sftp-server - postfix python3-chardet python3-pkg-resources python3-requests python3-six - python3-urllib3 ssh-import-id ssl-cert tcsh xauth -0 upgraded, 32 newly installed, 0 to remove and 30 not upgraded. -Need to get 9633 kB of archives. -After this operation, 51.2 MB of additional disk space will be used. -Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libatm1 amd64 1:2.5.1-1.5 [24.2 kB] -Get:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libmnl0 amd64 1.0.3-5 [12.0 kB] -Get:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile-bin amd64 1.09-6ubuntu1 [10.8 kB] -Get:4 http://archive.ubuntu.com/ubuntu xenial/main amd64 liblockfile1 amd64 1.09-6ubuntu1 [8056 B] -Get:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 cpio amd64 2.11+dfsg-5ubuntu1 [74.8 kB] -Get:6 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 iproute2 amd64 4.3.0-1ubuntu3.16.04.5 [523 kB] -Get:7 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 ifupdown amd64 0.8.10ubuntu1.4 [54.9 kB] -Get:8 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libisc-export160 amd64 1:9.10.3.dfsg.P4-8ubuntu1.15 [153 kB] -Get:9 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libdns-export162 amd64 1:9.10.3.dfsg.P4-8ubuntu1.15 [665 kB] -Get:10 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 isc-dhcp-client amd64 4.3.3-5ubuntu12.10 [224 kB] -Get:11 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 isc-dhcp-common amd64 4.3.3-5ubuntu12.10 [105 kB] -Get:12 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxtables11 amd64 1.6.0-2ubuntu3 [27.2 kB] -Get:13 http://archive.ubuntu.com/ubuntu xenial/main amd64 netbase all 5.3 [12.9 kB] -Get:14 http://archive.ubuntu.com/ubuntu xenial/main amd64 libxmuu1 amd64 2:1.1.2-2 [9674 B] -Get:15 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-client amd64 1:7.2p2-4ubuntu2.8 [590 kB] -Get:16 http://archive.ubuntu.com/ubuntu xenial/main amd64 xauth amd64 1:1.0.9-1ubuntu2 [22.7 kB] -Get:17 http://archive.ubuntu.com/ubuntu xenial/main amd64 ssl-cert all 1.0.37 [16.9 kB] -Get:18 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 postfix amd64 3.1.0-3ubuntu0.3 [1152 kB] -Get:19 http://archive.ubuntu.com/ubuntu xenial/main amd64 bsd-mailx amd64 8.1.2-0.20160123cvs-2 [63.7 kB] -Get:20 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-common all 6.2u5-7.4 [156 kB] -Get:21 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-client amd64 6.2u5-7.4 [3394 kB] -Get:22 http://archive.ubuntu.com/ubuntu xenial/universe amd64 tcsh amd64 6.18.01-5 [410 kB] -Get:23 http://archive.ubuntu.com/ubuntu xenial/universe amd64 gridengine-exec amd64 6.2u5-7.4 [990 kB] -Get:24 http://archive.ubuntu.com/ubuntu xenial/main amd64 ncurses-term all 6.0+20160213-1ubuntu1 [249 kB] -Get:25 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-sftp-server amd64 1:7.2p2-4ubuntu2.8 [38.9 kB] -Get:26 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 openssh-server amd64 1:7.2p2-4ubuntu2.8 [335 kB] -Get:27 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-pkg-resources all 20.7.0-1 [79.0 kB] -Get:28 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-chardet all 2.3.0-2 [96.2 kB] -Get:29 http://archive.ubuntu.com/ubuntu xenial/main amd64 python3-six all 1.10.0-3 [11.0 kB] -Get:30 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 python3-urllib3 all 1.13.1-2ubuntu0.16.04.3 [58.5 kB] -Get:31 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 python3-requests all 2.9.1-3ubuntu0.1 [55.8 kB] -Get:32 http://archive.ubuntu.com/ubuntu xenial/main amd64 ssh-import-id all 5.5-0ubuntu1 [10.2 kB] -Fetched 9633 kB in 2s (4496 kB/s) -Selecting previously unselected package libatm1:amd64. -(Reading database ... -(Reading database ... 5% -(Reading database ... 10% -(Reading database ... 15% -(Reading database ... 20% -(Reading database ... 25% -(Reading database ... 30% -(Reading database ... 35% -(Reading database ... 40% -(Reading database ... 45% -(Reading database ... 50% -(Reading database ... 55% -(Reading database ... 60% -(Reading database ... 65% -(Reading database ... 70% -(Reading database ... 75% -(Reading database ... 80% -(Reading database ... 85% -(Reading database ... 90% -(Reading database ... 95% -(Reading database ... 100% -(Reading database ... 21398 files and directories currently installed.) -Preparing to unpack .../libatm1_1%3a2.5.1-1.5_amd64.deb ... -Unpacking libatm1:amd64 (1:2.5.1-1.5) ... -Selecting previously unselected package libmnl0:amd64. -Preparing to unpack .../libmnl0_1.0.3-5_amd64.deb ... -Unpacking libmnl0:amd64 (1.0.3-5) ... -Selecting previously unselected package liblockfile-bin. -Preparing to unpack .../liblockfile-bin_1.09-6ubuntu1_amd64.deb ... -Unpacking liblockfile-bin (1.09-6ubuntu1) ... -Selecting previously unselected package liblockfile1:amd64. -Preparing to unpack .../liblockfile1_1.09-6ubuntu1_amd64.deb ... -Unpacking liblockfile1:amd64 (1.09-6ubuntu1) ... -Selecting previously unselected package cpio. -Preparing to unpack .../cpio_2.11+dfsg-5ubuntu1_amd64.deb ... -Unpacking cpio (2.11+dfsg-5ubuntu1) ... -Selecting previously unselected package iproute2. -Preparing to unpack .../iproute2_4.3.0-1ubuntu3.16.04.5_amd64.deb ... -Unpacking iproute2 (4.3.0-1ubuntu3.16.04.5) ... -Selecting previously unselected package ifupdown. -Preparing to unpack .../ifupdown_0.8.10ubuntu1.4_amd64.deb ... -Unpacking ifupdown (0.8.10ubuntu1.4) ... -Selecting previously unselected package libisc-export160. -Preparing to unpack .../libisc-export160_1%3a9.10.3.dfsg.P4-8ubuntu1.15_amd64.deb ... -Unpacking libisc-export160 (1:9.10.3.dfsg.P4-8ubuntu1.15) ... -Selecting previously unselected package libdns-export162. -Preparing to unpack .../libdns-export162_1%3a9.10.3.dfsg.P4-8ubuntu1.15_amd64.deb ... -Unpacking libdns-export162 (1:9.10.3.dfsg.P4-8ubuntu1.15) ... -Selecting previously unselected package isc-dhcp-client. -Preparing to unpack .../isc-dhcp-client_4.3.3-5ubuntu12.10_amd64.deb ... -Unpacking isc-dhcp-client (4.3.3-5ubuntu12.10) ... -Selecting previously unselected package isc-dhcp-common. -Preparing to unpack .../isc-dhcp-common_4.3.3-5ubuntu12.10_amd64.deb ... -Unpacking isc-dhcp-common (4.3.3-5ubuntu12.10) ... -Selecting previously unselected package libxtables11:amd64. -Preparing to unpack .../libxtables11_1.6.0-2ubuntu3_amd64.deb ... -Unpacking libxtables11:amd64 (1.6.0-2ubuntu3) ... -Selecting previously unselected package netbase. -Preparing to unpack .../archives/netbase_5.3_all.deb ... -Unpacking netbase (5.3) ... -Selecting previously unselected package libxmuu1:amd64. -Preparing to unpack .../libxmuu1_2%3a1.1.2-2_amd64.deb ... -Unpacking libxmuu1:amd64 (2:1.1.2-2) ... -Selecting previously unselected package openssh-client. -Preparing to unpack .../openssh-client_1%3a7.2p2-4ubuntu2.8_amd64.deb ... -Unpacking openssh-client (1:7.2p2-4ubuntu2.8) ... -Selecting previously unselected package xauth. -Preparing to unpack .../xauth_1%3a1.0.9-1ubuntu2_amd64.deb ... -Unpacking xauth (1:1.0.9-1ubuntu2) ... -Selecting previously unselected package ssl-cert. -Preparing to unpack .../ssl-cert_1.0.37_all.deb ... -Unpacking ssl-cert (1.0.37) ... -Selecting previously unselected package postfix. -Preparing to unpack .../postfix_3.1.0-3ubuntu0.3_amd64.deb ... -Unpacking postfix (3.1.0-3ubuntu0.3) ... -Selecting previously unselected package bsd-mailx. -Preparing to unpack .../bsd-mailx_8.1.2-0.20160123cvs-2_amd64.deb ... -Unpacking bsd-mailx (8.1.2-0.20160123cvs-2) ... -Selecting previously unselected package gridengine-common. -Preparing to unpack .../gridengine-common_6.2u5-7.4_all.deb ... -Unpacking gridengine-common (6.2u5-7.4) ... -Selecting previously unselected package gridengine-client. -Preparing to unpack .../gridengine-client_6.2u5-7.4_amd64.deb ... -Unpacking gridengine-client (6.2u5-7.4) ... -Selecting previously unselected package tcsh. -Preparing to unpack .../tcsh_6.18.01-5_amd64.deb ... -Unpacking tcsh (6.18.01-5) ... -Selecting previously unselected package gridengine-exec. -Preparing to unpack .../gridengine-exec_6.2u5-7.4_amd64.deb ... -Unpacking gridengine-exec (6.2u5-7.4) ... -Selecting previously unselected package ncurses-term. -Preparing to unpack .../ncurses-term_6.0+20160213-1ubuntu1_all.deb ... -Unpacking ncurses-term (6.0+20160213-1ubuntu1) ... -Selecting previously unselected package openssh-sftp-server. -Preparing to unpack .../openssh-sftp-server_1%3a7.2p2-4ubuntu2.8_amd64.deb ... -Unpacking openssh-sftp-server (1:7.2p2-4ubuntu2.8) ... -Selecting previously unselected package openssh-server. -Preparing to unpack .../openssh-server_1%3a7.2p2-4ubuntu2.8_amd64.deb ... -Unpacking openssh-server (1:7.2p2-4ubuntu2.8) ... -Selecting previously unselected package python3-pkg-resources. -Preparing to unpack .../python3-pkg-resources_20.7.0-1_all.deb ... -Unpacking python3-pkg-resources (20.7.0-1) ... -Selecting previously unselected package python3-chardet. -Preparing to unpack .../python3-chardet_2.3.0-2_all.deb ... -Unpacking python3-chardet (2.3.0-2) ... -Selecting previously unselected package python3-six. -Preparing to unpack .../python3-six_1.10.0-3_all.deb ... -Unpacking python3-six (1.10.0-3) ... -Selecting previously unselected package python3-urllib3. -Preparing to unpack .../python3-urllib3_1.13.1-2ubuntu0.16.04.3_all.deb ... -Unpacking python3-urllib3 (1.13.1-2ubuntu0.16.04.3) ... -Selecting previously unselected package python3-requests. -Preparing to unpack .../python3-requests_2.9.1-3ubuntu0.1_all.deb ... -Unpacking python3-requests (2.9.1-3ubuntu0.1) ... -Selecting previously unselected package ssh-import-id. -Preparing to unpack .../ssh-import-id_5.5-0ubuntu1_all.deb ... -Unpacking ssh-import-id (5.5-0ubuntu1) ... -Processing triggers for systemd (229-4ubuntu21.22) ... -Processing triggers for libc-bin (2.23-0ubuntu11) ... -Setting up libatm1:amd64 (1:2.5.1-1.5) ... -Setting up libmnl0:amd64 (1.0.3-5) ... -Setting up liblockfile-bin (1.09-6ubuntu1) ... -Setting up liblockfile1:amd64 (1.09-6ubuntu1) ... -Setting up cpio (2.11+dfsg-5ubuntu1) ... -update-alternatives: using /bin/mt-gnu to provide /bin/mt (mt) in auto mode -Setting up iproute2 (4.3.0-1ubuntu3.16.04.5) ... -Setting up ifupdown (0.8.10ubuntu1.4) ... -Creating /etc/network/interfaces. -Setting up libisc-export160 (1:9.10.3.dfsg.P4-8ubuntu1.15) ... -Setting up libdns-export162 (1:9.10.3.dfsg.P4-8ubuntu1.15) ... -Setting up isc-dhcp-client (4.3.3-5ubuntu12.10) ... -Setting up isc-dhcp-common (4.3.3-5ubuntu12.10) ... -Setting up libxtables11:amd64 (1.6.0-2ubuntu3) ... -Setting up netbase (5.3) ... -Setting up libxmuu1:amd64 (2:1.1.2-2) ... -Setting up openssh-client (1:7.2p2-4ubuntu2.8) ... -Setting up xauth (1:1.0.9-1ubuntu2) ... -Setting up ssl-cert (1.0.37) ... -Setting up postfix (3.1.0-3ubuntu0.3) ... -Creating /etc/postfix/dynamicmaps.cf -setting myhostname: worker-0.XXX -setting alias maps -setting alias database -changing /etc/mailname to worker-0.XXX -setting myorigin -setting destinations: $myhostname, worker-0.XXX, localhost.XXX, , localhost -setting relayhost: -setting mynetworks: 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 -setting mailbox_size_limit: 0 -setting recipient_delimiter: + -setting inet_interfaces: all -setting inet_protocols: all -/etc/aliases does not exist, creating it. -WARNING: /etc/aliases exists, but does not have a root alias. - -Postfix is now set up with a default configuration. If you need to make -changes, edit -/etc/postfix/main.cf (and others) as needed. To view Postfix configuration -values, see postconf(1). - -After modifying main.cf, be sure to run '/etc/init.d/postfix reload'. - -Running newaliases -invoke-rc.d: could not determine current runlevel -invoke-rc.d: policy-rc.d denied execution of restart. -Setting up bsd-mailx (8.1.2-0.20160123cvs-2) ... -update-alternatives: using /usr/bin/bsd-mailx to provide /usr/bin/mailx (mailx) in auto mode -Setting up gridengine-common (6.2u5-7.4) ... - -Creating config file /etc/default/gridengine with new version -Setting up gridengine-client (6.2u5-7.4) ... -Setting up tcsh (6.18.01-5) ... -update-alternatives: using /bin/tcsh to provide /bin/csh (csh) in auto mode -Setting up gridengine-exec (6.2u5-7.4) ... -invoke-rc.d: could not determine current runlevel -invoke-rc.d: policy-rc.d denied execution of start. -Setting up ncurses-term (6.0+20160213-1ubuntu1) ... -Setting up openssh-sftp-server (1:7.2p2-4ubuntu2.8) ... -Setting up openssh-server (1:7.2p2-4ubuntu2.8) ... -Creating SSH2 RSA key; this may take some time ... -2048 SHA256:ok/TxzwtF5W8I55sDxrt4Agy4fuWn39BiSovvDObhVE root@worker-0.XXX (RSA) -Creating SSH2 DSA key; this may take some time ... -1024 SHA256:4y48kVYt3mS3q1KgZzEoYMnS/2d/tA8TJUK5uNSaxZY root@worker-0.XXX (DSA) -Creating SSH2 ECDSA key; this may take some time ... -256 SHA256:4D7zm4cD2IbDnHoXnzcIo3FISbvOW8eOstGBNf1/bvo root@worker-0.XXX (ECDSA) -Creating SSH2 ED25519 key; this may take some time ... -256 SHA256:/HrA3xiZiH5CZkXwtcfE6GwcMM+hEhZzTdFHxj4PzDg root@worker-0.XXX (ED25519) -invoke-rc.d: could not determine current runlevel -invoke-rc.d: policy-rc.d denied execution of start. -Setting up python3-pkg-resources (20.7.0-1) ... -Setting up python3-chardet (2.3.0-2) ... -Setting up python3-six (1.10.0-3) ... -Setting up python3-urllib3 (1.13.1-2ubuntu0.16.04.3) ... -Setting up python3-requests (2.9.1-3ubuntu0.1) ... -Setting up ssh-import-id (5.5-0ubuntu1) ... -Processing triggers for libc-bin (2.23-0ubuntu11) ... -Processing triggers for systemd (229-4ubuntu21.22) ... -Reading package lists... -Building dependency tree... -Reading state information... -0 upgraded, 0 newly installed, 0 to remove and 30 not upgraded. -``` - -cat $SGE_CFG_PATH/setcfg.log -``` -please wait -Start SGE for worker is finished -done for worker-0.XXX worker. -``` - -Sample output of sge: -![alt text](pictures/sge_cluster.png "SGE for multiple jobs") - -![alt text](pictures/sge_stat.png "SGE for user multiple jobs") diff --git a/docs/ecosystem/kaldi/WriteDockerfileKaldi.md b/docs/ecosystem/kaldi/WriteDockerfileKaldi.md deleted file mode 100644 index 8e0449b..0000000 --- a/docs/ecosystem/kaldi/WriteDockerfileKaldi.md +++ /dev/null @@ -1,112 +0,0 @@ - - -## Creating Docker Images for Running Kaldi on YARN - -### How to create docker images to run Kaldi on YARN - -Dockerfile to run Kaldi on YARN need two part: - -**Base libraries which Kaldi depends on** - -1) OS base image, for example ```nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04``` - -2) Kaldi depended libraries and packages. For example ```python```, ```g++```, ```make```. For GPU support, need ```cuda```, ```cudnn```, etc. - -3) Kaldi compile. - -**Libraries to access HDFS** - -1) JDK - -2) Hadoop - -Here's an example of a base image (w/o GPU support) to install Kaldi: -```shell -FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04 - -RUN apt-get clean && \ - apt-get update && \ - apt-get install -y --no-install-recommends \ - sudo \ - openjdk-8-jdk \ - iputils-ping \ - g++ \ - make \ - automake \ - autoconf \ - bzip2 \ - unzip \ - wget \ - sox \ - libtool \ - git \ - subversion \ - python2.7 \ - python3 \ - zlib1g-dev \ - ca-certificates \ - patch \ - ffmpeg \ - vim && \ - rm -rf /var/lib/apt/lists/* && \ - ln -s /usr/bin/python2.7 /usr/bin/python - -RUN git clone --depth 1 https://github.com/kaldi-asr/kaldi.git /opt/kaldi && \ - cd /opt/kaldi && \ - cd /opt/kaldi/tools && \ - ./extras/install_mkl.sh && \ - make -j $(nproc) && \ - cd /opt/kaldi/src && \ - ./configure --shared --use-cuda && \ - make depend -j $(nproc) && \ - make -j $(nproc) -``` - -On top of above image, add files, install packages to access HDFS -```shell -RUN apt-get update && apt-get install -y openjdk-8-jdk wget -# Install hadoop -ENV HADOOP_VERSION="3.2.1" -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz && \ - tar zxf hadoop-${HADOOP_VERSION}.tar.gz && \ - ln -s hadoop-${HADOOP_VERSION} hadoop-current && \ - rm hadoop-${HADOOP_VERSION}.tar.gz -``` - -Build and push to your own docker registry: Use ```docker build ... ``` and ```docker push ...``` to finish this step. - -### Use examples to build your own Kaldi docker images - -We provided following examples for you to build kaldi docker images. - -For latest Kaldi - -- *base/ubuntu-18.04/Dockerfile.gpu.kaldi_latest: Latest Kaldi that supports GPU, which is prebuilt to CUDA10, with models. - -### Build Docker images - -#### Manually build Docker image: - -Under `docker/` directory,The CLUSTER_NAME can be modified in build-all.sh to have installation permissions, run `build-all.sh` to build Docker images. It will build following images: - -- `kaldi-latest-gpu-base:0.0.1` for base Docker image which includes Hadoop, Kaldi, GPU base libraries, which includes thchs30 model. - -#### Use prebuilt images - -(No liability) -You can also use prebuilt images for convenience in the docker hub: -- hadoopsubmarine/kaldi-latest-gpu-base:0.0.1 diff --git a/docs/ecosystem/kaldi/base/ubuntu-18.04/Dockerfile.gpu.kaldi_latest b/docs/ecosystem/kaldi/base/ubuntu-18.04/Dockerfile.gpu.kaldi_latest deleted file mode 100644 index 44e2ae2..0000000 --- a/docs/ecosystem/kaldi/base/ubuntu-18.04/Dockerfile.gpu.kaldi_latest +++ /dev/null @@ -1,74 +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. - -FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04 - -RUN apt-get clean && \ - apt-get update && \ - apt-get install -y --no-install-recommends \ - sudo \ - openjdk-8-jdk \ - iputils-ping \ - g++ \ - make \ - automake \ - autoconf \ - bzip2 \ - unzip \ - wget \ - sox \ - libtool \ - git \ - subversion \ - python2.7 \ - python3 \ - zlib1g-dev \ - ca-certificates \ - patch \ - ffmpeg \ - vim && \ - rm -rf /var/lib/apt/lists/* && \ - ln -s /usr/bin/python2.7 /usr/bin/python - -RUN git clone --depth 1 https://github.com/kaldi-asr/kaldi.git /opt/kaldi && \ - cd /opt/kaldi && \ - cd /opt/kaldi/tools && \ - ./extras/install_mkl.sh && \ - make -j $(nproc) && \ - cd /opt/kaldi/src && \ - ./configure --shared --use-cuda && \ - make depend -j $(nproc) && \ - make -j $(nproc) - -WORKDIR / -# Install Hadoop -ENV HADOOP_VERSION="3.2.1" -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -ARG CLUSTER_NAME=submarine -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz && \ - tar zxf hadoop-${HADOOP_VERSION}.tar.gz && \ - ln -s hadoop-${HADOOP_VERSION} hadoop-current && \ - rm hadoop-${HADOOP_VERSION}.tar.gz - -RUN echo "Install python related packages" && \ - pip --no-cache-dir install Pillow h5py ipykernel jupyter matplotlib numpy pandas scipy sklearn && \ - python -m ipykernel.kernelspec - -ENV CLUSTER_NAME="admin" # Your cluster user sets root privileges -RUN echo "## Allow root to run any commands anywhere" >> /etc/sudoers && \ - echo "User_Alias USER_ROOT = tf-docker, $CLUSTER_NAME" >> /etc/sudoers && \ - echo "root ALL=(ALL) ALL" >> /etc/sudoers && \ - echo "USER_ROOT ALL=(ALL) ALL" >> /etc/sudoers && \ - echo "USER_ROOT ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers \ No newline at end of file diff --git a/docs/ecosystem/kaldi/build-all.sh b/docs/ecosystem/kaldi/build-all.sh deleted file mode 100755 index 61c590b..0000000 --- a/docs/ecosystem/kaldi/build-all.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash - -# 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. - -echo "Building base images" - -set -euo pipefail - -cd base/ubuntu-18.04 - -docker build --build-arg CLUSTER_NAME=test . -f Dockerfile.gpu.kaldi_latest -t kaldi-latest-gpu-base:0.0.1 - -echo "Finished building base images" diff --git a/docs/ecosystem/kaldi/pictures/sge_cluster.png b/docs/ecosystem/kaldi/pictures/sge_cluster.png deleted file mode 100644 index 9db22ee5d98f5349b735a3f525fed5666f1206d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 149752 zcmdqJXIN8Rx3-N`6#)eVrHk~cQk5>fLx5nYqVy(3K)Qga^d6)my@cMoAV}}MD-cQo zMCk+)-j#blW$*jh-?9IH|2V>8C7El?Ij(Vya}cJZrA&5{?j{}{9+|3&0tgR}*ar^} zU-CLJ@XCyv#}ytP;e9)Kc^wCNW%)ObZ`|};EM8kFTRB^~*}VoSKgYupkBTxdwPi4% zmTqykdB`@R=O`Tdwn&DIoh$(?{I#|@aCuqO8LBF}z`AXDvOn^re?(lU1@l!~QOEBw zB8|Gcqv1UZ*D=MSbgf|0P49sxw}d@A5UDpI*jh zl{F|a-eqxRepRzsMEW`A+V4VxLCgb~xptL=uzvfY9{jlW*ces`A+h_bWZ z;9HygOk|*E|2g?~%uvsn(yfcfl{4nqn)b+&ZFtVBG>_%%Di@RmHp{8gHuTWxd*NtG zmh=adg~aGA-EQ@g_$;N%>uU~9{`Cw$7oll!cVviTmsV0M3htm3Okj&7CGA;x zWp&{X0=7Pg9`dd6e;yUv8qn*UD=kUrN$>RRZV)j#IFKOx7S?Q>`lr|J!bvalU<-~A zNged{R=7mBdaIoHyJbDy+wt2z`~c-Axy(;a47uAK@;UIUlHAGG8n$Xl?KZ)Edpfvk zpg?>sxv}87sZ+uBsQN8hu_8yTg&z~6*Gp6m9E(E4Th zg^HF21-6sb+#urm^5|3BP0bescPzPNiC1anY>Pw4iJwrHQQr?Y|7uN3zx7S>;8|_T zaA$j0BDSy3JmkD_q?X6>lXNgmHQi-2jAqj6Pid&hYbu!lJ~4b5j{7W>^C6>VPgGCh zT%TNH^$wTRJV{`vrm{q#=hPe(%_PNUFs+e7pn^2T<)^hR*)Okzcr;A(W?_8f^&cM& za$gXcwq5=(uQJ);6Vt6omW|Q+mRB7!O_lY#34~1wi{#wknQHB_VGF$dzEpL}>eS@O`Z)1=vx@(WhFz zHco#o%#XHV{{jDD{}KOAQ~WrI!Ho6xUji=7?&d#E><{UTR()x_?={%$KpkLe4<0(+ zWukHG68)uX@#KK>*7euVb?1VhWylMfEWu1EM)KFpn}ru9?E>IyVHZ{SN19jz1N|MB zL~cg#8%^jMK%= z)gZ*g>lJ@|$mBC;B-!v?FZGFpS9BGkJkV6c_UEE|ANw?-ZS_7aI2q9sp;nG!j?$jA zP*52QD5qcC`qnP(E*YbBJsly3)PFAjBzS{q(7%lcTYOd zPu>M!rgoOP-C ze6OB)AS}VA9tJhtlUmkz=!=7(hZw{p>sxRg!lGf~252l{%EvCVt#v?;1 zLcJQ9lJi5UB7>LM3zTBT;F`i>z03Oxf^FUf9ca%!%=0JN9f{W_k7NCno!o#WynUsJ7EoWJQPc zVcvS}=nz%R9g8Kudi&{tl?rviwpz&BaYg>wiVp08-|4c~V^9>6Fv=5J;1@+NCdw$` zS&JFcmcdwFfQ}10fSZrwZ<$Ib-#Nb6Tc{H%QJ!Aiov(R#`bmJi{&o=sVUA>B%iEn- zqDwCF7q{*US!?vrv``-054ACRKaE~VtzB}>npESA@wpD=w3ki@s34piM0%M@6(&Fh z?WG#eBHB3L0B=$dc!k{r*5GkrRzNf9zSFT({u?cS8HDL`lmx2%q8uae8{eum*VlZf z&T)Q1BTIVO?{HY`e&N`ooJp^Sg|PORo&#WIt5HF8Vq>S2_}8w>;^E(ZFY9sVg{6h3 z?vcJ>Mx60=Sr&PGw0PToGja%6$TuTTw-|(cj<#>T=H&UW>+uL#@UC6g7YtgUmYOzx z;zs_D``{5GXoHlFOT`n3ad&+Xw9@9A=2SobL)dAd_IG!e`EZ(;7zyLsSc8MU_+Q7f z<`s8765M|OU$^_~ll+e#c~WH8)kYY+Lx5Lfq3@R*89b(RXQH~#{;ZdkN;i4Mk~Z)+ zEKR@~*TQEMe}>YUeQqhKt!!cf-ur*t2lrudckj!<3(s7NOJD(R#~GxXs|0aiYRZ`N zTy)yYlEGBH?oIvm{ZksZUcnhf4aL8{(m((DpZCn>xn8NHZJSWitbVSebH(I%WRP&*7meTOOSzZ1;+W@5Rf_;WWc!$OET;uVxS>q0Uj_ z`|sTUe(8Vx06P7IbOvslee{1lf&W~xe|=b4S9~s?@S0z@{*McbY=P@|ntl2h{*Mc} zwD1(QT}9J_{@11b=i=bu-_-=JQ#7PV!9BHqEd0NJ``?~S&yDPD?val||Lvv!?Z@mK z;JV^%!~^&L?YFq-{m1)ci(jLb>X~=Jh2DGRmvM?TkAY1p3~bhu=qiGLL_qjAw?Tdz z8e_*QSk6PHzc03}EFs0!K=J0%uyWUSTS8;ANG4 zTGurahL=F#h#me6p-2V9QK9{yuJI3Ab3fO~e0AE%HeaurqY3r28&n)$!l*b?Q-o}0 zJnc5OlFb9W-M7DfN*$HH7+QKeshQGiK6~e5lHjQ4OrbV&%~q!G%r}=sr-qa}50$3G znYO-xjh(EbpCPyoH`CsvK9K+T!OZ7p5J_sg|3xaT*}Kkk;Jv?EtTEhLzrTf6qcEO@ z^V<0K$NPUGXB^5;HnRr~Jc^nt?1jyJ4_g!O!a|K&+wm?~GoqxxxWW14>0+KL)nN~< z`Iq?`o3vRo-(ldK<`k~jfB6)B&bMgO;<*<&pr1CBAu;QBg*jCW;m%ZwqDvW-xmqHf zEYPHv_$~AL$1T*0ObL&1vjaYJ_WU|zc}wbgw8Tg&=45d*FF~s$4;DxJ_k}LP$3IpY z&+WWUcI5C)g+N8u5;&&B3Nt)YQ^ek6dIN7Y985$y1f&G#R1pX3yHX*{nHu1& zFyT|#SnqkK6rJ5g09HF6m^QQj&b)=4{MNpZDN|9`leOu$vcp{=w(3`7x7_SuTOW81 zr*;2MCN`&f!{XY&_^8dYw6^rQWzCF{L#S29&pC)qhSiVA`+6=z7#(I|$GJzPj$m=l zWK++Sb3|#y(4Ssr6gj-PEaD`-{=MsdN3ETew|}8lhT~iNLwky5vD<%N#P_oLxK*qf z6lnS4f4V%o6mYS(2{m>uuDiV0t%)%}*uGSp!5i^WW}c-R!wi~ZUzN9`?cLEkg=txJBq z)T7N&AWYI}Z*~-ftOl~{81@w7vj1k+HAx4!5#xSvGTHq@Qf1yGPdzjcF`* zVD{c@0-2SEk=w?doy96TQIhU<({@fotK1#P%VP3;!dUvc@m%HPB*Cy2bw;-#7$@N(Jwc}5Wo-d+oil`4mNGL?@1*<+^S%Mxy zP*IKee`ba3UzD~}w<81`7@O>UcdL4Dh6~QVNtG*=Y4RMug=J4RnQ&~`t0($(rrSWM zFN1{DL=S&}`2^SG<-536ew^a>nsy6nR? z&~U(<2;}0$W+?LBu&@E6JqwS_pMtn$d^G7N8)iKrW{tX*Spn6J*))J9%#@n5x}*8XfQGfs+X zX0H8?biX=3EX2G#*H^0JER#R^P9Z}WvPksP(8N`7@l>s;?7|e&G9!6->Lns@i-8L) z-8+%hPJEJ72qY?>s%<8SRgys@jP7z@`1?KyDkoH;ydx>%kypl*pUA#o!;+g))U|7cc>pQ+bquqO)m)zZUg3SVm!_h3ImE)h|CYD^>&LF^)CNbkc;EP~E9%||kBwEB%RF4&0y&D`7jsU(FYc0k zVb?$>&iv@*`yD`3cDj;%!ywJCc$)9IP9Sem7Q=gq=^bCn<0_0=huIO6fO9zb*H;fS z;knfs8|_geg=?Iesh0JN&Jr#A5%su4<9$4B=){0lnPr`z`zF2~DRgsYKQ>1NNdasl zrj_@8@dx?EBx(Jzfq=9Vxw_nvae{PQ>`NR5UY!PdvWzq9Gvwj9hqyc|4DxE?XaU4` zYbTeN=F@|nHFD<+k(i}wB1MNomGgo+H_Nd6PHNYyqe<-$xxH_xCVMKv-#mYX(#~Ah zL%c_r3oOrf*oeIx3V&IUJD~ZN8m|WaXBvy?t7c=8UkiIoX}x91Xzan$mjmj6dccB$qyWxp?xORVO8buVuG-Gg@Nb zMW$_UJx0b^pzR2R@|wyJmt0>76riX}5`=Y_xetq!xz(yC3kcA?DZSPUh+t(mPW=); zgu|P*WALIfIh}A{`r8Rr>x;dHh8+{%y}HdH5~fGUvW83#c>Y!dwWix?KDHPT6xMyQ z50t=UZcX<&K=u0#s{u20E5l-|3^aN6(W-VHORl|lU&JHMOKnDhgM-nC+%(s7xy1`b z7t#y5)$zNFbQ8$Cd_GR;N7eR%1Cg16z`C{!8@lY3!qDD^+n~M4&~eehgY)%cl=_{* ziw9g1`;EEdS>~dve(r};dfM}KBz43VH1T;^E;~P*vRtzQ1u`TNo%sf|i@vC~hM%Sj zStQG(K7|T@&kuO`uDJL+dpHg|tr?YGe7miC+@Ct!)X$N27BY`9Ff^SeAF!*$ z0GqIuKm$+-bs-)SsMZ?BbZBTOHCuqHTZW01-N$nC4X9?I+<2-4=vHIO$iSre722>g zZ=5BE7{pe6HjbB&NJlxG2NhSR$={-udd0#XV+rIB0iC11gXcnP8PkgK2lJo(uhynQ zP}RYv!<5qSL_OGqtkuMO2b~+Nv`;`&s!V>rMZw$EQf~vy{0kB z{_YI%WsB@0E7S0)5O#5?_;@6Qf&SvL07z$`XKAk0nWk`6{gKzEoEjj6Ds-ij? z;d2bFe&e^2Rgm^AM~A3Hs=v(`zj4Z9f7LvxB>@>h zE4dLfV`9E<|Q&23$pl z&#_jK)KXdxSQ*?}-mZml8byS2X1?n(aqYRAIe3Q~By3xFjhp+{2Bjv!fn9lmLA1M5 z{xw&!TMiuW#xjy8T=v6{9+bTm;XNJ=#MX=lk5zASag3O^*UXHuL{kk5C)?gus&O_j z6H|G3DsM!h5}z2+Hg^hG3TFb`a|S6^{`t*%P5B!)$aCz#9ej#xoarvXhQycv%<=3n z5b;(vQ4X;sb3Vd$hsCwwVZ?$~zgWi|13Br$6O-Z>a;YEEnIsUU4D5EbR63WQa7FNP z(=EMBl`vcc@ARiCd&oG>RgV3%Lz;RUnsSv*YRfE>|Kxccn4kv23(JAuM7 ziEGw#t>VH|jh>s=Qg=t8yzFRb`YE@nRZ6Z+w)vEdYS`^Www-)CL6BK-RR6>%H-**X z0;~~=WPiTc50^OGi}r*x&l96L=(k715_@7K4?br+`igeVX;&NtaaLcSu6be1X;08B znDBz4Sv+_#5A$IyY|(5&@+y8xe&Ir}uVks?_>wdn_5%*S_n+lA+k@Mxj6i0){6{5$z|d)dbt4>)FR=qy`+8t`VKWVpKX?pw`^lf5$d5TI%I zw7V9y6SM{6StXp`>l9`jXk8d7t3vSx8rI93<3hoY0dW`r;@EC&QF2wh(~#Z3mnM9V zmIH_$CxaZHNj`th0c4SGZlrZgDcLhc?f8q%p8HEm+~&XOFwsEZh?hMHYe|HGSdxt` zpJrd^fj_!27F;`$Wak;pJ2js;u={D4Di{rPO=gB=7P9(kNJr|k+p42n-orltLp;3If8z(vzmc{q=54O=i zpQ$|CWOMehTZqW4K_}$&hGkYDdM(Eb>ul4jIR^vG>=d1{R0j)B$u&QWp}~mRBfg1^ zdz!4V!7r?)2tPkEO!G01?V0Yl!o2y^bCT-=R##2TXWQd6VOpzA79Qxagl#uOM`>#?!%*`&)K+n4eL40h#*z4RXD zLZ9JALu5y2n@WctRqo1#*XY7%>Y*B69(4*>3Mj@9mxve}Kp)dpPCX4HUS@YIWgllL zVB@CstwNbk`TRD0<<$cTVWAVBfLRRVQRp4?@ki8vd;rxOGCn8Qyp@n7(4w|?5-wGH? z06EL20}wpJK=EPn@W$+BVls@~{yca`$;qbLa}tA^3B2(m;rI<%t9?Q3Myf;kpM4B$ zlAFf-uY@8DcfYB?-6@=4ve-yj=Ob}n<~CEfZ<6S=bTm;*+s3O>C7^C(!^lY#wvZ0nyF?0F&5!ol;U1kA z)A2OI{0No=j~^(xAy|!`+PDF6A>@oNiq5+|kw>NZ!Id?%D7s(M8601b<>LK$@~>?> z6EbLHw%Cl|Jm6v8`MXI6n5~~J$JhCYFBK=d<^pCPKHGwss*#B|%`e=nfKp1KR9cKrs zP`-3(4>Yequj@f^5cW||>~LS;mFllw3g;6GvLys%gSCL$H2-W|_D|ZI_MPDS5M}X* zD!#i?ZjbYWp7Jx8Ejl7=kIRn>!<#1EPNRv{*MFbj-JK89lMbYIT}aWRd=?=VC<&kQ zI*v8;!9MB!m2!kt*OQ)3TcRitO!Va?Q&8uI$sGH-apq&IzC0JwI`7VZAxSq^!4|eC zXcgzh{Vx2^4Lxj8%;cfc8pqx4e&wYjYOjS8N~lcPY+<`Gri9Nvf4jdVD`ru8P*)mK z7|ATNVl*}I3LMU)DKKuNPuaAp*ETrOAGR;w7P#AbIINRmhrN-;* z>$;QVV|d+{S>Fg=MADO1H>D^O=W+it#ov!f1jS#^sb~6S0`V-IHSf!rKT2XSK5zD} zdhV1fO8MFcofg5vf9YdbN_3*(8YdKzAYl!+* z{P`P5pq*)kcuwbCZlC&PPve@AXUG@4Oig`%B374;i-S0>MC$eigViIt)z964Ue^rG z5_vmE6SIBPI}1D;5gKd8J8*R6BiF&Ln1@;t?qG|2YL^krSDC21i*gw^jOGhTNWs=x z%ph(@DV__5m_Y-@mRv#%PWqakgQMJZi`sQ)0y?oQ&gTrtjmBhXwJE{7RE1}Jp3?h& z*f5|a;fari{@dQ{r21k-nW7^_vz&H<`D;+ccxtKYdXM<}EbU3@8i6d14}CdG&b;g; zLS;=G$v@v@95PQXgxFC_L5`@fmoxQQJ-*sA$2!KD>zNfF16Z9?uKz~^Wm=tOf=)^| zVvG8Lv$fBh2hb)vBp-YtAAj^r5U?f=LImRkFF|XtN3|T0!~?=FD~Q73uM}@y>v>2@ zHEf-nM%nb(jg^*qr<3OrP`JiW}PkKps6w5(JJU6FFUuFuwLNL zZ$UF_?Dvv+vtViI2B1e8?3YlHD1`x0xPbs+h#CP|iE7^Gw5RR`%i0&C{M-Cq_9I56 z`swfzui*_Zhmk(YhZ;F66j+CK=xAWsNp8K6p`q3F^B}N<+$*guemS9_=FJlFrY|A-SpAj=sSUxZ|!wY5h;M zumE`z{_b>XGA6|e({z^Ln6MP6I^nwCF1qMg!`vGTBx2W*-M5smU0hO<|!#RRKtC6eFc(y-ROxl7}f>e|6U9_!z#dKv(30iVMM; zBwc^cKzM`)tg*#8z5LlN!=j5{UJ1dxfKG<7D7Q)aVszf@`GcpkG69P5SFMZ5L?29Q zkCC$#;QZK@A5Ixvvd9;V$R|uoY+v{r207%QW0bxWu5&LGNtjHp|sP(q2wWWhO6FH}-jo z`r@9WYbUiL=&k0z_X4GYwJl)coq)L8;54xEy!sOmk2!)MF)%DpGgTPlH-l5~8)n+j zcFHnkwz#BJzOy_$qso^-9)ks|Xgw*!Q~rooUK)$9oH33c?qGX%I9U}89b(-iuX1MO z%}&kBZeRb;R#;!0>}EIr4K|0P@N zN()v~OT5ZU`OXu9SS!knE_v+Y)6bqfca5EUW22p$i|$=AZ=ux5+{1S~4XYrRzUj<7 zpouB60LhZ}cf{D^4TshQ5nN4iSZ25bNAN;jDt=*G7M%%nP}E6;KmzgJc;;B(1SHyz zuL&lv9^%=A3Lr4q&pG(BNVqEXj3wM}g1F~|^_Ihk#Yrfb9A^veJ%05;YS$Xw@<_EF zXuW4LY9zhVyJ=P^8Sjfzfuqf7en1HvufXV|Ntda*-ysg4Y(ptvj)-VYUeX45X)HZ; znjYO~a@g0|t}IO=b~P&Px7x@I zS^v7F@6YZ~Kyr7Ml~ELwaJh0TkvkmQJmaRxZ|MuOR8l`)HRp|X_l8$;2XzNG8JWbvu zM-!jHz0A~DAp(upRJ_bWoYmBGT(qjWvLbl*z#+Rv5%N}xfHUZ{Ty&`glsCj=_n&k( zS4;+vyQvr6?*T>HT362qjlVb1AEcr6f*RNH!_ zV$ytmSh;+%xF{FEDDm?>!7l6k2s}b2-FVD6q`#saU2>)0j{(F*wcXwW$k(R2yeVn+ z=H98z2-Wn92X^P-`DN?*3n|15(*=2nQX8@ILpY-csZJwSy`r<2m}3x;pj=hI0Qhue zYZGwg)AofBDu~7M)i;8I(e{f}Mz5vu@}#eFhFe;y1RHcN(ELOMOjP%ZW$+=V9Bqu< zJC3HSoJ8%ALY}Nd)&K}#T*7jcU2VTXFwlJuZto2yomtJ4C;8ue9&4Uo+9@w552{XY z?YE$uN5t1}`BK=IiE#_Q?I>weIfq?4;5s%m_6E;0bU zAkW_h0S6hj*>VI^bUL@xCXgnQ)h=W2_bfg!T9d@&b-S>NF*%bldT9`7r7HRYw#fof zA6!W*L<6+8{cy43(q-0`mp!iQ!!V1Nb2PO;<45&{1MU%+f*KwF5UiT{?U)>R{;=<1 z%)4=iP8)7t;YUR&GidjmARb8PXLHkVgc^Yj&{QmExTcV_aJsAoWQAFt_N`__%}F0OLwLg0Cr=|I^frcJ~fR z?uKChp`e}A*k?vp_=E!UW#@cz zPmZQfMuaxO_f&pZO1GL`L^|@jj0QCrN;Oaj^9ArNfNeWnrkiOCj#u8?3^>|} zz7RG!p)%z&>vI=mq;}^45wtuZjd?iulwwMGSiSh-!Qg@7aEwekLhI5h^tR|2k|M3A zojN^LRS;^=Nq2n|RK1b1f#n6a%Tq{A?E)=@%@tpi2q=|MkzfOqS48pFxgc*U$s@+R znlDRcrRV}w*^lTvM(S3S4!Y#;cfbzw+n?`u>Bp4FaKFfDPK``RF52tq;m)r!VMjnp zpG_UUppmYA8|JgByt7qfpXEAO=!Wo@2Z#BXm5f*!u#&d9{q{0RaE>^p0v&CqJZx}C z-Hppv@W-A{YJe!P$hxd846TO5{+p%@%;GB6dLJ^Uy?T2>yEiK4_uuouSmpIZgYn5q z9gxv=OZjgV+x=b3AkijPs6Bgj&Icae)an;ol3Mg9l?=S(Yk9f4x2+m+ggG@qGMl>!deJ>2Pzn%vY%? zEiqJ?Mxgcb&p-I4og23P$_+mrV&3{>cK=PGWIv$n^NY&-cs=fkJdn_ec=6rr0RBoD z(hzRcqAHNPv7jM35#vt|i6CVGX9n8pw$LyUw%arkWLI zZILDn_8HHbo+$n=-4}rI2~&^!YsGjzf5X{)Fz*ddI{<{K3&ie5F-pwbVwPSa=R?Q* z=Z^)HrKs%vG%6EKKSZcrAg z<4U?vU$tQ2MlC?f)xKF>skNK@QJ?kHee(;TfgVe=F7QGxVi>rVujF*u6<`A6)&Ho3Z_3`7e`BJO5d(DauG6hE!@c|w3O~Bw3 z1xP0$A?u+>S^g&}DN?@mWcw4R<^W8}8^gPbBS3*8lgbAYLBp>Bz^0m22Rk_cBsDK- ze+9%uP2j?*I#9$poqK4cQ=325^-(jl!U9;O(<3j~oXGy!(az+u0Ki;k2VYm%;Y>80 z-8!qm_A&>40XW#6%d_y=h-tRDNR1VG&4@SK{Y->O`D~ZRHgdM0IkqB?BQD{h@BX=y-p@ zaN%gpB#X@vl&QL!FqxOEctv?E(OU(pN4+nC8(XJXMRt`4rbu{|^Onz|0)gB~^=@j?|U|Kd4^|T)Q+(7~GiQGMIJAtMR%8OS9F0X#Y;Lg#dz$;AW z_mk5FhYBaHXFF_@K(}q|Fh&O3*aT2{drf-{t1CySRT*KEst_DVjH8ZR;d(0<$4J^| z@0$VAB&D>xnWxrI0Q(nltlR;VD`xJ%mub;k0f&?UQPGa^zx>micDfq4DnYx{1U!^s zz@N6mnG%0VN;II2gn?GM;Un9q)i$4Fo??X(*J~s!ctIwAJ?J~LThxP7Q^k72nqteA z7oT2PxOG-q zVW!W(lKZF>_&(xWiyzc}cHfNDHxPjAtCpQx_J;a7vm8mD0@MoXg(`>ts9TuAUh*@~ zUE7Zo%=-eobN0c5eQ^(m0S?OOEl8)6$O;{I>I*J+71 z6Q>)(JNbL&YkpheC(}oaw+sC~G5HkD18DM4S;LAw@P4AkCfxU#0?sUI`dA~r$b}H6 zB%As4TRi&9l$rpDZ~>8aubdN`aK3$a_J|9v5r5>}MsiQYYs`(;rb`VTI{s`o{v~bs zf^;G>g&l?U4Aq#1-^X`7SIcCgXXd*nk~^R06EyoRGOewUROH+30^ztEg&aASd?YP|=v=X8Bah|$wBu?| zhQT{9giQ2zmovbSZT_Ht1N-ym7txEx+(#DP;CtK+CM%fPM*k!XAQe4j92`X^?*oF1 zCkBvj&)IdZI0uP_C1+rU$7DdqThu1YzrN{Y!C_BUu`+LOu|Z7!G4Iv&r8j?Kw8BzxS4OERU z9vw>9LrO$UCQkVRy%UbqN2N~F{ZBz1dD4nBi>cc+K*-|&$8jSv^kh*4rggPuEid_` zO~kpaP%{S2i!ozL)?PxTzr0MsGTv_R8<7v;^GL^`A>jVp)lyh>c;R;3nzDa;`(Bsi zL$;mK9BIRe6=heHaW5;%$-k_lmSNpZHH~Q&rvv`NZG&nFpBNr70Hh$e9|xuysncw6 zs5s9G`+9zRe@&^TQ7MMW^yd%Fn&!NXI93JdGdI^?3Id;m-Dd^Ye?$qPNe6%wKa>+8 zU{4~i&aJfMLC56-aEbEEe1i4awzVSb!(+O>0vCXn%*_#4!N{)4+5Mqp$7Wq z>D>+9iqNFBig zI?1Q|jq5j;KqJ5a0*+0c(F||-$WItg`T1f=V^LZ;@}5Pe_vU@U7Pr;hAgMO(J|9hJ z6WPxBmm{e`f<_lk)sD9SpZG$oS%9hOEj<7v87P>$bP{b=1Y#VDLTgF0dPPyEF!7yy z|2I*_D7(qQ-1cC*?qBy?Mf-i-QjdanW=|ycy|f;+v%yJ!=#H!cjxGnvj`BU#mNU2m z;A|1(^lb!B8=O|;R<+`>dUerx$RsVfgGZGA}E&PqJP!<@UI>6h;hiEHDa;Txb|Gf3?7m_-~W}SLP z^Exy&xDK998=BAaoiBShbfrsDZ)=A$wV_m|I#evjsS;u68aGM9lAZQ^Y%o7kreodh zMoeh#zZ5r%41NlaPx^uNT6Y-H%roqoEl0CLx%5WFQ!e0OxBsm(A24_~QlVUVgPbE8 z*0SF$+Q=7cnZY&>psu^3yIIuF<0~JbDn0Sn(NzDvrLndTCLD4?gRGwAxtB3l670oit*(nMUmc zxDg#T@DwweW3yxrD)v1|Zyp)%!mWE7=Nao0L+5s1i`nk95OY5H> z^e2fkzyDlV0i^2Io-4o4j@foZPu#TYxy=k|+tRf@VTowlHqtN}F)x9QT4<~_G&HQn zGT!&v@W+!ufF`yJwAW+>N{u2J!nG5sd^LfdMt6sUox&_1x#^f@im}J9f4u9R50ZU) z9f$yEjsF09I+au}eQ+M|%>Al&lc@_$j@5+i@&(v|?IAfin6rYccFxJm;M9h5qK*)2 z5}Y?rVO`yT{nj1_kA`_3X>yJGz<{(a2FR|Ojyk5aZhygM5C7fHE9_vi%pma1HGyxw z^~T_8F=h}RXjo11uY7^{`0Ywb^@++V_tW&J0WT6)11`$^t7f0tgje_vE6naT7igv} z9DB@|`8qKQlx|yL0U)r(Znynn-?|A7jY!OtR>3JOdhoz~GCvG}-JYBRjvFoACs=x| zQry64p$w*pWaWdeUhtwn3+#$wJgZ3wWU>TPzokOc|1!l z+`wce+4$HYrAB>JQo)&$NxiL;r4gv~Jde1I=0^CWSAyQswy#dYPsvJTwz-p`Wi_qDskggn2Xbfn-p!o%>g~IIrloIj?{%Ff;VCvG|@MpA~XQt zx7jMX<#jVgqOH<8i73E>P5}mK7927>v>vfGStXb|hryufwkN69CH*%`rqK8KjcO}v z&P8%%&I;YH6SC+)2;+~adeka^eWXvtLFYW*0WT2|{1O{5Mb=0|SOiy24`_!Li7(4u z@Ah^saLVe5MKo>A)cbCx*bD*c%bd@)?P=zTlsXF#Yz!~ToE`^a{Vpb(jNG;kmNtQ< z6m2VVtS&k&vYWPQtd(4E=Pc9|6ez7-ed;<$D;8+?os)Yt^1hH`wT~9A3fxy87xF%^ zY(a6{6b}t^Kixb?^$3K*-SZdrjS-`DC0$OG0-=w8lm4rk1L`){;*Grb;s8djM)YT- zKe;-AIpC~w@1wKTd`_~@6<#cUJ78{a;`}Qd01k{oJ+7{f8};IEyaY~aI_|K62VyJl za^u*et%p{ch9$In$spVUiC)^w%Y=!v|<~_bld(p%I>@L1*Rm# z(j2S9XqC#B*yxHtDG_0?_s;F-n`4te{m?pYB!^qyr-bn*R6L!4{&TA3h*1b(#xaw} z#xk~JEXbMe%rlhCY>e6;K0_{7b}boZG3TyXb9~*bG`mHcdvaty$QZ=O-lA5PjT)AL z!5NEA#BvqiO3lQPdj5O+F7+DgVaGtY^?LG6^Ky6KRLfTtd}z;_W!z#8(7dsfzFhjX%5=m)NN9;Q-b~*>Jl=CeqrC(R0oM zkR!<*mp!R)07UP{jkqWY&1XaiUy0bA;s9VkmN?xN!D-f~d$p6{O2r;emOk~&h3;>r z_supOitsnMgDwdbZ?ZLkjew)S3@H|RN1i(rFzrI(!}UU@m5(8xjUwEdU0t{@RblPuP<3r96|KsGa2ImApqA3?9^17g zOYg6XnXw%EaI;PD*1bpBosCZF7nw=*<~-B!1~T!Lr_G>QD}Mptv=rV^J#&ROwLvbT+!#R zTwPi%C_f+I6r3U$MTb2llL}<^KhhQQJNvBwcAPdcwp*>4I8o1UwDV``2Zo!}i3Z^& ze-*V6Hy=8+DQgyjy4c|Q1+ZI4StE;RdE`DzcKyB&T{VCG^DAyvAxlV5f!`NbwhsmYu8 zkdCtrc9AUE;T{YhS@&{+yN{AIIU57nD00O=T_at5eBZgUlh~8qB;=7(Ak9|O+5xqV zG4uW+8WgzH;A$jb@!%hxW05C5JHO8wjh5ht)FcD@%5fQ;`$u&Q&`h%tVFyFxDqqLt zfi*B;@}#2mK<&lYRIhUf##6%K-LS}PEm$giOy)(Ne?vjE238QbFj&~Q-q9{l%xPiD z_L?r_j8HMMHnz@WwG3b{W)$U2(KQsCF{{9Q>N9*Cy}*EDZR;yy4_*vp9*)Ya1}@mn zl-3mNE;ZHcncu|!O@MF3rnBfS6mh~mTL9!H`#ex%UD*+X0LQ*byhvGiPs;2cz(j$Z zs$&nzE4yx<6fQk_ip3s!qqczTqwJ%KlzMXl$x9~D4wPQc+gfNq%3uCz^!F05zlz`T ziXMEOxd?*0Q(>n*smvb&g}gV!eO1XQLUV1Y)lMb?%Qxb#XvYzUc3GYIgkEpgobYMF zO*rBX#vpt4*c8PWyhahr4d~Fh5qa=DkkI!Y3=f4P*5pIJXiFU@wrL?(6V;ENW5?tv z=C^Tk46`aqAw}rhaVlTgLu0QhfF!>nlIGl8+`zo_r{z1nh<)O?x-c*qJVk*IIi`yK zh|ULo+mBrWlre0gH)C?9DQYU9xZQB;&UFA}uHUj=*_$NWKBMg-heD7SDoZS{fBUgt zX`wTdJUTY+*?l|C4k53W$)75v?*A)**vn4Uiennjxx_|a2ILeNmSfo~fZDX_5N!(c zbM7)v6Ls44%AJvO#fi*?Wn5>sEK@{lU^=VmtY%>*`J#RS8FL|8N~01ddX>=pkuXaojv*HS6?N;nh^w>kryFTC0fQPtq#bWFcH1(=9!)MuQQ|NLJ7yM4jRH;Khu z$C|wL-n$*!n62I4n<~7hPsOcVF0rQYzgCXuua%RSDbo{r`3ew*()aia2t?s`~5FPv!qa!XNNL62+*-b_=4f~IUW+M%AuSiQ_acnh_qC6kNN( z9iU~?aLO34hGw=yH3YG^Ie1grk=DI77o7rNx_CypLys*K%8?sVEjl4vV*Y2U+*IPt zZ(+wh#^hSQ=%ZJw%^nUdnX!JdHV;zsuQn32X`)KZI|4R=VHIAVOe$cJ&u;+eaPUlw z#nb7oZX?NefFx;vhNN;MvM@gLR>?S195R>*7$+0WU#IX|sF6luPPq1p+GY>|$w$S} z$Jg^%Z=Wn3DSt7%xCD0I5P*pfr`TlL`JC+9ZFFg>=?oLkF1&LaED0J1+{RgrG|}O# zo@a~6Yk5@T?4Tg7$hOouo48p? zgrMD3e2(8fwq zXR(v{iscAj0*b(T^YPt5K)|e|1H#fQtLT2e8+UO#@IX(h2JAcFF^Rhml_EdK-?Cu2 zohCcyKFO?_xu*waz)hO@uf70m@F;BhP?pTC6v@2+v865k- zP$q;M^i0FmtO#+i@yGQU-@2pNx;08#4@yWxE@u zc?5zVjz?1HfA?R!jR5xd`bW*T|JvVtL5eh+yD@HXE$3ihlw1V)L!+iz*cYsp_KMZZ z21MRZ;etcVZY|*kz=8iuF-O!JVcP5ZR~PM!`Py+7LLI)Td6S7OyNEeynhhU^v>0BP zI9B!SO0k?)7!f=NyH*GD9y5Vv9oGt&Po;RBFF#ah;7|E3&#K2`^VG}bBAwFRHK3#e4E*=c>+-7m{9otsyn3D&_i^w7VHjujtiAS% z@A~Y2>s!4wqZ!PO=a8TK9Wnf#`u|;#{Cf@HsR)gCY8K_VkkLO2WxvM+ryXCl` zm3jLB6U=JbZw_~8g91Et89PXLINmHYzhl)lxvhOG z-sf+BMpk`q;k##ZhlpbFwV109{*PZvR(#F9dp;EZ*uM`Yu8I)|f;yOQ&1PnTl<_J^ z7K&_=wu9bE2OI0-G+$>4xq?DR`Iuw1Fr!4nzIu7K{rV9tD(laGWEqVTWwrABXFO4l z!BoonS$JP6$o}7)-#_Y`|MJsPszJKC>_0I7%y9m(Qs56C$^!?spDwHUkN5FU=k{-p z69JE7_mO=0SC9MO=ljzo2gs!VUB5p$l>aZgaM$?AoL6~d>fvY@08BC@GKAQ*{;d4xlKbMTB%HhTU zd9?<>M*g2Z6zYKDPcIPZnP`JL||906D5&jE~1(LHp0Q z^82O!j^w_eo2eYWfZKj=xtRcZjvr_Q|L*4p?QC!Wm1ztVPn$t)x?w?yUgzSd$SV%C zqV7Gwxd=;L17Z;#sHWj$_HX2b-lj6pmr3wMoyGx8^tji=G-!65^?~o#QN}m_>jDDY z*{!$X0ZEX|01PY6e4P?gW!tMi2!Rf~;E*EF+i^@#c?KczI1Inyj^wH^{vz5zj3x-5 zWWPPu2hB67YJlYFB$m{wnv$~%0^|K+7mYmyMaz$IU>s%AFhVvcQUXepH>azLD!%{F z%jbjvYQqQ+p}AR||NOBAdI79teDpq>e;4~~|f^xHnTNRboGYgsoKiGy~&7lYojk8V#^kHE4YL<-zWJ8}WK zETi`T=yy726imWZ8bDd&>IQTNeSimKIi-8W@vm%>02iZTGgUzP>fdrbFW z)eG;!hk{6X`foqrEjGL_2QuUzm~SpSOjNgSIY*}|BiFN=x{K13o}^z$4dtBMjq0tA zE9N{<^2*qFgZ=lt^;YUJZtezrzOkWi8|W=Ry%m{*>Aj(Usn-|A*uwmj<$#20kiC0J|>~68GSY$h;rPn&Uj6- z`pi?@M!+w8r`ad&xpQMWupi`03{4Dgf3JK#l;-QGp@m%8hw?|_fx z&O7gX{Jq-k!W)XJw=myIQ8lAtEQ6alw31vp#ZjxW0@H`tO%^U|WTZziJU=W((k@C@ zB`to3Sdqz3(~2L1h8?M!GbqvA;kO*Gf;PP%Es-^R6-by$6zzey)bu4ZD%bCUT#cFY z%t-`Z)y@14bYSQzWG&d-qS$NqasqH9#=TmmZla)MP}%GXcMTqjGgA4m+ve)EwAu-NU^Wa^rL9%RD7tsWoCsa#j#@&eT$5=`nxBIvR{`Ol8XpT8~#v4<~* z4nTV{?m8A>EU0V50{2XuwX-pr6Y&H%*!+YF$P=wSVH6vHHV=>y8ejYf^@@#V)*}4= zhLBro8>sx4d5Mlikh4Jc*T>fRz+ilL=-v9ok=LC2fvj5`Q#6oc!C(Pav$ek@Vn7F( z0PuPf%PsZJZ~yuQ$~+v^7Q@1s``1wv2zkIDrK;!Qkf1~FmLB=BBk11qiY}UrNKV(VsKBuJrGKQ9rOP zdrQn`ehrn$NBk3%>exq8kU+If`d2UN=|iuppUn?}|C#)yj{%E|Q?Ug_4&bPAwm30E z5{2ITee(SOIGm>_YT)f{IxGR+4D$Jqz8DS;nu_mnplyu=B4{04;LiW6x4LrGK{O>j zH7jIawDd0@iig1&fcxR$Up|iD1qg<(tKQQ1r@r9N|3(o5%q2YcXZ`cv{^O@9SD|WR zvlONDKYsM*;mpHZfKjSQhxfaK_vhOa#F`Jm;|SF04gV^?7p3%0rM*Sn`rpH+D{pT- z24&H!jJ`~(BL7N8?WcXF1P?>sa^uh2Tg}@Gjy}!XIUyIi#2aDG3$_*mVcsOaS5Z zS|pQ`?ukg343mIHA0of9R7{ZKNN5Xm*`5HZRxiY<%*je3;W~9CV3Bg`s%uuUBp#PaU%i2*YC92`K#aMc5; znhY4t2~Ki@dJYH*aP~&R^%9NTa`ujhGGIHX)JSmD!HN9$S0CRFta;<7NPiKrqO zCot|5D^01Ub1OJi;ytsHx2d=KwJ%4KsvxGd1NFezjA+en#xbbPdQw!k%V!7TIk(P{ z-HkLW2;5510ACKUZHOe6JJc@>Z2^Mq8WI1h0EyK>X)Cr(&~_KB*zaZ}!U~`K!HZDF zd9yk@KvNdvBO2-C+T99zOBR|{R%GF%2H;)&;;pJ18K`>;?D-WRqB?VH5|KS0jfJ;7 z(s7I`wx=SU;rmKEQ@kg7CA_7)4AQ}$D+|V zPC)e;li!tg%+EH~9rWzhf;jqFff5mi-*WUOHo3rr93Lju8$j>X%#fd`F%wdqKA^*5 zA-Pu#!i$2{bC5**($V*Q-4fVSblGY=Yq~rWE&~e8@vmj~1WghhqRB=JY)V6LM49zw zEGog=k*AYrgIolH-0R$iRKW7`E>~ZE>tGDf`C7%wOBkEd{>GX+Ky>A2^r-217@4F&BJee+?@plr(n%*~HkCQJ z#%*N52RVTsqGg}~zZyLRjBu|1_yND8#pFnS5rTuBw~y5g#2LX8(ro-duE&q%1m-Ka z0go#KMK@$I1#BtVRQN{yEtcv5RwH9O`G zhBDTGsj-7htT9n0m^i7R5W1y)0jKpmktZrigW5siiw>;V4@1-+A)QKcBeP9`P(S1VT2?)KB>I33~f?-aj3N@sKb z`KCwYcKXE2ORpg@A`PR^{KWm}SJ3WMvub>nBsnZSqMP0HW=V2)`g^RIaC~NR)`i)+ zRt_cDmRU+@S$#2)Pn7oSfd=dN^R|$Z(Yqp#hCz7c;>J)KhtqO2_g<7|!@b)8ookX| zQl`7MSKNl3w|GnJmP}u+<+t1@4M0*x+=MF(DF>g3cvzbpHMk$`-#8=)I6Y{21*%Qi zd{+ULxwMa{ThVLta-1SRpm{|O6|O-CFicym>Y>r+d`s1`w2!{%9-|wgX6T0|4naFD|KY*KzhMO8dPDJOd2w zi4}R#*A$X%0Q7zWv!iq?r;mi`Rv9NEqj6mCo@Way-1)|Gz&^jM+vkf`OxhajHiH01 zPD$aS*qkO)cSf$4X;OXnk?i6^QAg}7A5}t?_j$R6FVD-SD{w6KZt~-1zq#6R{?L3a zUr6rpvl!PI973$i->2meWm_WBsE&`qKAN?+{V*$bcq2PPoE+c>HW$MLvVrQe=^~OY~|;B-%db zL#I$Vpmx|jt*_LylU}|W-<-{5Ht(`dmSA7fIJBCljmWq!A7d472}~5wQtKQOh9idM z#*+1wcIr5pEU3w(mG&TNKXYp^&zyQ&#wJk28xthmdf4A${lhk@K^?Nm7@mP&6uePA z-XD)oES+VBLTC`{e_xe5f#mSr^1?0v^{x-4a@Z&F{wDK~_Vkq|0Mwf4j4GCGloLt- z`7~lFl$~N!+K>Ekyd>_u445)^2Mk|HFpTS($TlB30a=TA#KjmBcHdzHvT!(}Cwrl% zBv1?1$q*q*;;=sa%;@C=i*UuM^&FJ1-L&v*uf+VeUI=@PEd zHjX?K>!`q?*3QRvV6kf0j^}*DLk8$cduiNjTVE-%g!e9%GrAXX)W**=U%Wg?or)3? zNFA-He(@|dGzJKU*j4L-B6Ooq3bX>dJ<@r1quvOweCsb=+5G8i8F6T$F)yKstKyM$ zs$H?YVE62r%~smC@!Wws_yx?FT;81Txv=mZyhv=4!1!=EMMeX9k>mltR8xW&Dg&Mj zcNV8l{z(lV*Pl7q5^fu2abS`}hR;d3I^o}Js6v`})vdpui{m_-6#ns;Y0oulq@nOc zy1`&Gk!B~6CGRlO@9|MgrpJdU{_c{;$e`Ad*=>!60SS8PVbt}>$1lhsT6k<+ z_^WwPW7eTghP8D;nW`N9H{C5aRMdNO`lMgDFUaZH>`i}HPo|(O zltW4lNAW;oAqZESR8z)x3L?tp)7{8G>bRTRRC-pi=hv<{1$@-$b)KwvvVX`P3oQlt9Sm6-(2U=+P|BPJ?E*PE+n5sV2O+?p~A8#Hx;jw$kQuW76SWUi5t#Dac+5*BEw)pFxLpkVkIo(RMA9+=?FB5Ql zt0FudZO+#VAFaDQtv-XGde2trWe&Y;C}X-Df~<^m5}D30C3 zY>z-C{KOddtmpH|-8-krR8m_z1lu1ro!g>7Z{>)1xWnbz&o z=+Hde7hy*)V%nMY(q9;$hc8JF(8)dzW0a5$2xRCujmaK2A>IXvw){PvG3eZ&yAEJ} zhxL&v0V@E`9&p#=o3FptUOZjCNwVlb6YCJVde+8}tKe#+5+Z|gRBy~e`iD%oYW(qY z6ag*yNh344ayf_Osmm6OWLgSaMPz7sAYZ7ya?aJoRvQb3zJsRZT-Buk`UgJ(<<`J(xGYe zHhtEo*Efw+vXrje7?D!iyRhw;C8F?Xe$kadYdS70TZTy74_lm%-wa>Aorg+2k|&94xA&z0rQx5UWut$E?|?;>YOyiU8? zbqa?-x@i$rTPoTJ##UyiuTNKRZZ4%C#guyx8uES#eT2ikz-B6m2d~$X4buw=h>uv;rQV5R6xPzNWwxB!pNr_M61%cCJ|`TF*zL zRYwmb&&tw|h)!H0qkEvDA#+Cg+UuOXtn7Lc*Xncu(0L*`BTLy6@yN=f7<;s>WNiL! zPRD6h1-O;T9mu|YPXpx}?+yGc$uNhF>fK#ht)sCLmPbVuvFr!b zfW8v!gBO6Y%Yw2m!lDWU@g4ox!$JJ?4xISP6y)*D=`DP;Q^KHLT@bzws*DvB-#yj% zYA*oPx42AXmTSsPwThe}e#isFQ$9k@Ga{Wjv`&;(;^8;2Gd99}6$ks`TKOqvcQrNc zz}KopH<3Dg8zTE4@h=_2#SuJI7@8D}4`u;WQR0vXPljvRMxg4PBqUp_KORt*AMujgqh7KL|AB?P=AQnh*pti{eELZ+WV6~S zMx^tySu)Tn7je4%EI<9b-6K2EJ2Fwy!{zd;l4X1Cn%5LgUql>5&%|d783t2j^g$P7 zFb`-GuWT(t&9n7Z!o-)=pdaPSP#vBgv(o6`616XNlEl>U>8@I|o7wm;Wp=XmL~Sj_ zzLkljbEc(9h|TB)6T&0?IImI7BQF0+`XAtc{5)0B-*Z7x<{_NqzetbUYNa;sM+O#dGgnyT_MEt#ZeDzWcu-vI%mV0_YY9cHtH1b{MREQ!=2Hs|Nqh!tw zx-uls^a)6p5C_ksNHoGX6Xo_!Zlx7h_|u%3MmMgsV!`s+*d(RQ{Sz8sC!M7<(F8uC zdykZ^!o&T%8nE5i7n{;i8pEg3`vOvJVtY36xHL6@HF|5V3;&V%U`)nhj=$e2;doU7 zjX}3;(CNzxIK2{TKFZqV0Lb(O#|ccf{O4mg*f zXzd|4O--rWXufoOFsg^#dQ=n}$l#jZG16JBdy6_A^E1wsJBKgO($P%roJw=D(hhaz z-S|Gr3f*>)ccp~((fP}sQY-{Xz>tH*S&GbVHO@A5P}J}Hn^lj2254lRrB;&3fIGRLkte{+q` z!9jRswm4tA&ho zHp3$olG`xJv)gN2{d>Q>W7nDcr+q^L)d7!&0r-C8R0WN1SFIZU^TWavG&A~Kb9@bR zX@9yRh$Ex%wiC^%K-qMI|BLL?2!|YPHFE@=ti>=1?Y`VYU!$qX1vtTgq;n~yH3)mUycsO~F3lWqM`saN(v z0rMOkO4`!qq$+=lNMbuv&dN^9zgC=^sx%Jsm{V>Z^$`* zZs=3bp)H+jYB|vs%vJi2Rt{GSU&@F|qOGDZ1M2gD5fGO~DHv?-E4&;^GhJ0`>pDjs zAPV#CKS`7EU~ISMmv%FZQAcXYcanvce)CQ~FEsnE%Yg(l>e%uh0rHbqe+66gVv8Ew z6J-%BeKdRmPXB2xit;cIHWyHSF{1;WbUMbA1&PIQX%@ItM+T>%(Duw{Bmq%(sA%^C zW^zW~z$UAir#00k^rg`suLl{kbiI=xWY-UL%FH==j8y3?n{}L?ls5XXVG{MYk#4-b zpoz{#9FyvL=x$9)HIb^?$!`6P_m4HHq;54=14H6GLF8f0a+p1oNUfxap(Hun2JFg; zv2cE|zTK#w+q_+3GDPJ|1UqpGBG zAD1-KpV}}h%;*G^SL@DvuDBEjc0aHnIodDQK!(r2`2!s5 zEXd{bV6hA#ATiOpMCikxUoP=IwE2doc6f%qu1Rs}N2kPU$(^Bv73|z-t0)z~ z!+x}5`0*Z!0X-d~KaR-+kIEn`Un~l-pvCQFH1fv+0UFDEVjxScX>-ymjm33Kz0#z; zv2CMmX{LdCf!EuCeae&7Y(b$e=xYhRLrops&9C0X(u-c{P0~?UTA1#hx$D8UmWzvF zmsrF5>4-S@bwpKT_W3^EKo5tW={1jzF`}sXr_qV^O67@aNQct$Tz`J$!8S7{d_Et= z&yr!Q>SW#`R3C7}@jA_}-q6f{l)}+XaZTt39Gv3=-k9Ex^l4GUiUtdRaB!GP3dgE9 zPi|GNcz9+N@S3!}xe+7T*{v!=%xNprpJp6t&_O_kud4rO*(K-y4{CoWz->vUz7fy@yz|>Nn2n-EL zZKr512i}m`Fm1QV^e39@vD4*j%$?Js`T5h}h$$2Q1YGObNt0!I^j+=P;}7~KxzVy* z=QaB6^yEhfjs3|-O>7@qn)&)BMT;t2B$>U-O>!Fv&pb?>Jm5}sSnIK;#64xX=L9+9 z2rJ>d>^iZ1HSR{^`I`xkX_7#rU`k@#wB;?_cNyOyiDvPW-QK%c%oGneh5I}{%MqN%wPUeYjKB7L zZ;y1LTlp+3tMz^D4dqPOqJf1^R{1v!(UC7i!OChER+HyZ@-0qN$+09x?tuzCp^U?g zE0{%E=PwoY29=n*Ijk>wMu|qQWO%(LAS&nT8=8NG-6C^2ebi$6fX_agsJG0TXdbJv zW+$ibk#xd@-}TQL4|rUm5w4$(GFIsLl9(@N&xw{Fj`Vv_Cblkv3Kj4{NxE`<~g6@fMyGaH5uJ-(&`<~&vL_6NRi3}z&dMm;VB=0?6DYWR)oG|ndbA$lIgLyxHM!c)SrxZo@cI;t z@$|^t@Kl%arNO$|D*l}OYDt3&uY@_@rzxCl5I317AElHD1CpLT^B>X`u*R%-zrdRRh7mHWKNjr&Hc7)QYpI^PJD)S31 zvB7YgIJtG_#_2S|(FnZi2GcV|A{&ekWphQWNvR0wpB7cgF$FL-fk0MzWjzZvOb`6- zLG;P?fvZ<9Ch}qg-EO9dn8ypBQkO4(Mm~35{JA?+skRz0N))AMwdcS|o?p`RcCj4!%#~OTO*cB8)`K2R#+y z_za62F8v>uUf0D2n`-vAb)Q1y6z(qh&hf%Hv}7S$GG zTzkEJLmThx=V9>3-&bj>k|}(+5eNEn=0hQdz)fed5->awSkf6n!4Z9S@x~*^|VWrUY>O3(V`l|1{+%F9nXB&$`o%;lP3iUK^pP7bSDCv94gPzz2VrTWfQ8MTzMw&fvP3V zkEa?mp4=K~c3-X(;*(9K?pdnpT8^A3^c2kQiSUe;r3y@|43u^k^g5_UPTsQO*b8JO2|2IMF6s==hMwx%P?0cKwwx0yS+5uOPK zEVgFO!dGA4KAv;4_Jb1>e$PNWfnV64hg@MYaGARJ5bNX#*sV7nX29%00nhDOXfX3l zXR{x^?8v-FaDckW#i6m*34-h8zA)i$%}#B+x2nOZXS9X&+;obT5IbD1_np+lOg;Mj z&;oFa?%XnTpYHkFt3rR<(Z$e?X6~0z^-x51{K!AenQ+uyRdbLm7p}+44H`zjBg08c zyUNOM%B~4t9=Ae*RV)20GRu9hczC8w zSJXL10ZCOs5_UCqwDlzFIY`RY3`>`Tk^l9UVCC}9@n8bseT zaT*t0S-(mY(J%L1rpJJ>XsFRZ_bP`;tc8&tISo=qWc~7D@A4eL?eFAQN}S#7e4K=N zBq9u7x4tu9Q4$zpdf*-ZMyZ@2G?Yx9()Rf%s4{3GM<@@`MlY)O|1}4H2Vd zdKYOf=j~CdVgCc%uQu8kp&?H|-xLe&;75A(g3?$yFOV660~O-HamR=i#BaNF7s>D! z?dN5F;v2 zK9o$|r_!18$3OI&!VUHOJ@48q0#QKeaOU;t*`z2Wc|}Cv&3vyYyr&02LU>kyqL53P zXA|6E6GUc%;{n?^6m~t-`{)?M6z+xZ9XF&0-NThI{ZDto=+q8K)-YWl;igk%Co3VCW`ev!$0^xy@4=oQYg^~ z_JdQXj^H&tK^M1Basi}T~P1Wm5!F%=*M|+rs7(e%DZ5?;$XAIg3OJmr1T>} z;EMqw9ec&1A9i5)|MabmDv4K3FMGvX)_2gXH2X=e1Xcu5;!pi*a8)VNe*z0uKRC~# zyi4fmtPQSBYalxK_e2=U4BtD=G-qcP&fjh$(2K|DaK#+$eTjpMsob zmo>O8^D4c`Zx%p0$u1}a+OJUB?_hm73*98=b~QeDDRY-HKV5EwhB6We!I2#EC#l-6 z8*x;=#ndAlz9FoVprD0KAg^CfJ*%{Tde-y9=2xxVMGmq4Jm*l5^i;(-COO4l=PjQF z`C#a!>OubqjDr&ADD4)JmM7a0N8H?_zk9>AlHNUI6d$3fCAh!7QLdQQ@F${^{QTKX zvK0uf(1hXBi1qGatdH?HV3AC*`eXELoFpvsp!A2u1;tVhKsog%?}iq;qy7URuTq}nFjv2d=unh?S(<XY{#!&xJ5uYv1!Z#V&la7S0oXp%%Gdmi2eA9cf zh(#H9Zd>^~1GLZa9*~hH1=?UVOe{D6af~CFNBK;_JJH<~YdauyEirhocP66kx|bx+ zp&KPW2=rShTH`5sm z=cs8|dJQEl9taSf&9N`O$hv!gna?Z3H>aZNoRAao-IHKX`vBV;-f8jyL{D zA&}Arl#i=a*7bE4S)hUzHHceX94nH$z6M6R?N8P>^)yPjEVFqXB3bh~(1qqx z0IaOX3VEH>JKMeOY< zgyP={j%yB-C7LIn!wkW2+u-6 zuLkw})CC9nnkQv2g2U)Do3Wuxf9n@rC$VXr)8w`6b<|3+STWV}{F7bSkxA3D zx>b|a|GT!e<$ z@;r&{XKlNkgyR;&s-LW8`abOIPSUzY$GwET3ER+MoEH2udj>Z;WMfuQOSa)My|Xr`|Vvl6db_-BBX0SRrWzzyimy$DyTA05eAIBnZ;ez@ z(L20Q(GuQ|PVUfz`~Y#+9B-w};0WoY8iUwVbkYC*mEweXd*)7q(?M!vpf|=J|NW~u z<bh1owS)JT1?UEDL9O`*U#RJ9$Yd(sT(XED!NM zg%ud&h5h{ldl=}w7E}6lqxRQBo>t-Bw{d=sy%F91GA<-aRkMrCrX9~}OvA(h#NX!B z&j!FK%`V{TyaAC;42XoM88FK<9txjL4$J@&yLEUOOnHqv$h9NG#T z%MM`rL_JnC@$Yv2R1eRz<6KD(t@~>)koT-ZnJ~}NA5^s_NiH;PY7Q}6UaDl$zK^dy z8caYxRgKc`rq4R0Zhb7IDM*7(uPj3qDo}dXCGWX32SQEumV2(pfXvgKVN(iJ&ow~$ zIqxUff{tGe5REXdq|1wwrd<$>+JXs>1~;ILQAXX44pf%qiW=DB9FgHrFU@!V+p9ms zL?g5h0!r0J`QeZ~m%8QcwbxtV&8*;!c;(cd4>C-Fn^w-3vY_`YqnmS(JEFnBc86S* zkF;YhU0i0N1)fWLI?;zQ+;HuiELl) zx5*0pXxD9n0~J>Y0sZY>s4g>jmco~X{~bv8zo8qxXE^B2|C=$$)UH;;luD*QYR*n0e6a)gF1{wUv{_kf!0l$0)7-=wSv2ny4_auN!1< zb>TPj7-Fpw^++sM2lEBEyvBmUcEP83$p5yH;PCux{?ZX@=MBWn?|EIG)e3y4lt3JT z|Ih)b9`t4#$|+Mu^WE41+Cct1}Aw$2QYH1EhxTb6dw?1JbcXO=>SHs3q5jfVE> zqlbV0YIvS9f{Fo_IsyflyI?r>4IpvK6}?jC`)&2{Pn&vSV%Ii4-UKg+>UxGD_yo&? znlYHMG|-%=(Kx*zD4}(?70`w{NW&WJ)iRa+@1o)1{{Gq!x@ulf5zW(P3kn&=W|2;M zxlxb)`D;4yrw1k-&Rta)e>`2sJoFVG0J}rSWR9u*6sXm!!PEk8J?FwF52uN8%lwir zwh)AE77VGXn95TmLDvV)0);k(^{xDAE<-?Mz2gL==XH>@nYm^qd>0HCk~XK45l!&J z0ruSP60G73#2gM}$C2-yRNUoFqP{%?bjo`@@7(g8JwOp?7R+8O>;<#7Vl)P!LKo(N zDeJt*%X#79FKH51UMNHcPybji*$hOSV+l9Q+W{XxJ;Wna{m2LYRP~(OE|SPdA{J7h zUQ%f@k}}qP_n^VbrC5&jxp2d*MwyQ6~m*xB@PqinoSE%iD_p2Fg z>*(u)I6)3DXqq=_n{^?>)^X4Cwe2UHFF#i0&YC^V`#@(S2ZlOt^s9H!Wq!+kR3;-8 zUr}e&Dkr41A}A%Kb?Ahbq*4ykKP5TR>vr$lnPg?@N07$V&vno5c+`N^a6M?*LB_5I zM2e{1XB$5l+t#%#I#`2!NKERIzY;NVs3k$>Fsj)UB?O<4FUa-in)a;ZZ#*wwDI-QR zUv4|a=kKR1Oht&&PHop8#h=@!HhiG`ky%sxX?S^cX7@bTPYN&vS%=)gKCT12 zGTM59g-_TQa{P!DLQT`pQw>0A-H8AL=etl71fj{3RNRSUm79~f-zj&V0QAtaz+tTE zIxk)aLo(AyG-chS+r`kpT(ZS6-P71&FdX)T!_oxl0ut5w96nE|Zoaz|2&>epSWdn; zq;&$<5sZ79BtE=Pr>XaPIF7)pO2=d%3ql%FhG{rX8j(dH0Q=P-G5Y@AFwin?Cjpl{ zx-!7K9Mm`i1(fMx;HU^)2-s8!5Dkj}LvH!CMF z1#wz=g>nR>AsV#atsL)U(Lb4%#ZjSRlWKqh)a$~u1>Y;AVVlGunKboIkscIR&YW@=GJAyF&NZV)? zE8G(yhr|Oe<834E;lnV=!s-;NeyLa{9_$+4kARJ~&-INz2qLiaJq@=(wu@)Wg?cK-gra`za~($|E3fz3^B;rwpkWgBLI zgkaD26NV!wg^>?Hz=W5Rp(C0crrKtyJ3T&I)z}23fOeI0rGSsJp%!6aU0+{~#0~_d`Iq32@ z&m&S&?VckXwChV4Qen&^VhjVH&%hx~qmOY0Yt1R4&=F<$5z-`})lXUgAH1UKk5UfJ&#oE#(^rs&2#eD|_jY)f&<-W5z(+j?+{(9u5ikHk6ss+O%{xQ;x zZOB!5vfYhHo+%oxC__D-1xKEgD(ar<(BAvi22=hPyF}BXp0ToeM1_sN;Fn$)o|?>) z_Vf}9eu{|x*wbM;>s|_oFycAHX@|zNk}iu-9k)C%neCR`1ZT*G0Avmiz$NzAUR>dzmZqVAt(}L()x$*OVot z;(ZvprEe1oVSOR=E<;)FNryZG&}D6f;Jm5g>m~32PzK$f%~C^hw_LmTMX~(UoTj{+k9#BnUw!7)}pOdguX-hz@ZB)V7ho616rwgY_=coNr|)Iu;cHe-iuBo3AU z4gDaVEs}BXT0}U8_jCNWvFghWVqc+aPu$)zObM@X&)O?PrCAqC%DOLjX#HTKdCBu^ zdL9bJzUTlLlNE@)?0=dpVaf{Jcwzbm*Y8RB6K4|}(DNvB1E(4y8k+hcOW@w`*99@< zly!=D=861ZWjc8(T(TxB?%Rszu!^GI>5+$g>F}O2WD9n&##{H$u3>QvzG`2w7^dzU z`%+$Kw3N3bD7BU|w0A!#xV6U)mU(&ifGiNv6iMG?c(Hkq+9z`P1H=w8bA_l7dO!Bf zpq%lFc2BSHss@&be#1{LUY#pN_?x{6$+|~=;%I^0xcje|mtqY-cVcYF1ZGabUl4e5ELek*`TqyJQtNqMse%Zoy};C9OKQ zA&da6T+jYB06#pi!vs@#uF)rj)pN23COT-M{ve{*(7ftFxj`@G1V(y}jNN0^jf>-F zL{`9+40h1elNL~QH%PMeD*9quQa-@%q*+-!0U^l>sIwYZffA&P5izf>R@tatUm%y&G2*`rM&;M8XJSb8{qUqbe8!4zCa3Qg z7|DBh(&OteLQkTkL2*P}^fJECT`W_qB{@+#!X+V?R5 zb=LUGSM-QUIlb*@WSN|u!a0a3XJudc?8@nyD@oi$>wL^n`E=wH<{eKkKzH^{OHvpb z1jA@p^5^1LpL87CW%ZJSd5E$IVaEaZK;9qW8 z%#81@W!S=kn>z6Itd;d1VCW6@O7giiDfDsk0D(W>9OE=aN8!5QYo(zFnsDAF?gCEE z+UF88v4-s^0JgbfjkHtMo3rU8yKo1gFzFjTBG(vi%%!+b&)Uj9K9TP+QUL{^c_)Jm zgC}6maBzPqMOY0v=edGP?X+Bye(m2}rM`P2ZQ8fKTesuHn zo$BM~3_b#;-(MNgN`D=ZV{u7Hw2Bw*Nias@qv73mN57FFJ^)zP2^rj9dFFLQD8)r)(w@c=tC&9cr{O8Yb( zq08x4`hc;J4bRV@th3xcwKYV9|3#q}#<{^yPXUX}fU#?uCg&wtBqRwFbCt(@y*9sA z@FXmze;KoVbYNnlyS$FgM)ioCz`rh0fLTZE6m~4r>(rZsXvaIqkF{9-dhr;p8Kz%5 zrGc&TZQIJSD6d;jU5F1R=Zz`3CF~%~iP92CcbEU$8Y1a#%jtnG5j#SZe|kH2OGCJF z9Px>E%g{r=zV8@=qnGu4RrlMP9&nw3@PUyvZA`D|V=McfbB#wDr}R*s;{et&8vSOO`{g|!F8;R#z1jkInIu z26L>soA`vFC|stIIUDR>mV1)@Vg|7S-wfDn@<9aqwv`MyF&&QY+R3E#gYNGx7=m;N z1^L&=#`M1|<;e30zYpjZ4{%4UE$_ei()Vkd!>Fcf1wK9PJ^3udKhzJb)^#it;lRJ{ z&!?f6ZC&~EF23!#)yh;?h9cjNE>B;wM!fw!C?Mm!`d(@9eLS66TK1Aj4LAbx9P@^x z-p6O{$@d;AD{WsvP#)jhBs9rfRfy`_dg&;lS>{~HVOfw5L-a~iwHr-wSUgNxrHMC9 z&DZiRN*KG*nhEeLBOqiq@ogKtmPqyLy|;pTtV}TGM8r6Phmla@nIrg}oBjX@c-LrR zUtP5hFa?(j{fO69g}u}ZiVyk!*n8`+sBN76FNF$xn(jZ+T z-3yQ|B?P2Plx`MXQqqldE&RrG?{nUBp68rrpYQwL>;3D!F8*+{QRZB8%rWl!SNArp zQjS-9o&|ely_Bok;1}a~fVAs<9!fY7U{ZIPFu2)Nvkn@qfeZMFdJg%m8|1DwE{!-@ zHa!+it0gRWOmAD;L&MwsEs$dq$MjWHLp!Gr#R{n(QY%Rb4n`acROzbwd|(ledl2m0 zPY^Gg?;BRk2HC%-K^55G%ucEsO#b>URZ6)ztgkZmsn%teWh19|f_$|XXx6bsQ2bv< zQuewpSeeLbl>yy&Yh{nyBi&MAOP=?d;2&8nZdnY&U?dk3}ymPLW zc{8&|xeNgRi#wdV30F_yd9=%B1DTjz)uaw>nmmVnwqqR6_yYzAWzFs#353;mxPBXzX|_aGYm9{?g^8 z^zablzRkj90VpeXk#7c$1Cjydixg2a(4EA^^k`hc>yLA4g%p@)`tsCDJo3VGA}COh zQ)Jj}{ua!;th6=LV1P0f19~|wut1hW#pY#s)qWaP0b8K`hVMH}?t*lK7p5CbI&cuq zIZ$Zs652k_0(1{)#pZhRvn}o5$YQ6%fvZ@!k9!!Kn3onq7>tHSKYTWiH~ppcSaOO&Pc*@a zZRO)TXWFD)waW3CAvT$n>UVR+jKK}-4~P1zX;a-cLzizVP!w5FXEbv&d#okP@*WIZ zcjzXGZt~d3MFLdC3;fguE>Q2U*EP7bMA|HdWaM|B58VzEObP;6%82wp zcju!qjqHRtP1B?{3NV`9OaBcJV4ZJvxs zx=S!-sTMXbaOl^AF>N&o$w{WkU62}K2dKL2afSB8w(C+6U#K8h6?8?;7AP&44DS(r zp#Pn{0Q9n9w=496S*fbCR;dnhl}S*w04vPcNKG68x$h)TeWjC{I-77*Q`Tz^h+P5A$+)(<{*HBub(QQrc&N-SU=QqNND!&12w#Am8H^0j&;`wjQ$%MH8LajAUo$(h{UINYF6E9Dv8i z6g_EmX7gVGqdsYd<)0`gG;}z^A_X=Ws{ztocTZhsF#o#8AO!tF;0(p_C`YYETlaF- zdh9PNln=*xV78-8ysDZ#WS{f^A%zqkANqha#fzT!=myOU)N5}l6W@`byqf4GFkrc` zR$jqyV=wQ@SO)rq*F0-wW~zE&0TIRb@ql<(;qcK87%<6pE%%uN2xaHz!ICbAdtn#y zxQW`SR@4KXdcSj%G>1@61=~{D^aWeapicC@ws~gY?Kgsz*D2kr(J0OEm5$_AU#4=s5}z2Lo*{T^9mnZ3De= zgU-sEl@0;G4@f9PHP8+X_$t~aOPa)C&OuW*%idiRTv}N}(4iR^viJRrmS)#)zAkWd zy4-RIK+JsMJD%aHn-+zG3`xd!I?`)RlW`#^GJVVV$IVzN5E55<0YcKZe@0MFcX6>~ zW86FC;@$X=J!P@2k@sZ;Wl%Q!8cHHGD;~m5D^D=ELNF%vg=ZXx-I~nL*h%yPCGp;s z-t4P?kOy!6rC9^lHpWGP$t~AKe$_NfU2dmv(E<7Wp>Do751;@Lq-h$)E4;(|6x-7f zu7tN_Nci>m8JBm(G&Ih#{`5!a3`6=G!$eEz(L~Z)sTDqAljpKA6Oq1{?U0ZTtDWS2 zN=w*Hlq1AFYnQ&2`aorFku=M3j~78^@)w5k?wP*~E&8;*m~|vlZstKrUczac8hPZ* zehur~zf3kO162+I7%A1l`^)5D{F9@W`^6F8;YF8pfH21JnUT~vnC-bWvFivzRb>0z zlaA^0po0Bl(pXy+!CMOkfk9nVSe|Y*h53_!zLiA7ZW_7*iNw&V0}ilHe919+CzSvK z?Y|h|b9uZ77cWV0p^EtbrZ*dc80&)MTe|tbaD;4l zYi{BLAP8q|qEy&%;;AWt4bN1-}Z3Zs+6v7$VaSD?L^ z0XzF^>(4XWfy2A&M&)0@Oy5yk<8#1b9eFs%i~jS?`HIl7Pnl=eMoUvpLevJt0?;Kq5ga{$G9} zUZUM!TmQ7L^y=S!V1MWBsd=wsy1&kjk^bj<_*c(sjTKPoj_PiVkN)+q{l{yGN&#GY zt#ViPU*DJ`5x9c7LZLX)zrKV{1u?(0?;n*73@63&3*FMm++b(DuaRdp&QiC{m);%J3#yJ%q2efIo)4hLM^5Y zB9<&(=X5TeiN@uP?TqM=pkOMSwP}i!={<&FrC3SE*FOtM6+@ zR70k4?LTII5X4UuAg`qQ@mx~bg_hNc@0Dn4Zcx_FW1S7V5wEvTZ%fUD)Ql{AK;k8m zzN;g!|Jb5@LBsm!t`ozL=fT;>k~*&#HxyfQaiq6{YetktQr|wMh?t7hU3uOUpa{KQ z8BZ||8#2s*2+je(L60Thg9_RQ;(<3V*Z5akb3e)bfBr3heffu+iCQp6T4>F@lz=u9 zz>ii5f?kX42N?Ipd-MCaLw`t*&#MKtx1lw}*DDELF%+@hk9@@t^Z3gJ3+oRReRceo?@){S;_rLJKl`io2Ue%A4fGc9#s>}kzN7zn#oPdEP~}=e!+-D= z@Ir4vikzgyfAAKdfVbemwWqrO!CR05y#)%nnHB%RTW}q`1$TYuOaAA3g8nZ;0ouIt zhLp7a`m@cr2DZ*yUt`q&`omp=L7TUV1tZH}UxJbk*g9|McNPBi&gn=1ZQdWb;|Txy z5*Wq6)`?QOr25yZrVf%~&AcF$`%5X755`?;uxPGp>_7bLopa_fxB{Dpw{xZb`Vwy8 zfkktT+3nu{ylws;TDF}E^U|W{(a=u!U4||^?t;XPyaDZn9=h!$)9Sx|qKI8IZpo>9 zdLgLO2eYwe`v9$NlNADc4T*~&na~WNxE3kh*Jw_zE_Qi)&mh>_G}!{i+k(wi0|`EM zz+ZC)Gz!Q<-1R0CA@Xp5q#%IzPE7$O(HVf|uBN$fJU9VCb2E(~GO$cMPlWepD*=#8 z@cM^Bl<@^{KKe1urMBmltEZ7gEfDGu1Mh^kb>%2}fRN*wk_!MVaB9+=3;Av_{n_;><}zHtFL^D*Au z!y69Sd*|D;`XAVenagEiNv#y#mp^wPu@^7^*f3>3pP*I3^rhWqz;E};C!;?$6TL{9 z2AkvzfEQOl&inTlB~rsl*a0H5k=~a^bE2W!*(SN=y)L=T16ewCwQ~Z^7<4tV45{3j zj!8`qIwn5Lqia=>GdDckND911*%PMTJu<+4yI3G{d$(O=yx`3eCNPY2IDy2R;$8pe z>cm_CVhr5@iWGa$8(O4MqgSRwVy8%N->(xVKv|>*iv&r$b3bQ++=*xhB*Rh6vsu~h zSJ6Y-v=qQk&j9pbXZm6D)vD;P^$z?uO>oh#998orZ?QVq6OK&>egSU2z>TIvh)Cc( z3lg}MXoGpOvaW@n4{U7p9`<}d`9mJGCJ1(d!j29AE3#H2U^vW`9^Q0|pJjVE7!K?!auLfo$w>Yvlo?Au9pfH|k4CpQwH zcEJ~IY=BUHkBTdVm;v4(rz^wZNv45Old3k+wTu*_uVRg4P9w_O&p$1`P*GS$Dsc62 z*Iu5)FrZt2A@%R4fldyoA94KvFuEy8H_&t&xa7lf`Oz&PtODz%qQ%wunU?5yqH`RX z(>{afSqRZ#1)WG64N4i>yQ=h7f{Rp}xF;1D5D?8fuH#S(G;B^j<8Vh9YSQcO2Qy$P z?>y3eCa`|r1*|oOMs8$kd_U)0Jf~3T>-9h{rr4Upo&$k^4e#^e^nLe%L-joJX0gH# zW(KYcZd8!)C3m?z+{AA<^g8<2*vk90>9hBPQd z#5uy#Oye3`%@U6Z8PM0qA3i_vsG2l&0Nhp0$|8xK%RB+c76u4>W*Z>@nHh?m)2WU|0MW3zLA_F^Q>Uo$|80hPaD*u_hxfIa` z?F3i{QyT}OmkYQNq7L#t$PM+T&*`<1*g6QckDraw1@{Tv-y6PraG66rmFkwCy*;L?e%2f;B~$t&~;8nh}1e|B`5XLQnYbL0k)G3rrf$jfTF1Xdgn3B(p> zM6(Lu!VMPhz1i|8oF2-|F+5TUjDwi|p~ICF+d5p4(~KRSu^TZF?7Lu5EG}Ih;Cc*ExwWtd;_x5?SU+>l;~^5=&($E2I~+^ z6mNxk$qgX%4R~F!%=NpkBk-=3Gk`ZuJ=gSm1dzb~&P0`+!L2re-hE`$@GQTij~mF> zJyi5_$Z>?Q$7!qba58`{Q~2isX%}5$60_RVFJRT9Rpph{o+Q zRDns-(g+keUR#|S5%$Z_yP$8S#d-sIcF5*^_LS}Yw>MftG;rG$yd8K;7^NQ`VS8>Z zI0ieg-0)^IJ`%Lc3Lb*3xps%6{q80G3{X*Sb+DSldG5?lIAFvp@-N@LNV<3{6{8dt zK##gXeL%#FBZc=O@Z+mWw%X9gf3{t9QC~4$!eR6uQBY)QB5#C{a>sVm}wDkn8o7gH3}^xCNY>_<+6tJMwHW?Afx zlO(oPJz~b@a--zZr3r(dCxvM@_27$X-@N_}+<+1h9<2X^|D^%xo$yz%rH_lR`!GvO z)DqOZxv((I*GgAeRt~JvOO#p|Nb1`hz>zS5=@xTUcf{+lVK^4fkG4Sy+bghprB{&g zf&Gu#7>H#_g;QzgzPVbnk*7R{J#dVG>X-C_)ie**M^5IG`i8!JnD`B)ukypV7H%_r z0WzTCx(wp``qQ)I7m@ni)RtoAS6cRA3T7oj>hxR{PbSz2R5;5>4 ze|t9677*Sox^ApT{ggpM3H=G|E)DJ}9g;_b)`sWB6GX^IZngSAlrH0`cUMoo`nN0G zD;#9DLH8`0f>Bwl5ccZzMst1}!68V-{$b#^f}OV*<2Mc8D^KfE87TO`X0qS0Va5GH zLjjXW-h}f(O2={+)dIq1kw`j~!((N{`o{|8aZ)FiajR;1kMfXVNJZZ6n|YiNIVY;=4a&9Kd%)w(j>nUC1t~t~ zeq~1pbf0uIU$_mVi51&2^~ z(!Kp8M^k|1Q<2e>D}9fxt8k%LkXLuwDpD~qJYQvicayAOtJhVAy$wq4IUF*9VWV0nfIYqNs(bm266hb3yk2td zs9gqOX(6AoRK|G#W$I=Y{8f!9j;GD+1#@g_9A?Co2v#FIzqCeX*H)ca(=TN;L2i~_ z=a)w0!AJO~6)lz7o)*#~cY}ZTFJiy$fJ)xGhv$(Qb~1aUFV+c-5{oLLl1M*n%@3h!Ki+7XeTi{jJ?bARVD~%oz%y; zn`2J)uhR7WFu#M)KB2E3HL`0yDIr)^Yh4f5=o57~?N{s5;dEc+X(A$oE?#i>m<$D+ z7y;v4k#=3cr^9NK1cCD zqzFjuyoUH1q+iy8DvwLSGN%!@bs(r0P~(q@Cs;%}_`34^aqHvwW`f@VC9rc4c~%Kk+cwc)uIQFCWUS@LGGtR-w0{zh*2i~f(eiy9zg&d(i|$tOtso)e8D z(oDfkMvM(F5cU63AYf;XQKq~NHCi`Ei>h#~uY!_7q1}dP<1pS|B(XV6$xTZK z=J_157#`gL$ZG|*PzoTIGU;$bp0xmN%D(Exj2 z*MZl1br$kb2f4#(BR#_1e2Gv)-*?J-%KTi{VyfJvC(}x}C#7G@)GyX_G5)LNhDG*y z(z%##s7cfCjjWBg>Kh8PUYtnMfEalH6c|l*IdSK<R{gn5a0G#g610kp&66=pEcC?F#ExWxW|4;f0HA>oN{}Ph@8YE>g_AOoAxr2|2Yw{4_wm6*M~k*(zWY8pFg!4J|zgucPd2H>}rSQ@KE1wF<$0k!b$pS zh8LPZ0)yeXe~xDK7n^;w@r;*0K)vWrd)Y?yLz)K*EENa|kzd%f7Dhv8EwH=o-kL-z z&{~_g%$%tJ=FE$&W_s@Uj#o}wZ?lDgYGZt)cq*bxFJ>JwAOs3oy$h>loN`qAPP-;M zW(mWdAWy1$>JgkrT4*Zi0y?L>Th9*~aOG*UYwstfi$(AEP!+u4p~bsM?Y|X!g*7E4 z-*9mCVtcJ)8%Ui+Cg>vgvUbSS?tkK3w>o_JG1;tK=t#0D-itA|-F#@3Be>W21O#+$ zT>XqzEh+*ir(%j_+t zqWQo9^CT1g>5F(Nf4+7{jJInZ+1DL`8|n0hYZ%!FQD^|sxZ)EB^5Yf59-2J8;HsFU z=cWtTSmSF<^nKy6RTDo;mwO^AEVmNe&u`@hlir$AvJpLvUm6tg zYRQsOs~@4N21hq+tN!>S5&sZAAF|id&vBfh`ORrPH*rkOn}aXIUpp`(Sdo?B(-wn- zYirvr*JBC^yK7{y@65Yp>s#@wMQ@BEo50TR!*gHjo$1)8f=dpAw{}9-&!VCj zR-a<)iHC}%a~l5Od$0s*J6)0S-lM4t{q>y{qv-w3l{bgarwp5hHQjW8ed;pcelm}I zh3YoDUh8A3SUZ!7Ku{5ELEDtjrF-q1+#IHY!TCBfcx1~@&P)wc+qi@*N$<%10(;au z_XLJigSyZN^=7l}22CWlH%CXomthY3>dmAqq%mxriu_Yw`239pl#Al$5i1f4*yFwL zi$)zPn$}gyZ{p(g+%lh`j>^t#RlPlse$aLJ(#$6`8O#%DUNLp*cXbGc9PJV*8lWQrLRPA~jljZrIQ+5n zPdxe>gdx}qXQ1}`;041_Q>y`{HCgDDJ>#R9X?N5Eb+CQvna$yOD5=b99!6h+!|OEf zwK`2R+&KEFL8MrrZFbiHhl1}1Hg7n$_`O1>?z)OmQ*3yWtBL-%`z)w7=t2_@KAi6(FwRPJkb6IFVV`zMrI?YH;n-wn^r;j-qI*K`Us+6!;LgKESrW7F`n zy*oB2iEZnIPRNK(cPgMrHve<9OIBLjQltQT4|DnH7AL!+z!X3FE;OaV_Sv?V>RAh` z*YnPn`4n-L1IrrXQZr6h`-vM^5LiVH@B@N;v4 zV1u9r+0N}q)gI;=agFzn_!AgPCmdJKKE3GTdZxQKT!>VI6%7{T*!F)RmXBF=VjlUy z))W5#WUi1{SSIwdBc(c+7RukReoXH&dw2P1L-6JOe&_S>b%x=SjynI*YNc|r+bmpU zJ$`iLi!wSNZWBZtS;@=lO>el=5J#K!#7W9GMeqqOtUVjHHNq#!o4^~(nDPI5)8Q*9 zXwNfXYqh^TSg400_^rR#Vl1-fD`;5kfRK-4Qy2XG3=^5@$G_6NSR8I>hSm)=cRSoJ z_s+yT+auXeTE?pi#3_ElZ81#99C+3JzPiryK`f8(Z@L=5%oc!~kj)+n9*0M*;CjrO zS8M_Oazr26;KsrLdBK!pvu2ln-yT4(MqTdU-WKA4A@GNH zG?zUTCTA~QVEv?;%Gcc1i+~VV1^=>J;g{uIZcx|CkIS>4KB+IQLc{GsM55C}nN7*{ z)!>H4*sU_tXuA1|kgtf6+YM$^qt5&Jd6X!u0Pi6L zLJq#Lh3V44E_JUR-}S-dm(1!{X9K^J4<(M|@m9?+S=NAC?XwQB z1+0&o8I#JCBnTY!)f+O`~jvKi(=VkKvULr_i#Sl zwg)sMKPrQOnU2Wz$9vB>#2sU+XcNx<9}i#W2o0U*_cc!d1he6o?rgcf2Sp*^U9rZ< z6RoMiFWf!lkP{Z7x5SjeTYr~+?BCVim=25mEavhfmj(6A! z;eq819pu)Z1wOLi5vVbx8z4eL6&Q}bqvv%wP6>WR)5@pVgj<7s$sfyG8~Z| zJT|A%N5}ZaNa}WJ4P4$k0JP8MRY+(n#wY|w0sKHTva6l4&6QpPU)sy3C@+P}N=!uNz6pCp^`zHM%&+Kt3NEjDC#ppX6>fp;vy5 zx(Fngp9vNC__gXaequiSiQ&$UtIx`l+PMFIxqNM~f`Alro^ei55RIzl3965cj2Vd{ z+}9wUOpAVN?yH_4In%y|f!A-1Ij)vp(QIn~{t66XC2J}DE~hy5s7U6jH;fAP^>JfY z%C7Tjq$5YCS*dNTpj5Y{msCbN^jN~Ld))i1$%irv?7TCq>h8uv{l^97grzJZGUuVP zX1~cAL9mD{!(aoXV(#! zcG5%F8M1-*UeF3}FJrPlOE};bhVHrEfTkAkUkC zr7!7CXn?yIU7#a4omenbWcTNh`V}zAM)%Pt2L(JG$qxk7{IZ+F>j6r;FOskxIa-2! zOC#F9#aR2fxewxov;Z{K)O)tu+jQtHPF3xM<8ik`!a$ZZ6BC&$eY)8V_;$Ea;b4r{ z)X$W7Jw7x%i->z6MOrORoT(NTJs!8iNqbF&0F8hekn7gMxQM$gBriv;Ps_3;?1Ptd zFUaCz^lnHY*@kA?Wzt^CXwjB`w97!C;!#p$Ed!XwJQV z+j#E1-7aRmUR$*4_i(k>!1X`t6@%;RF{S%DhX#0<=HfpK70%xa8VpB{0bqKRfupdf z`LH9cBM$YVGQQZXY~A`$XUvs8&x_|>{$Qixn|!j|{0$Edr17vWB(ZJeFXa~JHJusi zjcLzo>VDlhT!J-hp~VTmWtnI+C)M7?$DM=sC5NB8+d8bJx$;TqIAW`pZjFYL5Qn;A z+HqI`c_m_D@3K#7!)r6OUjM$LS+(zi`dt)5+PHrcON=?_Q(u?*qm$TVgac?5;s z*Xxh2M~+I@>y4JZJ5P!yR7*|b$F_2x*5~f=&fYW`4mo>(p3Q^!+~-2pHVIrJqvcP| z=u*wmeiY5TO5ojbq4k!hoIl0U&wH+jhR)?`rTsPX517LB0*D{?t zX*b1te&4DmHWDCs;`U{DMhVAlXtJocyq&4+s9f`n=853X)PA|AgCI;VQ$}?1hqT~L z0!T2OG{?~Psd|6n-D~ra608G5*z!bq?n|88q`gl2X2`0F8f$rPVE;T5_M8}JID=vs zPNfGg7m!_>Rvc6pOitPLz`ND(@%d2u7l~eqIHzqJz3x2qfxjItF=AJ2p8K-M9W9iq zRRt~S2yxgH)`#J8&UfGR*FFo#0B$Xvw22MB&q#nG{D#n0X-mW2 z5ch}{&03eXs1XNsMule)UTH>r+|f8=M8mrABRY@k29(VjK?^ZyP!Xgj!KgDALqIa3C@%FhO-!BP8#Oc72_n~kqzr%6eX>I&Ip(4 z2ak|7<_mL^ThH%DnAP+K#FL!albV(fwZA{Dy!t4tzCx^xV{-14pgTPDL`9f;x6gAQ zXS0C9V+m+mkyjhZ8-(CFzfSC_K`gq(yO0NG`>7%`SVyY!F04q@|=v@Jd;N$`eM)=J?dxPRf;Lx zjD`M!si@SidZ4HE1k4lQ)6a10qzQJtjz`J@ji(=vF_1`9jppNVGxP5(AooWT=zzO5 zSFz@$BV?$*fI$}{E^4w2{$tE1JthesZ{No|ghsc2)Vf`SZR}vkbE9qPTH)Z@;{h-X z+AE8|fS_;+@mRKkWAPuYMpg%c0}mLlx#}S8$LTl1=$aWi{BI zU2G6ZiY^V`^k*piWu=rxs5fh=I$jREMUHJNxZeohK)U`ClfaKpXYnVLg3PfEpQF-* zT3maP+9af7VMIc#q6oL8YlL%rix4@PsJ|H-6t@6;{)r4SXZXGmKuj$v>)7i;dceEo za0kMnl&2MWQ^Gr?#Kh$2Kpd|uJGldr=VBS>?>n4QC43Pq|nBZ8jf2LwG}Yx zU^3Y-({fLFS$Hl;F+Im}t}_ev-e;y|cag^DXDeW;s#McnuqP(IAqap7^s;L6Bn(B& z847i{X50ewx#5LV!VW-l&!jjHlZcI`Pm`~PP_UTiFBVmohkx`s7-wc-+Q_GfZ1bNx zgjr8Uh9I4Z88~)?*E0MsDQn@-0MJBF5d=z#g)5ca(E?Tiqste2mp4u9Tr68~OLn8V zJm!vOA+C`3%N?JLBH%xNfWh=X#`L^B=Q`T&niN^OT--@f6#koFRuhsp(hj$b_qz+ zA-J=4V!~m7<%DK{m1;%yCS$oJ=e61-9$RyU67}Jd-E|4dVD?rt+EcUn7)QxqToDj< zO&s^LgE}}|h(phul&}c9aB8_Yy)`repI}S&X8n>Ax}IuX!}=v)Q;<(eu;-K3Dm>xf z96`~STL8%#$Ntjwx+@wc!j@`!-7C9Y3)}e3lxX)W9$h9GMTH+549T0spOx1nQ+(Wn zSbkpNws~Tj)XIxE8fz2t=Fgh0b!;f9FhI5vA{DuOLwInl+dzoC7TT&L%>5l=|!<_hTX;I3h2K> ztO+$Oi(IWL_D!|Q_NOd+Fowexd*%@+!-UIIg%AVWp{G+5dt{)&Au4`aW+TN)2Z}*& z`;`NRazW{m!9vv!8DVY1Q$NW7Ze~&tZzEhM(pNm6!TzVV?;1)NpO;259n4eG=i7aM zQ*IOZM2>%Vfd{wR5Smbe{YW*53_E@VI$r7%HLJ2NyFx*?BFA)tAQEyW%A_}DS!L1s zUx#|}Y49ITLnD2LyG+#ZvYaGDlElp737LL!)W&uE7CZE`P_G9!e4{G%d2+;brc>`- z9%BuXlTS!(M%Yr!Cm{_Ilr6&Abotr^vhzk;4#4q}36?Hb%oG(DMYnRvABYm(TC&Dv!KRSPpu$)> zQ!Mwn?ojncvS7sSQ?ed!4j1mg=d+zrFH5U0pit(k4p5IkJl%vyegU~s?W8yXAa7p=Lta^KA7z6%? zEVpL9dUXn<>jvi8w~=FD=v%$;?IlB$B>r7?zs3R~M`~^lDglykk3j#cGho$R1s9=x zsUC>59!7|N`zM!ynC%_NV$i4aVDx`U+z{SqPu7~4A4o&r+C#nGd$%-+(Sw_w!ubR6 zw@9)riN}iP6~qJ_YX5tUU&b`1d1RUm8%^#rAmF`wy;l%e%y?$QS|J`u;mF|Cbpji! zJ3W*S;TXnEcajPp25RB{S*!eA*!&NFaD?=d6h5CA!NQu7o(Ecu<0&C{ssRvC(n@!LgX$LBrp~{=Dls&7KcC~Z^$^47wBTRrzN7E2%oCDo*Niy>l{$~!KCpU2_LN>gb98!1sSW%72j6|I;_46agFJ$XfRwC^}z0 z13&tSjh6loiOYY{9{=-y4ney4zk5{vY`y;ZNB;a~#wJAl9ZBV&{Riq|0RW^A)vgr) zkR*}dbTHCu2_%eg@&fy?lbc+8gAH{CFm2{$a6>T4zxt~1^D&jt7O%u=CigrXoPmtQ zrb#A*yn~Mkep^VOREC{YmsxwT$wYa8y^k#KH3&0v2I{%k6tEk8hl02u2E87fwY5+d z-0k$xM*cAkBgn$j5BWABWYhr~-*o|kxOPBXSNH_AN_vXxj}YO|k(6(3fQ&|f-!1(u zepm4~PjtJ}4vQ5Vq~R1-O}#>upacX%J-`)i>I~GCg0QoCFj9452G|&Pq9k#;_Q!_D zJ4npPrDx87pycvmnvttvvEe}U*V(`f2;y67r}VHo0jE_x2+p>=& zswGU`kCp!c`6W+)&#umC{AG2#@&haU4*_D)$FUejO~c`LF3Qu9z1AR(bO)&29DuUJ zreHj4T^?P6YPUo5s%$sC?RfC>kS36%B$z3)&V09}FbKf^4(wLR%yqqUaYj~}FjN+> zq3PZ`>TSLiY0?f=HSi#{)Q)2pqjXDEk^KN5Lt3n}$WI+R5&y^(MgkJ&q)vdYvF4d5 zlKUB+|I`4nQP@I9lbHS%n2wEPi|v4-%Uo@Ns0Qm~r+yb_kEn{*Z8`>MCj0t;lGFy; z-L3B#{5nYgb-0M}MX#4?o>+TNy*1E?_^C(v>MszFG1>rz4`NYx4uXuSq4DBpB4_s- zMu!g6D*ag$Do}`iznsL5kQ98FRut64=#KB03mwDy!DJk8%V zAE%BV9ebo6@;9+A3n)GseK9)+A_QZ5yxH6gqpCp1TMIc_ zaaV}hZ2|0-q$xJvCfL%dk!%!I1w|9u&Bv{jq?a5y00Bm=GK2SiY`UxXGr=D!Zo?u+`oaQ?7 z!OI6N<&25CYt@_~Pn(2FBtKl`iy|MCoXC5d0F!scJ9ok$qO^{P-y+;Awe&w8t&`VK zvmTg1@*TuAY{Tum0rWHj4cP^2nrW^?8sPv&Gr0PSPn9>m4sT;+er%k1AB&;TnR!Uy za<9d+6pS&AU4`H40OIIf(=<0z7x3;~eDNHjLcVMtsOe#A`ko5pU$SgYO=c<9Jk(v` z3nf6Lsr$hJH1Fpe??+#vm12N3_S#{f3~h|sf*djNI2MQ(J7|BQyYNuDwwFb1{l|bwr*wRm;pkI*d+w#@CJoEkZ zN8VBqu?jp%DNr;9o%s4+ys%pOP+_)Kq=TK*^b&qItFi69d<|*xDu_=Ei}WIfIZsOB z_ibv7GeXEKr;t(2p-R)e+xI}|(E}r!$}k}1GiU&jNbJ2!ZoRI7?9dDc8zigrHERkq zG^m7rDF)}u#@P?Hkl`*!ipr1ZdBpJbie~@SJsF^8_MXP-fJKXot(xa0 zneKCgImxvz9{!=yeD;4_r5Rs1NPJlKD&$gZ@VK zf`iGx!ASYT4IsfQ6Ck_&P)()zhDwrr_lmvSzBFIO^l6*2S#KJ@Q%X&(v|CQn&>pVm zuSoa)0PNT>c{$z#DiOoZ`Vt@vqXq82aKL+{7xe5?=HeVooJgALFoYh*{=sNK+M+6a_cpmEY4o{Bbqq zD3)Wr?aIh}1JRU&W3=siI#y9c_R);>6?GU?T3t^x?<#rqc0u{O9qI zuFm6pJ>OGw<`YAtR8OXS6Dx@elUK`);wvy;rdt?zjGUC^AL(!fi}3DxCUhxwqe*+G z2kOG#(-k3%onL0m{St!@7Dm{Uk4ev~R5DHDsHIW{{tcUP1N=v9@N=p&14MuuwoXko zrr$jQEFZi2mwwLhl+Ev>>eH<>;1tSE z&ndnBgtHgG^`G%^{nCWiu@~jj%skb*_n5nL z_0Eg8O#J2}x@?b=WM26MZcTDi47b!YT`sdhV>PgC$NPKY{BJzZOIudRZ;N;CB`wK0 zQ_$@J3MX%lCIAZ<{a9P#a=Yltqi^?-SEjd1n`G=aQAe^w~#M#(QwEFEBlt>MzjWQS>-#yV=8=^NnX(NB864b*B}(a?}; zY*Q6}rj$pq^(aEFvGLASUCn$}cPm$!$henZ8*mc9H(8=%%dN!FFe;gT_6|Mp4|{bIq`MgH^{ zTcTZwu~R=f-r9{~`J33?OqwIIZ#R!ZHnFdY8ityU@XCNRtM+U)ea=8V*=!Z0ms0%# zQ1=>`roK6H{e_msc0;>QWMhr~xK+Gew4-uWFqK!0Ev|;|*;jwuI-+2Q1p$BC3e@3> zl6S4qhuRfsVA`38tsn2ssG+@p>LK8vptX^Dc;2q3JQB zLmAsqAH_BJg+?euecw9pYpgH_gok&eg<5ROWH$tzbmx>0y5zn}Gf0kIMGo0YU06b? zgdR^bju4$tpk3v3#o%G%P=#4fg5;!o0&i+%FB(H%JCpDD$ncXRt|MO*q8_h&tjDAH zB_k;f07QO-LC=v|*#%2EEu$w5s>;VA6~%DZSn`uxBnn=M!99t!0ao-P@8QHbpzriFG z+t2M=)1PzKpM%RG{&0GWH#TH!5?9> z2xoylb{^YLL&~+6qhq8P$C#chC2Got8#^|Bpoq^HC0(3Z%M=b5TkCp~g^l7i{y}tR z2~W37j<};>t{@;Mpc)~8b#}@1HYZ$`06RsA_?O8`Fpg41&+s7Fc^GPb%CQm=FDMH~ z%jhDGdqMo2O7$y2n73>m)F2V5wNZ3k@ju%i;&zLl;i zwi_WEZk7$gU9@9PYM{C@wF< z===p?@cPlruAp^4(09(Jyen;#-_J|DeutE!>Us1kaRBw9L59}jaz@+tCYNQLcdT!3 z905!rV8NDdx#GUN|H!l^z?urG|+ku8Avu#dvrNMegv|mxEQImF?+97iVW%kF(T))kcrqovq%ax!#>L zu6%j6p9$w_tQ(6^;4#ttkP3s$VjEgdd@N7qX4Mcvx#jXnk6areqrFX&+Iy2BG6qYI z@)Q32Z<3i0{=yjR9?qpbL(VbSEZ`9O} zwaA6-PcxfF!i^X{p2$#~KpDL3Gj>&JoJ}EW0zeGnz$T76(2Y=wdaE|f7M0%-MzTne zFN12{{+LO7xjbT3KmORM7!MCcLJR}L_aR0nLghvyYZKvh@<2S=nClDHTN7m>hbe35 zL$?BF*#K_S_)Jd%%~-ZCIFLueeWkpWUzw*NcT> zmH7RJJ|(!Ot5lhOG+`iFV6afz$2Z5_PO5vxu`gDFwmY8Zep1uzIlVK6`~R@_mSItM zeZRLNB_JJxG$<`CUDDDiAd*9fAPq94bPXjX3WJn{Gzfx(bTgnRA>9JfoqG-E>2=-L zz4vqN`+2dCCyx6i=P~}znOSSr`o-t>{bp7LLrH#e^{^7D7*;$L&^C0(&GaED54KQ6 z??#qL55|RqJ@qiJ|MV7=`d3u}M=UwF$@;eqiv@1Ec&zNb%b%5d0cls*VB^c95ZDI5#0lY z#3E>=c9z!>Kcg-c1GNUNOK2>$$XDD5NQi3Yd(J>TrU!ki948BpNyN2C4IphtCGx{wwR1W-PkBg61um>`QwWM2}7B6N)*_gU^d*EZPjJFZ8Psk5X)C zvu9?mKU!e;0ms5it0sgb-@jXBL|)xpsy>cUe-JMHOixsVamsoi?NOE zD3q(XC}$EHolZr-lD|rkzp;PN`c>mG-TF82C)nYsaWaMZSM9H~1 z{FPY!(^)Mt4ZhK4B2xdE$B85}VEtht1|}LJNSHdlFdADi4V%|&bT>Y~tv<0uu836Y zYRw~$o_0DjhAC+@0AoqdPFXzeu1VOh+p}Ti*Blvt5B0)%-o!@-g(JW)N7dkC|W8rxvWa zh@gI_K^Ox)dhkoI_|d3!ClZz2qn;8+8DLVJ5XQ*J5*T+Fy_Kp*VV^DQB4O9i%blI4 zT56;yw+RS%>S0QkUoXX=nXp;4m%{N-^4YSL}ehjIhKxnXvd-9mCJY1~QFR5(I z^BK2r7ko^Q`gsR^y_vhyEiTk9(3>}TgY%vHn@>VxHP?}<xj$cWLLZolg z<7LY&Y`*|?w$C8ZYRO~fXeq{fl>XX=?cC@iw=r$-2-CgqH?)mE=O;$CuL-!h=FSA4!HF`8Jd4wgmioeGXnt^jL60G0Ht3cY5=+vAa{R zzOiB8)@u^_rr*q-T4Dq-H#{+cCZfg(QfB*Bamoau2` zxs0R$`GlD%>QIl(LtZpT@V&dhmevV zHJTLOjDO?;yDS+o{~F=#p^>$Y+3}&MLfM~x zcJAqA^P46@;@Hfvy=w|rhw~3)MFx5LVAr+IBab&cKGM;oFCAtoany4HntP-3i4PoS zN@;=>X=#_1(_bKj4hZjtA2PGSm4qHxs!X}&;5nwJ*;t*}*q&*2jU6&qPygPa^T}Mu zUjI3#p1Q4R$iS0GsN}0bg}JWRWjzb=M2fC)ial9liSnq{m#>WMKc+Y03PC0wD(i_? z`lOtvA5Q!htR+jOfQsQJ7ie|#J3XYtnv&OBHso*A9-#Qe!M4kv>sw-b=q;Lr9A492 zu*{M(u*9Om6PK%=uL{$;-pb(;noA2sB#;GS)AIkw*?Qb5oEX2R?OC*Tdt(*@m)uho z7D{v8b|D8RBASF7^SAH_`kuJamB%_X8@ve0WLbFIhhY{Z z9#xLzo5TKnyRo<@sD$F`{=CkhNp_vmtB`Rtd*tn4*bGF)Gmxa^7D}$7JcTT|^^`34 z+9qXq;&a37>k1Uul5{|z<+35^k~5bGty+scqroM8zj8eY;F5mWrK4c)jgy4 zG)>!QfjrU+M6?l}#ShXK_+x8Ep>o4+QEp6axK9g-l=r=+|R81@7X!f>o5X_539B{f^VSCoEInqK^trpG2nF4@IGdGBmJ~ZC03zjZ7YY z)xB7w4ujNkEqu$eR3iJqWic(kXBm#o2Iq#!$<_W67B0E(V!~9x-!UjFCX8=Zg;Eg) zq$lk8iycUv=x$V39!k#=O8T>gv2o3Fn*4k5{9oIj9(_FIOPR<09FIDz>*8L0pITa+ zILisJY=>z*XRbFPHP+qb7qRz+Hg)QgD`2VHgOn0pRZVHP+N02);JoX58)r0ZQaSHw zP+@>y9vlD9C83-$;28k(p|>S}>b&$aJlh~m<#qk|{gG?+bi#HE+9XQf#c`(m`04W6 zNfFeKd^?aOBe#`4uZAsKevyi%w1?$ao~DA@5Q_8sIJW*osJ~L-JV=8PjltXD{usXe@_*>zC*;f9<`}=ih#znjcMh1g9sKmt3D_(EQorr6#1xEeCwo zONXNcybtU%3Q4C%^}|2ji2oBiSkVL=37uEO=o0KtAJlh~ENJpYn9!%uB3Tog<08>> zP|f5#^DNF53#M!p1JmryDvfX{0iPo$8x!vf>FK8J`Oedj#9Wn>gOp0wSr&vUN>yW8 z`W5w%yqw=taleY+nzYU7;f#VrEb`Q}s{cHms#AzDt3l_y_R@ts2BrLxk?=DMV~1z6 z>0P@iNV&N>sVz3L z?=}ncqgzvKHib@f_V98uR{9Bjh9Am%MbgAR$Cah=PJfVtfww<2DyplFx-~#Z@I_Ph zovXuv?5%FDRe~uYPT{$GN{M)H2ch-Snd6|m;p1mQ-pHbX5LX&Xh|aW#vDXxb zq-*J2FyUieBp9(G6eQ0-0@ZEduML#EFQ5l+#sCLSLnNorr=`;+99pwq)XV*1{>9J! zXiEN$&E~dqGusn`6@{C3aDq;=93s;*s>E!+=3K|gVe6V;;$#jDF2~qZAibYW$!|S6 zGNC~VP|p5rKA#=c83Ox=j(NjY+WVZ1aU}%e+ZX(~;-w9vP<-+K3FE^c@8A`K?pxfpoDEpvm++_XLE?1quj`v>uzJLuDL9+1p4J?(SmF zirawXG-TgJsMCa1h%Y9^F7oS{7Vt^!9zFLc+BkG8tT#HS8+8tkPjF6_QCAocssq9` z_45R$#1?I!4~yI2&<;zJkEiLG$37p&K0-MiMSgEbov%xEW%Ru%6L<9O`#rt$ z?)%@y;m2)SLwG{uY8fwRcBt#_o${7X<9iW%ZGv*Z%wgBv{++q@C|{{?G@}n1nA9W7 zWo@5!V?J+-boSNP>BIz3o(hr?#lVt@YxChWEHu0)b6|9QhFLvr#mZh=EAlD?1!p$r z2as~|qbt(RV<_DIDvNS13i9e|VX95Mhc3zaQlB{L_iUipvSGgEg9#VDuo2zkm@wi{ zGE#T)sa7{rPGO4$+v@NNvkRZ5Z~{8)+9xTB_Q~*}sHe>6?iX-_nY?t{Z|`sM`Drnu z_SAqA>uERI6$=i?O(?D_Iuuu?nvG8GxGevPfM8V=FRK7{|0X|u8({|_f4C-X`&||O zlSB<{D1kDiKdXp6=!VHem3`qay4pr6iA1>ThG?JHofAt%*^-ecu_(vANHnBO-tSh+ z`Z8>3_7LFzH_8#~QQu>ezFRcrQ!w6i?2BZAOF)!7e{9(Vzf#*X7gV!KKd-EQ* z#tw>n48?!f=|1s#=+JI7$@+w+2HGzPo&GkQAd27b87@NCYeVLHH#AnXcla2gp7f&E zghC8|W>{5yst#Ge6&q*6^SD9-=QLOXD7^V?#Pb3DVTk`~PNH)@`$)5t=pC;uRI!j| z6a|7@IK=-b-Uv^*=y~h&06)xW7^NA6qry)PvFnJYTBg}`!jr{s^HkXL7^VAwo*sR^ z%#$@7-`%?Uyq#s&K1wo77XC%}7O+<#GDf;`IBBN;xw)mUMbE=VsLlB-38hozY?-w~ zL)6f9>o+0{y7{*ZI&V%Z#G5gsVbcdIh*ytVe)=v$i`YQv47AS2x4$62O+|?bw~^!} zCaREdoT`5x)$2(}>@Fi^DBY=otKp-~)vk#Ou#E9A$N2Vcokie06=3W#?Eg7h-j6$q;|~{p%1RTL|xsRws`9$=xF5 zOQmn2<>||PsIj4pTyYIUC)O;FL*&s+ZLB`)eAm$|E8(elmFONDdMFwi@1`v^M9HRC zEN1|Fxo&$6QxdvWG`?w)WTbOyd?2AF_8Ssr?|*eGRQyH(n^WHk&ZB6sJ~Sz*cMJyc zn`l`IpOA{OoG?|O?+mnr;5L|;xsM#DisI`nh|Xs;W-(=JSZLneL6`Wfe^Uejlkr#j zcn&7|yhP&MZ!CEIxwWq|3>twS-8ZB8yAB~Q3G*qhlU4(lsGrM}QegQ}>PAmoaSQ+4 z3#e2Ptk51aT0fpd!x)G2y}!~&)T#w!hJ7i^9J#x%gt|nw#L;rt%=onqp7s#K@()L$ z1da;~uO1W>R$%|C`8#5`x@!J@W|476dZX#MC=cqsw?wy4$|I*9j zVqfA(9DiEL|2J#!&(*1;1xZnzUwGTQ|NL@zO}gA4Er5UdX8!!KLll?ELPtSEhW6*b z{F{$1J;FpUt1&_l4 zBoEHqga5d!|GFk**iS>M$nrfNq;tc%RVIE;9SGKd@Uw2DVZ$9YOY#CGYB~ApuF6C` zYObOoYZ~{99g08xa6uhjSJ);w*OL|Udyf|`fOnBVJ=gw1BuB{#pgeC0xhyCh z7V0(WTVyWPXo^ z^b7ltabb^qHIiQFl-lV@S*-dla+v-?4GeGx@#zmz0tG!ul$+!y|MN9dUOmolRwgH3 zQ@qY82nT&pcD3Yl+d!3Y+<6+fWAJYP0l40GF0;GL2ZlRy6iuTIr<0o=s2jomk=7yI z#THhn;?{-5`8AoEnNqwEQTX=M`U!wBW6$MRI7UK(IZse%9I_ZB8GPb;r!U6+dyS^% z+&O>98!%ma3mU(plOT890CN_F4QhIiU7t>dbmm0VR`n=>@RI&xV!OW3xRO zK%qL=yHjjxs0z`Y!15XFVJqocT}ki7y6frBw+YbQm`E{~Cbwo=e`^jeqr^~pQ2?;k zqIUtI^7zV7_9UuK84^8LK~14{eM9a!roLYvP~sH0JxTY(s``l){so4JhY>thDh z+j%cS2DpS7=U5}=EhmE$egFz}?nAnO?W@l6{OI`@u>q8Qi^D*gh)FdvS$0a^KlIPN zZy$fXX~f7;;sx-B6gzpXC?4g>`~c+%bvm&unWA5`Wsu*x4%AE?zzxO4X~!}c&^H>w z)B@g#n%Mo71d&iC49{UTGZ^r~f#r?W*EuhISz#jn`&1fKLmjqi*;-88p2#Qe-}OvZ z9?<)Otg#{G5{PQfO##yTR33_+02bL-`U7?f$fKeUCsHMS>rlfKXLGzbWC+P`@6~oY zXzQz1=@S*<;+zN5POY~jv*uCu+bBOQF_2_T0E*hV>E(9%rcYkX(#aZq-F4MSY^Z_K zRhiG+)ad;D^YnSiJTe@k4CS5Xr{JIUiLm%9PP62j2y)UkJ3Q6!j;LI)QF>6mf9`^Q8t7jI~ooPXY^`yjLm;7t*eu*%w~>&fyvz;Ql%16V>hp(?I# zrTqO&$RwQCTj?&!T9urEuVpPR*Qa;6;*Nl>4GE=%^Fm;^i7J|i+_ydYnz2aiC!6fzHT7gytEqUo)x;p{2RP!A0y4}Zr7e&E+fbS`8 zDht)k4RtI3`z8!{11`8cYw6Fqb-)tJUz3#=lQg(CrD5I5Z~J=e8&K>Y7l4at#V=U?y(@*YrpxgLnpb`@)qILTc{x zC_dty8=a_i^+l&Uq%3%@6!D4kt7aN^@0@TUQsy0Y!0@uos&`#DK@5|P?;J_SR)M>L zB`#YMvJAhm@{4la0Q+z_a`;f09l`c#FLEN%b?AqYO&pz#tup&iG;{>*mm`-{I$J*d&oLeuE1zQm4v!`)JD?bPg2eI|%pG|FR+C^R zo|REMEb33V;l_m4S{Ki@txFS-@EIk8STB4!mgmW-6l_O9?BA(Hxa~xkj3cx}x22^goJ00zj-i!C?p~<2ibL z2>tOgp@A5qB)<=3w0j6v`AB8UkL2cc5buRDqOl>t7wX1;WOg7cIu8vL7)u|m+V7_yD}I|1X?{gM#VCE9Srt0B{1?Ispp8SQccC4 zv%c!$>F9#S7xW-9o%Mxq#2a3Bs8K%B|@SQz!)iL>c05;7*{as(g z?_Dy5BTJ(i570EPyRLw+uXQ-@_Y=u+hu#XPRluni4aeq!i$h#16cD1T`ZRxnwZ{=J z8ND7yIHde|?mauo$Y;+;4FaFXhX&l4r>~z15dlrVFmgvdD;1W9QY}oo-`CNXat*=saNhRrGHeC&!Y$|a^rcjmK3d;K4 zf4J54Z3Urg$4)ALjqO`kxS|RBE&n0c%h$`CU1eQeS#Fg(vmZUAX3V==j93su3{nky z4JF%axso-nMiQ@nH(F9kNwr|8;I#b&L>OVHTaxloOUEFH;+D_PrQBC_xno0?p-n>b zm0A+=n@Q}R$?aCG-NoXShhsK$+$_EzuyI6h@K@h8Y5o#+mY}HD(Yy*O@SYh0^WVnV zPx`*;NA`qvMlIPGyk9*WJ#_o-A?ohSFOr&QvM!~NgTHgv^|d{L@K)**v`q+fXxs0g zGNU$vgyp0mFK$s5MwNQ|IE3{k(?SopsVDC}`83%3%R~Is&;wO}9IH0krg{<%9|K-( zlfc=E_g#eEDWhv#ZS7{1wg(?G;f`dC34}ABLp4?6-PdJ5-Dv#&50%E9gY#XIXp-)P zu93QjgtlAqf3}F%Esz{|J#S;*iTWz%g~vMa6TKBjnWl}=l$OEZO=ejAN4@SWm{M=@ z-Ih|rH0Bx!S~F~8RycO?@Ap^Hjp&vSh$%NH*i@Uleu&upD7pwQTdy6RF7^Fw=h{%% zq9*h9dwVFt^MU`&4Z5y-%A#mrNo6=m2}@$pdb4gGb^>7l(JxFyi&+Ep^C*ha^|;W* z3Cw!$q(Dcb?+dh5DVo^B%RTX}Z_1OcuTB|#=o9}SYFfA#d)yuvc27HiU^o0}H>gGy zP17f|7pq==N)CZ++zX%BhR_&t%9Yz>eql`;@qlYA2^_Y5a-KiSa`ud=4P=38J&UeC z4LBH!J05Aea5qS5q@dSyKf@_BwkF6Em(rR3CQlFbp|_&SSdU7!IZ~bFw~r0cfeYmH zqzXBjyvk$=MV9riA7&jYlZp4v@#!u+s_)>PC_hpwd}oht5H9ideS#O{1mqLzSNM_J zb;bm&+FczxzXw-BpfV8iP-oWUA^L)uUpq^ zB8iAax|SHu4Xd8UGu@?(+RkB>!@7GuH5*1ZmGOfROXk4fLFb+C!Y+6*d^v}>G$lat z7PUpH#_;QaGO6$7!zPrsJHFE^XsmJg@`d-*F5-y?nB3?0Kci?m3VFdJL)#YD0hv8Y zxLe^f1Ce|7@PMvG>%$0kC;QSp-A>W#yXcfD`*G|79Gq3zf@fMmu)DLVyPRT`i(=w+X*vc(OPubQ33w1^}nK8B7L|eQYgkvxH z%rY-neciF0svZUtQn7IvRLV%LPZf82%O(0Mxt81r+_^7-&q=cTzs`qRz?h#Xe`obdHMt`>>e zQFAjh+0#oEtgz}GsAS*GRlXDiW}r<^u`cyZV7W{(uTDB*={9%2@n0%IU*%Su_nK(9 z-Hr-2L%uG%ygei+A9cO&MMoS4G%LV>)T~s1oJOQ0P(}*}u5j3ja%ZEk+A1M!XVUaI zo3ne=t$;o1+QcOid`{xz`9*0QCy2${V#c-)5d}lWEBM|*>djUTp;#zcMCEi?IJ7d$SGb;SPcUj+@ejGaMYk1ezT)6p* zSj|0$b(i^(x%-NeSl@N1NzI*>!2>sjIV@QMbuL1pCc=0r1qcJrQ~FB!ZwbkG zA{i3q4;dsa+OSO#UM=UE+8qq?B~1IwJDN&4K($k4i+YuHY`45=$d|YNlG2JwM zD_$vEG1dc2_PJ$dVjUAtqPIYTW2i)*&OuV{9(-$_wFx16w3RBlqWF57$*7UaA1ZyP zB|>tUva)BVuRbW8xl#${H}BLVvSc?Udecho&k0p`9aX+CCw<&@BkF6$$#7o%mUUE# zCrZRK(DU_9z$Uf_s|~024BMN#QRs8RQQEA~M=)h617o+hN}GCvR3@v$m>29 zKD;*)lN=wt=!3x@n(Gn=Zh^Gfw~2=eC*mq1=QX&`9yH|ClgKvJ<%+_91-mWl;RjRR zj)(EFJ~^gCmGf*FeHf&KOn4B8fd%&b-KZJX2cAUgZv~&fd_j+}x0iW_V{5>IKzdSF zyo@DQNu&&vQqahv(L}2qc`Y?52Pxem4&6E_?p0Fu1!1|j@1+(atYd*q+?w>gkDhX> zjoy;Vv&(P?Q7|>>^P>5#YEoE@D6B04aXfX{DD=fnEZ5&ql|}8%LNpNYRIOu0{PLWz zSm_?HBS#5%*7okkDBZ8OmK9x2b9K2@zRRO?=O=B-;--8PQW5?(<_s8nO=@{y}f^HMm0{17?d;Xy)}}E^h5aKFHJfp}2lt1^Uy>T{F@p zZsee>NXJWT_7lZ6`d>ZPeXnPuJ%@kdSWFp^s#p8*;JbIPA8!fOQ5s4cObY{hs}`N^ zXLs~ z*q_`XUW6`&PF7MxtJ(L&XU1M&w_YDDo3ZxQxB_>!)s8L8U&}vtlB}lkcVYTfs$-g+?mr zuQ_j8-09CYxO;DNe9M4k$?(~wrl6ta{4v>W*b0HIiUBqK?N_YwDt7w%mj*m-!iX9c zrEr$%nw8ym?eCC~a;LQWJDSXIxig>&4IWaE>B%!g>$AFAx`s9*ka^_CqVhn~xI14% zL#pc{_T)MD%CYtDK4wiqS_6P*8{S-+viQi7g)t=loAc{(j75cWYjc`q%94-R5%$O6 zxat&-n&n^kT+~QxVmJM^Uju}Jh9lq_{Ow_^^GMw~{-V0^sRJH2gksb&$yop=nxDGT ztwInPaiQ?ux|tf#o4D)$_vp?qXfr=?>aA4dDh}7SsqD)64EE2j_e1%q6zEQ*GT};?!8PU3&XYmMEGi`qQm>{b{^$FW zzGMs&a_sb$v%l3&Xa!e0IKt;COnu5r6SlT>aVW;sAnmV%t|`8qeIIX~-xBnmeG&FH zlc#bk(xRF19*z(W0W9(=!z`TXW-jQv)e&-TP?rQTZ8>2`Om?!jfGJSkwO~^rk5*v+ z;J}dR$e64NkDvz=uXfLDq6JJBHak5#6zauEBFWPW1^>eOmcF1IpFc-gq}@fhvTmZX zJEV@7ss3eGRL1?CcR9ooiFz{k!o<7}b67h7-REs>M7KXi9l$p~QZJYk{(#oFQ(@MR#!w-0YEc#r zQ4xN&tuLq7ky!%6bnFL^FE#|t-@1_j)++qkK;26pAA z?^MMA>ho7B`%Vv4d}6o!Tx0@x&(_o6@MKhluiTJLOX7@@s4$u^hJ`?+RS|FyA#!k; z_nJE7&4uyw*860>F2y$ytT@MXf)gRDq;ozY$n$KIV8NEshqpp0ZlBvE z>|O=tgkcra_prp`am?#JSL|2SiSI%%un5W+3CgX-&1R|qrc=b0`JOa*S#&%7Y&FOD zi(M>s&ZFD}rny_~SRuF?4=xPyTk_q2TFjk1(w^2Ll3mVRe@=n1z|h=`zJpHjC;dio zyYBn3Pj(DtoI6KT?uy$o?B?_%91lK^otq&(_pc5eFQaZAq-n0B9tt_L`MGf3B14jq z4H-w1ryAX1QX7n>6;jKgk`0{H{3xhk#As}eYe|lp*ydCRT#|Z`R*~D zFE&I4F)Or-rjK(nQW(;Ryus$;-}yqPKm$*tI~fc+dvkrU;`HqPTG+s!j?>e-pb%X} zJjqo|<%j@U39Y!k*oq)}O5XmlM6gLOC{)GcJ&=hlgDn8VoxZSalM24`e-r|J*+~_u z#kg}Mb~F<-35K|5brQ&CA7OsDBE5^pQ@99ZC>Kt|8Cyc7b|2-c8lQWE1Y_q7wHw@~ z5Ek^F^*!%l>pKPacWfyBvx<={T!DUHBK`SGU0Keo*>oS^H)W%tf1&mULateR==8Pw zRqiU|Z?0dC4CHzCv4R|+IGKvt1h<>4B)uOxSn(#82O5YM&r48RBwcNTxRk=_x4$^7 zmTbsOR=qUzXET#V0NrgVL0?EGLw=_)AhBvC8sa>MBq+jp4^@=Zx&uj+QILZK?-~0 z^^ef?aRA7bilskdt;z`l0dA)E;XC3l?EMj3mZK&enYI_3f=YaC(KG?AU1tmi2 z#ghD=MnT_Y{cllFRY*9rD~+JSO6N!wR;t_1-}_>08it&7NHB_r@m5!wrQWuhz)MMV zo-x*SN8F$1SoFC94|T?u-*`0T=^U#zaLKDPD+kMalr?{mwG>nLhLG{pGujxe@-B%O zGKA0YLe+3e-2o$4%N5dDS29a$Qf3y=nP>yi(%C{NPT(4e*Mt$Ao)a0~e)U_U4MH^3 zKYE`D51O;cY(X~}SiXTNtI;Ktiu(l)Ak@^Q-;$Q3?sdp86lWjX4#hd8y2w}mBj3#!PEXRHG_YNRL_jCF` zfk`V&N)_l@zBYbtcp@?6^-M?u77ydR`Rf`}wbbf5b42?d5BA!aK{8v3Y z(Jh>{6@^-N;DEBnNgl1&<-dBE=xo+hUAW7cG_5c~h9Yz;wZx(a+~*`F!!zoTxn14l z4W9-?*N)uGV4)6Q>lSnGsx3AR0B&hbM)F=^kgoY}#sgzHjnMG8mZMjSa*1zag61DH zE#GGpgW^e41i%av+s-A z15K2%qK2$pz!*|&Yae*_T``8fS*}V$)xa$5$X9#alS9gg7e9KTu8ccbJ4PaNTwZQ4 zt|UP!;pfh{VEP59-tT*#l$B~6#QIv(Gx~q>x9Cng9yKkXvIX-pl6q|Q<)wsnSb8_} zZW&?G%dp43#*%C2Hm(y8x$kMxAjHUe76bJMX911=^PRDWxNO*3j|K)pGCcW= z-G=1-Zaj36qaZrY+&=2AmW81UGDeQdrI9*&@=#t?+6|?8{l-m{A)_8(wDY3ZP+0O; zPJ)lRLlk*eYyD*)xqmHasnydDOeiwk&nB_Gjsi6t>#MLoK7x2zEZeZ-L0IoSzxJPK z(cm4ZLFj%9vMZkHoB`gVS8&Awd4|T7Sb}+}7y%DMG;ZzjR7IiXpOaGKZ9jh^&L?g_ z>?-97S;XDtWz1Na;!Y4tlqx-flBjZp|MUwc^#W8QOnbX1&={b8!f)wqWXR>U-fxy~ z{!)j_j>Z~D{?!fJF<9~jXtmW52RoG*zSV-I9WLy+j~}_`b=$Ub$4$NGjnA_Yy<=6H zFm{*pZ9A=Txx%nt4I&!T&2zgnAEA_c{6&*4x|pdn?YC=WGbaZV6W#nB?D*<3t!GZA zN|%3nBvq6F1GQr{wb{MeuAb9nGvPJ#T71Ez|A8Qdvm~%+(B?c^}Co?~c4mpS+Ue^6@ zlBmAFw4r}XQpv{3hP9<28*T#N<$A)f@|&fCj9L}HuU4MS{O5{rBtxK-GMf20>upvF zxq+9wRIscW-errdVw7gOVx17vl0%;fzkTpS^mroIVN$-B+2;~#z^3tN(!&+n0pIrK zah5W8BS~JTg%;5=)0qF(VwvT)`Wpe;muR*)e23Uk5e(+`&7XNyIe5U!%evlevU=IW z-zr)iEu?;-8zqkJtPGWSX5hnMOy@awZleq{@h#IGr)2qB)68wF+LetIsV9AC+XbO@>0;p3D})oS z2!pne#%pz$M#4p?FaGjC`Whg0tF=+Nye<=xOntGk$NMgZ#;96*Zpy+Va>MA+lnTxy zm_}ZVtRZ5jr*kK@uv9lS19m1T_6Q76=uO@8HeMHQ>*^L(VPIierUFEV@6$w9UCDDkbN4Cy6-aKm{cr?tI#jG6s|F2ThhRyy*esE$w%Ud#~8 z%wu27U`PwZ0+XmG`;(=uLdMQbUJcEjBiU|qCXKHYkApD~=I%P{XF0}Ma04?W@u*d7 zw$Jy6eUhIeds5oJm8e|pp!)C8Ef}t1Ki2sHt|(D3KL`(dy<6@B zpd5>%{7TjI&0o5(nsxW``D^O^3k$`kX{$TfFwE?`r#WRBqa+&Qv&*z>Ox+hRxAWAM zDZ>g~XwI@_v#>USTk2H6a}bI1>lCMM zjl02%AZnmF=zJq*1HBZ1v$|XElzAC#cZ>hbLe3I0@u=TGS+(Cqz$7!gH)^NKBFeE0 zQ>B>Ty7iYjcn6QdB>(VjRXEoLVwR0vAAgTreJ+N^n!wsG*Hcy&@iKBmf`|i#NehkJ zdQN(iyd~nA%+oe#l+VXv@|`U=Q($F8LmSK4SUEV_#bYME8xbEK_Zzmmbf2tli@uE{ z%&+2QObR*TDCbFJ=2adH!K<)Zp*kWV8+__#Rcd$WC_aW#i>90HII9RrMyXb*z2<4| zPZRlud*HsSXYKc6(j)bxXQx|+@$f@#HiI?}6f<=8k>=-R!=#J&_qU*8$W*ZHd!$rg zh>96ax!)TZ+s&?YrJ5b_+pSvk2e7B^D>~SC80Z#L--LPM29jSWr4tRf&yU>l>6kJ6 zI1P#&?+-xB=Z(iWFaFp?8|nJw?l# z3+W-a6kZKqR!esO9z&4wl~+{AXnUu;aMR19l-NalH~1p%*(tzJ_Fd@LFuV49MR{!u zguZ0PuL$u4jy68(6%|}<`U`t-V?p7W%b&tIKwvf=d=2O4m`%oS;6V#y3paqyrGrlI zGlhSJ?%ae>{OM$W!zU87KZW_=FBL&w%B=D}tQLUh_A>rAe)`||>A&uptMB9g8bAHV zM*5F9?SCVu|Bamfe+fA~+#fNWF3p>H5^mxS{5iZDly~bq^7S(RI%QS(au?tm+*olLWOX<2>^0}5iIbt!98!lx*ANA8)?a#2Yl_NJYrQsG4O zY@psc<&Q#}CW{O!*PRxTz-+IjVV-95>0{(Vcfur?#N>PT1V!jfz8t7N!a}Pf!nv`F zqT@YSS6#pB>F+N-GJ5_of2Tng`|k6-m7xv5=I-@S0%3MMYAh;>AZ9KRW<@1XJ;A3}^1q7`5#`ucrU2kjrCSUDm;AVBK2={53s z!bWm8^?|(3QQxDA9`+BP0Mps4Sd9Q`qZ>eoYk=JL zep^AKb0Ld`a9IOenqAH!?lZ(yIBb4ee1Tx!d~Y(cda>{wCE!+vvehl0xd1G4$35e^ zVU(|jNlE9RE0FFx#n}0OoHTv7l9zG5ZZny$m5r$vb%WCmL%8)HBUWxysN42u_;4G+ z6u-W)dlH2gp;Ct5iS6cM6988}fgbd^-w;G2{R%gY`Y++8*g8N?FerA#6G#hBhEh4K z-~&mcLx7u1aGUuoi%l0~*ItN*J6ua(Y=Mw#U*TJ$Bai$qf&Sgv5x>QCdmsqoJOQQ(=GzOK z!qQs~&0Vsg@hA<2bClpNfdCH?W)vef2ub9eNL%%5`DJsIgx1o`!!zn-B+VGf6N zG;W#QxPj9$(Q9(R*L3vq9r0~1!pA&2Gx6}rdgec1sG0`J^0y;*tqiFZ z_YJX089>^i>I-UG&CUx&8a{I*k{|J->=}Su%a7(4^V@g=|q>9u0wW9*$1zagRi~+s#llU7TJ|nbaR?nc# zVxO=)hys(Zr)27ErR0Kk+>bRbxz~bxGo$X1q{i)N$5G^p2H&gT&^vsTJXnTJUqnb{ zHE9Y8o#R@0$z=uX=*eqa$FYgzP?FA*V$;X!O`%%)Z~C7S>T3QeEt8;!-WMtTCJ`z9 zqYFAokN2h>%KCQaS**mtR;OVi4^ynv;Nd1Jv?jP=W6t1RoW!yFu*4|%PIx{o|BeAo zW?96w5jG%rq+hZ|TJr1#4;qRa*010(GvDIf>|{g=ez^WGJZhF_Q^ZxVN0unyFOrec zk27Ys{%*SJ%B_BPHXrMsviMBxTu~ZwCVARSSCRo+s?8{LQ7+$Xfk8Rd?Smdr!3h5S z<36%Qv~pT!k8D*bHDj!L|MP7$xivHT*Am_bFC&$lJE#|8yRaDx4dZNLqTVn8ky3fB z^L{>hLX=2p4wCbdCn zBHN}$GxhX`pfa7w&pjsY$-pF)V@p+~kF9~s%HppHMPye$70n9fUS!!>EE&?Eps=k0 z=0F@rWhVx`_b_zw{oa_)z1Rxz8a7;B8_o<7*SFOoot_K1U$-bE4r5^hfp}4HPGunu zIupCY8??!s_3m?&G&|o^rq^yanXI~Uz|>%V?;G=|_Jc68z?U$|{R1TqO|2^sf-EBz ze9vr!w`;RHTwp?ri|q7s?6Ar9iu`MEqgV5l5zKlMOb?oVArRJ5ACf$mq=tq{Ren*ux3xB(;r^u{DhP!@_}{Sx4Qt|rvLEp|2ZSe%qGBcpo> zMz(%M^ z6IvC3{k@HOhRx%>AF6fLn^sspG*&C5{c}2g1WGCz&ovJeX#QL+TZ>FLK(-{Q|lb5U4i1VT4y-1uBy-jdi3y!e7887H!PDfLiMI$W|%=K85F zLs#X~mUEOiHU5^8Tx~x8<`HUI>Cz^r;}Rv%S9+_}p(vB#J#5DU3U7DiQDH4K(?6Vg zY_(+g{a8EKzmJ<-+&&)1=e44oiU~?d95a>E!Rn;*BWIhF)0+R-mYY?2=F@!4gTQ)`flj&Z=z0Q42-mjL__z zQh^ba=WXLTYHsWXfjEzTK+lH{>7ANKqfxl)Z(ui5W~0g_787;OcCQii)z(ZdZLGD1 z%(G6*VJ*pRj-SG-~&vw<9xKxL6paq|6-E9DC3<1$FrktNhyilSOI23_Mc7b z`*L~ZO4tW*AYnS|ZcqjJ;$wqn$fKZTrS;N{lvC6NjuDbY3W?qb1MS5rp-XX6jj0p3a0-BShbw@6Vbn-s7kErN-Yal{di+LU~Y)E%H+F9@LFgWw~FPS!iP};O7^o)KCjQ(&Q z8M8rY>j&>y?oql(o}R?Xq*WOt=FuVw6xinD7)Rp0NMNjYzJA|Mx$BAVp16KII=#{e zFNn{G1b*hr}7pYjw4l?J*K{+_^oatedBqDdg_7sBuHyml|+x>z5Tf{i`t|vAk?> zWf{T?Fy*;PVJ*wRixN}d!u+6M#dG_rl>-B(@-tvK4^J6F88S%j#K-P&czK8~Ce*$} zvk1O^zS8Z`@c}@-3pB2tKBEbOjATV)>g3 zCeRBv67%{N6-dik4HpyJegg>V_sVWoCiT6(!^Xpg>n12>K#UoHB!uP>sR8qI*#;#&9r~Gy5q0 z7;caj6Lc9}<==Kaoo*MmqQVuZ%`hax7hvwb{?I+oFj2f$IA`Gm*d00ycxGj%dr!@O zSs(lDPW7gmwHGI$1{4rk4LMSf7y`?JHY2&eT*qz`Wh(-Iun7&=Xr#!KJLHgIWnQW6E0;g zxm;dbHZs2&(t>x9WlJgiyk1tS8?8obc5WGa*LBYL>i79R5?Oys1i~h%D^CAPvGEz4 zn$JAkEt&q_7jnWv8>&=DH#C)SvmFw|4d-E`|NDeBh2E{Egm?vZ0g{({p|_!-bV*i3;uQ=&827xT&PmIJGYQW#95KV z9m;e2dgS94MTTDGfa;eTUHgwEjm+nW+kB;85!n(^?-AvoXLK4(9~D&-DXM4`;%Z;P zI2IJN#ry~FM=ILXF=t4zoBcr4$e9gs`0pvU-Vfy=csK$u*_#D1%VFmiWXRFrcngVv zbhV*&VIHLFSqG&yK)ZRmsf3reI^iyPHv8YXguPi=U!#HTmdj9+JP)QezW(T8_gvq! z2ur9#IjRXhW|VX`O@>yfeq&6Dkp539)iQiN++s6ITW%6kj>tCkPhA#0?pZG(CT9|f zfD@uq!kB-5EZLJs`(e~0%E}YAbXGKp(y!XwBk(+aNUPcUl$uYhd?fZ%Z^XU!MbajF z5f=@m1+0decR(EpWfJpdnqUNT7*O+9yDK z&_o=X6?FF|#g;@N{(OP{AdU!76N(Cu>02J8D)#+pLO@DFuGs$}PHkO#UyZ9~Gj&Az3GABmt-;?Cr4|o~E%}p0*(=CAYo`e5D z8SaMt`v;ldKXs`_tIw*L<;gAH#+{l%_7;DdyF|-GNyOZ8l3=ee?u8hg&;@>N= zZJzY}W*1@Vky;vpL%ZtrWO(U!Q14mV{yz^fA)p2drK%Oy+mlv6%;t^+aD`c}`j{aq zPg{h8d+%}d072~T8it?ufS z6ib}RWTL<8!~cv-CZuy=d)5!nRqM4wfRdu7zb<*fpGB{JV^9mh+7>NBGSJ(c@Y!i} z{TgbtfWsJze~5QLvp)-3y52k!4{*Y5oy2<@|67^xmT^b%a{(c}8vqvPTy;nFUTJWk z8}HMLb;hG{5S{wRW9($XvrVSJrA1>CJ3t6 z=Q*Kt>fwpBq-wu=+MjDVZIa6lwvX?g1DrLL!B@N;4xgL*Tk6`JagI1y>BGLv!+$&g zrl=fhdN1fDk&&It0z&rHkNTtW?x=Mzquo+-&R_z;py&vC%44Xx5w{q?FHj<+N05q>Noui-Wgb&DP z$!1;>2IA$$+~~jOq1hC|&ke01&}hEAcV6kY)7i4H3FaLDm5_dGclu!f!EeT3n;-6x zv2%qV_X}QJu}9F{eTtfHJ*u0!@Z*a0i1pN+WZ|O*dilWnH}bZvTHe>+)xmH6?hf)h z$L3y%=~R^0vwqgF>AOAV2(XL@t^E1KrMiu6#ENb8kHSs_*@Vus7ZJR+feKwub~y8e zke_$s92)?hF)@{8(@C*z<|hz(>BrME5k6|B7ald7rK`Q3BNBd>Oh1N?{g7-wxd2~k zC!v%vU__`rE&O$Svx(k_J>Ex7oc{$%DQ+1|K`)b(pCM|<(`bfTkpV?1;c&MN$|xB{ zm!b66+jx}(Z4>zvW64MJU+YxgxBa_LHHi9Mr?=hG{|=#Q zw3mR{_*x*0i^Fn=;c`$8s5S2Xn4VPF?Wt@-8eNTXCT6etS+h&?y}4 z>C{}$wBbRO3Uv_NTNGW(%{Zs0!8}IPFV52a117uvovk2)VrdxN7A)81*QC43n^9}` zxfsvyD_8fT(9_B+&g?q?LN*_rc1Yi!sjmUlm&c- zkpPcZu{e3n-!EhV`x`5qBQNhfDRJS`SW%{h8T-(XsS>Eor9_|Y0FV!F9aaAVYPu$?J1_+auevSqIaqy462RH2do%Awxh&D|V;d$Pj(<%J^n zp3!lO5NK6HJfFyA9D(WCiKmxwF&nFFZX+ypzB0DAJ3OclAY3k%Y?$>Q&Z=HBoA#ef zKl)77(ek0qG1xOaTov7TFGw{L>)mPh<#A$tIJh$gzd>oSTc>8)-UFsBy<=WV?bz7P z9W>q^jXoXA87al<<&md4t=MpnPq==`)7jx9adyrK*3`^YiBlfw?#DB4f0>s%P4Oci z9O8+FVEJ#<3>DZVZ%bWiL*7I2zT}1ibw((FFF!!+I5NJAX=5~vwao$)*%?55vBB_~ zVyrHUN~$MSQ?>9_>2a^6Xr~KAnw#i@Md(ACZxW|$w*tOId|8JHcnXqjHVIQCL#sgY zN5}R@;||@^u}}xgha&-=rLm41cZN9WeFL3S&J!m;ja218tq0&A&3D2gd<(ih{)^*_3BabFiLW%OGO$MBf-ql7dBy>3|3?et z0lZ|YG4CrtWG0ILMXa>8jj8jUb?bwaqdU7nfp|1qJ=RE?Rg|FDIkYjl%=!1=rK2n7 zdF#jDAPZ-YLhb`YZEz=EM2AupRTslILKXjKvY}5P3IAH4w_J~KY(Q#|)726?WhxjE zi8577V=o#_dy9uPPJ%$i$fvFUKT_4VG;BERQjdr)1l}-wQi`QGx93ZgwEY6(Q!ARBrpzH9sG(a*eo%tu4G{DqOw;{`( zns+9@c8&vM->)a!{>^(%92Y?q#OqjA8G!HrhK+Y35fwTxAtp0L(aQCFkL*ZE;+npb zO6IrpLoEl>$vNAGdV;00TggwI&J8kFFxn}CiHyS)rc<-@BuVv6A_P2OM_w8K6RoOl zq=?=CMH*oEmCum(ckNPIMBMmH`Xq21=6Uz}Kejyn8!1lZ+s?=!d(=Pms#xq~T*|os z?IWC;N_yRVZ}EqhWD9;Mi&{4HCO!d&!YB4!6<+q$dEz^zKZGfyhNYSBV0C1|=&L#N zQiJ8bpb73h*k5--246|hOuk$9lD;8{1cP(Oj0Zb^CD=bAqOjxlUp*YwMRGYC+cbZT zkc+i(|KtCa9(^nnX&gKo_2HSeSSV%}MhqW1z@8b}QRxD0NckvI@B7o$$49@%Sb8p{?oG|i4K!0oX# zRW{NVDH)y|UQXo5>)0>=M0G1v-lOr+ZQIyfi2ilWE#OSdfb4lfy>30WDT!nDq?QayRPCY$eg_p<@O6}AL<^ZuiCai1JVUQq$3q9Vn zoo@}%Z)YSnV>MDYLC*T&3U!Wz=quzaI?Em?4nKfmo*sC6x}OC9Eu{YE#Qr;8J2qfG z1brubq`(gOpfDye+p-URR60t{`OOI)AWzb|?>H1V5`PiN9bkkZof2@&Jw=KgNe27O zkRG@e9$;y>qS7( zhVuyI**`b1Bp`tX4k?!Ie{>DuHTDrvFpL+8+|yuc+k4*k=J7jeAB(h~M@GE*+P7%q zn%hVXAeJ}P*wl{7`(VR14eFaS=M5_a?bJ9AA=W2+5%YEfHtJM5%dd>9*C{bE+V7NNaM`Qh8{@{TA62vo#N;oUS^vVnExpf5XUR zH?^W3FWbpS#xcee;Mpwa-Zsf#_Hc}b`|{UwmIY;vB0q0uxr14NY?=`+c?E#P7jc58zLdCgx%(iLp7@hFJNIxngSl?U<{cpl6w*j4kKtp` z&_t-x@)(IHZV;KF{R0q?#K5|HezEO6)3|UvR^kFm36j5&ezNq^w_zz{177#6~ z>E5^RBCKClJ1}{DAowp}sgnM78FD4~FK^*XFi`8-@J_y=!&5p2DJnnbc01>Vu_GdI zZnpEKl7(Q6!2wR>XPX%WYqu{gmHo>?RsfSIOT6))6E-KNpAGpL<|R~6;IqNl`uGKf z(&NWtt!!bZX4o89d%%-x&u7u+j1F$zw24bhtrXNxZ!YsFi|)L5^V{+}v5CxAqSQa{ z8wN#+c2_tbI;h(F(;mdEDJ^(>N^HSzMN~g6oM9m-56(*Er7a?f&@sFyJqM4L;N;yYdu9O9r^iRnp z@%o_BF>|YGtI4ZTo%cJ1u}L`(-uVpa0r1Wf^_cZ=@3YXzaM2Kzuuj5*4gE)p(B(T9 zbVH9(eYCgBY~R0bWG4({px=v$0e3y=#>nPZcL$XIQ@?6n0kBW2Xx}%x0sx=;b_-e& zG3Bw}`_@V;;@>2gpe5>KEBhreEob7C6pc3h``@%R@yV(RoYgM?r_yjt>ODV(4PzIz zq7FUYA+`I)Tm(dlmsvxDgzkdmUs~6HmnipcB1xBeYki_mh12jsyLFz%)`VMWx=qT+uG=pFNFkh<%gmZkG zxjd@g0+6QsxN_I|r{Gv!4aS}K=Dpj)$+tdR7m+(7dj4S4sGR%7w?MPV9-K{j>z%Q@J#$#3O>GXO#UmCUZN0T~PtpbL z+^Kc_W1;Hvz3w`6%)RZ8507l85wI;FPP87~cAdhzm$)iC*1cb#Gh>YGn3komDe)2B z>tvV$FN5udodB*@O|i_bww`!bw~>uW03%@wgiE-2pR~|Sw&00v zY}Fs@qm^0$hz3%nc0^S4Q2xAc_;EUEedomj&DD-~eXxe$?rTgWS{B+p_N3B5j61%D z28ijrUDV<+cT}^zZ*smkAIPmYY6+|ntpBYzAmH|s@(%;HKMv4pub>yK*@UJ0SxNR* z{9Z6meX}@?Nwmao`g~as^%FRPssX(Xb^cDiSad~g+FRpr2V$cZX?5O}G5iCyU1;a| zRoA+(lG1T-=IYYzN)*teR1WGqnWw#%WbJo|S&-{Zm9b*!sA7nDy|Xlu;vH0_ep#S+ zSN;{(b%Vf>I4%7#G|<(d*kg$e#WmrD+PpYM{R1=I zV>;yK!gma_L@P~m&`Q&E`bsJb9{ihBm^e5OB7#YuAc98uSq%4%prh350jH$T z>;ineYH-uqN9;Z>ekQyfgg9z3sfQq&z0^;s-D%Q-xr>v?ck_2to!=&+igP1{B0GBG zg~nObWH(OY@|?gxJ7i_0%)j_-+#SomOd-WlkKq234O+qs=9K}!P+g4_Inq7`08XCm ziUo4$9}wtA#0@}wD;7LkOj%zt>7AB!nQcz*)3HcdVpu`@0Nnud=a|=&YDI)ZX{!zi zuxz%!a#j4G?frbPJ<~=x!Bx{Byw;;)&c{iW$Aj?=zt-7GH|H{s{b9j%e^tOUo9Tk9p+@P?oh|T50>e zM*k${?DA`R&`3a7JJ-D*FDJb_v7hYy0rDrbJItaHMv=GtUW&RI=1zM{Uqpz&_YjeV zbvjR{ynFH2F7`$2R)1g6Sx(-xl?aDm8U4|RI>UfquwJl>E{Jko6hL#`G1kyZwuR8z z9d-h3Bcfp--6gLElh3M%p8zs5;_lv;$d|M9mR@cP+`zWLo!JqLKgGKz){iiExa-#P zzfz8xoV-J$Qc1V|My0xE-Lf11qg~Z{x9bHqqk@zR3T|@w^ZpAh98Iop1D<0cFkW~j zNY{U-#`bGrl_MGqJe3u%zvi`{Gy}D`K_c;Z+>(JtAkwLGq~S<_hAx8Px!g7YP+p`T zqjjT2^+&JV0EprnkR+loR2T1&yg-A51LN5VXV$-Cya36TSXr_~R_(3x&xMAce`JI) z;3d)&eVe}v7?u}(XdoCG6nm6NCknO{RB2vF<*WRVO#_aILyf`EBOxjl=>w`-{;~VU zc|hGo{4JKeQ4leAPqgm#O9Lr7H0yK=a2NM*07>c-c z6^tcvF~0MJsdrX$~jqpLf|cIF=_p)X{jW~YCUr;dAnkf&EEyau(`;}dpo z>O+>FllGp_Zllfo(>&k5Fo~=bdtX?0JUODzYPeE8+^OXrJjr4h+d@UXW#Ha}oGyNx z7XO}}F(&Hk))T@6U#02~S^FV_hkJ{?v}xbE*gTW8j$#Myc%uF-+{$1)jw>Nskoh+pwqip?zWbbjp}YBwKVx%otbE z_79}uABOtX7t{uH9Telj*KMML?}lTUGSe!W<^+pWYm9xw=}m-1d#iP8V8Rh1M8zKqbb2|2vtuQLxCYopnVa{5qqXyNHS zG*$OO>Sj(2=eu}$qY)k4sj&FV^ zIo+~QIL~5}5xH%H)rB2<8f8ezH$3a>bL-I}czY}4p>kfh8!BM29z)U)ld_Y=8y)vW zWsU7i>T_Q_FSV|n^RgU)d?i$B;o9a~f@vOmwhH^Ma3NnWyBv}CN>Cy#r@0Umd!5sg z(2`+-bm}UVWUYbpO+1|79yv6(Wb|d?I#hWr6s%P=< zXm)XL-=3aHJFc#$fetUUQ3}Bqcd6O%hKHyjnc)U;r->um2_`JS`e$`~HkhS=ilFMm zhbZiB2&NYSx@UbxQiYQpU$F^%f2_vxq7&r-w#MxY|C+!GTbT;keC=TVvXn38$nx5b zDA@3emqj;8r#mt+O&}okhE=vA^y61{xKx=qn9VnMV+QgPBi~MAOyYqiSzf1(NPPUJ z!H^~>G?Z1U=h3d?Iv`yh<`-zxQs2ZQ2$ObnR9PxaKo{A@NlXzwJ;w@wI_TbNiH7JO zTv`v0(TgC)TzFOlym**3*wj`oI@~<~Ja!KUon>DW9%F`ek#uM{{AM&BX{pn2h2w`n z{#tR-*E5U!eaYshxgAesx@v@s=P_yjhIVhDgLN8$CKqiYBY8Umv*+N9+Ax(*=veqm z3?UpwtW*E9fYuw6@eK!$uFCF3?Necx4j1TLa=Ry%Siax!w;&H>Vi@GcXC#wcqR0+Aqf>Y4r1zsgaVUfnwpXLs*SKFr zy2!sR)Q_@;HtmB*^g0?rRl6kulNZ76dad+4`hMXi)I4qx`hcgs{O)a;10#i{E8DIz z86O^Ub8Rz%H_yb{%#J zauG1VbF3=|N0hodgp5!nna5;>VOF6RKhuMX)xz@t=Kb_wAoymgo(s-TBU04Mxw{kU}JErQU#O8I5k!{MY+<$P;b&w;kV|sx`ebDjIZqLpV z-FLb?_^EV^`>1oJl(!8WduLOmpNU4n{NNgZ++9<;Dh# z-)lHgGI?5d-yabx`{YGZTF}M2@K1**q^FWrBf&xr2*Y3F-72x<=mtORMlf5J>JzP`iZjCuuKDxpeNbX`#>BG4&};p*aau*-zDmV zr`+hv6A18uE!?5dAXTCAAQ|d)h=pJ&z~mrOItLw2w=+V>uR)($pvd&KmfUgR;UbuX z>}Q5v;OKHzb3Gdz6{oM6ydu`$c(o($)705^E*X<^MJcNza9#l6O6#|*0_U?c>6^j^ z$17;xO7TYEAuvGDxSX4XoM+S7xl&L5;OJq@XZQNqaZhlvf8TTO2NOz~-2WhY^%#xj zpOA?`wQ+gP9Yg1rke-TLTR`L}jL5ulA3Gw`9hbnG)lZqQplm3PQi?23XcDm@aJh(B z^q7M+og3j%!vzduh`ZiGCOpOZZR?hG?!sMq_yW=O(Bav-pX?kPE`a^6#|XZS6@bQ~ zUo1z?rN8crwR)G!%9*zvRJNaGCHt9(88unR>&3GFb5yCV+~%r41Qnh#qS=swRI)Ay zK}(k!R$m8DMqnuL$HcbnVeMD?l^*ZY+bGvR_5I4A+berV2SW*mMc1Y@z*~s{Wdnc= zmm*;s;tei?PmDY|(r(B`yZ-D+iVq0SKsXCt_5*UiziFMdFr!ugw6VLM3Jf;#TzK_$+w{$!iaquch1Lysa=Lu z?D2|iAk+eRQ1EOR|r+;!cGoTAD2V?mf0gXE~$BkY1m< zRJC3odvB!N{zff5)X~BGfVi%dF7yV$b(LG!A7Krq4_ea_;NOt5B#`RI^SOnEC8HAC zpXG0kGw91t985&#n{Z2-0biORW|V*^W9A~_=}3)}+l-r=>x}F66$Dvdx4rf2>aXPO zl>Mx@Z?RNji^>e?l{idq4lcTz(}F4Cam76X5eDQHgM-5t=SC-fJf!OovPsijX)^rJ zyni^p-Yr4<`y+S~q$#VX>*-CFYHFA)?=~cZA4L;<`hriF0J;GS7>pIw_;b|klsD)E zamCK!MyR8Yh4T^OGbTZ z{k0$Pc=Y9Gze}+AmejxJ@YGMt8ws2J;k$`G4#q)%eJn+5ae$M7U7#b1#=!ENT`7Zs zh9cI78MbqtAnJK`EqN5O-^ma~sZ66?nrq}Q%z~{}NZ&k`&_;J z!uOEMDISB_pC3_;W!(&&jqn>ZZ@DLU0Jr!QrA!0yo9rHU{@@JYt1q*C*|J0tJeGKH zGKj1W&b8xmtR-UD4iTRj{xG7)dYbeolFlv%9t4`RM3Aq2d=yFP+vWL4f_)!1u5Dh# zHDxIYeCK>cG-oBe~fG$TTBke z&X}FWt2QjL?0L?nc!BoD8N0@5Q`w=4)!Io`pHfTq22WOs#*V+>`ALV^7K|RD#aX*b zZ?}nO5U6@v$(`tq_SJrmi|@&F%L*7{wXnU41h}ay&u7p5n8+bi=Y&=g)3n8fWGKV8 zcqxuuEPml%lwV1j2PmDGAVL(6d`QLb_{YfVp=>i7z|+CC>b$THEhFR;=8}*2guLoRNn`kSaXkLc8nF490STmm)0OAi0lHs=*9DO>7 zDtk+9JX-GZ??~e^7FYr0V;=;trd%i$?C%AW5{K0@48$Ct5HZ)e*E9v(fH43_? zx)%-aw_v9xylf)U(CkZ>4m&r7_*TNYN9%XAvr>$n>a0MbWzy~&0#TwqR`yh&u*uB; zF7M`5y-VI{<&V09vuP1kKCLMrg{8J@=G$Y!dVCmfQ z!ymtA7nNR1K3D3mLO#8OejD(K#J)%qZ&ZO2aN;HgD7#5fUSm6Y(xf1=T>g0|)upiu z#qM&h+90c8Pq#rst+D}&CDnX_O`+E<^Mw^orZz4LVTRG-ECiPg+*7agHbW_Ed3M%H zy_!w&=k3Kg>#E9`7}QDuCkRkUHhQ-LyabB~D~xf8PA_%pdyFnaJLf(z9p>&TNEc~0 zXo`9-m&#Qz48tUwg_Ai1wHE}8H}M}tB2$g}-^z-3Pd%pJv_f8Ks>Xx88lMh(?rxL6 z7>V9kEAAYA@dJ`Mtm>PRc!~YNhM1+JsmJ1Nk`};fdzhA?Ok|c-2Zqk|Oi^4mV`Bb1 z2d4mwlb0{o%SP>O@M2S}Y8ii`G3mf!(=LFck3= z_?8r;U75dCwxFdYti1DOC;SJTg2KHHX^h{hubF+V!d*JjY~5rx7@EpHY2xGlJ1hQ( zjW%gW)>4kdk#_k3og`E+oJx4u-J0Mf!MZ*(or4Im!Ft#*1wQ$ z^d9c`vq?P#o0KveJZA_=)86IpV-_VC9yQmd9cH>2RjG)B^{wv#zA0qc-u*H(O50s+ z?bMoUdP;qQRvK?^Oga0@DqYXD7xbTX_$#yhpUIh}^%0Shkn|$nKj7d_8lt5wDY3>L zreoHja~~DPO5=#KWP8EUg+Ctk!2-0+6MvlI(?5|Q!Q^;pImgyh%h7<`=G~OK`I6aB zrga`-dxTG-#m%T~G=~|oBTdGIWtYP(MM9A!t}{(>Dbw7@3!U$~Gk2#gtZ_){g{gg$ zT4wO9fvh`_yHdHRV$$@nV-AVJq2K*)mE#&ke3k$eG($@wSF-#pcrhyA0g09}u7${q z&L%yTw>I*=&@PzAy4cYFkZCyA@T694FDBeC;DnTO+qxEl^3leV;7-*kB`t z)IGp_DG&8(?Ko{}KWl1R&;Dg%Y94fWsF8QSc4`|bv}~JrsZm%wcHBe~l9z+)Rr12~ zS0b-h-u}lkRhFz27U*X|j%nid#-O*4k+VCm1d|s|5rB34&W}2lm0hM3=D}x7=PNSZ z=~vd-jAg#W$G{EsSj27~3&5UXc2O=Wsb)Us{{3S3`5aR|0;$@LE*M|zJuF^Qe@c=r zCY{msS0=ZDV^uJeB&37nsZXq?F&a13nj_X1hE(8tMKW}s9~pqY-C>;uN~;P3ywe03 z=Zdr~o{>X{awAU%0fiL*NQT0@YeCPVGOcZVsTVl z(7KiN#_HASxlT7a73<#9(Up6bH>e}(zwvYlNaI_<+Iy^>pNMz|s#Q}Rp1Vv0S5%Am z5s9cHr!leOpc}OP&j83;>4IK#*!%TDhLz?B$?>npv%J{isXS+-fpmNr(y^w>oz*8^ z!*>3>YSUlF9(UIjRD7$Hz;c28R+ifx0cjE>bSm#nIXX`Q*-;io`zO!qc8ZK~3?)XN zh4F}Uma#^p89UCkF3ro)7pJ;2XP@w*5=Np5j%Mk5D4A|iQTsE$ z%NNCCSr`d{4c`T&(pRgw?D;9KaaExCwLkV7BT*D1t$oE;5u=Ob950%25rgrIX^f=U z)5K5D52fUTR-#FE4($Fo)7ulSyUPR?{@MJK$(*g|+l~GmR*RW~(tI9Td&c z_zkD zeddDO=8+S=uaYn6`@rt~72%1jtAlfw-`^|pbP_|U$?UPBs2H(mWYi>jK>Bfz7QL%L z(x>#-+-x?~wz0TauVAJ)V#oUs+r7QVwUNUK2{ks!p#h8zPGcDlJ?`juS#!~N4f5Zo z=1>}9(0>_k;04Pw#%EMHC{e;svT80MY@mNQ@#K?r1c`bxM7png)@oWQf=H2Mxma$h zcX0Il4Zk~hVQ17FlxnlBwyAeRB2@$N>I2gfN-J|y z#}OLi;qV~BAY87#QTO89taA7yeTRBIwjT`>_l7-zcweM!4ibuZ>j`nceWRJ3-a)N; zH1%Bo&)Sn=p1UjxGpuB?1J!|rL9qKk>(w%k$w&)BQI<^FGoz7wN~7?QYV?rDy$Qc5 zDnf68^ur zn~^RfQ)j%fw?iP!Nz|Kp{=-V1RugiOK@-h^KVEMuR5ogbb0^8FefQVyWXX|%=i!iO!ApG;q+U7hYa-o&vZ8O``9AJ!Hyp{ zVryuZQh-&gVdRb%w;B3DpEU3yrD}|Ib-jTs5UtvKu2#5i4 zP?9pb!X@VIsN2Q_$k;Piv2D3dtD~F#z=V*}W4dGQ@$nO<-YcDfpMMG8KRbb&nKwq=O6lrUg~gA{l}$=&nWzm&@$n+HOnvy=E+OhR!sp zJg|L}E&iC(Ipz1#$*ov?Cc#I96AUV`BV2X8?|m`5X3qs|Tj+%r5hY+l+96KfuWm@JRnyZ*`w7RSvD zJ@=AQ4S>_z7I?|$3ME#0clf1gLo>PiI6?z~llUn~LQmbpEy*-YsSs+99dRz`zRv^* zVn2(M^)D3$sNeGr#tP=(GPlJXSj60zg!YGM!(U_>LRiJ5`+?W6owDwA>jQAk6lm*E z>&pwRJY`}O4ST3_7cxx)y(KZ{-h7mtKEuP44K*Qn`To?-lTJ?$Df!xBdK+|3)FCZL z)##*3O%aPN{P}GFvDq_vS2B&;qP!>Kt85b_G5+Rj;c}|mwD<9(lTwR$Y}=zHl=6rN z%UOf%v3qsb`HQCVsSA@EmHQXuN~7ru)GKUfb&)H%mU@}%x5N_A*IT~!^q!NfigH3| zyQj_JHkv47`%x5$*KlY6{QGAS@qJ=f9@{YF{LffXNqBUWKeD9c4cVtJ>|Lm^2|LtD ziNW(8wk9SOQs*{eEp=RhDNrzR+bY5iyVuqY-eS$dFqLj?)~vw&Obx;pqN&ng-9#yu zvQd|8`_qMk()N69iLh=BmSWvK%@i&T2dj>g-7T|;>sY7sN~JR#CaT#~pnlY!LTr=T zxnwfy8z)ZB>HI7P0A^<;Vy(ta#lTV-oA9kw(B8g<=f*D;q(M&fcFH@xDK_QzhNTh+ zYlx7I&-dDZX!&oH%oR4`rM}-ix>#~flof%CD!UE{6VB7A=I}aAV=ReMk>UWKT>;)TW7r&yx;qwl^BdOYrG1^ye4#B&_XOaV$V zF*2oPtcBn&U5H4Gd?EO4YuR!W5VUg_ZX`C2=Id-CR-Ibw!gqu=T3VW^W-v*HXd9>w z=pG*FESxeq<57r|!&vD;lr?#CV7AI##f_I|HAr`z*QyP8F1_*T+v~M6b<*u%YLh*y z<95~jG|p`rH2Ov(L7gtMIO%sdsb@EUcUm609caSd6>cCeEbL=3*}>YFwCh6lozi2c z>5{6CI%%#tb*CGgR}jJgB3Dm#y4@crU{UB|g8-yYt~4^PC}nfz{GG>e67rDXg?26^m=%S(&I zacn9ugX1P*9Co(xf(=ivETWx-Vfr{%zQ$!a1p?c2q_ z7VVl`nJ;1zop~5=0 zbfWyVg-v<|!vfd#V|hE5AQzP6Eyo;) zmGS<2pkObMs|y@i#cp0lO9MJL4i+@ig;Nn9V z&f8nLHtNYHa7(1_`kGyb;P|y0Uk{sO_jsI+;dvp&a)ZZpQ6WtRny&ohFWzuAKOKaI z%WJun^=rZW*VgW!wkw&pvkL@)iAkwE2Iib<;{#l=q~~eLr@;NbwoqX=kTc0D&)w3F z|MB*AUTw$)f$}o|x$@Fa^w}E-E>UIfTBC1f-c6o+!rk# zy972(@Q-Ez({#qg)_(MzG$#iKj@_ zT^v+@9|$7th7GJ>SzAvN9Kj9YJBrT;u7Ihjwe4&MD2a>w(gM+HKUdlA;7u=&orJuaU7_=(-Xj7Dlk`k{91-(^{t zO4%LxS6z;Fu&zX$2u+JraUntcS2PO)t=KFbE)9lvhhU4uY*tm69Uk(QY^=!6i*s_c znAaA}6mFi7*2O!rqeK<*767m?o+pZ~4G`aEIX!vu;Xgx!+tJEYkI`xchx#|dW*xC#UNr0Hq%&Ud#zp5DUNteh5zZO$zdNvOoPGX8gk*z)292D}@y@=@GyDDz%3tJV&#I`cxK6m2MBenH?y^fsSe=*dnw_a_15a`79@xgkcE*)G`rkd)KE+Qzs*J{-@|6$KFSID5Np?KnA zx)27?f7J#iuWbx-6C6Q|1pWU{+uoW|=8`87MtWj^n@=~~I_8NZIV zlvmwTJXe2tSRJ3xc`Gv^F;p;K9GPwg34EE8aOs>g%-UVwBv*4jpM9#sWTqD{zz!!( zzQKJG)lw-SA%!$xaPFF66Y^S8=<7?{?QYM~Ev`}@_*s~uS@*Yv<8Rr{zZAOv_AlH- z_+$u*Gv(E|Ga%>x&&uw9DaHT#aUY}i?} z|EGHBzyAR;Of0zpJ{(LPJs?K^kAL_d+M|E{bRgpm)dQSf2aV$Y_p$%_2L2Cy+ux&Q zXJJTpxUNwE@g%nXjxXJemP?7yjn7;|JnDD;`-Phdd9Nu~=k%JjdhHPxEJPQi&HvF@ z>mS#S)Bq=HADR&91VS$|lLYPHx&VRJA~bzeRb7KNg+>51Dd^#OI|37ha~KJSBhW$^ zJXlt!KP`)|?cTfGr>e>C$2w|cf29P=m9z}eizL_UjJAR+SVKSW@oO(pJ|mGN~KM-x+E zf|?LtkW<_^Ph4!@lLB53ePWFfLM?oKd{^jXZ4g4*RS!aY-5O7O?Ir=7XFheN;B+z< zk>+amq$gf8a*Sf;M8<90DyIfSD~q9fICf?lth!jge4iyAGZANd$VqQR9RosE|Gq^YE81u?C5oQS2Sb_ab6Bjw|-a(uFO>iQsj;7B}}e znG2c%_>3vEl8;{6+3fS~LPy=(>ZxHpusmDnkK8?eg4XwTH>$tiK!H4P;p!qS5U&`y zvP^Sz5`+Q{Au(pXlLnSEPS|dk!3MY%QdQ4~vYojRn_Ypo`<~;i8LnYGT2t)HE@kEx z?TMtNE3h6@ss0TgxE?|Wz(_RJ%T@&VIp+#LCC6V-S7s8hs{doRcqV=;bCm^4z4%ex ztS>eukM!_uvJ8;ti{vYG?Tut7p*2K{f?e~jure<5lsvmG=1Ch@8#O!byjVi3r-Gsl zD}V{|urY zZor~ip%4(sR#@>t>G-I+v0nL1U*10&je&6kiC0h~T%S{LQ0UpbahD5Dek+DuLQeQ- z)I^W@iCGp!*GS-=hgHWn9wvkR&m&N2CE+zSDhXO*pR#SGwdWTv1>Z2}`v*}v2D@*& z&#VJ|z>fHHwQ+LNz2WMHp%j;4o$2yJpe=F(<9fa1%-`DxSIyHR^`>%m&ie1wWx?16 z`mxISfaf>E`57Xp7w3S5U1$OiSPEFl+mnwwB_Ezy+gJAz6fpRT`lxZ4z+*BANcfxD z_E$fYyyn4OeeDPkR*@qatBJfI%Zbc%Y4gaMnS9psN!17LK_Q?b^&|$-C`V70hunZ9 ztp**ujn=urtD}B4ZPSZMmYerFqJ37$rr)zkjD7=6d+IS756ot88hYFsyy7|_^iE{zFFf#@M*Lht zpV(uIHMd%wI-pFKEM7cCqloKcTMk$@arT`q(f$b|gsOmtmA&3<*f61S;xq5D z@1S%FPZIO?(j=%Qp)2{pn6$|HPPzTdqLtLnrA(~L<>|^Xo8m?-RfsbWkZBjkwnXm( zvc^%27<7v#lc7v@Rlq+8zYCF2pokW_PJu_i<9c-nCqALsG;o6NE?v%~rI%kB&)nIR z^pb5Czb;$fQ~pP2E%F*{Hb#5$D=ae^^2Ds=f3d)^d_Lnxr{^%z))gjz-4!VUq(V18 z2i(9gw>@2oKMupw{^cJ^-JG4a*hC-JcC-AlBjDUA6_qSJ=TC^ZfmsZfnZ~%u`gZT8 z8Lm8>=3-S=Kg2YwpF1Eq;}-44kI5P*>w61FK)^LH1zSl`e0AJ7k+-=K=W(@ewVj;y z9kEf?{Vt~o<5ewaaMl2kd=0R=oZ=e&21>DNE}_Gd!$n)Hp0qQhN1a!H!O6VM_w53+24bFb{H`w`GQ9@9wGEiiLJ{-&eY4 z{ko))5vtQ=I+{nzKxH_4()1hFU^C4C4*OO=exZ(7hO zNr6czW^5mLw5!=5E79zXp_ZcHSKTK&)l+&YR8(sw;Q5p`&_+|3Ej4Jgvq5Q4C+Q_b z{S`wtO&O(b{e!fn<;w`>(jH}jE6Ar!vmZ8PiVW%Z@z`x$|DVdkY?!WwOu zuVipX-j+}btQ00Lnz34VesNw{vUfR6%;+$}TblE>sbL6Zwxn6oMHRI}jcaw)Hwidj zEWr8JerQM8h4tanQ%-EL72M6de9?WM`y$Y5=ufz(fOS@v+q}Eohqjy@(h6|1H#eNf zdOP`3{e=7W!Y^RIV_G51dj2eTFq{=FffRqT6}0^JwQnH2?(TM-nH*d4vpvhVAr591 z;dGN-a()E6wtpXC$D#i9Xz%hQBZEI)(G1+&qPl{unDv_#kM3Ba+u>+_F;|qldtkUz z0hZ}R$K)L#d}nNQVzzC5OCY?b#L}Cu`+a)cyH7V7CkbO&2a%bE3<4ory2Y8pif4{~ z+VDeM5%i1m0?z}7j#*{_Ja%<5#N|x9nmjT+CC;|6p_->8oi`riI>&yEgk5^v%h2cd z$sSEjy+M}4d4$Z)To?iKyB|PRUj^Xkca51P{gkr118?t~|145rIg~IPsX(OQtv|A^ zZ@E*z{`ctQ&CRVwcwF>YAh&AxRHr8dgp6HsZ^91BA#HsO@~cCJ$vqhnr7jZFfzYv zKL~VO;q$YHFBUio8OVE<>9^TjW2O%g8U9{hZJdra_HMZSlWQxQl*T-dh--m%;^`zI zlgB720kFOrRxle>6}NPa+E0M>4fz-A>&%|skDvj~uDN$fDApxR2xFxmUs=t1iFYb^ zwt(6;TPl>f$gSsn{2+>>D)pZy2a#Z=eZh`R17Lj({9jc{6~%`cCSAsKrGu>a)122g zR;}XUFZ}wbDDKVZ%OH-Zhl<#kEgTV*3+6-tE1@X6gn1o zPC$4tk?#Tv59u|W=ntUEHWb#yLpsA|7J!|DgF8!-X5{W8LT{7|vnuCYI**s_4g4HI z82i0Twrz%XV z*0Wq8v2WBEk4qf=x3ImL@~p6Lcqc0Na?>4hGB$PAdCeLPYAO*b$!H((X0r(<_=^Wz zzRheCdMww{bc81IX!+^7I1p@+CT_*2kN|H94-}+Ke+?jTe}>(MH{sG6k&Az}%D9GC zFQiHc`Bit%_8D=Nb2yU07m%ZA8z0Ss6movsHw-NgD7&k2T2S1PIhXAMbN8(kJTuh- z*h-2vp}eQ-zfXJL0gX4Vrf<%YfGs=$Nm*}lb`PajX8>bMu7n3)#>6yyrGoBK|E0Fw zxo5h&>!Bd<_R;SUvlDUTF)bU-jUvB?zMK4(PsjWb)+imkwg?%k15(In5SWHvLtGGc z|54+qpa6)!;sO%MYjzpvD}Zo-Ju)?;`m+f2L4g+5t10pf2gX;>YU zITjo7Oh>k}Y>{X%IcElv#L+mzFKQ2vzx8*SxB&8(8SxSze{lf$Yr1XM+gh}DBex-Z zub{Hxn@_$QqFK6qQ8moH^=Jjao8u?ViAo~WE1SsJwkH=jsMnL{oAkWd0plrWZFODS zqfgt4;^{rC^z*EA7EOzy!^}(iMjB5g-J>=;@mGZSDKd8mB^KQ&DCSY@CDifDrKS#2 z+$@u1DBnJn;r6FO?hIg5_zI=vCy@;6%#S&{Bd!agVm!Z#^Qkf1M}%GokU_r6b(W}A zpY!`heHhJQkAuRj0zQ~#UxBb^f8X(@qhXtc=B-cT(fG;H_|&z_;CQpQTG6{8;yWdl zc#AtpxuYgKSRmX}qAcq?nWE6U$bqK7I%G@y)c~1ObJ+fgiQAfG`P&Ygr{Ep@L+GC`GM^sHZ63#$l;nUQEfR35(o9_PpC z2!6JVgy%}EDNpiwh}bFjA*rZzT3*V0LAEEnMVmzuLA6ixtdJWJ z3+v4EpFTL)X(Ep-=hGy6fr>hCIz8UPOH6VJ`36x${Dd!VuLqo!JT@i^&wfLu6&c5nGq!+QJ8B*62hoGI}UA}mpQ$kl4yeS-$3Ucu)HRqe%HN5WXIAQ;8`)`q?#0{ z`gc{MU7}eVlHGh`N8jt%C90mZI34N2{HwAKw>o&Vi>KLLA@R#bEhYiVy1t_y( zEV}EOACoq-CcUZ@i!KOs|0y-`8*eH!o=9tB8(icYZIL^FQ82r^TVTS!UXkBRw19(N6SGzpYNQUKqV$$LDo+Fv#$g zws5^t_+yL#xpLpGa(0POz)MN2n(&%f2D!T+#&TgNwei?q>^S9OuD&mfgd1y_lxKE( z$YQAlp|!?^6Nq-f6j3H4rc{UNX44}DjJQR&C!db}s4>+0oI33>U|A;$D- zTry$~iLE%3pjN+&u-nNVD^6xPRs&R7D!cbxEpFGkoO*uj2IJL^5pwyGlYDS}L zM^!#G#Pj9JIqOaCi8~#R_)9|lw>oX-xpS?69B?Xl(wQqVX>NBHagdlRk#udfwE4c_ zrm0_|E)SLW@Nc>h_fYL$c*UF`<`Jdp-TCUWQlATmtYk*}t#B;!vFY#)D!IgnjU?o+ z>JYrK3TN-(tl1Yn#2quyDVka1f3?SON}|mr793x!7J`U}q#}mM zo?tvKo$^n@-73hM$jSGEQTNLhMlnPPWK+6K}~Uw z0Twq_rzjByNh9IzQ7U9cn28Ea>5b@5v0#d}`DX`agm3AJ`_NQlFHBk_y%y8JJ@^6|E4ggr8QnAu)U9Aokztmyv2s11t5GwJS!HPCPt8% zvhFbe67FpA^cPHx`xth6UKJnLOvKh31CBTht}4@BrWb8JLd(;_%5H-PI&oby69rql zTeA5Mj-5$A2+3|(^h~gi^f$~!{e3%u7GWQu18G#G*;o;jHjFpDeprN zxy3avavJqT!g%JI{kNs!#bv1}#KaL!6;vrWFIlF4#|h#ufau_m79$;VDX3*j00Ygi zEH@M0a5<2|8D)f#NT*!5ca_Z&cOi#CGWdC=xN$7Ags9m14J%s&ErTg@%MJ%lM4o|p z*n{alBfZ8442v&NX%WQnjI1XP&$b9hHU%1&8O7+PI5n=W4{rPm5=7@=kIPckzDeg2 zK)&MfXdSO^ob<+bijR-KbMjog!>AJ%5Cuwv=j)H*7f4jDY4T%s;7zhE?|RT+dan7~ z)UlkDno^NvuODvl#MS+_$?wvJ7>XwO?&XYtq?e!vv(4<>iQ6tBZQd;#m()R6K}gKx zA$ftXXGaejO24)wo?KksyjSU4>gb?Mi!+p(i-+Gzw7oAE9SA_K6*unUF4uQdyY)F_ z_S#&H{@@+)0hBe@E|^`F7G6}FXB7RobX>VD++N$zFYH~-r+Y3dX0;{on*T>VkJ;?A z>z$m%LJ$;7Wh0&dj;yPt6v6(tM+59#X#7{ATNoY>hXd3?`=(V37aw zDj3{L%DrgJhxd}=@ltuaW`|w8_+v!s6VaX5PaK{Fu$A`M@iZ7|avpXb-{bQr;-w(Q z*f30|HiDLmuMz4O{LMJs>`Rxy!tiravs>ks_0Ek`xXsy+#;>d&i%(m5w9A(lS=Vn@ zkiBnxR##~@6pf%UJMelZL8R7R;wfBfP8K|{?qxyl=L;~t-jdl7%K}B?W=iuT%{K%E zD8H)>TjIdp0PPwtt(DdHMRGE^7GJrWa%~qJv2EbCq-Cf(?LLw%K#^Jof{A$nR_2*W zS5L2q>)RDM%Y5p0JsCK`+__KAWFbr!LP-3%9`I%JkE}3;^-8p}&qkhUGHv2gp;0_8 zO+83Bd(lD~E5aPx#N|n?KuU8RLVUerlx0)zR2?ryMeY_J(&QQh?*04+Nn6gkg#B?% zoZ~q)nn~C*iQ!P8_@2-x2LWTU>03J2P{;UFr`<0|c8KVQAuGQF&vDdjY&{d>g9ooE zawU_(n15}2Q9(BRK0T5f9n@?!e|_}s@bBIrNg3Q`Nk{7JO4A3;+eq4H8fGbSp!cdu zH*QbMC?pZnDd@sFZ*!Bu-J0EPa3r#&k+0~z&(lp_06?}96*k$91ZRvl8hl#{3HgA{o!X*mI$)|8s~>#bTTr3Cmuc; zX1pAGPG&ar>MaleX%IEqh#9lo^%?Z59@{rYS;5N8O0{?X#rj?>09fDmqVs{+x~E`p zy)3Bvv9bT{n)c^ZoZ##qtnbUIrV5T+`J{6~R?|}OZGiQC16?Q!24i?tne^nCv4Sp90K zo{}9c?1||+}g9N-Z?=oNwFR=-mh_%3@rTlECqzOD>V&*^?4q!lXPk6b`?G@F}IcofS$tka-I?z`xo?XoA} zf4j6v+OEbBQ+h$1UQLx9nEIHnq-CL9aZh`3NNB&@`H_TFu@&F%kLb=5BL_$>j`_jia3GeHyx+6A$H=SQ4n$H?l)m4@jyHmB{ro4 zl14b|8)&LNg5xpWtPcm5HmJqSUy*$sXmOmK$fx0ZZ}PY4EP?QK!LEQ)=ir)#xb zVo6bW5Xz-u54xkbn0NEpA$8k*p@v2X4mUmBayNI6w2KYWD>9n2-CGEYh(Ywl0)rnfPG;z6g?Pr7Uq|!yqeG0m8;gRC;L}SQKb(4l0HIn<-*4|isJ3? zt2P%SQ>ik(=GG~_B-nZV{jFdPfPNwy>3Ly6oQPLjTH={mi-R&#p=ji-i4pGdODZ>% zpgcYFW!@Agm}G_>*UE3|ShM`hO5u3vNt@_EWg@lS)sYIRde+i^fWWPNl+KsamIzZ_ zF|QmKTmiLiQcc63VFbd3%~C@gv!QY0(>pF@;%TB@7IA@;D@2?RizBPQf00{XB^4-q z_QBk)Bpn>o_itHVB<25#!Zn~bP0 zy2}JxH9%yl+?tJ@h(K@ep6gYqQ(0GVAE~iOn%?6IWXFG#mvj zxKK7H4$*vOJB;q%TFChT$oi6WE5|MpSB{-EdRPo zYk_X(WtP$bMACYA9aJOBZ*^Q1#n6TaZfOyNygo>993PlB<$V*Lbiz$qe+~c@J~cq; zt-d{JIA&Jx)cy(hW&Y#S5W&y4TJux)jbUc7re7~<**5?juwKYee)pSJ_6T^e#`^)R|^rsot`6ec4}@8fe&H7{H02!`Rk=_XT>KuYv^H1`FDS$r&t zZH9+F!nB#$9#9eRW-7fh%jyk;y0f~~CUy;hu-AeuEa)4dPX%v7!@P&Q&j&^S(3~WI zwkF9AC*5#*-xy>TZe@KZ+rMUKzAIzX$T4?eZh|m{T~E|Xv#)!dAc`k4e-}^wqpa8Z ziRU7l&zNL$Pf@vHv4rvJSds?wf>~r^-Q`D_9xWZw;KZCsn2;=%rJEQD?fBi!*O_Ph z_Z+3i1g7)@VRlT(p_@ef)R)!)9c1xkN*NwP?^3*lB!ZWh>dc5;fQgtvtJ8X>>qQn# zg|bbR^&F<6;fa(sQaT3?i6?Jz;1Rvk_{c&+#O=hT9ejLAI(m66a8j1P5?I%EXJ)rJ&V zSU~*hm&LG4!DqqxkcR*KH?GYjE}Tk`5uEoJO5# zx{Qlyb~Hhz6&IoC>2b{m;tZR%0MrSPQdH7>mwG9^D}Bw-j-=2uB`66QoOkiM%^#YOcjEpPJDRLn5 z;9Szsb6ixvNk^LEDoFVRQ38u2E7VM45ehd~Uc)*V9crXWC#}^1v;P9i?@RLmT{9k> z?>`0&o}V}}4U>$E;R+{Gn~X3Hj{{R_ZoN6V*t5jbE(hTQKc_8Z0>{68;YAs*`2bnv z?a8I1%vab)F{(eZa@MqyO=b>9cRm_U{v0@EnqXSh z60PMw+l#3n2=vwC&(}wCg#~8x=-q~O(Y~Mc!C`TU%yCRw_FoVy@XKOWft=RnUe^IawuhN@Yf;ExQv`+A-Wx7Ny z|2Gn{Bf$|DQbc^UA3X18{HsU&PuCRuDJ2DP73OSn z<^IRN^zQ{+x)029KbNQVXaA4?_TS(3*Fl>Q4?g+9@KW6W)n}fl)}=H$Hczdf=4`$zuwLLLB{@U!^XU*N}ITOkM#IeJL& zocJ|ST77MOce}rq^z7$UHx`Qbs{iFV|L>O&9BC?5?#Sd=8cb+eZPHZ(TvY9qLDS~? zU*07T0ix%{(fE4cBG!NNrVM~~Roitw4Zj#LHa4*UsIFIJfSr907&0;3xtrmm z_0!^a?_9g*4gkdCPOmc;fWzo_4G3h`CmX$W;nAZcvY*JhopzY%HZTk_FP{l@0R-Og z!@Iu^hoqjRxH?!s5EBGoWp7sgrXzZ-Xw&j-6fkSlrn_@U*kJtnGbR{lEPuJTNqEC& zRSM%mlTF$Y73DZvMs$7`*n591_}80wsGs-4q+v7J4HUHQB7`22rf*C~a6O7<5_=Q` zh^EmD-;$l$;< zUj&%)ORwppS4$t~fcdM;+#%EZ2XOc;O&TSg6y81Q>ZbK?G*x_@aB*K$HJi%T)jj1m zxF6m@bcdP^2~%p|h6EjcAb2k$s_$Pb*|aLiKPz(m--k$v6nwqjp0Sc~sQ=fCYW4p| zFDk699Ky3kKuly$B_+EF-DT_A%IBDEd*T1t*=m+ie(jB}HzfErNmqm7TQEBse-n$M z<$Tb=^Q(S6phWH%-%QRA62TT7fI?vG0~9HA?_j^K;y7VU@A>pqCjxE0;`Qkj7x9w=xc_(guJzObS zk3(#B6xn?kQen9V{IuSntlH4+&c|RXyRJ)Av>;bU_3_G52YYh@5n?%KV9&sEr|>`S z93z57@tm*a3#OHH=i(1-Qu3%x1XyJ!x`F_Q?h(P2agrmEB1;G~Keqa0;Ramn6Au<~ zlww{q3i~hbBGg~v`WyfO*J>m**_Z=^k9-=@dTQ=o|J~1v5EFC*j2Lfn4zGlx7D0t+ zCUHRNjgl=`5hGqF6Yu0pLh}3(OTq$Ncdo%avyIp(t+@_5G&D`3r$VYVGh+gNs#kJ1 zn@?=Q8igWdtn^1+Dn9?nRw01KtxG&EiwmNEhAXVL4zFhB53D?#bTpxl_=zX!@iNzHc#eBa-v$u&FHK#7Tm)arR zcm|7b-pM-=gJNJjWm@@P1Wrst50X|p%r*TY{JdL8^Z<~m`p>oQm3!REmuH0RJnIf(hoDgIFk=eSDaVax8}MNp;nb(FvgP7bd9nIvr?oI zJDPrId9ziDG}UU_T;kHGP4q?9^NiWgN^uT6)#q&s20SC#01qp=n=0sahv=McW)^Z> zwj}%vEgk+x=cd5*@FVbU{AI6UcWtfU0^t=6(*O1`Foe{M1G2drM%0Li&QF_D|=UWVf@;ivtrvPN8o+_eVyzJPUXc=U-Gr$QrtN=ux{>};g==&BNeVm1RT0=z;Zi{do!aa>2CJtR!D8=kP&9d+@CkymBbB<2 zq`(`KN)gtMo}|+es0a_u|{DN@CRC-9a-i-N%o^oess^qkB zp&t0Mth@vHZ2PuFVD+^J?QS)0C&l4sCS-*mK;x5o$-R5W{`@B3Od$%)5**^9pYwfc zxP!Jj`OM2bmEDZ3#`IPMG^o&I)jTR(1R5`H8R!Jv+!ETs&w?N%B#Aj znH3OmVb)_%Au3yo9S*|ik)dN!^PO8I{up<4dho2sW^I*DXhX0f161f-pyf&XbpT0?-G)wNDhB*{w5)2%y?Jk94EqUxm3NP zmiDl8^c9!cGz@Opl_m{D*pI>+FQ|V!ecKGt+mD?`~PP6RG{;%wRr!B%eN;^7oyehVlR(_nNrFPTr z=+~D@xD?*Y#0I=*)>mlGTAoco^9)*XMnzT459+~|<&hlM; zi{+wRXOedx{GvWT7Xa=ih}vYgRBwKn0AYSa*7o<3!1uJ{w~P5iF(PvoWDkFa3`#c|Nva-%+{@h(6J*J_E?d+BX@Jo~CFlS>J~m?{S?sd7dAI^GkUhCmD<0M)Bt1Sy3- z$NRGb(m64lj`q@WjNB~2qs%7T4zv<=q&e-I}v_23QATcT}^mBhF zxmC36|F%zYfr*k+fGUJ$3*z4C4p90h=hB(0B~SRoC?yc)P_`dAUUp^BCTti{u7}mw zmAD=!Yy_cvQ7i;U9?N%>V=t@#(mI3fIAKjzmHD0w8L^w+4D&LPnH%T{pZs%JdruY-e^I~mmo>I! z&jSQ(XiA}e(zgV+#kVup{o4t^$mzAyEs{@G_Ol2E~Y`w5>OCP9oH%Ho#w3KWPcsrKI3|rIG%#~2 zo)3W=;e3K_dc>+2A+ff{7Q;ic*#oVWxPaOe^Pi?9RFXi%j<$^b-ACHPJr=eZLrV#b zxgU7?$gT)2;s|H;y%zrCQJ{s7OgcQRXus6r2lm)Ojf(NV3DWUtA59>hxa2s5tL18} z1P(7KkmGO7eBH5A>(Yl7w)?G4wI?#+Mm^?lzORrNO=ykB<^DCIs*)3os9#K_S1B~< zi@dE%k$L*X7{7r}FLB%zC~~P6^8rmb;k|4^)d2O1=mYv!^ieWS*Pmb>koS_!Bxe*V z_83`Gv2&`p+&%(sP~U7;ty1v?_uKuMT;2UW z@YZnrEIE6Eu#$c9_b<*6|J7E~N1ux@-IdX0@*p5}a%8|}bRM)wx7QlnW)B9~!aBQr z7tG`Oy_Ff&Va2nd)0hs6W24#Nxk{%`Q_P(k&J z^6MLZT2nh;Bc+F}Lr=%*a;NLd5zGZ~s^8JZm6<1*6gtm4MV0${`qj6jq*R|o8#VUx z7cAc}Sh%IHz|ugLe<8c#Pie*o9gXT(KWRJ{gFN#GCDgIXJr9yBByfB%+8IWEpl9XH z!6>~F|Bxi{l5?R`l}3JU@_l76)Q*tQ8TV}GSmaZBd9^E7wxJrYoORIS@Pk|de|GXU zU)31Cz3SVQ_~G#x8w?RKsTQpYx)T5ip+s}rKl{mh=^WH+ThHhmLF^Em zx%8Uk!_++v?0rlsLbD&9{I*b2j_r@f&@3yQX!0Camx3UwkBK58hKRP8OvS9sF(ZHOt?YU4 zo(kSIs`ly_;4zHuW&7NF)pcaj+y8a<;K-M4U@}Aq>1lpiaee>Y*ygu-ujLlybfM+^BHyh3}NfX4E zK}(9+iDi+xhp86H8rrcc_yJ}7SE^EZd4Y&e^Oeaar^*?!c*P>G7|3F%3}ufK`{WRu zf^cwDo=zJ+PW-B5>d)5X`1+|Zwu4I~I&u;LBpj~I&Z0)`t8Y}l5kK>5B4w&^2Za{r zeY|m$pV)aX=U%m*ofBs;`V&}O-cO8gwSm27VZzA4(xN37jFxY8MhmiKQ5G=f0M@vKUg5RzAZ)7364v3(WXXEs)IE_}|ZT~GlQ zwEMrI(q?vic9w7E&T`>Wpo-YNVzlss`r^|v>&OS}VTBhH^a5eDbR=O4wkTBgrb7MM>>fn?rafuyAgg^Z))*UB&o_NgR3wxkv)wY)j#IZ8eu9X3P4%#m5mQaK zi5leUeZV>Wt?SO&Am;F#mpJRB-7#NftBLZV6_i-=JHwxU1@M93#|YnLr82GVPyC$0 z&=52A;BvsA@*Q%oV}pn?+-dv)5FiTvjF*1E?^ozi&};2;N-wvGM6Oinp8GZX)-HN} zPUaqiGe7gyWh$B2%W910(hHL8UBgR1<3zK`P4m>I)RnAN5B@BbA}AaC_8-<3msZE( z^Ua@ZsF?;w`f$YEA~+P0XXOR9)cG)~)li%ar_wrwOb)hC2v z#(PlJ3_u2jPi)Vp87%{OpH$>wy>&A8Hvq0 zmZ7O;WXpPewNxilM*U^a{*_BNeWH1xfs_TCJg9bLaI8ZcsMw8?&i0TkN|C5hHtWHe ziU9ee!zW({5xrYta$pS8-Ozq4<8YS>))`HgT>?KgGRBI`>J1@sEkFNtF3;C>9LH=W z9as+e)M{t0X#?9@^AY`c(}MZZNUR_xEVgwDq7sK8V0q`s7~~P;$Jv*WcR5guo7wx* z=}KkPEHt4ZWGX3Ar(<^^r%mKME4*2FfBSr`lL-UPL{dC^b11nkbDhJoz`oOA3@wZ4 z%c7=_5m0Xou{t)Mf^&dD-bZYUh?jc0@}L2fNxrBO4xBj#1wn6UK1M$!7gIev7esTn z`;IbJ-^4=a+oVu34!Vg{I84`I&J4#eF=H#u$h45PNm~W$`AM?L8h@2X4#EmX9wo0w z_W#+qN=olAPj_z#NV;282xG_XtXp3U3E_7{>671ZGC5d)&|+6tbwnA%uO zNI#6I8L@Ef+eON;78Ai$B4a;HrK8c+YrDb(@ojIjA^{4S7fOZ>R*9lc|8eJzjhck2s+Ft`FgBX6?Y?{@H*!JuMYLqXPCEJ749N`Oz zPJO+^BR>iAXm^I_@-sLC4e&h|pIvlaf~T=bI-ma|SkPz@mCC~O$&H|cUp6nFJSb&U zcSV|aHKgL|{$pSM>IM{OCz%;bJudADLdRdaLRzlgH`T4u!3CNXZX8wE^aUshPuj1d zF!!K}Pm1tQr3+1WqHkS&B1%O}^YG?aj3aT+#Q_nu`0rtiikcTmIN@n}+j)N+S(Aow zRi?3@`afg7Qsh@XLu0Ew9D2`CI%W!BZ|%B%l6)4nZ!C;n65Ps&{ZtlpfeIR>kGXq# z9)VZlVok)`qid3z3h1}s`9Y!=DX#>7=R2r~B!!%+IIq?oGDV1Y7Gycs8GdFRfaz}b z-Ln+iMA*&uzi)#ua5T2%FS)T0jF6rjt3O+LSqD2YoCO)Bj~vb>JJ9fDronGBA$=$u zh_mP3%a6hXH08Sefpxim)O=xB%U?9QEQYaV#))IH6IwXn`35K~u5W!Ow5^1t6bmc! zfonZkx>C{|_?Dj%m#{#r5+HQ=fR0#9id~5bg90HF&qqXJOBw``2g0}2f+|_1#|Wyx z`Z8Hi%awfw1eAvg%H!c?o1fZfK6*VO7vafWG-u_vHs9_INT9n`w>vsB1!B7NU^X@Fa+F~Q zz=6E(XfDd=j%>`RPsLUKuUkz)nB|cyTj~j>{16W?ZJEw9RT^RqH07BcNn!hw2ly1X(*3tKaJAS%s(It12VqE86ih#P=_p z@lus5+-Aw97nP~g9BvG5d<2D|O|N1BTmgvGsoaAZ7;)YoB-o2)>xq)CD{~0Ze#Ht_ zHExH=jGPlU(8|uFqJV3-_&kY)CZCZ=l>*r7Dv^)*4+*V$&7&^>yW-J@LB8lm*~z}S zI8a`u^Q`Yn(z>P*V)jw$N#@SPnsfsrHdW091~;sa$(VjBdEP%71mfgX>NGPK3QkS3D`$Ayw`**(kk`|0>FRM5}CZ%5WGOzGjw$iaPxh(;? zPULAmlC|hA(i*wRqf*tXNt|>Ey5@hp(SCv!{cU!GkJ%-cuskcQIE>`RCR2R!41|Aj zac8ekkM6IWmBF!KhXt?dK>)k!Y0K8~PL5To;UOk(@cluN(-OCLf7x7}(g4 zjz(+nO)BkvmMDDq(PW5L^p|?d55kz{?wsm0_I)b*+6^a%E}wi6tT*!BycgeOEl?MZ z7UpA<-`96Z*t0_-jJ&Z%P7kdn5NLk;z=iMMR(%B<`ah4}UOZt?7^!0#DIueYfUC*y z^p)fCSQ=Xt;xUkRzK+Nf>k(UW+v~q(Pi!$E5bQYO&6+RjLQ)oOop~mPmq9F_FnIDS zwY9!t-<5<5m$x6o1*&#*LOBi4R@bMHlIO#nV`GN!tMHtqY#l0cy-`B`FEEI!*qffG zP^uB{KMGvL^6F|w#_ze%>-h!qB8`7@0J2bKeGMLw+-m5joc1J9I299rk#A|6HQFB2lO-4Wlp4)Q`mI6;vUA49Qj|us5 zD;s6o2Im#bbcH;rP-^SCPNJ|BE%U7SdH7eJy!4Rv1>14gcea5G?B~x+&L7G{5qn!Hn_LkgLCFcGl|0G&))Om?;0(ACc@)l@%jti=Coxw<^p6 z(0jmS{KZ*oWJRqln<~p?XEswcvI?BA+t;4~7a}{gE>;)T)0{Al*Ix~Kk`v+3S{EcV zgwQk{h(ACVGV#-5ctxmY@9hPOCWg6|UBhDCLPn^AY%R{vd`_ojot`HS#Lf&NKA z1PRpT+TD5bo6xJ01xiV$w*u=fZ}P}cO@W`~P28*qkJf`~8rUP`5SbZpWkBs%uXTP~&`$GMI~ z?8u&C$_YVZxqHK`*2^iV7T=I*+v(NGpSn+d;R$V~MoWbHRdLZ5;v6t*6hqmQt2{HM z){=h`eieZ!^3ScqLtFu-X1VtZZUaOT{k7e;U>&$RMb&6s0?M_W-R2ix!t=f-2~fdI zucszf&m-=LGRUhfI*3pS3Au8KGQfr2ZJx4z2PRV&|1K*fOoTYR`GFG+>^W3(x?tcJ z+BiR`P8DK;Qz1sK+7OAUjHau}?2U~pF1L)1O`ITzg`9192k293d3nT>XhHsSD~=ze z-itnFtf9XOQyGr^nch^KQ>bsLF272hMUl>=mfiqB2R=6JxIhM1hl0ANvH|xNeVi}D!%t;->BqKoP~s`M_@MEhR>4{_iA=% zDm@kTywwQ_*^IfZRHev_Q> z0yByl_WzWLe-$Q?b+|YAmXjvb7a3>f(Q*eW#v+}qfj&E14!9Wy`*m=C-Aq|;=`_u{)e6V~)lUxqO=Yd{XYId}F*HT`jq6wb!xhLCw_)O9_n=OFKz zd5@EJ8>&l-18?la}68%F^x^nkAQQ;b8o`W{cQsnN#5q~rUSop`S6qKKF^5K65DtO zFJ~=#X_?aH|N4I!6AS7L>;vz;uO4|{3z8FP#GZ6=WM>%QSWw^F>qehT}L+~8XAS-OFGyKx+oog?hllc7*Zjepotwd&pyDA#eb zqn^NXo#aau??&nJm`ssY-Ql9CvCV3toBbm5tI9q+-OT>Ag>BJrwQ#(6PX#mx?X)U8 z9ht~fJ?17SgT#^a+Dere2=CM<-O1Xd_}7s2h7IV|%j%VsU8?Bdr(~&n^1wl;7j25d zP)H9Qh@XX-nF?+&(NQMDBh9rJfa3ZPo}^dA{iXuX8GdBbM9Z&Rp_W9twRoiFKYI3= zRs-A@7-Z}EDBT5MG6zyN!CAflQKfL>K<)XTWxqLlHIZ}%$fX18-6}QGk=H`XNd?9* zG?4J*--w^0>+iA0F?Dgm$_`XJkbJsuiqFkN-KDi} zmyYwS>S9c-<0)2WRv>r14Zc01GYE~fqMb5Zstiagx(FG;7}RX{Y1QK$hYHzOUO0SS z(E5J*c^%YDuPQ6!K87puVO;8HX2p}ecYBxbKe8*XFjZL+#@Hr#?M^sQNkAd0rqZIi zdtpkiX#oN$)E^(df!CH;B?ysgH!-)GvdRBYRCRQkWI0bcy5_qDX^BjvZZ zBi>PdVt_Dc3!BgrU6@`yqlZ zVu=RbMU!+rPuYyq@J(sto`Px>x5Y*iIoB#0w#y}@f+W2gde%S=lFPv$xE(;~e(k~% z;$9p^dqZcr&LiJc00-CU$_9mPaQVG<4xjCCG;??pc}`1Qk3n^z8q6Ha>k-KJz5EE>FViP|?mWMEuEDAo);c z2wf|U!rAg`HQ6dnHN02%bEFRua@pbry1T-b$ zDI|3by|r+~(xT0PyoCO+ljsmMXVuM{eETZ;=Y_;mtk(OJZQnL|$npPS@2#V%T>Jk| z1%ypEZn~rdC6(^(P)ekvL`sm_q;ze%C6p2*L|Or9>5!04K~h>eoa^QspXWI<^PTmq zHS4!#)~xxHb&i|OzOQ}X*Y)|lKCibA>77#THG)o^$Bwd`NbW}4EDI=AzGlYt#UC5n z=C|b3*HyYk*-hn}=Jc^E-&zJuw8MB%zdUCz03KAO->~7}@(hS=5Lukdt5?^j>d$dK z8klVMq%G2DkKJw6c(Z!;wfn0k4Ce+K*gSBX(52s*ixCn{-)JwToYY4fD7@IxZn#%9 zXVEx3G92X?diLOIqT;b}osZkPaK>a~HZTva>~^twaJBdBCcm812f2ZC z4%9{YQH%p(2ZSxSHwdtpH4$j@i>WM~9VRCrLLMO&?Wr1Kd{9&Q-oh>L}$dLp1lU! z$V39V-gYqY;RO$a3@#z-jPGPCrG~C`4_VaQI^-h?U3SSj=?`a>wkPY|Ndds5>3we#p1|)`hUN<|AFMZx;9?m zQ|RiDbNjET)vw<`Eo}H(Yfk&0d-eb6NBieD)6s%=zE?I#{a?Ko=X(%!e6UmC_+R~@ zo$>%1^0IaQQ>XjCw&xl~0^Zh8RODIue+As`5yoV*&{ED2f{PhJ=nj%qS9J7DZyfpG ztbY?>@b0Y(HW04P@DM!<`5#|SVg~j!sM21hF1J3peu>E*P?Rnpmp9mRX2WO&h!X{` zBH^Kiru}R^!XC^3;2NA(*L>~+Qjll%zg7pgKzlge;N$Zw1K>V7>oL9@;xbT_7}`V)8*i&S;?dI73+LzFC)KOh3qd(J@c=zO=Y`cH>l z0Z-t|6T1=eOvlUJ1rMcfI&KE(m@sgJ6M~wlLxuKoKoB0F#{+^PQ>wj|A@Z zHyd_>GR2jD4DMYakE8&3bmpBCdeR0vddvTrjiz>b4r#Wo*B+z;u>R60gr!AL$L%Wt zXLXkL3fLGuYtT8!QTSBq^@Dw;o4xcWLSq?=XR#Gu{3kRxc?qzOn{3(a!$?~3SvxSP zuvJ*}-f0fJbeV@@J_oU|pIknlek*kq;Rn)1@oAu7J(FB(IZ_>T>xwWw ze^S#gwDFNt_wit35$hT7q$MUZ9{ZH}T%$MG(G8X&Z=amy_zhi;%Uiz^z37`GAmaDe zi;cDX*LV)!oQzyPze$oSAo%nB2!q&a*y9?jKf+bZ{~vPwUjeyhnZG<*7*}dh*nsR- z+A5hM6N@Rjb5M_5$JpD&4YUS5XT{Vo8Y9ke`d;1Z$p9l(j&au;#~#_-acd)#7r^l- z4|OBlzV-CtV9X7KEt~65joO6wc;RrV7_- zTr?98{A(xQIQ_ZX<^n^v`fVq}O#J@>a?SkzF60`a`Tq>$N;r@RvSSc=RKe-|b6yqE z=glvo>8WEyrAp~V0yUPunA@EKx_aXheD(1@syh3nueBi<@U^Pigmr zdGN3V)-5ureb0AiR~Nv|1}9!ujI+*29f(D@wCc77z(+1aDCF+omv4BGO*t_Efl%SU*K$cvx{|rVze|;c>!$HdY z<7>d)8oA0ONxz?VoAbu#di(7W7vBp&A1@mTN*`CIX!P@J>!GgtaQz^Q_oA=PLlI4&d^?N;s*Y(92Qkih}N2o@!6{j4zF7biUkS`ao1nO z9AG1*HPOD27uNptkX(rR592BWS9Xv^(JCGTWL#zY|Bb8vG_L-hn?<~w(oFF7LcS@B zAd)1ITpJ>_Mqm3J5+{+%NTlQsQzBG&sUbyzhO14FMj*W^8Loh-fE^rzcHN9FoPnXB z02V&T*~qB=A8~6}iA0^9h3~6U8 zT=%2lHaFw5z#F`ZOwy<5ms}DitQ>WE%!o5WpE!~S_vwFE#=H0xXTT*1k-e-^v>&4m z(>}<|a1nNNjZwl_()sV2@og?YQ%4M$fxW6Ms#jRsO;o?!$rONpcq z2uiPi%w4!&U;5K06QT3Pi)~oEz9Q^ROB&H*g~Twe`}jZBXn*X?E^k6o!>Cam*FHdLzqO;P`vX3~Ttg0{))SpY_aVPtd2kJ=m z75GA{bOS7g?h8Q&Z;rOD8`$B;^S(m`y#jg&ixu*@c)88W+VX1aJ*CmAh27#4a-#@olfqLcpM~v{5Q(SCUZLF)v)BnVt_*)ROHxgO)R>JHiUj1)~#{lZeVhjS3E;b)6NH? zh%)Z>?}90}AY|6Vu7qK~_$RbFmTzL=KhW~S-w%D-1>ujDF^b=Ha($;G7=o>^pZFOd zqgb&Ce`=DzgZ3w*$}H6OMQ|wiI@u*#Ui2n{6E7WamE7dM#05v^IXJ%u$y$q}0zNTW z^QV-j!14w8Sw=q!xdj8;)Oh*bN3Rxm-)5M4v#N0q#oV@9A9<%4oGG%2v!SwO<*nO2 zuTPTP&{9*Lgc&TH@U56P7I_W3%xchC3sVy8`J;tFh@U?^%>!uSXG_ej&h?X6Q920Sjxz#cIXe zsc!*ucw2SdXQ2s?;r42RKN4v6*!E)%ETFvRSFP|p5a9HVQre$I9Q^7TP>~~{IXvqF z=GG|OHDGSVGX=$?$ClxhM!4MqT;8Y7jm&q~#z2!J`_b!9>GxdeXU_mro;9a_IR#`z z7g?Z-HbU7rkKw3hhJ1dmNTe_J9EYK531}iWsjK3~oKGF7AaSekFSLxP=s&P5HZ2Oz zFOFMgQG;j>)Not4HIjXS;vQE4S10SXN$_wsr$)LH%_FBSCS^v9VN9l*)@`AIjv<}s zdx-`G;!?)iI8=mE91qXHF2FsDLj42Rio^J)aaY$KZ&PEl!&F@`gpzsmQCjedljR4T zY{Abcwz;k5PB_Jl-RYK!JDdZq}=x4e<{)?dD{H;B-&Y)Dv}gJdP71eL!*lhjE@L2DMIe|!6QEYn)6#DTcluCp*TX+_u}5_6-J z&@Mg?$E1Nbm=(F3Aj{VD$eNW}Fj$J7{f6A`&&Ud|nvx@4!;NBF~DlJ|3#IsopOw$wtANsm3!1^P)r~-=7vnr-g zj{@-j$*P7>y1 z9`un`5yaty)kR&>{TP2+pbvI~s`~@i{1#Xv3Xf-7FrY1+eNN>4J#Qf(U1yKgjP+jQ zCDZ~93>~}Alnfz|{ox3B&@3qaQnn%?WorO)l%wJkQEDn5u1B%&0uJ0;k+fYK!n^#z z(hTXVFJ5sMsiZ}$Vt0?^c>aOV9)`Wd5!KF~Ftx}^fJ{cB`<6<&BAfd77;+*wkyfgxC+pd-%;zOYuuKxtcfLMqW0e7jiqfWDWB!rRFfYROwny4^Mg~eUE zmvGajrlzL5l_#4}{z zr919{JEtYx3Q7oA^)FibI5#Bbd^#^r&WDS;6_Ke{7R$=EzeDY%x~};tr`*POaM=qb z7Jaeb$A7dl8MS6iG(gBG=gx>9!4Q8p+)aq42JR8JPZ4xIf|1t^F-Q1L&f`{0`?=EXFBQyD-xX_2z9mO=M@f_JbEpfq?%rW24Lo8x z+UOfts*?59-OafB$cnv`vzvuj(oYk`$N{o*w_9cRmUoW&RI$pZZz63o;LH0>eyE?# z;<^fYI2*kplciGew_Ajf_bi^9l>h4Ltm+k}(tBRq{8Z^|sNm;Ok{Iy?ess_vH97qn zM~sd`rrEEw2GeVD_nQe&O$8X^FfaSLRFXpc$Y^k9sX}Po#m#AuE$4aU9v|^etUz^W zmODDM83_BnsDjyK%H24Zhrru<2a83Y`TQxXGV?%4V{Bh1iocH;Fb*xeQ##yV$G-he zCFoBnumI-gLzXR<^8T`lN*cxy zZtXkh8R{xEZejG=_wvN(80f-2Z)n0KMC#y*!v%$(zJd|gDe*wn1l!zV>_}iZm?YW* z{?;m1*(lv_;(?mTMfhV?NvRWS86^T7zzK#g=EjD2rmV1D8!DK}45<`zo-AWn9J99D z9zBHC%qcY5=TZ6#Wbb&&8jQM>b%Z5I4~7uESE>n;IfNb3<<8~px&&2EWJs{eX<|DC%$rN4f5wwGElFlq#SG3Ha=lH9?dX=2`wU2r z3-!}@S&N36&IXx1M)^h7eQ5rPhcUY9<_SrQX2=02{qg9R7F*}&i0p@H*I0Qg&nZ<@~- zEV*lXOU9PFl>DJIEE(T~W?C{%x9?$w$Wc zj9c_2dohgXsF>uAsSHJ|>UQkp%iI4nMs*7CA2aUn1ke!o?5H4hUI!d=8X{ChB2< zbN=OCut7(66XH~E&^xYI?ewNL>JgYW;gI7dQ!d-=-8XzkG*ExBq0>P6gDnww6W zt2_;MN0~CB6%x5Z%B3D$I3#jyecDnBM6S~z3n5l0t@q7EaL_4W`u)cazI4YJw1LGD zUM>5Hu7=>a+k!c|ieQ>W?eb_3!vkAovcThC9fRUPO&ns?TvhVADr#~y* zd-{y~bNooh+~NDJ>U)=tqLzv9bag z!7?Q9*h*_WKaVXw;_Kudufpsx5^-~SXiw@D>D!(pbLc3E8C)V^ z-{fLJCdCqtRhDv!3{r|&)#R3`;cM~fj}WGMBTp;3uki`OJWOd z$pi=4!tM5o;$5$oifTRLW6z-4AW;Qj>GCJ~O0YmDq!Mhy+TSJAAojwww<6^->nTrA zaNcW`!(oxfUBK$9{d=cDg~;FY)foQXt z%#MyS8z4Yc*1+CQkPhQEiP1?$L}y`ShQj!=%|qMENLmGQ9)pCJdy6r7vK6dvJn(J{ ze1w}4C@#vIHPlol9&xILRlauP!Sm~5U{F#}2hrRHXC7SjO>X&lHo3US8}7u`(T^yNdIR%3WJPVb?Lx)y@vxjl3{Ui`{ArKd zO$=3JK;QFc%GE)Fuk$z+jEd&|G;1cIJzCdnQSLl`ikm4==INk8x0Uo<|>%xX_ar^4| zgVozRB}Z`3I2F(_kHwbcw3N$7+0kEv*oTSO>;7f_;(=g9dC@}5TtYcnH5W_GY)76d zK%E|iu;n^oxofaUf;izh_OM@Cj>+@M?RGB*#QWaV5Y}5h{PE9UwR~-@`C^VUO4rR0 z@#cG~B1J$bb3PS=kNa;vj}G zOYXf&ac%d~?f#x>>oz!Ny*;D0Xt03Le3J748OdWGsN5^CbLY1307Vu1vR6_)5wEz} z`bwsbZ@$?Sxu-GCYn23;lIw@&CTVkFHBUGxSAC0>-a7ZPpgujv6AWoS86p0J1DSII zQZ&_6o-g@Ej8cCKUeg~uhXk*bM8A7?`W8IAe7{!*i*w&KIj4I@Y?Q_~x8sq;Yu+k_ z^|*;w<&`kk4{CI=om}g-iVth&tdgOu5Fc9t_*g=Sk7dBo&;7yt4B}%mOdvjX8RBEV zi~~OQw$kv;%0m19+zxpq$yh&8%m6x*y9s)37mdaSf7<(lmu4Lrf<OJo*%o*Hu^~$HLde^5NbUG4ogsi{QYpOCgnDr*MzwKEO2^8F@T3xo5<~7Cme`69{kmb% zGjj3gURo&i##sBtyYwx|Ytb~k@87`tmE8~K74NxiJ#Oq*pFJyoA5g}>{h&TcVTz21 zMrg{mB2v7~|GPfU-J5j1l<|~Fn&!0l$_YORHsIv{x^%A=aDyD3A}NM;CSIW=MC{cW znzsYzt2qS*32?qzLe5tggQAqz`gSex14E`U!@{ZM^cxM8ixyLgLVppmyEB!wdo&xl z2%S0Tg zgRdcRME%eZshEK&hiDki;KD;pPCV@e<)rbGiGqgW{mo-FtE#-!T@gsySbZASPcJ(K z=((ja#j-_2buh~SOK?4x1-}=`hVhft1^u#B+U}}QqJ&dLpV{><3TURGSi>JDPRb2% zvSs#~Y=-3+#_r@9Oq9nT4I2+#5wd#}K4~hycUtk!?s@Btv7GSxoV)w7$BK)HBf8R0 z^o-vTTkkD(RSCA#O0D9(Qq@28w;U_l`?KF!lBN5dEanha`+gHP{)*okB4h`#1BVx{ z2wAc}gshDz*#@~`%ij9t19AFGjo+6Sq7~b|9LN0bJ0_(HPq zcVdDOo59T6B0!85CD=ACPj@een2o+)WM9Rhz7ket3HR9RAJBsn2-s2sjWfKY{Br$U zY)uA-SN9`{+`kD~npXsJ3*{s02%WcpkX6w2&-UYURYc*`noO1FUon6PS>W9Qge=@9 zUZ#*m#6?!>4JRYPS;jK8a`*jecQ^h=`)>^4VDocWM-*X2?o}J+AS(z6S$z`O*oKu0 zwHh-($S&Dgfn*C|K**9!ICOwLFj&BS!g#XB=0(^(C(uBm6NPofkh$7>Ab;I5Q_jUb z;*HW+bylEoNZ;h*+9?k7x)qF1g}N}TvCd+F-E&J~!kSR7p&aXyu&i%VdPF*-H5j)@ z5UH)-Kr_dKJ8FqaP9m_2*@{QWi=@`wP?BS>A0<|sPzuE#W}VqtqP)&hpIhJn&7t(( z-pp0iul%87@C^+UM>L*URVngW6K~9yFntmdbrVVp!2%}umkkVHpU=A_Jb$M3@lQ{bm#FyRm2L*K@^-jyW>=YnQkBXMg<4c z4BIFc_Dl{W@P3#Xx#LgMVogD6&9aSl*+iC==7uXcLO7{7hLP$1JJsn{Nke@{VWw5& zGWKTpCM_1`4mIdQM3*ys`wNhj!HLsCWsH!$_Hd?Awqs%L*HZ%g*fw&-S9EX~f8_*pAJQy%>iI znxOH&fR4O9hgzglR|UK^ggCLUtjb1GL{6ObM_ z?FmAMPwqJ>R;c_Uak`;tQq;S09iz`p@5%H@`%GgKH*d+$6f-30#(fLIC`8hC&J7A- zHK8XGb-629YT#4j+QoNvut|cu#6An9UoprX=*_f4zdyh{myEmP?m3`M5L*?#K z-r$r&<7T9h3~$!-(g5s+_yLkyxH@?^!scq_k>knMu!e@<({7Df&>K>=Q8kaF#M`xC zXo|5WR;s$TZb{FbfQ@ zGUQn%>O|vA(TrZ&iijyiC0sHO*_ZNz)*Dv_SjD{OAWPbPVK6FrLPv0bqA$7pB8~gE zcVHO?D&{uDC6b^#OibnNyW(_jIybAKc&9OPpKN^Ql?&Ms!@Crr7N==yNMnW;`ZGCKboG2$|+8n{Ao4 z(Vs~t?V>Ugj+t<%Yd!s-@E%gY)_w;u)I<9m#Xteu3>2^!xjF=D!f>E~1@TB5k)l9R zVZ&bd{u>}<7Yg>laM`yg7B@IH@?HQs?p_o^01&cI+HQGJnrX+yOz8RIF)ER!ip2fU zJxN1UuX%+?Bbx+pKO||{ruD317ygXzCPMjZ_dpPFjY!^6k+J&z%oqB#{R=sHO;b z7;GX_$mN;z4<4F88K8hAS*@@dILtIgJSe?7mti~h)u{soY-zp6KDz^=uNKeGHq|0& zw*|i6Lvja$*6RZ$sJ=jf+JHakxn0`Od0t$LUrp4JziII~=B z#xH+BI@k#H_OAiFMmpyIp@S{fukersI#_L6NC!(|4}ZzU1>(W}=wNk?y}#}It>Vsa z+|;>U#Hpv}_@MEx{lS|HSm)Q_OKuHpK=(XlM1kc)5rIb>&;xoVf$hQMIED5FgLWQ~{Gjs9y({MQS-$$-VIyAR6VblG3-d*M*OD<_L9;B0-U3Vtf_(KVqN%iJ=NnfZMdtf30mb zX9Vy3{(Yf86OI4*KK~D&qhAzs3Xl4)wXG9iamGhR_Wx-B{O>OBKVSb%4q;4Ieolyd zB=O&OmH+u80slqfKIoa6o8|C=S8?V-*>>*`o*q)>+$7UCkHxdkdo{`id)naKtx!Py z&tLPOf1oxa9j^7aP*(*6l)^Owc|#%F>rq*>ckdn0;@twtr~#f}g-t_#Ab_dr)a1QB z9m$`*T~z#C2i&@jK-$|E2-fQZQS%od6uHFH_-7Zs*F36y5UI}dqSA(11KYAMkW^&m z#enFFk;huzIKzW&gC}83B4qDa0s=}KFKdBx?vjk^WX}Ey9WkP|Z}Dpmz^DUB)g`)J zU_SF}sQC~&5A2p%kf8^~KVB9EwFLs%Q@7>AmHtTa{_xpTw<4Oq&HX7^b zIPiI~<7WKYxr;5gt&^44M*|L%Uhj2{jD>5sdXp`qCLr$>_)e{S`VGibC>O-uQv0?6 z?4iFz>=6qo1b^H+Bz}DyD11C0FawoHeRcw9bB!KVW^_r-@6H~)cSBrqB+2(YgEmO| zA`#z*y1Z-}eJ-Z8l>?sWvSy)F>>x<@h?I|kAz#q1&bCjX3c{Mlf%&q(F{ z25`Oh_c%%E&MpDy+f}^5NP7~x_~``vum*8+hqZUT=9avZ>wyNz@%7pC$}~?8$0Fo} zO`AJ!hn%oqX(c+z&PlU0g3GG;Yk$`?Uf69CopyUexa@}U@4XirAVC|Zo;ZuY+w(xr z2q-4LRO7LOgjkbX{Kuwh0HLNrjSjP* zCu1P2tuoX8+4Rr{TxwSsrW|mR#?O6Tic_8j^8`PiuWj--?Bdq6Q`qovSV538$gEj+ zG`w04G#Pe#_;6=NH1uUdaH`wXc)tl!zE?`me&vg2Y@FKH!syM??5Z6>dobnZGC>Lm zW!mYzYqIk_RgybN4rZO7?i7xFBfoOvbg!&I#P|`neQ#GZa8}NK9S%Qz7(x#LHg zJ-`9_U{Zl(K~tXkhZwLI*P2BMz8%Zs-c%tg2M^L(aQVmOtBsyF-`D~>dS#=b9XB0l zF#n3>u%9>3{N9qh!h~EGzub-9H_Aj9raHo~OP*u~{RlcM+fzyf+}+&I3q2qH!v@PE zmXdQnRE%0Eb~WqyZ{Y1+Snf+(0inbi17l{ZUFAY#4OW)qDkhP>{%%rP*hTIGA#rJ4z7y_6>%d4J?W zYNz`zw<7c?5);DT$pqR51Ce3rTLVDp08-qJz#-@e%AIGA+#NXqjN>fo^^_h+!{@p6 z81W-<3t-oW-DYUFMZ6)sRivo9wYDTI8jjF7oCD1)vFt^_hPZ(8(R<RP@rd?YB*A~iGqcwM!2 zA^!Dwt}Yf)WO6ddoyWe?RbPPl#9uA+gr2b55a;Oqi=;bq+iOKwjEGUNW`A^WbL;?k zVK=Y5u(t_AuZSNn71*R&$?Y)^-ZUE6)Yg(nYC zHeNC)3Vq4Si?{H&2y`1Pf}v~u^BiZx{?Lb`kY6*L zcjZ7@K%|p^(=3pYitS?zh(o+X7AT6G**t{k&g@-~~a4beNM*_z3g*xm6ShH2#zz~fmDvqY; zK{mF>!^wG!b}FQZy4XoBKSL@J#oHKfNmnFG{YuU)_#(dmc~>jbob^w7^(^%TeS zgV(G6s+{25ooT80{@TXY*mFJF97KkP&58K>D=umT8KE4BQQ=kP||W z*71>#0&L0o_e|>PwOESdkG`t=?8Vd6&_CEo&K2ISAMUv;lQPOXKkf}rYycAW$$@DD zp18o^TRcDwJ7_#l6;5AZTe$98U-|;|4fdaH*OJ5=<0uOJG`spwOZc-d3C4DK6MXW+HAIKP~!-hwu2s}Zoa zdU3PH;m93n!Tz%(XPzv6zN0Udy!y0Wa5h(c>DbN7KP=x_+qcaqv5hU@<=yj9j+ovM?#o;GfZ++dZh$Vyg znLftcCeE{^=^hsEUijQsMew41FO|3EUD^wz{G;2rzQg{$y)Q_3Sjjb&_-n=L$1*WQ zI5g|47OAPL^V1HCC>rh8U+_**>|Y`;)W$Y2-tj;a(WS+WKsfGUNHN_1fnYRTU?GtB zd|%wM7d{Xjw6ed&|IF&MQ+Wfs#STZfvhjBVgcYsxSIJEETJVkBkldad_R{6rY5tw7 znd@n%$%P5wbU{owFmy37K^diL; zUtovaSZa#9oncWFY_{xIzh=!y!=2gRrds{aruml7yV4e89Fk2XsI?OGq~^6MgG z2Z0uoF1Be0pK%d=aKtTJ#wm7#Z-qyT#yr&M!s0#{K5G z9Wf4j_19ZU4SfD(eA4(E2MJ6O%k*~);$V%zYb-UQM!Yaw7?P``RJ z>9-MXPZI3g=X&~;t`rS(fLoWwecrEkgu;3N^`L@oA7o3BlI30Cpmj$X%avhoE~Fe; zfv!BZc|usOtyxd)Q|sV?6xZN`EP*cy(uL{o9^}iBd+b&67W003eE_u}G#{U0&2>Lw zhHq);RP@X6pm4Nh$_^`v;y?$2Eude-R3AI+K?aa&SpwoP|65{pU!3mHdsUjASFgJ^ zp7;RcL&wNqzvtdw7a5a(EActcw(v67M#+=FK>Tuqg0JO3=B9$8oRVbq4i>0ee%!vj z&8X#M`VoMx4?H^ad!5)FFTEn2f1%MfJdf}_{mj8IfMp;@;X3f zSV3Th-DOcUKWX9)9fJd#3Tq~HzE708Cq}_`(+58uxoW@ zQ#n>})tynl=HS@&k3{b^Q3J37kb8KR0(VYPzOb!ifsnd#`4et&6QQgnhDdlU*A~Hq zM1vFdf&6MwxF4fbXwWlb#1GKNTf`(=KF2*Hh8h=~KW%!&_SXS2v`^#48bYW=z`V08 zGmf7)!~J7Q6izOkLzijbUj2iq9aWMfhkl>36=Oeak@di?eyCeIRA9G_c;*yD2z0Xd zeTKGVrM}Q^{6j0AGU=P4?q@%^(Zoi-qtwY6wa89>8P5c}(o1hH&>%Y+_cHbF_j)W4 zMHIN&RJmHj;Bu?IJV%SKbY`gM=>%DI61VP-H<*YaK*m3ET%vedvwM<4lX`n7k$17}i-S9m|4QJph zFJ|AMH`%@@JSG@bZ(6v{Xw8e0Ssdm!6o2pL@GRrODMcpxaKFb~V&N{%RQmKbyBGVQ zF*GA@Y~WuI;!)X*PB{XsBf&>X5hkp{cor-Av#z5;#6S7sbp4edxB(Dxgc6GiL0ak$5GC%@3+pxye zW!hkVDyB|sW)h;k@j#xIwyuR*s&~D$Ke9AbN z4@NSpiLSJ;#P`ZaAK82xt)q8(3LS4CsPt_X#wF1NS_?c7Nh$R7J3RT;=y3A_Mh1F^4}z^#@rv3&B1LfaRyM=ps6g&d&Vb9Ho+B>)8m*ds&NJ4$Og(PERl z4sV^m3}+rZH)(7A>V9bY)8vDu);!y*TM=mA1yp!cs`EZ68BMM7cgv*cv8qJKrn<}1 z!@sH_IW1q7Z%`&?tcbMda^1$1I|elFLHI|h5=L-<3hKL4Q z*i~?3cLrdny6V@8MQ(#-6qHaxbQ~NG1Z>3JX>T4$MA$6<<_dwCh`9cHd+syhWk zQx?#|-s(n@=)*GgOE*(4nRcl_YzzP12UeanpoLv@jL2dUEY*a65V+F9#y-mhT3Ap? zQN5SDjG)nAApUf#J6a-kx5v2feQ^kcBozTIY&Jrpe*gTT>W(8TSr#~<*LCn0D;Qc# z>TlO+-OG$T9l3d|bF48cNFOJrE@X}qDsw-k8!ON5Rc!uGfrs1!;0{SO$FQg5ZtTqoIZ zSQeCPT%$z4VNMLR7Qws>sq@=7t>y^$(}ltLKF4FfBkAR4)?VXRfKH0>g$^9l`=Ri9 zaNwH`#3ZgKrG zf`qHd`$C4JL9nLz-H_xc!Zoi@OFu!?<)eG*Ez)>`xw=BkWWKlV5zx%ZaZQ$)2eWM9 zN6Ica&~TZ&R6jAFHD;!IXu9gx^%y zX?>(tnxo`L>E`rgZq5e|y`N>uV{5N%H-f+`GMyNDI@1x!m`WFoRdzYr0tItTm9vOh z=}O|3yZfi-`vXTU4ud@FhS5^jzE6BncqOOZ7X-Mq@k@H!Y;#5n!>2$6JCqaysbFQ< zoazfN>0dsf>X?6qMbxd%sO4|+)e5OW#S$qp-6|q~Jw|TkP$c&tYdDIOyiv`@v!)0invUXI?azeP*95e;*;LmP-{bmhjvnI|wv5QS4&Hua z)WCu&Qh+8dFaBPGe*r0DwnofBs7yOOwh#4_*TvVE@rg=;km%d~+%rfK9Xy_OX!6{5 z=rzaf{m-(8OmVb=6!NL1J_kjKi9SZj1%WLp_AB1M6G*@rjuDbvz!rFiBK4u)(}!|T2R!B5__m?j*iHPCI$ z@^qNZj#;b^fBsXH?4|?2E6=LS@#jF0XDh|k1J`f`2DMfGS=z|8okt9`(ix!MFn(0B(i$?AoclPEcO{B40N7?_C{ny63}^sb2&*esa3>;K)!ya<*W}G;BP#-K!=?#mD+}OP`N|jY=qp zpdn1J#Q;w>2J^Fabu^#xlBzu1ir#1zlQ~pZAK&5%YKs;$F?t7WnmOU_1N8OyYM(Br}9SUOD)^(uZToto^{7)BuNy{5HrI0J!pPrP>;U5IEBdhQ>HarBeWI=Nqw=v zRRN$O?FE59PP5EQ4S1y%RQ6nCIq-!;jDC?&%uH7B zwpc42+G69y)9&M){8o@*Iu+5)zVP|yO6uz_&+zm20CLOi*D<1O1t!>d$OH?YPz_AV zi~O?Vhblq zb$1Uvl@aD-bWTVZ4TEWD=DSz(`D?st<|ck+!K*Y{Be8gJgqY&a8_QLMxg-g}Sd3cQ zHf6iOkagMu3*tA3teYR+da^{{9n;V<*E*KX-s!ZiloWr&FPFy^ep{j*r;)BEoVW58-?UL8O^} z9oUhV6`hDHG7jH%NxY{yN}jg;lN!@9Hwqrj%P!W4db{=}>+q%>nuzpOk}vm9zA4td z9HU{o^D0p-$|amxEqyiToP!BXN>Gj|@PMybsI8>aM|fFZ<+lc3s#NQcI`f$|&HJTl z{=!0EcVlMEX3@TlG?#=o`W2Q;4qXRzgZn0#b)T??Woi5v7FjwACF#IzqBvt4JDjZn@T;Z(<048oDvxgM|y3%-T%C=8JyEwBGhLA9xC?+ zTFSyE2G~pWCJ-z6hO`wW>%!Cz+}O9m7UE+w^f*HtZlc>W@PYZjR#MdK+mcjKdUK>^ zFttE9mqJlbeaBZ+bs01YO&*y=y>QcX&G(-VCto>s4rS|;XozBvQawg;h34+&aL*Y` zcAwqMmzf+8CJ$+{BqV43UqicARP*h7+qpbt|GO{rMhR@2-x2lQWy5B6n5?wUTniAy z!WDJC?qGMhgU8UPk)nnoN#MVx_Q2~bUhs0^dN4o!>?4jAMI%$Vdy4X;r3|HseU>G; zNAcbIWA114JM+zfSuD_4;_CxZOPlUzXqjrvfoiPP8NK@)Uou2dS-(!Iilh}!y|iKu zKei;lGQkEl?S|jNB?!JU!HSJnX>%dh z1&+A)a0b zuo&M&u&1&)i--a(LO6bncQo3Qb4!{Be)ss*Jdg(?Q`e z3WoqmdQK1ggjAgS^r(+&Z5gzmQv`^AhkIcWh7#a~##HexWu1r38>iq+Q{4y{_TgXl z?0I3)FCycuho0WXe2pO0}3rTRC{zb>>l#J8U=f4u*bG!uAW-P_DH zU#$S)NAV&j%V{1*vqH;K{QXF$-CIg`O{ngU>PMGxPLb7td}e8UYYOBQJE1QgVSh&` zEAx8)&|Q){b=@1>UJ?grFV&t}rHU~+fBzx(5OafnXAG-_5g)$;D)Uf!h7z@T#*@h9 zrqPu%fnm8^yUlbf*;6Z{9N1E^XMD|E$rkOVRHwZAy*$O(-LF*u$f5^8)_t5E8S(Xk z9Ir=dP=5eVw^r8rrpLQ6_UUx|xUsfM-sL(ivH|nDh)XrkZC8pptbqt3${-8d1V_fl zPul$)z|h!efg$$_fbmjJ$RCIwRh|k{PxX(VJvlbdmeD8=z(uEFm~xzKEqJ*=D%PqM z%{|bCWlAUv&!!*xlvT{~J*0r{DTt91JD?zx>U`M=Z#P~@_uqeAH8vM>Y!&Q)H@0|2 zTyyU{%<=jnhGyE%WbR4u7)3x*Nz{HDr07l>WVz3l+41{_88k4 z#rDup`}X&QrkxCT_%+XdC6{fXNvn_B^W1!id(P2LvlLtSj&ysYaH@FkPfw`xYeh`| zb+c1sSwAXj=6v9DX)s@^n`y9a6mSGcI2AFO?&{pZYdP35!p0tJOpSBBzDYwc^eOOt zgT8?ktE27RX!A=K?k^`M1(qX|>fe$!686*K5LgGwGZ@)u2v4PsR@Zlg7D%%Cfbl_3 za^?Lb&1IqNeFZi@zp&~Lhu7r5z{c=s5u27S3m6T$;9caOEq2e!ZtIcWT&2afV5C}{ zndo)Ci8w8_36u~f1m8M?w6Ld3l%2JL%P#gSg_GaE7!Jgrf%K6*B{7^WYn!gYsJ~fd zeNsyuHI}^+5L{p6U^J?yKhwZuMU^^LmjBd1&jBV#&LDN0Jsc*Y(%$S?lDSV2n}NU)9SK{! zCRYc7Y`&I)2thRlbC>0tvFd3K4WBw#9p?59bHH_~w;Oc%v)|fd_{zB*RQrCL?xlP* zxvmDz3RAtuPVOsVxA(>?EZg4tW6k4fM{GvQxpvr?_!)N96YaE5BzHN`ld%bwBfD^W zSj(eBn7W-pU6B9&vi0o*w+MWa!?ixPRlVLVdopvE$BY@pj3*KmODK?!cW2zIxVA(a zd_wmZx~$f?I@dB(CSqKSCwI#?Z&9PS6ktB8KDK{kh=_I>5-A!JpH!5gGv6)|@wS!! ztwAHx#PPc2CeZc z#L`A7<&nT?*jY%OLxE|Ldi;HhXj1I#3 z#|c$074S{r6?H&^I9!(b2`ez)PQ7#~bB>QV>eMiD-YCfMK z(78sL!yc-;uZIUp7z2DvxKB7K!OnJf%f511vW^Rs6n?rfkqz)1I}^`^J5h)cm$Qa5 zcn_Rq*mnp7UUW|N>mit2eS+;c%IBiConsFz4Ab1G!gsoKZl3SS-ZWhL!8c@?*OmU* z=KS4EN0I{NmK9aj*R>eFS%E22lX-p269pVv0rZyqtP%BYvLwZq<--g}FALIh#wTf2 zAq62qA-I$}FW^OQjvo=`1~ImTHF|7gBl!tpwJX^+2ax8SE!B64Y#Ip>uMhB;A_bjz zWhe`CIRw8%t(0J6aEuBC=qa-&$nPh`x)@Fzx#)Zny8CB8GXbj{=xdk|H3;nq5tLg9 zt)bK8;gE{nMe%zEjk=y7G`*rJ?iJo#ROr7F!8$SLw8>{hjFGl6Y;zFklhWU!3yoP0 zo373EX;BV8y+7-2Hc&jIHklx6U|*%J8q@TZ7dUK33eZJR_0v;iC3k4m`ex;`;yA-I>Qj-M)LgL}XXW z*cl3uUCJIaBxS2)2_ZuE>DH zopb&^{_}cad}qGj`@Zh$`h4D>sGEs=!?r}YB+1*K-$uL22C%?xdzAUfo%4m{-IU-j zJ6Ws_PJ#I0P9o0BkLC)BT%#`}lQkoTpBfdBFMvDD8VBy;ZGFxT(x)hfxG-)ryC%W& zx4NvGgU(f^)WE;1+_?7vx;m5A$Tt`ZfAKX7bd^3zo zj#Ri$qlpw+9lflY8RpZhnCQ@3y0%ZAmQcLRCnStDL-Y=#6ew8?|vT?gHg zzk7j?=#Cx_<1jq0-9yHmExb}-^`LGQ8ULsQ+f%-KT}E%mLndM3nz!k=b9)Qlv=CW3 zb-E+WP|8yW`dB-h7=Tsb=IL}PU_u$C!a;Ga<%TcMkJqqv-us19$WqXD+%sx!mtImu z%LC9u-AWUi+Lhp3zE)Nh*4vw9!y2NsA7s*hNyP%B0Kt>rO#ha)+6G4sK^ahHb7Rh1 z&LNpi!n9KK*1j@e{)HAaqF&=8Yb*UR% z6|bCzo1By<07K2xaitoV4~=x(ifH$oDAdvhO?-;n<*HlspA<4nT1R_eTg0dp=y|UE z7=aYT24OJ=FCaSk?K3e#4ILBMvU~HgZ04jGo0k=F9hKE9gqn`yyuUP%m45RJ+c4(c z8muHcopd3{3TmlsXFk&?7#D3s@6jJ6d~ns=Sgzw_)FYGn z{rE3+R>mPpm00mkPc!7cWq3j$ox%_e=(!Lbr$8xS8UM)ish^&SR{%*w_jgC1~SgN9dnCR=x=-oKMzi~k_O>TuzRBv@czBO~4P z&2@gll?F(#S9wwkFvS;!lgWEZkJj|iQk6vRN`GIt^X*+eM_G&6_@{`XgE5e~VRy0# za=+7C`79Qim_-D|*}N!|FYGgzkoY|tC^V?gbSp$%t&}75t5Hf*D?yTAtqd=to}sun z180FmZfRd>`|SG8KNvgjYl)5eT8u`~MS#LI2M}11>Y4L615Y5bs1>-M^Wbq{_%csI4*Is|Mpz{L3< zK0N=wL16nBzO%@u{Rad#o1Uu+^VzJ$mnCemFPHEDk>$Y^%o_2v^fjdb$+zVq*N55f z2fF_AU-+vs^UtF~`Dt*%8$MN&Po%cGQH*-crzyM(DZc=eg25+L&;5aBV-%zoFQNd6 zVEyy%p9|B!5K$Tjyc}3q3^&u|0YAteaf%9AYQ6mO^qI#%EQSc`As+AggUvfD4ey5DW8k)J<$ua_ z-(Mw7FtioGfAXj=$p8Hy@^9XAAsB_wHcKavu(mh=H>*d%r<#1iP@BRWabirg_s(^v zEd#Zlzw7FQAuymD?Uu!@IMgg&!GGX9`uLpijm@ zAXjt)C5^@#hoZwnK81~Q9_vlywM?eIKaM8J6+hM;x-%sWH0X7g{V8H)qW*`76;5jh zjK2;;pUoUV6UzacB$oGu7C25;8%~bb0?0X>0J~CkNeWJzGi5Mytl3aGcJzGCH}5T6(n-+EfWkd2%=sTvW(P@QzGj6QzUI-*&PlNtfM|e%5)$Af7cBp8r|(% ze*WMVc1yb$TX%9R}q9RJeaX{dhaKO!yl@j;d#r z%ylm~t+&CdD^Ycw$?I5qMFQVkdHrewc3*E$&8WEQHzhtM%9pp|7eM(oj1uLoY3F-| ztua1e!QOx4=-X0Mf?=`g!a3Xhr(zZBw@zC_B+Zv3FC)7ZPkix91;sU>0v^gpa2OFY z?Qs9xzV)c`(^Z@)*tHPOSg*M=J+E*7ooHUkg!BNJ@eIJXT*1eeSbMNkFt)cb&ARK~ zBah!!WoHzGozdT>ZI+@O6G1F$H~`|z8sMtBOITs8^-;ps*GTwbqMPqm8gOXBAtaO9 z2()9y7}VIN(3|nadyGcJ*jEjf-Cz;lCRQ)MgTC~GkC_P%40B^MdsNag5A!q^IAd(g zTv^Um0OI2(ojyTX|6i7g)xc>mF2C8%lij&ODyQL*sd+l>dxLv-Vt#sqjJ8K>9w-(^ z#(+Ne_*WCdG!TKh!16&xFUK0d_GZe0#HlerA7;e^9&eqR|GOQO-WVF=n%N4`}a z(dwib^p+tH8YYPbuelOkd6Rx&U>*ltIye7>a|!hU+@oct{IYBCQx>$U9E?zlw#Xs@ zcxa+wDZxXktb#Gj89iyN4KIxkilI?x!!Vo_lwU1_OYf zYhNt-aB)gXPQni!S2 zM%0Jfw}T}E!O6YdOeNAEY4a}`;5HObRkxokaG8@p+0RijhsqI%o`J)ga-#;4dp-Wg zWr~T1A)6^=Q3m)|TS4+XAzro1_L-rvRUP+c_|1#wF){-kV&+{Ox;HEZ zSia3_ouK><7CEM$;iZRTHPXrYO?@}u9^gUjub0DBy;Y!J@tSK6uJuar+=ZOc4b6UI zFm@J}3SPAQ_ZC)SZTi==!DFyl`Le)u1vY)Hy1L41!r6Q#2;=k176{HI%5;PvpIt4x zg;CBu_`1;MVeqPj;xEO6c3*S$(gv`&f9pIVSx-Nl;XA5jn!es6i}M(eqnhxjceu;e zzLajpJP>7`e!VMA_KO~6PdhN};6iOF`fPIK=_*p@a6^OyMl*L)Pc$n&5$uoTs=lUP z<7MM!W)lz(YTmj*QJF!4LI}RZG)nSo@3M`(iSs zm)}<_Cv8ydZ_6ccSFm_%pBggXEkp!nPJ!N=%Zx(XXR~dffCyJ%%^;jA z?^8Jf)}Esp5j!HQ0KYdKMG&X&HGr{@VFYqhdo5OJso{l+pMkPzfN@joNKk?n9V2iu z4*Vgt#fa7CXd*P+^pDi$i(ymQlP^zW_m`uz7BkAOzjZBw^cpXVoS(5qFTYg=@?SAPbn2zZdL-(G@Ja|wN||DnqI^W7HU7FGeB-A`bXXvk+T@aA(oDP8K4=m94h%M%lBxBDy` zv^Bsi(W?n(Z_x(|BEo)ky51?ob;JJvXIdyeAK?Us5n_E%aMWFUpR^~lC%qy==cIRh zkZ2UBb9M!OoX_UAMvResnR4y!{Jr(~z(jh+O-3=o@1zi= zhYbArGjbI;AAHt(%~(AzO$xyOTTOBr+>ha0(KZX`sG63KKq2#@ps+L?kG5)hT6a@= z)Tw1%yrBUIOuVz%I(CUlEx{xc|0B2J!Vy2hYQ4)l3My(|?$%MYd?7hk73eiqe|7UN zcIq>8i+59q=tIY>TVbJ4GU#t|vJ0v-6k4|JP=k*>)bdYW#*hy`38e9cc!$u94wQJFTeH9-_37DW5itv7M&DU4+a{1y zu2f01-PUT8<9W51ooKSz!`>l*d_cf8_}e>R!B%P4g%))b`yrAT4|JWT7Yjt*WKUdb!MfcLBr-qg)BHrFb#yDvDb zI7~MHAT$Y4q1>f&CHtx?H@Dt|u(eUN$xc8|SazfxPn<3dfvY?fb$SP`oNJ&vnSE4@4H;|#XIC2rY+Qi zYC@L>s=R-xOv;>g{V@hcXUP1`e#PgNOL%vp_(VgJGe6<*a*6G(BidgbYMWZ#{Ezm| zU(ZZp6f@%6@2ixU`>bhV!4YXF<0H&0!bKqY(eXFFbXQPL*N%YxNIjp(9RdDbG{BGy z9w2ii1m?7dKFDFA)bg;I_b`}qK%$*>;hn2Y*Y2^8uhGZIsCpV&P?#ewAx-!v1?Vir zRrw;$hOegov>2(Ieli$h#Apnm88Gp&FQ$iOBw5k(>@eS{7ai?!t%3*@Ie(B?Y;tAM-j{+S5b<~xs`vr^VBc| z_<6B(9Z0G3&~@C%lo5KvJe$NP*fAnH3@vQwxK$GH>H`*GR_%q~;JQ+gB;c(==Pnm{ zjh&s6B{aAw12h~Cg0W)T?>}OU;@csN38{hFH7Z#@Uul~wmsIVg1p0fmaaXnCUP;`c zXH@f~nLdrOn&G|{0T&np)belUb+KzegMn|ONi<>VQq;~$Cf zhBcGtmCI45vVKYl$H+x!i(Zo2oRsf*$0g*dnV%+w)9Amufj{Peaj3tWfUK1i#5f+-o8rdbrHgP2OO3_K%&SPf>!) zoV4X_s=ZFfh@zmhud2Ek8N<)kGK%EVi4*I-hD;Dw`YtShTqySG#C@OKUtV#G^v^{M zw)4_D%dQ!MCzPc4rCHi-!-&WhrRG$gVd2OAc^!D)n0@9EMNf|LpLM2t1Lvz@rp}(+ zOBd$PL2txH@*)||a;IuK1&K9tb%^!O=)o<=FAThfZe?TfB4E0nRy16>EdL|_IFI9R zO4bEoQWyBP{#T_TsY@8z`%zBanZ`>3saT_wDv8e>+;Pq zI#>B+HjtRNslh{G{Z9g(Q=iT|2ioX8tr+WqHt)5R^u0TL#fCR z(MVLp!n=m-+b7L3;aCYH)-Z|^(KH=>lXwE;#v+r2x56?%0l^ICF`N zkLA20;yCmU?`EtNuN}&Ar{wkte_%!73W7O7{p%e*ogaAJhxUB%6z0z@;$3@|3_0$! zfv27_=(@|{Dy>Sb*-cDo5S4*Z<`yoC_HR6LL`IZffcw8QYnOi7q)5%7S{_jm068;YX=w3A z>M-d&KkB;uJL9>~$j_lAS83$4l9a{Tny22>6?I0+E^Aq4_mw^)x3poXdw$Atg>lhT z9~R?frK%j^N!4kCLBCNcSfV0mlY*78`0fcrx|eQKn7967xHZ5NZ;bP#G2+^U0 z12pt*^6$!qg`*Smt!2-mgnWCEignX_<4SW6w6oaZ%O6%sw=NeU3J2S2Q}9w+tp}$lEgmj)-Gr! z<4N5vritj8%A0V%;mrDEg*-E>cW>2G>%ka#JfL6vx4u7uJmBQak->wyqQjeQr@)sw MTod+5`N^w)0~vIQs)Nq5H}-6NnN-45L`0|R_} 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 cY&0k?xKzL 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 M)X$yDRkOVLFR+;Vw*UYD diff --git a/docs/ecosystem/kaldi/sge/gencfs.sh b/docs/ecosystem/kaldi/sge/gencfs.sh deleted file mode 100644 index 4e5482d..0000000 --- a/docs/ecosystem/kaldi/sge/gencfs.sh +++ /dev/null @@ -1,154 +0,0 @@ -#!/usr/bin/env bash - -# 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. - -WORKER_HOST_STRS=$1 -SLOTS=$2 - -cat << EOF > /tmp/qconf-mc.txt -arch a RESTRING == YES NO NONE 0 -calendar c RESTRING == YES NO NONE 0 -cpu cpu DOUBLE >= YES NO 0 0 -display_win_gui dwg BOOL == YES NO 0 0 -gpu g INT <= YES YES 0 10000 -h_core h_core MEMORY <= YES NO 0 0 -h_cpu h_cpu TIME <= YES NO 0:0:0 0 -h_data h_data MEMORY <= YES NO 0 0 -h_fsize h_fsize MEMORY <= YES NO 0 0 -h_rss h_rss MEMORY <= YES NO 0 0 -h_rt h_rt TIME <= YES NO 0:0:0 0 -h_stack h_stack MEMORY <= YES NO 0 0 -h_vmem h_vmem MEMORY <= YES NO 0 0 -hostname h HOST == YES NO NONE 0 -load_avg la DOUBLE >= NO NO 0 0 -load_long ll DOUBLE >= NO NO 0 0 -load_medium lm DOUBLE >= NO NO 0 0 -load_short ls DOUBLE >= NO NO 0 0 -m_core core INT <= YES NO 0 0 -m_socket socket INT <= YES NO 0 0 -m_topology topo RESTRING == YES NO NONE 0 -m_topology_inuse utopo RESTRING == YES NO NONE 0 -mem_free mf MEMORY <= YES NO 0 0 -mem_total mt MEMORY <= YES NO 0 0 -mem_used mu MEMORY >= YES NO 0 0 -min_cpu_interval mci TIME <= NO NO 0:0:0 0 -np_load_avg nla DOUBLE >= NO NO 0 0 -np_load_long nll DOUBLE >= NO NO 0 0 -np_load_medium nlm DOUBLE >= NO NO 0 0 -np_load_short nls DOUBLE >= NO NO 0 0 -num_proc p INT == YES NO 0 0 -qname q RESTRING == YES NO NONE 0 -ram_free ram_free MEMORY <= YES JOB 0 0 -rerun re BOOL == NO NO 0 0 -s_core s_core MEMORY <= YES NO 0 0 -s_cpu s_cpu TIME <= YES NO 0:0:0 0 -s_data s_data MEMORY <= YES NO 0 0 -s_fsize s_fsize MEMORY <= YES NO 0 0 -s_rss s_rss MEMORY <= YES NO 0 0 -s_rt s_rt TIME <= YES NO 0:0:0 0 -s_stack s_stack MEMORY <= YES NO 0 0 -s_vmem s_vmem MEMORY <= YES NO 0 0 -seq_no seq INT == NO NO 0 0 -slots s INT <= YES YES 1 1000 -swap_free sf MEMORY <= YES NO 0 0 -swap_rate sr MEMORY >= YES NO 0 0 -swap_rsvd srsv MEMORY >= YES NO 0 0 -swap_total st MEMORY <= YES NO 0 0 -swap_used su MEMORY >= YES NO 0 0 -tmpdir tmp RESTRING == NO NO NONE 0 -virtual_free vf MEMORY <= YES NO 0 0 -virtual_total vt MEMORY <= YES NO 0 0 -virtual_used vu MEMORY >= YES NO 0 0 -EOF - -cat << EOF > /tmp/qconf-ae.txt -hostname $(hostname) -load_scaling NONE -complex_values ram_free=160G,gpu=2 -user_lists NONE -xuser_lists NONE -projects NONE -xprojects NONE -usage_scaling NONE -report_variables NONE -EOF - -cat << EOS > /tmp/qconf-ap.txt -pe_name smp -slots 32 -user_lists NONE -xuser_lists NONE -start_proc_args /bin/true -stop_proc_args /bin/true -allocation_rule \$pe_slots -control_slaves FALSE -job_is_first_task TRUE -urgency_slots min -accounting_summary FALSE -EOS - -cat << EOF > /tmp/qconf-aq.txt -qname all.q -hostlist $WORKER_HOST_STRS -seq_no 0 -load_thresholds np_load_avg=1.75 -suspend_thresholds NONE -nsuspend 1 -suspend_interval 00:05:00 -priority 0 -min_cpu_interval 00:05:00 -processors UNDEFINED -qtype BATCH INTERACTIVE -ckpt_list NONE -pe_list make smp -rerun FALSE -slots $SLOTS -tmpdir /tmp -shell /bin/bash -prolog NONE -epilog NONE -shell_start_mode posix_compliant -starter_method NONE -suspend_method NONE -resume_method NONE -terminate_method NONE -notify 00:00:60 -owner_list NONE -user_lists NONE -xuser_lists NONE -subordinate_list NONE -complex_values NONE -projects NONE -xprojects NONE -calendar NONE -initial_state default -s_rt INFINITY -h_rt INFINITY -s_cpu INFINITY -h_cpu INFINITY -s_fsize INFINITY -h_fsize INFINITY -s_data INFINITY -h_data INFINITY -s_stack INFINITY -h_stack INFINITY -s_core INFINITY -h_core INFINITY -s_rss INFINITY -h_rss INFINITY -s_vmem INFINITY -h_vmem INFINITY -EOF diff --git a/docs/ecosystem/kaldi/sge/group b/docs/ecosystem/kaldi/sge/group deleted file mode 100644 index 88c6ba8..0000000 --- a/docs/ecosystem/kaldi/sge/group +++ /dev/null @@ -1,66 +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. - -root:x:0: -daemon:x:1: -bin:x:2: -sys:x:3: -adm:x:4: -tty:x:5: -disk:x:6: -lp:x:7: -mail:x:8: -news:x:9: -uucp:x:10: -man:x:12: -proxy:x:13: -kmem:x:15: -dialout:x:20: -fax:x:21: -voice:x:22: -cdrom:x:24: -floppy:x:25: -tape:x:26: -sudo:x:27: -audio:x:29: -dip:x:30: -www-data:x:33: -backup:x:34: -operator:x:37: -list:x:38: -irc:x:39: -src:x:40: -gnats:x:41: -shadow:x:42: -utmp:x:43: -video:x:44: -sasl:x:45: -plugdev:x:46: -staff:x:50: -games:x:60: -users:x:100: -nogroup:x:65534: -systemd-journal:x:101: -systemd-timesync:x:102: -systemd-network:x:103: -systemd-resolve:x:104: -systemd-bus-proxy:x:106: -etcd:x:1099: -netdev:x:105: -ssh:x:107: -ssl-cert:x:108: -postfix:x:109: -postdrop:x:110: -sgeadmin:x:111: diff --git a/docs/ecosystem/kaldi/sge/passwd b/docs/ecosystem/kaldi/sge/passwd deleted file mode 100644 index a39047d..0000000 --- a/docs/ecosystem/kaldi/sge/passwd +++ /dev/null @@ -1,42 +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. - -root:x:0:0:root:/root:/bin/bash -daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin -bin:x:2:2:bin:/bin:/usr/sbin/nologin -sys:x:3:3:sys:/dev:/usr/sbin/nologin -sync:x:4:65534:sync:/bin:/bin/sync -games:x:5:60:games:/usr/games:/usr/sbin/nologin -man:x:6:12:man:/var/cache/man:/usr/sbin/nologin -lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin -mail:x:8:8:mail:/var/mail:/usr/sbin/nologin -news:x:9:9:news:/var/spool/news:/usr/sbin/nologin -uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin -proxy:x:13:13:proxy:/bin:/usr/sbin/nologin -www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin -backup:x:34:34:backup:/var/backups:/usr/sbin/nologin -list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin -irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin -gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin -nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin -systemd-timesync:x:100:102:systemd Time Synchronization,,,:/run/systemd:/bin/false -systemd-network:x:101:103:systemd Network Management,,,:/run/systemd/netif:/bin/false -systemd-resolve:x:102:104:systemd Resolver,,,:/run/systemd/resolve:/bin/false -systemd-bus-proxy:x:103:105:systemd Bus Proxy,,,:/run/systemd:/bin/false -_apt:x:104:65534::/nonexistent:/bin/false -etcd:x:1099:1099::/home/etcd: -postfix:x:105:109::/var/spool/postfix:/bin/false -sgeadmin:x:106:111::/var/lib/gridengine:/bin/false -sshd:x:107:65534::/var/run/sshd:/usr/sbin/nologin diff --git a/docs/ecosystem/kaldi/sge/resolv.conf b/docs/ecosystem/kaldi/sge/resolv.conf deleted file mode 100644 index e51b279..0000000 --- a/docs/ecosystem/kaldi/sge/resolv.conf +++ /dev/null @@ -1,23 +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. -# - -# Default system properties included when running spark-submit. -# This is useful for setting default environmental settings. - -nameserver 127.0.0.11 -nameserver < your RegistryDNSIP> -options timeout:1 ndots:0 diff --git a/docs/ecosystem/kaldi/sge/sge_run.sh b/docs/ecosystem/kaldi/sge/sge_run.sh deleted file mode 100644 index d2076ee..0000000 --- a/docs/ecosystem/kaldi/sge/sge_run.sh +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/env bash - -# 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. - -# Execute command format : sge_run.sh %num_workers% %input_path% -if [ $# -ne 2 ] -then - echo "Parameter setting error!" - exit 1 -fi - -WORKER_NUMBER=$1 -CFG_PATH=$2 - -HOST_NAME=$(hostname) -JOB_NAME=`echo $HOST_NAME |awk -F "." '{print($2)}'` -CLUSTER_USER=`echo $HOST_NAME |awk -F "." '{print($3)}'` -DOMAIN_SUFFIX=`echo $HOST_NAME |awk -F "." '{for(i=4;i<=NF;i++){if(tostr == ""){tostr=$i}else{tostr=tostr"."$i};if(i==NF)print tostr}}'` - -MASTER_HOST="" -WORKER_HOST_STRS="" -declare -a WORKER_HOST_LIST -SLOTS="30" - -for ((num=0; num<$WORKER_NUMBER; num++)) -do - if [ $num -eq 0 ] - then - MASTER_HOST="master-0."$JOB_NAME"."$CLUSTER_USER"."$DOMAIN_SUFFIX - WORKER_HOST_STRS="master-0."$JOB_NAME"."$CLUSTER_USER"."$DOMAIN_SUFFIX - SLOTS=$SLOTS",[master-0."$JOB_NAME"."$CLUSTER_USER"."$DOMAIN_SUFFIX"=48]" - else - let tmpnum=$num-1 - WORKER_HOST_STRS=$WORKER_HOST_STRS",worker-"$tmpnum"."$JOB_NAME"."$CLUSTER_USER"."$DOMAIN_SUFFIX - WORKER_HOST_LIST+=("worker-"$tmpnum"."$JOB_NAME"."$CLUSTER_USER"."$DOMAIN_SUFFIX) - SLOTS=$SLOTS",[worker-"$tmpnum"."$JOB_NAME"."$CLUSTER_USER"."$DOMAIN_SUFFIX"=48]" - fi -done - -if [ $(echo $HOST_NAME |grep "^master-") ] -then - sudo su - -c "sleep 30s && export DEBIAN_FRONTEND=noninteractive && apt-get update && \ - apt-get install -y gridengine-master gridengine-exec gridengine-client;apt-get autoremove -y && apt-get clean && \ - /etc/init.d/gridengine-master start && /etc/init.d/gridengine-exec start" - - sudo su - -s /bin/bash -c ". ${CFG_PATH}/gencfs.sh $WORKER_HOST_STRS $SLOTS" - sudo su -c " qconf -Mc /tmp/qconf-mc.txt && qconf -Ae /tmp/qconf-ae.txt && qconf -as \`hostname\` && - qconf -Ap /tmp/qconf-ap.txt && qconf -Aq /tmp/qconf-aq.txt && qconf -am $CLUSTER_USER && - echo finish master >> ${CFG_PATH}/setcfg.log " - for worker_num in ${WORKER_HOST_LIST[@]} - do - echo add $worker_num - sudo su -c " qconf -ah $worker_num && echo add worker node $worker_num >> ${CFG_PATH}/setcfg.log " - done - -elif [ $(echo $HOST_NAME |grep "^worker-") ] -then - sudo su - -s /bin/bash -c "sleep 2m && echo please wait && echo please wait >> ${CFG_PATH}/setcfg.log" - sudo su - -c "export DEBIAN_FRONTEND=noninteractive && apt-get update && \ - apt-get install -y gridengine-client gridengine-exec; apt-get autoremove -y && apt-get clean" - sudo su - -c "echo $MASTER_HOST > /var/lib/gridengine/default/common/act_qmaster" - sudo su - -c "/etc/init.d/gridengine-exec start && echo Start SGE for worker is finished >> ${CFG_PATH}/setcfg.log" - - sudo su - -s /bin/bash -c ". ${CFG_PATH}/gencfs.sh $WORKER_HOST_STRS $SLOTS" - sudo su - -c "qconf -Me /tmp/qconf-ae.txt && echo done for $HOST_NAME worker. >> ${CFG_PATH}/setcfg.log" - -else - echo "hostname doesn't match! should start with master or worker!" 1>&2 exit 1 -fi - -#sudo su - -s /bin/bash -c "echo sge start to finish >> ${CFG_PATH}/setcfg.log" diff --git a/docs/submarine-sdk/README.md b/docs/submarine-sdk/README.md deleted file mode 100644 index 207aadc..0000000 --- a/docs/submarine-sdk/README.md +++ /dev/null @@ -1,28 +0,0 @@ - - -# Submarine-SDK - -## Summary -- Support Python, Scala, R language for algorithm development - -- Support tracking/metrics APIs which allows developers -add tracking/metrics and view tracking/metrics from Submarine Workbench UI. - -### Python -- [pysubmarine](pysubmarine) - - - - diff --git a/docs/submarine-sdk/pysubmarine/development.md b/docs/submarine-sdk/pysubmarine/development.md deleted file mode 100644 index c7eaf94..0000000 --- a/docs/submarine-sdk/pysubmarine/development.md +++ /dev/null @@ -1,100 +0,0 @@ - - -## Python Development -This page provides general Python development guidelines and source build instructions -### Prerequisites -This is required for developing & testing changes, we recommend installing pysubmarine -in its own conda environment by running the following -```bash -conda create --name submarine-dev python=3.6 -conda activate submarine-dev - -# lint-requirements.txt and test-requirements.txt are in ./submarine-sdk/pysubmarine/github-actions -pip install -r lint-requirements.txt -pip install -r test-requirements.txt - -# Installs pysubmarine from current checkout -pip install ./submarine-sdk/pysubmarine -``` -### PySubmarine Docker -We also use docker to provide build environments for CI, development, -generate python sdk from swagger. -```bash -./run-pysubmarine-ci.sh -``` -The script does the following things: -- Start an interactive bash session -- Mount submarine directory to /workspace and set it as home -- Switch user to be the same user that calls the `run-pysubmarine-ci.sh` -### Coding Style -- Use [yapf](https://github.com/google/yapf) to format Python code -- yapf style is configured in `.style.yapf` file -- To autoformat code -```bash -./submarine-sdk/pysubmarine/github-actions/auto-format.sh -``` -- Verify linter pass before submitting a pull request by running: -```bash -./submarine-sdk/pysubmarine/github-actions/lint.sh -``` -### Unit Testing -We are using [pytest](https://docs.pytest.org/en/latest/) to develop our unit test suite. -After building the project (see below) you can run its unit tests like so: -```bash -cd submarine-sdk/pysubmarine -``` -- Run unit test -```shell script -pytest --cov=submarine -vs -m "not e2e" -``` -- Run integration test -```shell script -pytest --cov=submarine -vs -m "e2e" -``` -> Before run this command in local, you should make sure the submarine server is running. - -### Generate python SDK from swagger -We use [open-api generator](https://openapi-generator.tech/docs/installation/#jar) -to generate pysubmarine client API that used to communicate with submarine server. - -If change below files, please run `./dev-support/pysubmarine/gen-sdk.sh` -to generate latest version of SDK. -- [Bootstrap.java](https://github.com/apache/submarine/blob/master/submarine-server/server-core/src/main/java/org/apache/submarine/server/Bootstrap.java) -- [ExperimentRestApi.java](https://github.com/apache/submarine/blob/master/submarine-server/server-core/src/main/java/org/apache/submarine/server/rest/ExperimentRestApi.java) - -### Upload package to PyPi -For Apache Submarine committer and PMCs to do a new release. -1. Change the version from 0.x.x-SNAPSHOT to 0.x.x -in [setup.py](https://github.com/apache/submarine/blob/master/submarine-sdk/pysubmarine/setup.py) -2. Install Python packages -```bash -cd submarine-sdk/pysubmarine -pip install -r github-actions/pypi-requirements.txt -``` -3. Compiling Your Package - -It will create `build`, `dist`, and `project.egg.info` -in your local directory -```bash -python setup.py bdist_wheel -``` -4. Upload python package to TestPyPI for testing -```bash -python -m twine upload --repository testpypi dist/* -``` -5. Upload python package to PyPi -```bash -python -m twine upload --repository-url https://upload.pypi.org/legacy/ dist/* -``` diff --git a/docs/submarine-sdk/pysubmarine/tracking.md b/docs/submarine-sdk/pysubmarine/tracking.md deleted file mode 100644 index 0c019b0..0000000 --- a/docs/submarine-sdk/pysubmarine/tracking.md +++ /dev/null @@ -1,71 +0,0 @@ - - -# pysubmarine-tracking -It helps developers use submarine's internal data caching, -data exchange, and task tracking capabilities to more efficiently improve the -development and execution of machine learning productivity -- Allow data scientist to track distributed ML job -- Support store ML parameters and metrics in Submarine-server -- Support hdfs,S3 and mysql (Currently we only support mysql) - -## Quickstart -1. [Start mini-submarine](../../../dev-support/mini-submarine#run-mini-submarine-image) - -2. [Start Mysql server in mini-submarine](../../../dev-support/mini-submarine#run-workbench-server) - -3. Uncomment the log_param and log_metric in -[mnist_distributed.py](../../../dev-support/mini-submarine/submarine/mnist_distributed.py) - -4. Start Submarine job (e.g., run_submarine_mnist_tony.sh) - -## Functions -### `submarine.get_tracking_uri()` - -return the tracking URI. - -### `submarine.set_tracking_uri(URI)` - -set the tracking URI. You can also set the -SUBMARINE_TRACKING_URI environment variable to have Submarine find a URI from -there. The URI should be database connection string. - -**Parameters** - -- URI - Submarine record data to Mysql server. The database URL -is expected in the format ``+://:@:/``. -By default it's `mysql+pymysql://submarine:password@localhost:3306/submarine`. -More detail : [SQLAlchemy docs](https://docs.sqlalchemy.org/en/latest/core/engines.html#database-urls) - - - -### `submarine.log_metric(key, value, step=0)` - -logs a single key-value metric. The value must always be a number. - -**Parameters** -- key - Metric name (string). -- value - Metric value (float). -- step - A single integer step at which to log the specified Metrics, -by default it's 0. - -### `submarine.log_param(key, value)` - -logs a single key-value parameter. The key and value are both strings. - -**Parameters** -- key - Parameter name (string). -- value - Parameter value (string). diff --git a/docs/submarine-security/spark-security/README.md b/docs/submarine-security/spark-security/README.md deleted file mode 100644 index 33d905d..0000000 --- a/docs/submarine-security/spark-security/README.md +++ /dev/null @@ -1,134 +0,0 @@ - - -# Submarine Spark Security Plugin - -ACL Management for Apache Spark SQL with Apache Ranger, enabling: - -- Table/Column level authorization -- Row level filtering -- Data masking - - -Security is one of fundamental features for enterprise adoption. [Apache Ranger™](https://ranger.apache.org) offers many security plugins for many Hadoop ecosystem components, -such as HDFS, Hive, HBase, Solr and Sqoop2. However, [Apache Spark™](http://spark.apache.org) is not counted in yet. -When a secured HDFS cluster is used as a data warehouse accessed by various users and groups via different applications wrote by Spark and Hive, -it is very difficult to guarantee data management in a consistent way. Apache Spark users visit data warehouse only -with Storage based access controls offered by HDFS. This library enables Spark with SQL Standard Based Authorization. - -## Build - -Please refer to the online documentation - [Building submarine spark security plguin](build-submarine-spark-security-plugin.md) - -## Quick Start - -Three steps to integrate Apache Spark and Apache Ranger. - -### Installation - -Place the submarine-spark-security-<version>.jar into `$SPARK_HOME/jars`. - -### Configurations - -#### Settings for Apache Ranger - -Create `ranger-spark-security.xml` in `$SPARK_HOME/conf` and add the following configurations -for pointing to the right Apache Ranger admin server. - - -```xml - - - - - ranger.plugin.spark.policy.rest.url - ranger admin address like http://ranger-admin.org:6080 - - - - ranger.plugin.spark.service.name - a ranger hive service name - - - - ranger.plugin.spark.policy.cache.dir - ./a ranger hive service name/policycache - - - - ranger.plugin.spark.policy.pollIntervalMs - 5000 - - - - ranger.plugin.spark.policy.source.impl - org.apache.ranger.admin.client.RangerAdminRESTClient - - - -``` - -Create `ranger-spark-audit.xml` in `$SPARK_HOME/conf` and add the following configurations -to enable/disable auditing. - -```xml - - - - xasecure.audit.is.enabled - true - - - - xasecure.audit.destination.db - false - - - - xasecure.audit.destination.db.jdbc.driver - com.mysql.jdbc.Driver - - - - xasecure.audit.destination.db.jdbc.url - jdbc:mysql://10.171.161.78/ranger - - - - xasecure.audit.destination.db.password - rangeradmin - - - - xasecure.audit.destination.db.user - rangeradmin - - - - -``` - -#### Settings for Apache Spark - -You can configure `spark.sql.extensions` with the `*Extension` we provided. -For example, `spark.sql.extensions=org.apache.submarine.spark.security.api.RangerSparkAuthzExtension` - -Currently, you can set the following options to `spark.sql.extensions` to choose authorization w/ or w/o -extra functions. - -| option | authorization | row filtering | data masking | -|---|---|---|---| -|org.apache.submarine.spark.security.api.RangerSparkAuthzExtension| √ | × | × | -|org.apache.submarine.spark.security.api.RangerSparkSQLExtension| √ | √ | √ | diff --git a/docs/submarine-security/spark-security/build-submarine-spark-security-plugin.md b/docs/submarine-security/spark-security/build-submarine-spark-security-plugin.md deleted file mode 100644 index ff30112..0000000 --- a/docs/submarine-security/spark-security/build-submarine-spark-security-plugin.md +++ /dev/null @@ -1,30 +0,0 @@ - - -# Building Submarine Spark Security Plugin - -Submarine Spark Security Plugin is built using [Apache Maven](http://maven.apache.org). To build it, `cd` to the root direct of submarine project and run: - -```bash -mvn clean package -Dmaven.javadoc.skip=true -DskipTests -pl :submarine-spark-security -``` - -By default, Submarine Spark Security Plugin is built against Apache Spark 2.3.x and Apache Ranger 1.1.0, which may be incompatible with other Apache Spark or Apache Ranger releases. - -Currently, available profiles are: - -Spark: -Pspark-2.3, -Pspark-2.4, -Pspark-3.0 - -Ranger: -Pranger-1.0, -Pranger-1.1, -Pranger-1.2 -Pranger-2.0 diff --git a/docs/user-guide-home.md b/docs/user-guide-home.md deleted file mode 100644 index fc575d8..0000000 --- a/docs/user-guide-home.md +++ /dev/null @@ -1,29 +0,0 @@ - -# User Document of Submarine - -This is index of user-document of Submarine. - -## Build From Code - -Follow the guidee [Build From Code Guide](./development/BuildFromCode.md) to build source code / binary distribution of Submarine, and rebuild Docker images. - -## Use Submarine on YARN - -Please refer to [Submarine On YARN](userdocs/yarn/README.md) - -## Use Submarine on K8s - -Please refer to [Submarine On K8s](userdocs/k8s/README.md) diff --git a/docs/userdocs/k8s/README.md b/docs/userdocs/k8s/README.md deleted file mode 100644 index 63f5326..0000000 --- a/docs/userdocs/k8s/README.md +++ /dev/null @@ -1,67 +0,0 @@ - - -# Submarine on K8s -Submarine for K8s supports distributed TensorFlow and PyTorch. - -Submarine can run on K8s >= 1.14, supports features like GPU isolation. - -We have validated Submarine on the following versions: - -| K8s Version | Support? | -| ------------- |:-------------:| -| 1.13.x (or earlier) | X | -| 1.14.x | √ | -| 1.15.x | √ | -| 1.16.x | √ | -| 1.17.x | To be verified | -| 1.17.x | To be verified | - -## Install Submarine - -### Setup Kubernetes -Submarine can be deployed on any K8s environment if version matches. If you don't have a running K8s, you can set up a K8s using [Docker Desktop](https://www.docker.com/products/docker-desktop), [MiniKube](https://kubernetes.io/docs/tasks/tools/install-minikube/), or [kind, Kubernetes-in-Docker](https://kind.sigs.k8s.io/). - -From our experiences, Docker Desktop is an easier choice. - -### Install Submarine Use Helm Charts -After you have an up-and-running K8s, you can follow [Submarine Helm Charts Guide](helm.md) to deploy Submarine services on K8s cluster in minutes. - -## Using Jupyter notebooks in Submarine - -Please refer to [Notebook guide](notebook.md) if you want to use jupyter notebook in Submarine. - -## Model Training (Experiment) on K8s - -### Model Training with Submarine UI - -You can now submit Submarine model training on the UI, please refer to [Submit Experiment from Submarine UI](./run-tensorflow-experiment-ui.md) - -### Model Training With Submarine Python SDK - -You can also follow the guidance to run Submarine model training using Python SDK, please refer to [Submit Experiment using Python SDK](./run-experiment-python-sdk.md) - -### Model Training With Submarine REST API - -Alternatively, we support use REST API to submit, list, delete experiments (model training) - -- [Run model training using Tensorflow](run-tensorflow-experiment-rest.md) -- [Run model training using PyTorch](run-pytorch-experiment-rest.md) -- [Experiment API Reference](api/experiment.md) - diff --git a/docs/userdocs/k8s/api/environment.md b/docs/userdocs/k8s/api/environment.md deleted file mode 100644 index 1b4138d..0000000 --- a/docs/userdocs/k8s/api/environment.md +++ /dev/null @@ -1,227 +0,0 @@ - - -# Environment API Reference - -> Note: The Environment API is in the alpha stage which is subjected to incompatible changes in -> future releases. - -## Create Environment -`POST /api/v1/environment` - -**Example Request** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "name": "my-submarine-env", - "dockerImage" : "continuumio/anaconda3", - "kernelSpec" : { - "name" : "team_default_python_3.7", - "channels" : ["defaults"], - "dependencies" : - ["_ipyw_jlab_nb_ext_conf=0.1.0=py37_0", - "alabaster=0.7.12=py37_0", - "anaconda=2020.02=py37_0", - "anaconda-client=1.7.2=py37_0", - "anaconda-navigator=1.9.12=py37_0"] - } -} -' http://127.0.0.1:8080/api/v1/environment -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "environmentId": "environment_1586156073228_0001", - "environmentSpec": { - "name": "my-submarine-env", - "dockerImage" : "continuumio/anaconda3", - "kernelSpec" : { - "name" : "team_default_python_3.7", - "channels" : ["defaults"], - "dependencies" : - ["_ipyw_jlab_nb_ext_conf=0.1.0=py37_0", - "alabaster=0.7.12=py37_0", - "anaconda=2020.02=py37_0", - "anaconda-client=1.7.2=py37_0", - "anaconda-navigator=1.9.12=py37_0"] - } - } - } -} -``` - -### List environment -`GET /api/v1/environment` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/environment -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": [ - { - "environmentId": "environment_1586156073228_0001", - "environmentSpec": { - "name": "my-submarine-env", - "dockerImage" : "continuumio/anaconda3", - "kernelSpec" : { - "name" : "team_default_python_3.7", - "channels" : ["defaults"], - "dependencies" : - ["_ipyw_jlab_nb_ext_conf=0.1.0=py37_0", - "alabaster=0.7.12=py37_0", - "anaconda=2020.02=py37_0", - "anaconda-client=1.7.2=py37_0", - "anaconda-navigator=1.9.12=py37_0"] - } - } - }, - { - "environmentId": "environment_1586156073228_0002", - "environmentSpec": { - "name": "my-submarine-env-2", - "dockerImage" : "continuumio/miniconda", - "kernelSpec" : { - "name" : "team_miniconda_python_3.7", - "channels" : ["defaults"], - "dependencies" : - ["_ipyw_jlab_nb_ext_conf=0.1.0=py37_0"] - } - } - } - ] -} -``` - -### Get environment -`GET /api/v1/environment/{name}` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/environment/my-submarine-env -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "environmentId": "environment_1586156073228_0001", - "environmentSpec": { - "name": "my-submarine-env", - "dockerImage" : "continuumio/anaconda3", - "kernelSpec" : { - "name" : "team_default_python_3.7", - "channels" : ["defaults"], - "dependencies" : - ["_ipyw_jlab_nb_ext_conf=0.1.0=py37_0", - "alabaster=0.7.12=py37_0", - "anaconda=2020.02=py37_0", - "anaconda-client=1.7.2=py37_0", - "anaconda-navigator=1.9.12=py37_0"] - } - } - } -} -``` - -### Patch environment -`PATCH /api/v1/environment/{name}` - -**Example Request:** -```sh -curl -X PATCH -H "Content-Type: application/json" -d ' -{ - "name": "my-submarine-env", - "dockerImage" : "continuumio/anaconda3", - "kernelSpec" : { - "name" : "team_default_python_3.7_updated", - "channels" : ["defaults"], - "dependencies" : - ["_ipyw_jlab_nb_ext_conf=0.1.0=py37_0", - "alabaster=0.7.12=py37_0"] - } -} -' http://127.0.0.1:8080/api/v1/environment/my-submarine-env -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "success": true, - "result": { - "environmentId": "environment_1586156073228_0001", - "environmentSpec": { - "name": "my-submarine-env", - "dockerImage" : "continuumio/anaconda3", - "kernelSpec" : { - "name" : "team_default_python_3.7_updated", - "channels" : ["defaults"], - "dependencies" : - ["_ipyw_jlab_nb_ext_conf=0.1.0=py37_0", - "alabaster=0.7.12=py37_0"] - } - } - } -} -``` -> dockerImage, "name" (of kernelSpec), "channels", "dependencies" etc can be updated using this API. -"name" of EnvironmentSpec is not supported. - -### Delete environment -`GET /api/v1/environment/{name}` - -**Example Request:** -```sh -curl -X DELETE http://127.0.0.1:8080/api/v1/environment/my-submarine-env -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "environmentId": "environment_1586156073228_0001", - "environmentSpec": { - "name": "my-submarine-env", - "dockerImage" : "continuumio/anaconda3", - "kernelSpec" : { - "name" : "team_default_python_3.7_updated", - "channels" : ["defaults"], - "dependencies" : - ["_ipyw_jlab_nb_ext_conf=0.1.0=py37_0", - "alabaster=0.7.12=py37_0"] - } - } - } -} -``` \ No newline at end of file diff --git a/docs/userdocs/k8s/api/experiment-template.md b/docs/userdocs/k8s/api/experiment-template.md deleted file mode 100644 index 055adb1..0000000 --- a/docs/userdocs/k8s/api/experiment-template.md +++ /dev/null @@ -1,235 +0,0 @@ - - -# Experiment Template API Reference - -> Note: The Experiment API is in the alpha stage which is subjected to incompatible changes in -> future releases. - - -Developers can register a parameterized experiment as an experiment template, -For example, if the developer wants to change the following "--learning_rate=0.1" to parameters. -```json -"experimentSpec": { - "meta": { - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.1 --batch_size=150" - }, - "...": "..." -} -``` - -They can use two curly braces as placeholders, the template format will be as -```json -"experimentSpec": { - "meta": { - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate={{learning_rate}} --batch_size=150" - }, - "...": "..." -} -``` - -The template parameters format will be as -```json -{ - "name": "learning_rate", - "value": 0.1, - "required": true, - "description": "This is learning_rate of training." -} -``` -name: placeholder name -value; default value -required: Indicates whether the user must enter parameters, when required is true, value can be null -description: Introduction of this parameter - -Users can use existing experiment templates and adjust the default value to create experiments. -After the user submits the experiment template, the submarine server finds the corresponding template based on the name. And the template handler converts input parameters to an actual experiment, such as a distributed TF experiment. - -The "replicas", "cpu", "memory" of resources will be automatically parameterized, so developers do not need to add them. -For example, if there are "Ps" and "Worker" under spec, the following parameters will be automatically appended. -``` -spec.Ps.replicas -spec.Ps.resourceMap.cpu -spec.Ps.resourceMap.memory -spec.Worker.replicas -spec.Worker.resourceMap.cpu -spec.Worker.resourceMap.memory -``` - - -## Create experiment template -`POST /api/v1/template` - -**Example Request** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "name": "my-tf-mnist-template", - "author": "author", - "description": "This is a template to run tf-mnist", - "parameters": [{ - "name": "learning_rate", - "value": 0.1, - "required": true, - "description": "This is learning_rate of training." - }, - { - "name": "batch_size", - "value": 150, - "required": true, - "description": "This is batch_size of training." - }, - { - "name": "experiment_name", - "value": "tf-mnist1", - "required": true, - "description": "the name of experiment." - } - ], - "experimentSpec": { - "meta": { - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate={{learning_rate}} --batch_size={{batch_size}}", - "name": "{{experiment_name}}", - "envVars": { - "ENV1": "ENV1" - }, - "framework": "TensorFlow", - "namespace": "default" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - } - } -} -' http://127.0.0.1:8080/api/v1/template -``` - - -### List experiment template -`GET /api/v1/template` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/template -``` - -### Get experiment template -`GET /api/v1/template/{name}` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/template/my-tf-mnist-template -``` - - -### Patch template -`PATCH /api/v1/template/{name}` -```sh -curl -X PATCH -H "Content-Type: application/json" -d ' -{ - "name": "my-tf-mnist-template", - "author": "author-new", - "description": "This is a template to run tf-mnist", - "parameters": [{ - "name": "learning_rate", - "value": 0.1, - "required": true, - "description": "This is learning_rate of training." - }, - { - "name": "batch_size", - "value": 150, - "required": true, - "description": "This is batch_size of training." - }, - { - "name": "experiment_name", - "value": "tf-mnist1", - "required": true, - "description": "the name of experiment." - } - ], - "experimentSpec": { - "meta": { - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate={{learning_rate}} --batch_size={{batch_size}}", - "name": "{{experiment_name}}", - "envVars": { - "ENV1": "ENV1" - }, - "framework": "TensorFlow", - "namespace": "default" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - } - } -} -' http://127.0.0.1:8080/api/v1/template/my-tf-mnist-template -``` - -> "description", "parameters", "experimentSpec", "author" etc can be updated using this API. -"name" of experiment template is not supported. - - - -### Delete template -`GET /api/v1/template/{name}` - -**Example Request:** -```sh -curl -X DELETE http://127.0.0.1:8080/api/v1/template/my-tf-mnist-template -``` - - -### Use template to create a experiment -`POST /api/v1/experiment/{template_name}` - -**Example Request:** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "name": "tf-mnist", - "params": { - "learning_rate":"0.01", - "batch_size":"150", - "experiment_name":"newexperiment1" - } -} -' http://127.0.0.1:8080/api/v1/experiment/my-tf-mnist-template -``` diff --git a/docs/userdocs/k8s/api/experiment.md b/docs/userdocs/k8s/api/experiment.md deleted file mode 100644 index 703323e..0000000 --- a/docs/userdocs/k8s/api/experiment.md +++ /dev/null @@ -1,483 +0,0 @@ - - -# Experiment API Reference - -> Note: The Experiment API is in the alpha stage which is subjected to incompatible changes in -> future releases. - -## Create Experiment (Using Anonymous/Embedded Environment) -`POST /api/v1/experiment` - -**Example Request** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - } - } -} -' http://127.0.0.1:8080/api/v1/experiment -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "experimentId": "experiment_1586156073228_0001", - "name": "tf-mnist-json", - "uid": "28e39dcd-77d4-11ea-8dbb-0242ac110003", - "status": "Accepted", - "acceptedTime": "2020-06-13T22:59:29.000+08:00", - "spec": { - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - } - } - } - } -} -``` - -## Create Experiment (Using Pre-defined/Stored Environment) -`POST /api/v1/experiment` - -**Example Request** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "name": "my-submarine-env" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - } - } -} -' http://127.0.0.1:8080/api/v1/experiment -``` -Above example assume environment "my-submarine-env" already exists in Submarine. Please refer Environment API Reference doc to Create/Update/Delete/List Environment REST API's - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "experimentId": "experiment_1586156073228_0001", - "name": "tf-mnist-json", - "uid": "28e39dcd-77d4-11ea-8dbb-0242ac110003", - "status": "Accepted", - "acceptedTime": "2020-06-13T22:59:29.000+08:00", - "spec": { - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "name": "my-submarine-env" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - } - } - } - } -} -``` - -### List experiment -`GET /api/v1/experiment` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/experiment -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": [ - { - "experimentId": "experiment_1592057447228_0001", - "name": "tf-mnist-json", - "uid": "28e39dcd-77d4-11ea-8dbb-0242ac110003", - "status": "Accepted", - "acceptedTime": "2020-06-13T22:59:29.000+08:00", - "spec": { - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - } - } - } - }, - { - "experimentId": "experiment_1592057447228_0002", - "name": "mnist", - "uid": "38e39dcd-77d4-11ea-8dbb-0242ac110003", - "status": "Accepted", - "acceptedTime": "2020-06-13T22:19:29.000+08:00", - "spec": { - "meta": { - "name": "pytorch-mnist-json", - "namespace": "default", - "framework": "PyTorch", - "cmd": "python /var/mnist.py --backend gloo", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:pytorch-dist-mnist-1.0" - }, - "spec": { - "Master": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - } - } - } - ] -} -``` - -### Get experiment -`GET /api/v1/experiment/{id}` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/experiment/experiment_1592057447228_0001 -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "experimentId": "experiment_1592057447228_0001", - "name": "tf-mnist-json", - "uid": "28e39dcd-77d4-11ea-8dbb-0242ac110003", - "status": "Accepted", - "acceptedTime": "2020-06-13T22:59:29.000+08:00", - "spec": { - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - } - } - } - } -} -``` - -### Patch experiment -`PATCH /api/v1/experiment/{id}` - -**Example Request:** -```sh -curl -X PATCH -H "Content-Type: application/json" -d ' -{ - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 2, - "resources": "cpu=1,memory=512M" - } - } -} -' http://127.0.0.1:8080/api/v1/experiment/experiment_1592057447228_0001 -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "success": true, - "result": { - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 2, - "resources": "cpu=1,memory=512M" - } - } - } -} -``` - -### Delete experiment -`GET /api/v1/experiment/{id}` - -**Example Request:** -```sh -curl -X DELETE http://127.0.0.1:8080/api/v1/experiment/experiment_1592057447228_0001 -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "experimentId": "experiment_1586156073228_0001", - "name": "tf-mnist-json", - "uid": "28e39dcd-77d4-11ea-8dbb-0242ac110003", - "status": "Accepted", - "acceptedTime": "2020-06-13T22:59:29.000+08:00", - "spec": { - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=512M" - }, - "Worker": { - "replicas": 2, - "resources": "cpu=1,memory=512M" - } - } - } - } -} -``` - -### List experiment Log -`GET /api/v1/experiment/logs` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/experiment/logs -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "success": null, - "message": null, - "result": [ - { - "experimentId": "experiment_1589199154923_0001", - "logContent": [ - { - "podName": "mnist-worker-0", - "podLog": null - } - ] - }, - { - "experimentId": "experiment_1589199154923_0002", - "logContent": [ - { - "podName": "pytorch-dist-mnist-gloo-master-0", - "podLog": null - }, - { - "podName": "pytorch-dist-mnist-gloo-worker-0", - "podLog": null - } - ] - } - ], - "attributes": {} -} -``` - -### Get experiment Log -`GET /api/v1/experiment/logs/{id}` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/experiment/logs/experiment_1589199154923_0002 -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "success": null, - "message": null, - "result": { - "experimentId": "experiment_1589199154923_0002", - "logContent": [ - { - "podName": "pytorch-dist-mnist-gloo-master-0", - "podLog": "Using distributed PyTorch with gloo backend\nDownloading http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz\nDownloading http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz\nDownloading http://yann.lecun.com/exdb/mnist/t10k-images-idx3-ubyte.gz\nDownloading http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz\nProcessing...\nDone!\nTrain Epoch: 1 [0/60000 (0%)]\tloss=2.3000\nTrain Epoch: 1 [640/60000 (1%)]\tloss=2.2135\nTrain Epoch: 1 [1280/60000 (2%)]\tloss=2.1704\nTrain Epoch: 1 [1920/60000 (3%)]\tloss=2.0766\nTrain Epoch: 1 [2560/60000 (4%)]\tloss=1.8679\nTrain Epoch: 1 [3200/60000 (5%)]\tloss=1.4135\nTrain Epoch: 1 [3840/60000 (6%)]\tloss=1.0003\nTrain Epoch: 1 [4480/60000 (7%)]\tloss=0.7762\nTrain Epoch: 1 [5120/60000 (9%)]\tloss=0.4598\nTrain Epoch: 1 [5760/60000 (10%)]\tloss=0.4860\nTrain Epoch: 1 [6400/60000 (11%)]\tloss=0.4389\nTrain Epoch: 1 [7040/60000 (12%)]\tloss=0.4084\nTrain Epoch: 1 [7680/60000 (13%)]\tloss=0.4602\nTrain Epoch: 1 [8320/60000 (14%)]\tloss=0.4289\nTrain Epoch: 1 [8960/60000 (15%)]\tloss=0.3990\nTrain Epoch: 1 [9600/60000 (16%)]\tloss=0.3852\n" - }, - { - "podName": "pytorch-dist-mnist-gloo-worker-0", - "podLog": "Using distributed PyTorch with gloo backend\nDownloading http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz\nDownloading http://yann.lecun.com/exdb/mnist/train-labels-idx1-ubyte.gz\nDownloading http://yann.lecun.com/exdb/mnist/t10k-images-idx3-ubyte.gz\nDownloading http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz\nProcessing...\nDone!\nTrain Epoch: 1 [0/60000 (0%)]\tloss=2.3000\nTrain Epoch: 1 [640/60000 (1%)]\tloss=2.2135\nTrain Epoch: 1 [1280/60000 (2%)]\tloss=2.1704\nTrain Epoch: 1 [1920/60000 (3%)]\tloss=2.0766\nTrain Epoch: 1 [2560/60000 (4%)]\tloss=1.8679\nTrain Epoch: 1 [3200/60000 (5%)]\tloss=1.4135\nTrain Epoch: 1 [3840/60000 (6%)]\tloss=1.0003\nTrain Epoch: 1 [4480/60000 (7%)]\tloss=0.7762\nTrain Epoch: 1 [5120/60000 (9%)]\tloss=0.4598\nTrain Epoch: 1 [5760/60000 (10%)]\tloss=0.4860\nTrain Epoch: 1 [6400/60000 (11%)]\tloss=0.4389\nTrain Epoch: 1 [7040/60000 (12%)]\tloss=0.4084\nTrain Epoch: 1 [7680/60000 (13%)]\tloss=0.4602\nTrain Epoch: 1 [8320/60000 (14%)]\tloss=0.4289\nTrain Epoch: 1 [8960/60000 (15%)]\tloss=0.3990\nTrain Epoch: 1 [9600/60000 (16%)]\tloss=0.3852\n" - } - ] - }, - "attributes": {} -} -``` diff --git a/docs/userdocs/k8s/api/notebook.md b/docs/userdocs/k8s/api/notebook.md deleted file mode 100644 index ca40e48..0000000 --- a/docs/userdocs/k8s/api/notebook.md +++ /dev/null @@ -1,265 +0,0 @@ - - -# Notebook API Reference - -> Note: The Notebook API is in the alpha stage which is subjected to incompatible changes in future releases. - -## Create a notebook instance -`POST /api/v1/notebook` - -**Example Request** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "meta": { - "name": "test-nb", - "namespace": "default", - "ownerId": "e9ca23d68d884d4ebb19d07889727dae" - }, - "environment": { - "name": "notebook-env" - }, - "spec": { - "envVars": { - "TEST_ENV": "test" - }, - "resources": "cpu=1,memory=1.0Gi" - } -} -' http://127.0.0.1:8080/api/v1/notebook -``` - -**Example Response:** -```json -{ - "status":"OK", - "code":200, - "success":true, - "message":"Create a notebook instance", - "result":{ - "notebookId":"notebook_1597931805405_0001", - "name":"test-nb", - "uid":"5a94c01d-6a92-4222-bc66-c610c277546d", - "url":"/notebook/default/test-nb/", - "status":"Created", - "createdTime":"2020-08-20T21:58:27.000+08:00", - "deletedTime":null, - "spec":{ - "meta":{ - "name":"test-nb", - "namespace":"default", - "ownerId":"e9ca23d68d884d4ebb19d07889727dae" - }, - "environment":{ - "name":"notebook-env", - "dockerImage":"apache/submarine:jupyter-notebook-0.5.0", - "kernelSpec":{ - "name": "team_default_python_3.7", - "channels": [ - "defaults" - ], - "dependencies": [ - "" - ] - }, - "description":null, - "image":null - }, - "spec":{ - "envVars":{ - "TEST_ENV":"test" - }, - "resources":"cpu=1,memory=1.0Gi" - } - } - }, - "attributes":{} -} -``` - -## List notebook instances which belong to user -`GET /api/v1/notebook` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/notebook?id={user_id} -``` - -**Example Response:** -```json -{ - "status":"OK", - "code":200, - "success":true, - "message":"List all notebook instances", - "result":[ - { - "notebookId":"notebook_1597931805405_0001", - "name":"test-nb", - "uid":"5a94c01d-6a92-4222-bc66-c610c277546d", - "url":"/notebook/default/test-nb/", - "status":"Created", - "createdTime":"2020-08-20T21:58:27.000+08:00", - "deletedTime":null, - "spec":{ - "meta":{ - "name":"test-nb", - "namespace":"default", - "ownerId":"e9ca23d68d884d4ebb19d07889727dae" - }, - "environment":{ - "name":"notebook-env", - "dockerImage":"apache/submarine:jupyter-notebook-0.5.0", - "kernelSpec":{ - "name": "team_default_python_3.7", - "channels": [ - "defaults" - ], - "dependencies": [ - "" - ] - }, - "description":null, - "image":null - }, - "spec":{ - "envVars":{ - "TEST_ENV":"test" - }, - "resources":"cpu=1,memory=1.0Gi" - } - } - } - ], - "attributes":{} -} -``` - -## Get the notebook instance -`GET /api/v1/notebook/{id}` - -**Example Request:** -```sh -curl -X GET http://127.0.0.1:8080/api/v1/notebook/{id} -``` - -**Example Response:** -```json -{ - "status":"OK", - "code":200, - "success":true, - "message":"Get the notebook instance", - "result":{ - "notebookId":"notebook_1597931805405_0001", - "name":"test-nb", - "uid":"5a94c01d-6a92-4222-bc66-c610c277546d", - "url":"/notebook/default/test-nb/", - "status":"Created", - "createdTime":"2020-08-20T21:58:27.000+08:00", - "deletedTime":null, - "spec":{ - "meta":{ - "name":"test-nb", - "namespace":"default", - "ownerId":"e9ca23d68d884d4ebb19d07889727dae" - }, - "environment":{ - "name":"notebook-env", - "dockerImage":"apache/submarine:jupyter-notebook-0.5.0", - "kernelSpec":{ - "name": "team_default_python_3.7", - "channels": [ - "defaults" - ], - "dependencies": [ - "" - ] - }, - "description":null, - "image":null - }, - "spec":{ - "envVars":{ - "TEST_ENV":"test" - }, - "resources":"cpu=1,memory=1.0Gi" - } - } - }, - "attributes":{} -} -``` - -## Delete the notebook instance -`DELETE /api/v1/notebook/{id}` - -**Example Request:** -```sh -curl -X DELETE http://127.0.0.1:8080/api/v1/notebook/{id} -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "success": true, - "message": "Delete the notebook instance", - "result": { - "notebookId": "notebook_1597931805405_0001", - "name": "test-nb", - "uid": "5a94c01d-6a92-4222-bc66-c610c277546d", - "url": "/notebook/default/test-nb/", - "status": "Deleted", - "createdTime": "2020-08-22T14:03:19.000+08:00", - "deletedTime": "2020-08-22T14:46:28+0800", - "spec": { - "meta": { - "name": "test-nb", - "namespace": "default", - "ownerId":"e9ca23d68d884d4ebb19d07889727dae" - }, - "environment": { - "name": "notebook-env", - "dockerImage": "apache/submarine:jupyter-notebook-0.5.0", - "kernelSpec": { - "name": "team_default_python_3.7", - "channels": [ - "defaults" - ], - "dependencies": [ - "" - ] - }, - "description": null, - "image": null - }, - "spec": { - "envVars": { - "TEST_ENV": "test" - }, - "resources": "cpu=1,memory=1.0Gi" - } - } - }, - "attributes": {} -} -``` diff --git a/docs/userdocs/k8s/helm.md b/docs/userdocs/k8s/helm.md deleted file mode 100644 index 99d68e2..0000000 --- a/docs/userdocs/k8s/helm.md +++ /dev/null @@ -1,120 +0,0 @@ - - - -# Deploy Submarine On K8s - -## Deploy Submarine Using Helm Chart (Recommended) - -Submarine's Helm Chart will deploy Submarine Server, TF/PyTorch Operator, Notebook controller -and Traefik. We use the TF/PyTorch operator to run tf/pytorch job, the notebook controller to -manage jupyter notebook and Traefik as reverse-proxy. - - -### Install Helm - -Helm v3 is minimum requirement. -See here for installation: https://helm.sh/docs/intro/install/ - -### Install Submarine - -The Submarine helm charts is released with the source code for now. -Please go to `http://submarine.apache.org/download.html` to download - -- Install Helm charts from source code -```bash -cd /submarine -helm install submarine ./helm-charts/submarine -``` -This will install submarine in the "default" namespace. -The images are from Docker hub `apache/submarine`. See `./helm-charts/submarine/values.yaml` for more details - -If we'd like use a different namespace like "submarine" -```bash -kubectl create namespace submarine -helm install submarine ./helm-charts/submarine -n submarine -``` - -> Note that if you encounter below issue when installation: -```bash -Error: rendered manifests contain a resource that already exists. -Unable to continue with install: existing resource conflict: namespace: , name: podgroups.scheduling.incubator.k8s.io, existing_kind: apiextensions.k8s.io/v1beta1, Kind=CustomResourceDefinition, new_kind: apiextensions.k8s.io/v1beta1, Kind=CustomResourceDefinition -``` -It might be caused by the previous installed submarine charts. Fix it by running: -```bash -kubectl delete crd/tfjobs.kubeflow.org && kubectl delete crd/podgroups.scheduling.incubator.k8s.io && kubectl delete crd/pytorchjobs.kubeflow.org -``` - -- Verify installation - -Once you got it installed, check with below commands and you should see similar outputs: -```bash -kubectl get pods -``` - -```bash -NAME READY STATUS RESTARTS AGE -notebook-controller-deployment-5db8b6cbf7-k65jm 1/1 Running 0 5s -pytorch-operator-7ff5d96d59-gx7f5 1/1 Running 0 5s -submarine-database-8d95d74f7-ntvqp 1/1 Running 0 5s -submarine-server-b6cd4787b-7bvr7 1/1 Running 0 5s -submarine-traefik-9bb6f8577-66sx6 1/1 Running 0 5s -tf-job-operator-7844656dd-lfgmd 1/1 Running 0 5s -``` - -### Access to Submarine Server -Submarine server by default expose 8080 port within K8s cluster. After Submarine v0.5 -uses Traefik as reverse-proxy by default. If you don't want to -use Traefik, you can modify below value to ***false*** in `./helm-charts/submarine/values.yaml`. -```yaml -# Use Traefik by default -traefik: - enabled: true -``` - -To access the server from outside of the cluster, we use Traefik ingress controller and -NodePort for external access.\ -Please refer to `./helm-charts/submarine/charts/traefik/values.yaml` and [Traefik docs](https://docs.traefik.io/) -for more details if you want to customize the default value for Traefik. - -``` -# Use nodePort and Traefik ingress controller by default. -# To access the submarine server, open the following URL in your browser. -http://127.0.0.1:32080 -``` - -*Notice:* -If you use `kind` to run local Kubernetes cluster, -please refer to this [docs](https://kind.sigs.k8s.io/docs/user/configuration/#extra-port-mappings) -and set the configuration "extraPortMappings" when creating the k8s cluster. - -``` -kind: Cluster -apiVersion: kind.x-k8s.io/v1alpha4 -nodes: -- role: control-plane - extraPortMappings: - - containerPort: 32080 - hostPort: [the port you want to access] -``` - -### Uninstall Submarine -```bash -helm delete submarine -``` diff --git a/docs/userdocs/k8s/kind.md b/docs/userdocs/k8s/kind.md deleted file mode 100644 index cb472c4..0000000 --- a/docs/userdocs/k8s/kind.md +++ /dev/null @@ -1,61 +0,0 @@ - - -# Kind Guide - -## Create K8s cluster -We recommend using [`kind`](https://kind.sigs.k8s.io/) to setup a Kubernetes cluster on a local machine. - -Running the following command: -``` -kind create cluster --image kindest/node:v1.15.6 --name submarine -kubectl create namespace submarine -``` - -## Kubernetes Dashboard (optional) - -### Deploy -To deploy Dashboard, execute following command: -``` -kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml -``` - -### Create RBAC -Ensure to grant the cluster access permission of dashboard, run the following command: -``` -kubectl create serviceaccount dashboard-admin-sa -kubectl create clusterrolebinding dashboard-admin-sa --clusterrole=cluster-admin --serviceaccount=default:dashboard-admin-sa -``` - -### Get access token (optional) -If you want to use the token to login the dashboard, run the following command to get key: -``` -kubectl get secrets -# select the right dashboard-admin-sa-token to describe the secret -kubectl describe secret dashboard-admin-sa-token-6nhkx -``` - -### Start dashboard service -To start the dashboard service, we can run the following command: -``` -kubectl proxy -``` - -Now access Dashboard at: -> http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/ diff --git a/docs/userdocs/k8s/notebook.md b/docs/userdocs/k8s/notebook.md deleted file mode 100644 index 4c1d1f2..0000000 --- a/docs/userdocs/k8s/notebook.md +++ /dev/null @@ -1,101 +0,0 @@ - - -# Notebooks Guide - -This guide describes how to use Jupyter notebook in Submarine to launch -and manage Jupyter notebooks. - -## Working with notebooks - -We recommend using Web UI to manage notebooks. - -### Notebooks Web UI - -Notebooks can be started from the Web UI. You can click the “Notebook” tab in the \ -left-hand panel to manage your notebooks. - -#### - -To create a new notebook server, click “New Notebook”. You should see a form for entering \ -details of your new notebook server. - -- Notebook Name : Name of the notebook server. It should follow the rules below. - 1. Contain at most 63 characters. - 2. Contain only lowercase alphanumeric characters or '-'. - 3. Start with an alphabetic character. - 4. End with an alphanumeric character. -- Environment : It defines a set of libraries and docker image. -- CPU and Memory -- GPU (optional) -- EnvVar (optional) : Injects environment variables into the notebook. - -**If you’re not sure which environment you need, please choose the environment “notebook-env” \ -for the new notebook.** - -#### - -You should see your new notebook server. Click the name of your notebook server to connect to it. - -#### - -## Experiment with your notebook - -The environment “notebook-env” includes Submarine Python SDK which can talk to Submarine Server to \ -create experiments, as the example below: - -```python -from __future__ import print_function -import submarine -from submarine.experiment.models.environment_spec import EnvironmentSpec -from submarine.experiment.models.experiment_spec import ExperimentSpec -from submarine.experiment.models.experiment_task_spec import ExperimentTaskSpec -from submarine.experiment.models.experiment_meta import ExperimentMeta -from submarine.experiment.models.code_spec import CodeSpec - -# Create Submarine Client -submarine_client = submarine.ExperimentClient() - -# Define TensorFlow experiment spec -environment = EnvironmentSpec(image='apache/submarine:tf-dist-mnist-test-1.0') -experiment_meta = ExperimentMeta(name='mnist-dist', - namespace='default', - framework='Tensorflow', - cmd='python /var/tf_dist_mnist/dist_mnist.py --train_steps=100', - env_vars={'ENV1': 'ENV1'}) - -worker_spec = ExperimentTaskSpec(resources='cpu=1,memory=1024M', - replicas=1) -ps_spec = ExperimentTaskSpec(resources='cpu=1,memory=1024M', - replicas=1) -code_spec = CodeSpec(sync_mode='git', url='https://github.com/apache/submarine.git') - -experiment_spec = ExperimentSpec(meta=experiment_meta, - environment=environment, - code=code_spec, - spec={'Ps' : ps_spec,'Worker': worker_spec}) - -# Create experiment -experiment = submarine_client.create_experiment(experiment_spec=experiment_spec) - -``` - -You can create a new notebook, paste the above code and run it. Or, you can find the notebook `submarine_experiment_sdk.ipynb` inside the launched notebook session. You can open it, try it out. - -After experiment submitted to Submarine server, you can find the experiment jobs on the UI. diff --git a/docs/userdocs/k8s/run-experiment-python-sdk.md b/docs/userdocs/k8s/run-experiment-python-sdk.md deleted file mode 100644 index c28fdc6..0000000 --- a/docs/userdocs/k8s/run-experiment-python-sdk.md +++ /dev/null @@ -1,64 +0,0 @@ - - -Submarine Python SDK can runs on any machine and it will talk to Submarine Server via REST API. So you can install Submarine Python SDK on your laptop, a gateway machine, your favorite IDE (like PyCharm/Jupyter, etc.). - -#### Prepare Python Environment to run Submarine SDK - -First of all - -Submarine SDK requires Python3.7+. -It's better to use a new Python environment created by `Anoconda` or Python `virtualenv` to try this to avoid trouble to existing Python environment. -A sample Python virtual env can be setup like this: - -```bash -wget https://files.pythonhosted.org/packages/33/bc/fa0b5347139cd9564f0d44ebd2b147ac97c36b2403943dbee8a25fd74012/virtualenv-16.0.0.tar.gz -tar xf virtualenv-16.0.0.tar.gz - -# Make sure to install using Python 3 -python3 virtualenv-16.0.0/virtualenv.py venv -. venv/bin/activate -``` - -#### Install Submarine SDK - -**Install SDK from pypi.org (recommended)** - -Starting from 0.4.0, Submarine provides Python SDK. Please change it to a proper version needed. - -```bash -pip install submarine-sdk== -``` - -**Install SDK from source code** - -Please first clone code from github or go to `http://submarine.apache.org/download.html` to download released source code. - -```bash -git clone https://github.com/apache/submarine.git -git checkout -cd submarine/submarine-sdk/pysubmarine -pip install . -``` - -#### Run with Submarine Python SDK - -Assuming you've installed submarine on K8s and forward the service to localhost, now you can open a Python shell, Jupyter notebook or any tools with Submarine SDK installed. - -Follow [SDK experiment example](../../../submarine-sdk/pysubmarine/example/submarine_experiment_sdk.ipynb) to try the SDK. \ No newline at end of file diff --git a/docs/userdocs/k8s/run-experiment-template-rest.md b/docs/userdocs/k8s/run-experiment-template-rest.md deleted file mode 100644 index 183f760..0000000 --- a/docs/userdocs/k8s/run-experiment-template-rest.md +++ /dev/null @@ -1,54 +0,0 @@ - - -# Experiment Template REST API Reference - -## Experiment Template Spec -The experiment is represented in [JSON](https://www.json.org) or [YAML](https://yaml.org) format. - - -### Use existing experiment template to create a experiment -`POST /api/v1/environment/{name}` - -**Example Request:** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "name": "tf-mnist", - "params": { - "learning_rate":"0.01", - "batch_size":"150", - "experiment_name":"newexperiment1" - } -} -' http://127.0.0.1:8080/api/v1/experiment/my-tf-mnist-template -``` - -**Example Request:** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "params": { - "experiment_name":"new-pytorch-mnist" - } -} -' http://127.0.0.1:8080/api/v1/experiment/pytorch-mnist -``` - -Register experiment template and more info see [Experiment Template API Reference](api/experiment-template.md). diff --git a/docs/userdocs/k8s/run-pytorch-experiment-rest.md b/docs/userdocs/k8s/run-pytorch-experiment-rest.md deleted file mode 100644 index 3fcac79..0000000 --- a/docs/userdocs/k8s/run-pytorch-experiment-rest.md +++ /dev/null @@ -1,146 +0,0 @@ - - -# Run PyTorch Experiment Guide (REST) - -## Experiment Spec -The experiment is represented in [JSON](https://www.json.org) or [YAML](https://yaml.org) format. - -**YAML Format:** -```yaml -meta: - name: pytorch-mnist-yaml - namespace: default - framework: PyTorch - cmd: python /var/mnist.py --backend gloo - envVars: - ENV_1: ENV1 -environment: - image: apache/submarine:pytorch-dist-mnist-1.0 -spec: - Master: - replicas: 1 - resources: cpu=1,memory=1024M - Worker: - replicas: 1 - resources: cpu=1,memory=1024M -``` - -**JSON Format:** -```json -{ - "meta": { - "name": "pytorch-mnist-json", - "namespace": "default", - "framework": "PyTorch", - "cmd": "python /var/mnist.py --backend gloo", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:pytorch-dist-mnist-1.0" - }, - "spec": { - "Master": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - } -} - -``` - -## Create Experiment by REST API -`POST /api/v1/experiment` - -**Example Request** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "meta": { - "name": "pytorch-mnist-json", - "namespace": "default", - "framework": "PyTorch", - "cmd": "python /var/mnist.py --backend gloo", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:pytorch-dist-mnist-1.0" - }, - "spec": { - "Master": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - } -} -' http://127.0.0.1:8080/api/v1/experiment -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "experimentId": "experiment_1592057447228_0002", - "name": "mnist", - "uid": "38e39dcd-77d4-11ea-8dbb-0242ac110003", - "status": "Accepted", - "acceptedTime": "2020-06-13T22:19:29.000+08:00", - "spec": { - "meta": { - "name": "pytorch-mnist-json", - "namespace": "default", - "framework": "PyTorch", - "cmd": "python /var/mnist.py --backend gloo", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:pytorch-dist-mnist-1.0" - }, - "spec": { - "Master": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - } - } - } -} -``` - -More info see [Experiment API Reference](api/experiment.md). diff --git a/docs/userdocs/k8s/run-tensorflow-experiment-rest.md b/docs/userdocs/k8s/run-tensorflow-experiment-rest.md deleted file mode 100644 index 5145dc0..0000000 --- a/docs/userdocs/k8s/run-tensorflow-experiment-rest.md +++ /dev/null @@ -1,145 +0,0 @@ - - -# Run TensorFlow Experiment Guide (REST) - -## Experiment Spec -The experiment is represented in [JSON](https://www.json.org) or [YAML](https://yaml.org) format. - -**YAML Format:** -```yaml -meta: - name: "tf-mnist-yaml" - namespace: "default" - framework: "TensorFlow" - cmd: "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150" - envVars: - ENV_1: "ENV1" -environment: - image: "apache/submarine:tf-mnist-with-summaries-1.0" -spec: - Ps: - replicas: 1 - resources: "cpu=1,memory=1024M" - Worker: - replicas: 1 - resources: "cpu=1,memory=1024M" -``` - -**JSON Format:** -```json -{ - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - } -} -``` - -## Create Experiment by REST API -`POST /api/v1/experiment` - -**Example Request** -```sh -curl -X POST -H "Content-Type: application/json" -d ' -{ - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - } -} -' http://127.0.0.1:8080/api/v1/experiment -``` - -**Example Response:** -```json -{ - "status": "OK", - "code": 200, - "result": { - "experimentId": "experiment_1592057447228_0001", - "name": "tf-mnist-json", - "uid": "28e39dcd-77d4-11ea-8dbb-0242ac110003", - "status": "Accepted", - "acceptedTime": "2020-06-13T22:59:29.000+08:00", - "spec": { - "meta": { - "name": "tf-mnist-json", - "namespace": "default", - "framework": "TensorFlow", - "cmd": "python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150", - "envVars": { - "ENV_1": "ENV1" - } - }, - "environment": { - "image": "apache/submarine:tf-mnist-with-summaries-1.0" - }, - "spec": { - "Ps": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - }, - "Worker": { - "replicas": 1, - "resources": "cpu=1,memory=1024M" - } - } - } - } -} -``` - -More info see [Experiment API Reference](api/experiment.md). diff --git a/docs/userdocs/k8s/run-tensorflow-experiment-ui.md b/docs/userdocs/k8s/run-tensorflow-experiment-ui.md deleted file mode 100644 index f68a878..0000000 --- a/docs/userdocs/k8s/run-tensorflow-experiment-ui.md +++ /dev/null @@ -1,56 +0,0 @@ - - -# Run Tensorflow Experiment on Submarine UI - -## Steps to run Tensorflow Experiment - -- Click `+ New Experiment` on the "Experiment" page. - -- Click `Define your experiment` - -- Put a name to experiment, like "minst-example" - -- Command: `python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150` - -- Image you can put; `apache/submarine:tf-mnist-with-summaries-1.0` - -- Click `Next Step` - -- Choose `Distributed Tensorflow` - -- Click `Add new spec` twice to add two new specs (roles) - -- One is Worker, another one is PS, leave rest of the parameters unchanged - -- Click next step, you can review your parameters before submitting the job: - - - - It should look like below: - - | Name | mnist-example-111 | | | - | --------------------- | ------------------------------------------------------------ | ---- | ---- | - | Command | python /var/tf_mnist/mnist_with_summaries.py --log_dir=/train/log --learning_rate=0.01 --batch_size=150 | | | - | Image | apache/submarine:tf-mnist-with-summaries-1.0 | | | - | Environment Variables | | | | - | Ps | cpu=1,nvidia.com/gpu=0,memory=1024M | | | - | Worker | cpu=1,nvidia.com/gpu=0,memory=1024M | | | - -- Click `Submit` it will be submitted, you can see the new example running in the `Experiment` list, you can get logs, etc. directly from the UI \ No newline at end of file diff --git a/docs/userdocs/k8s/tensorflow.md b/docs/userdocs/k8s/tensorflow.md deleted file mode 100644 index e3cd2ba..0000000 --- a/docs/userdocs/k8s/tensorflow.md +++ /dev/null @@ -1,54 +0,0 @@ - - -# Deploy Tensorflow Operator on Kubernetes - -## TFJob -We support Tensorflow job on kubernetes by using the tf-operator as a runtime. For more info about tf-operator see [here](https://github.com/kubeflow/tf-operator). - -### Deploy tf-operator -> If you don't have the `submarine` namespace on your K8s cluster, you should create it first. Run command: `kubectl create namespace submarine` - -Running the follow commands: -``` -kubectl apply -f ./dev-support/k8s/tfjob/crd.yaml -kubectl kustomize ./dev-support/k8s/tfjob/operator | kubectl apply -f - -``` - -> Since K8s 1.14, Kubectl also supports the management of Kubernetes objects using a kustomization file. For more info see [kustomization](https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/) - -Default namespace is `submarine`, if you want to modify the namespace, please modify `./dev-support/k8s/tfjob/operator/kustomization.yaml`, such as modify `${NAMESPACE}` as below: -```yaml -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -namespace: ${NAMESPACE} -resources: -- cluster-role-binding.yaml -- cluster-role.yaml -- deployment.yaml -- service-account.yaml -- service.yaml -commonLabels: - kustomize.component: tf-job-operator -images: -- name: apache/submarine - newName: apache/submarine - newTag: tf_operator-v1.1.0-g92389064 -``` - diff --git a/docs/userdocs/yarn/Dockerfiles.md b/docs/userdocs/yarn/Dockerfiles.md deleted file mode 100644 index 1796d1e..0000000 --- a/docs/userdocs/yarn/Dockerfiles.md +++ /dev/null @@ -1,22 +0,0 @@ - - -# Write Dockerfiles for Submarine - -[How to write Dockerfile for Submarine TensorFlow jobs](WriteDockerfileTF.md) - -[How to write Dockerfile for Submarine PyTorch jobs](WriteDockerfilePT.md) - -[How to write Dockerfile for Submarine MXNet jobs](WriteDockerfileMX.md) diff --git a/docs/userdocs/yarn/README.md b/docs/userdocs/yarn/README.md deleted file mode 100644 index 9e1fd42..0000000 --- a/docs/userdocs/yarn/README.md +++ /dev/null @@ -1,37 +0,0 @@ - - -# Running Submarine on YARN - -Submarine for YARN supports TensorFlow, PyTorch and MXNet framework. (Which is leveraging [TonY](https://github.com/linkedin/TonY) created by Linkedin to run deep learning training jobs on YARN. - -Submarine also supports GPU-on-YARN and Docker-on-YARN feature. - -Submarine can run on Hadoop 2.7.3 or later version, if GPU-on-YARN or Docker-on-YARN feature is needed, newer Hadoop version is required, please refer to the next section about what Hadoop version to choose. - -## Hadoop version - -Must: - -- Apache Hadoop version newer than 2.7.3 - -Optional: - -- When you want to use GPU-on-YARN feature with Submarine, please make sure Hadoop is at least 2.10.0+ (or 3.1.0+), and follow [Enable GPU on YARN 2.10.0+](https://hadoop.apache.org/docs/r2.10.0/hadoop-yarn/hadoop-yarn-site/UsingGpus.html) to enable GPU-on-YARN feature. -- When you want to run training jobs with Docker container, please make sure Hadoop is at least 2.8.2, and follow [Enable Docker on YARN 2.8.2+](https://hadoop.apache.org/docs/r2.8.2/hadoop-yarn/hadoop-yarn-site/DockerContainers.html) to enable Docker-on-YARN feature. - -## Submarine YARN Runtime Guide - -[YARN Runtime Guide](YARNRuntimeGuide.md) talk about how to use Submarine to run jobs on YARN, with Docker / without Docker. diff --git a/docs/userdocs/yarn/TestAndTroubleshooting.md b/docs/userdocs/yarn/TestAndTroubleshooting.md deleted file mode 100644 index 2101825..0000000 --- a/docs/userdocs/yarn/TestAndTroubleshooting.md +++ /dev/null @@ -1,147 +0,0 @@ - - -#### Test with a tensorflow job - -Distributed-shell + GPU + cgroup - -```bash - ... \ - job run \ - --env DOCKER_JAVA_HOME=/opt/java \ - --env DOCKER_HADOOP_HDFS_HOME=/hadoop-current --name distributed-tf-gpu \ - --env YARN_CONTAINER_RUNTIME_DOCKER_CONTAINER_NETWORK=calico-network \ - --worker_docker_image tf-1.13.1-gpu:0.0.1 \ - --ps_docker_image tf-1.13.1-cpu:0.0.1 \ - --input_path hdfs://${dfs_name_service}/tmp/cifar-10-data \ - --checkpoint_path hdfs://${dfs_name_service}/user/hadoop/tf-distributed-checkpoint \ - --num_ps 0 \ - --ps_resources memory=4G,vcores=2,gpu=0 \ - --ps_launch_cmd "python /test/cifar10_estimator/cifar10_main.py --data-dir=hdfs://${dfs_name_service}/tmp/cifar-10-data --job-dir=hdfs://${dfs_name_service}/tmp/cifar-10-jobdir --num-gpus=0" \ - --worker_resources memory=4G,vcores=2,gpu=1 --verbose \ - --num_workers 1 \ - --worker_launch_cmd "python /test/cifar10_estimator/cifar10_main.py --data-dir=hdfs://${dfs_name_service}/tmp/cifar-10-data --job-dir=hdfs://${dfs_name_service}/tmp/cifar-10-jobdir --train-steps=500 --eval-batch-size=16 --train-batch-size=16 --sync --num-gpus=1" -``` - - - -## Issues: - -### Issue 1: Fail to start nodemanager after system reboot - -``` -2018-09-20 18:54:39,785 ERROR org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor: Failed to bootstrap configured resource subsystems! -org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources.ResourceHandlerException: Unexpected: Cannot create yarn cgroup Subsystem:cpu Mount points:/proc/mounts User:yarn Path:/sys/fs/cgroup/cpu,cpuacct/hadoop-yarn - at org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources.CGroupsHandlerImpl.initializePreMountedCGroupController(CGroupsHandlerImpl.java:425) - at org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources.CGroupsHandlerImpl.initializeCGroupController(CGroupsHandlerImpl.java:377) - at org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources.CGroupsCpuResourceHandlerImpl.bootstrap(CGroupsCpuResourceHandlerImpl.java:98) - at org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources.CGroupsCpuResourceHandlerImpl.bootstrap(CGroupsCpuResourceHandlerImpl.java:87) - at org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.resources.ResourceHandlerChain.bootstrap(ResourceHandlerChain.java:58) - at org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.init(LinuxContainerExecutor.java:320) - at org.apache.hadoop.yarn.server.nodemanager.NodeManager.serviceInit(NodeManager.java:389) - at org.apache.hadoop.service.AbstractService.init(AbstractService.java:164) - at org.apache.hadoop.yarn.server.nodemanager.NodeManager.initAndStartNodeManager(NodeManager.java:929) - at org.apache.hadoop.yarn.server.nodemanager.NodeManager.main(NodeManager.java:997) -2018-09-20 18:54:39,789 INFO org.apache.hadoop.service.AbstractService: Service NodeManager failed in state INITED -``` - -Solution: Grant user yarn the access to `/sys/fs/cgroup/cpu,cpuacct`, which is the subfolder of cgroup mount destination. - -``` -chown :yarn -R /sys/fs/cgroup/cpu,cpuacct -chmod g+rwx -R /sys/fs/cgroup/cpu,cpuacct -``` - -If GPUs are used,the access to cgroup devices folder is neede as well - -``` -chown :yarn -R /sys/fs/cgroup/devices -chmod g+rwx -R /sys/fs/cgroup/devices -``` - - -### Issue 2: container-executor permission denied - -``` -2018-09-21 09:36:26,102 WARN org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.privileged.PrivilegedOperationExecutor: IOException executing command: -java.io.IOException: Cannot run program "/etc/yarn/sbin/Linux-amd64-64/container-executor": error=13, Permission denied - at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048) - at org.apache.hadoop.util.Shell.runCommand(Shell.java:938) - at org.apache.hadoop.util.Shell.run(Shell.java:901) - at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:1213) -``` - -Solution: The permission of `/etc/yarn/sbin/Linux-amd64-64/container-executor` should be 6050 - -### Issue 3:How to get docker service log - -Solution: we can get docker log with the following command - -``` -journalctl -u docker -``` - -### Issue 4:docker can't remove containers with errors like `device or resource busy` - -```bash -$ docker rm 0bfafa146431 -Error response from daemon: Unable to remove filesystem for 0bfafa146431771f6024dcb9775ef47f170edb2f1852f71916ba44209ca6120a: remove /app/docker/containers/0bfafa146431771f6024dcb9775ef47f170edb2f152f71916ba44209ca6120a/shm: device or resource busy -``` - -Solution: to find which process leads to a `device or resource busy`, we can add a shell script, named `find-busy-mnt.sh` - -```bash -#!/usr/bin/env bash - -# A simple script to get information about mount points and pids and their -# mount namespaces. - -if [ $# -ne 1 ];then -echo "Usage: $0 " -exit 1 -fi - -ID=$1 - -MOUNTS=`find /proc/*/mounts | xargs grep $ID 2>/dev/null` - -[ -z "$MOUNTS" ] && echo "No pids found" && exit 0 - -printf "PID\tNAME\t\tMNTNS\n" -echo "$MOUNTS" | while read LINE; do -PID=`echo $LINE | cut -d ":" -f1 | cut -d "/" -f3` -# Ignore self and thread-self -if [ "$PID" == "self" ] || [ "$PID" == "thread-self" ]; then - continue -fi -NAME=`ps -q $PID -o comm=` -MNTNS=`readlink /proc/$PID/ns/mnt` -printf "%s\t%s\t\t%s\n" "$PID" "$NAME" "$MNTNS" -done -``` - -Kill the process by pid, which is found by the script - -```bash -$ chmod +x find-busy-mnt.sh -./find-busy-mnt.sh 0bfafa146431771f6024dcb9775ef47f170edb2f152f71916ba44209ca6120a -# PID NAME MNTNS -# 5007 ntpd mnt:[4026533598] -$ kill -9 5007 -``` - -### Issue 5:Yarn failed to start containers - -if the number of GPUs required by applications is larger than the number of GPUs in the cluster, there would be some containers can't be created. diff --git a/docs/userdocs/yarn/WriteDockerfileMX.md b/docs/userdocs/yarn/WriteDockerfileMX.md deleted file mode 100644 index dccf76a..0000000 --- a/docs/userdocs/yarn/WriteDockerfileMX.md +++ /dev/null @@ -1,88 +0,0 @@ - - -# Creating Docker Images for Running MXNet on YARN - -## How to create docker images to run MXNet on YARN - -Dockerfile to run MXNet on YARN needs two parts: - -**Base libraries which MXNet depends on** - -1) OS base image, for example ```ubuntu:18.04``` - -2) MXNet dependent libraries and packages. \ - For example ```python```, ```scipy```. For GPU support, you also need ```cuda```, ```cudnn```, etc. - -3) MXNet package. - -**Libraries to access HDFS** - -1) JDK - -2) Hadoop - -Here's an example of a base image (without GPU support) to install MXNet: -```shell -FROM ubuntu:18.04 - -# Install some development tools and packages -# MXNet 1.6 is going to be the last MXNet release to support Python2 -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata git \ - wget zip python3 python3-pip python3-distutils libgomp1 libopenblas-dev libopencv-dev - -# Install latest MXNet using pip (without GPU support) -RUN pip3 install mxnet - -RUN echo "Install python related packages" && \ - pip3 install --user graphviz==0.8.4 ipykernel jupyter matplotlib numpy pandas scipy sklearn && \ - python3 -m ipykernel.kernelspec -``` - -On top of above image, add files, install packages to access HDFS -```shell -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN apt-get update && apt-get install -y openjdk-8-jdk wget - -# Install hadoop -ENV HADOOP_VERSION="3.1.2" -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -# If you are in mainland China, you can use the following command. -# RUN wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz - -RUN tar zxf hadoop-${HADOOP_VERSION}.tar.gz -RUN ln -s hadoop-${HADOOP_VERSION} hadoop-current -RUN rm hadoop-${HADOOP_VERSION}.tar.gz -``` - -Build and push to your own docker registry: Use ```docker build ... ``` and ```docker push ...``` to finish this step. - -## Use examples to build your own MXNet docker images - -We provided some example Dockerfiles for you to build your own MXNet docker images. - -For latest MXNet - -- *docker/mxnet/base/ubuntu-18.04/Dockerfile.cpu.mxnet_latest*: Latest MXNet that supports CPU -- *docker/mxnet/base/ubuntu-18.04/Dockerfile.gpu.mxnet_latest*: Latest MXNet that supports GPU, which is prebuilt to CUDA10. - -# Build Docker images - -### Manually build Docker image: - -Under `docker/mxnet` directory, run `build-all.sh` to build all Docker images. This command will build the following Docker images: - -- `mxnet-latest-cpu-base:0.0.1` for base Docker image which includes Hadoop, MXNet -- `mxnet-latest-gpu-base:0.0.1` for base Docker image which includes Hadoop, MXNet, GPU base libraries. diff --git a/docs/userdocs/yarn/WriteDockerfilePT.md b/docs/userdocs/yarn/WriteDockerfilePT.md deleted file mode 100644 index 837ac72..0000000 --- a/docs/userdocs/yarn/WriteDockerfilePT.md +++ /dev/null @@ -1,112 +0,0 @@ - - -# Creating Docker Images for Running PyTorch on YARN - -## How to create docker images to run PyTorch on YARN - -Dockerfile to run PyTorch on YARN needs two parts: - -**Base libraries which PyTorch depends on** - -1) OS base image, for example ```ubuntu:18.04``` - -2) PyTorch dependent libraries and packages. For example ```python```, ```scipy```. For GPU support, you also need ```cuda```, ```cudnn```, etc. - -3) PyTorch package. - -**Libraries to access HDFS** - -1) JDK - -2) Hadoop - -Here's an example of a base image (with GPU support) to install PyTorch: -```shell -FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04 -ARG PYTHON_VERSION=3.6 -RUN apt-get update && apt-get install -y --no-install-recommends \ - build-essential \ - cmake \ - git \ - curl \ - vim \ - ca-certificates \ - libjpeg-dev \ - libpng-dev \ - wget &&\ - rm -rf /var/lib/apt/lists/* - - -RUN curl -o ~/miniconda.sh -O https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh && \ - chmod +x ~/miniconda.sh && \ - ~/miniconda.sh -b -p /opt/conda && \ - rm ~/miniconda.sh && \ - /opt/conda/bin/conda install -y python=$PYTHON_VERSION numpy pyyaml scipy ipython mkl mkl-include cython typing && \ - /opt/conda/bin/conda install -y -c pytorch magma-cuda100 && \ - /opt/conda/bin/conda clean -ya -ENV PATH /opt/conda/bin:$PATH -RUN pip install ninja -# This must be done before pip so that requirements.txt is available -WORKDIR /opt/pytorch -RUN git clone https://github.com/pytorch/pytorch.git -WORKDIR pytorch -RUN git submodule update --init -RUN TORCH_CUDA_ARCH_LIST="3.5 5.2 6.0 6.1 7.0+PTX" TORCH_NVCC_FLAGS="-Xfatbin -compress-all" \ - CMAKE_PREFIX_PATH="$(dirname $(which conda))/../" \ - pip install -v . - -WORKDIR /opt/pytorch -RUN git clone https://github.com/pytorch/vision.git && cd vision && pip install -v . - -``` - -On top of above image, add files, install packages to access HDFS -```shell -RUN apt-get update && apt-get install -y openjdk-8-jdk wget -# Install hadoop -ENV HADOOP_VERSION="2.9.2" -RUN wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -RUN tar zxf hadoop-${HADOOP_VERSION}.tar.gz -RUN ln -s hadoop-${HADOOP_VERSION} hadoop-current -RUN rm hadoop-${HADOOP_VERSION}.tar.gz -``` - -Build and push to your own docker registry: Use ```docker build ... ``` and ```docker push ...``` to finish this step. - -## Use examples to build your own PyTorch docker images - -We provided some example Dockerfiles for you to build your own PyTorch docker images. - -For latest PyTorch - -- *docker/pytorch/base/ubuntu-18.04/Dockerfile.gpu.pytorch_latest*: Latest Pytorch that supports GPU, which is prebuilt to CUDA10. -- *docker/pytorch/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.pytorch_latest*: Latest Pytorch that GPU, which is prebuilt to CUDA10, with models. - -## Build Docker images - -### Manually build Docker image: - -Under `docker/pytorch` directory, run `build-all.sh` to build all Docker images. This command will build the following Docker images: - -- `pytorch-latest-gpu-base:0.0.1` for base Docker image which includes Hadoop, PyTorch, GPU base libraries. -- `pytorch-latest-gpu:0.0.1` which includes cifar10 model as well - -### Use prebuilt images - -(No liability) -You can also use prebuilt images for convenience: - -- hadoopsubmarine/pytorch-latest-gpu-base:0.0.1 diff --git a/docs/userdocs/yarn/WriteDockerfileTF.md b/docs/userdocs/yarn/WriteDockerfileTF.md deleted file mode 100644 index e450f58..0000000 --- a/docs/userdocs/yarn/WriteDockerfileTF.md +++ /dev/null @@ -1,121 +0,0 @@ - - -## Creating Docker Images for Running Tensorflow on YARN - -### How to create docker images to run Tensorflow on YARN - -Dockerfile to run Tensorflow on YARN need two part: - -**Base libraries which Tensorflow depends on** - -1) OS base image, for example ```ubuntu:18.04``` - -2) Tensorflow depended libraries and packages. For example ```python```, ```scipy```. For GPU support, need ```cuda```, ```cudnn```, etc. - -3) Tensorflow package. - -**Libraries to access HDFS** - -1) JDK - -2) Hadoop - -Here's an example of a base image (w/o GPU support) to install Tensorflow: -```shell -FROM ubuntu:18.04 - -# Pick up some TF dependencies -RUN apt-get update && apt-get install -y --no-install-recommends \ - build-essential \ - curl \ - libfreetype6-dev \ - libpng-dev \ - libzmq3-dev \ - pkg-config \ - python \ - python-dev \ - rsync \ - software-properties-common \ - unzip \ - && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* - -RUN export DEBIAN_FRONTEND=noninteractive && apt-get update && apt-get install -yq krb5-user libpam-krb5 && apt-get clean - -RUN curl -O https://bootstrap.pypa.io/get-pip.py && \ - python get-pip.py && \ - rm get-pip.py - -RUN pip --no-cache-dir install \ - Pillow \ - h5py \ - ipykernel \ - jupyter \ - matplotlib \ - numpy \ - pandas \ - scipy \ - sklearn \ - && \ - python -m ipykernel.kernelspec - -RUN pip --no-cache-dir install \ - http://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.13.1-cp27-none-linux_x86_64.whl -``` - -On top of above image, add files, install packages to access HDFS -```shell -RUN apt-get update && apt-get install -y openjdk-8-jdk wget -# Install hadoop -ENV HADOOP_VERSION="2.9.2" -RUN wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -RUN tar zxf hadoop-${HADOOP_VERSION}.tar.gz -RUN ln -s hadoop-${HADOOP_VERSION} hadoop-current -RUN rm hadoop-${HADOOP_VERSION}.tar.gz -``` - -Build and push to your own docker registry: Use ```docker build ... ``` and ```docker push ...``` to finish this step. - -### Use examples to build your own Tensorflow docker images - -We provided following examples for you to build tensorflow docker images. - -For Tensorflow 1.13.1 (Precompiled to CUDA 10.x) - -- *docker/tensorflow/base/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1*: Tensorflow 1.13.1 supports CPU only. -- *docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1*: Tensorflow 1.13.1 supports CPU only, and included models -- *docker/tensorflow/base/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1*: Tensorflow 1.13.1 supports GPU, which is prebuilt to CUDA10. -- *docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1*: Tensorflow 1.13.1 supports GPU, which is prebuilt to CUDA10, with models. - -### Build Docker images - -#### Manually build Docker image: - -Under `docker/` directory, run `build-all.sh` to build Docker images. It will build following images: - -- `tf-1.13.1-gpu-base:0.0.1` for base Docker image which includes Hadoop, Tensorflow, GPU base libraries. -- `tf-1.13.1-gpu-base:0.0.1` for base Docker image which includes Hadoop. Tensorflow. -- `tf-1.13.1-gpu:0.0.1` which includes cifar10 model -- `tf-1.13.1-cpu:0.0.1` which inclues cifar10 model (cpu only). - -#### Use prebuilt images - -(No liability) -You can also use prebuilt images for convenience: - -- hadoopsubmarine/tf-1.13.1-gpu:0.0.1 -- hadoopsubmarine/tf-1.13.1-cpu:0.0.1 diff --git a/docs/userdocs/yarn/YARNRuntimeGuide.md b/docs/userdocs/yarn/YARNRuntimeGuide.md deleted file mode 100644 index ac93095..0000000 --- a/docs/userdocs/yarn/YARNRuntimeGuide.md +++ /dev/null @@ -1,310 +0,0 @@ - - -# YARN Runtime Quick Start Guide - -## Prerequisite - -Check out the [Readme](README.md) - -## Build your own Docker image - -When you follow the documents below, and want to build your own Docker image for Tensorflow/PyTorch/MXNet? Please check out [Build your Docker image](Dockerfiles.md) for more details. - -## Launch TensorFlow Application: - -### Without Docker - -You need: - -* Build a Python virtual environment with TensorFlow 1.13.1 installed -* A cluster with Hadoop 2.9 or above. - -### Building a Python virtual environment with TensorFlow - -TonY requires a Python virtual environment zip with TensorFlow and any needed Python libraries already installed. - -``` -wget https://files.pythonhosted.org/packages/33/bc/fa0b5347139cd9564f0d44ebd2b147ac97c36b2403943dbee8a25fd74012/virtualenv-16.0.0.tar.gz -tar xf virtualenv-16.0.0.tar.gz - -# Make sure to install using Python 3, as TensorFlow only provides Python 3 artifacts -python virtualenv-16.0.0/virtualenv.py venv -. venv/bin/activate -pip install tensorflow==1.13.1 -zip -r myvenv.zip venv -deactivate -``` - -The above commands will produced a myvenv.zip and it will be used in below example. There's no need to copy it to other nodes. And it is not needed when using Docker to run the job. - - -**Note:** If you require a version of TensorFlow and TensorBoard prior to `1.13.1`, take a look at [this](https://github.com/linkedin/TonY/issues/42) issue. - - -### Get the training examples - -Get mnist_distributed.py from https://github.com/linkedin/TonY/tree/master/tony-examples/mnist-tensorflow - - -``` -SUBMARINE_VERSION= -SUBMARINE_HADOOP_VERSION=3.1 -CLASSPATH=$(hadoop classpath --glob):path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar \ -java org.apache.submarine.client.cli.Cli job run --name tf-job-001 \ - --framework tensorflow \ - --verbose \ - --input_path "" \ - --num_workers 2 \ - --worker_resources memory=1G,vcores=1 \ - --num_ps 1 \ - --ps_resources memory=1G,vcores=1 \ - --worker_launch_cmd "myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode" \ - --ps_launch_cmd "myvenv.zip/venv/bin/python mnist_distributed.py --steps 2 --data_dir /tmp/data --working_dir /tmp/mode" \ - --insecure \ - --conf tony.containers.resources=path-to/myvenv.zip#archive,path-to/mnist_distributed.py,path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar -``` -You should then be able to see links and status of the jobs from command line: - -``` -2019-04-22 20:30:42,611 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: worker index: 0 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000003/pi status: RUNNING -2019-04-22 20:30:42,612 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: worker index: 1 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000004/pi status: RUNNING -2019-04-22 20:30:42,612 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: ps index: 0 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000002/pi status: RUNNING -2019-04-22 20:30:42,612 INFO tony.TonyClient: Logs for ps 0 at: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000002/pi -2019-04-22 20:30:42,612 INFO tony.TonyClient: Logs for worker 0 at: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000003/pi -2019-04-22 20:30:42,612 INFO tony.TonyClient: Logs for worker 1 at: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000004/pi -2019-04-22 20:30:44,625 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: ps index: 0 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000002/pi status: FINISHED -2019-04-22 20:30:44,625 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: worker index: 0 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000003/pi status: FINISHED -2019-04-22 20:30:44,626 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: worker index: 1 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000004/pi status: FINISHED - -``` - -### With Docker - -``` -SUBMARINE_VERSION= -SUBMARINE_HADOOP_VERSION=3.1 -CLASSPATH=$(hadoop classpath --glob):path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar \ -java org.apache.submarine.client.cli.Cli job run --name tf-job-001 \ - --framework tensorflow \ - --docker_image hadoopsubmarine/tf-1.8.0-cpu:0.0.1 \ - --input_path hdfs://pi-aw:9000/dataset/cifar-10-data \ - --worker_resources memory=3G,vcores=2 \ - --worker_launch_cmd "export CLASSPATH=\$(/hadoop-3.1.0/bin/hadoop classpath --glob) && cd /test/models/tutorials/image/cifar10_estimator && python cifar10_main.py --data-dir=%input_path% --job-dir=%checkpoint_path% --train-steps=10000 --eval-batch-size=16 --train-batch-size=16 --variable-strategy=CPU --num-gpus=0 --sync" \ - --env JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \ - --env DOCKER_HADOOP_HDFS_HOME=/hadoop-3.1.0 \ - --env DOCKER_JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \ - --env HADOOP_HOME=/hadoop-3.1.0 \ - --env HADOOP_YARN_HOME=/hadoop-3.1.0 \ - --env HADOOP_COMMON_HOME=/hadoop-3.1.0 \ - --env HADOOP_HDFS_HOME=/hadoop-3.1.0 \ - --env HADOOP_CONF_DIR=/hadoop-3.1.0/etc/hadoop \ - --conf tony.containers.resources=path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar -``` -#### Notes: -1) `DOCKER_JAVA_HOME` points to JAVA_HOME inside Docker image. - -2) `DOCKER_HADOOP_HDFS_HOME` points to HADOOP_HDFS_HOME inside Docker image. - -We removed TonY submodule after applying [SUBMARINE-371](https://issues.apache.org/jira/browse/SUBMARINE-371) and changed to use TonY dependency directly. - -After Submarine v0.2.0, there is a uber jar `submarine-all-${SUBMARINE_VERSION}-hadoop-${HADOOP_VERSION}.jar` released together with -the `submarine-core-${SUBMARINE_VERSION}.jar`, `submarine-yarnservice-runtime-${SUBMARINE_VERSION}.jar` and `submarine-tony-runtime-${SUBMARINE_VERSION}.jar`. -
      - -## Launch PyTorch Application: - -### Without Docker - -You need: - -* Build a Python virtual environment with PyTorch 0.4.0+ installed -* A cluster with Hadoop 2.9 or above. - -### Building a Python virtual environment with PyTorch - -TonY requires a Python virtual environment zip with PyTorch and any needed Python libraries already installed. - -``` -wget https://files.pythonhosted.org/packages/33/bc/fa0b5347139cd9564f0d44ebd2b147ac97c36b2403943dbee8a25fd74012/virtualenv-16.0.0.tar.gz -tar xf virtualenv-16.0.0.tar.gz - -python virtualenv-16.0.0/virtualenv.py venv -. venv/bin/activate -pip install pytorch==0.4.0 -zip -r myvenv.zip venv -deactivate -``` - - -### Get the training examples - -Get mnist_distributed.py from https://github.com/linkedin/TonY/tree/master/tony-examples/mnist-pytorch - - -``` -SUBMARINE_VERSION= -SUBMARINE_HADOOP_VERSION=3.1 -CLASSPATH=$(hadoop classpath --glob):path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar \ -java org.apache.submarine.client.cli.Cli job run --name PyTorch-job-001 \ - --framework pytorch - --num_workers 2 \ - --worker_resources memory=3G,vcores=2 \ - --num_ps 2 \ - --ps_resources memory=3G,vcores=2 \ - --worker_launch_cmd "myvenv.zip/venv/bin/python mnist_distributed.py" \ - --ps_launch_cmd "myvenv.zip/venv/bin/python mnist_distributed.py" \ - --insecure \ - --conf tony.containers.resources=path-to/myvenv.zip#archive,path-to/mnist_distributed.py, \ -path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar -``` -You should then be able to see links and status of the jobs from command line: - -``` -2019-04-22 20:30:42,611 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: worker index: 0 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000003/pi status: RUNNING -2019-04-22 20:30:42,612 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: worker index: 1 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000004/pi status: RUNNING -2019-04-22 20:30:42,612 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: ps index: 0 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000002/pi status: RUNNING -2019-04-22 20:30:42,612 INFO tony.TonyClient: Logs for ps 0 at: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000002/pi -2019-04-22 20:30:42,612 INFO tony.TonyClient: Logs for worker 0 at: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000003/pi -2019-04-22 20:30:42,612 INFO tony.TonyClient: Logs for worker 1 at: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000004/pi -2019-04-22 20:30:44,625 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: ps index: 0 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000002/pi status: FINISHED -2019-04-22 20:30:44,625 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: worker index: 0 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000003/pi status: FINISHED -2019-04-22 20:30:44,626 INFO tony.TonyClient: Tasks Status Updated: [TaskInfo] name: worker index: 1 url: http://pi-aw:8042/node/containerlogs/container_1555916523933_0030_01_000004/pi status: FINISHED - -``` - -### With Docker - -``` -SUBMARINE_VERSION= -SUBMARINE_HADOOP_VERSION=3.1 -CLASSPATH=$(hadoop classpath --glob):path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar \ -java org.apache.submarine.client.cli.Cli job run --name PyTorch-job-001 \ - --framework pytorch - --docker_image pytorch-latest-gpu:0.0.1 \ - --input_path "" \ - --num_workers 1 \ - --worker_resources memory=3G,vcores=2 \ - --worker_launch_cmd "cd /test/ && python cifar10_tutorial.py" \ - --env JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \ - --env DOCKER_HADOOP_HDFS_HOME=/hadoop-3.1.2 \ - --env DOCKER_JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \ - --env HADOOP_HOME=/hadoop-3.1.2 \ - --env HADOOP_YARN_HOME=/hadoop-3.1.2 \ - --env HADOOP_COMMON_HOME=/hadoop-3.1.2 \ - --env HADOOP_HDFS_HOME=/hadoop-3.1.2 \ - --env HADOOP_CONF_DIR=/hadoop-3.1.2/etc/hadoop \ - --conf tony.containers.resources=path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar -``` - -## Launch MXNet Application: - -### Without Docker - -You need: - -* Build a Python virtual environment with MXNet installed -* A cluster with Hadoop 2.9 or above. - -### Building a Python virtual environment with MXNet - -TonY requires a Python virtual environment zip with MXNet and any needed Python libraries already installed. - -``` -wget https://files.pythonhosted.org/packages/33/bc/fa0b5347139cd9564f0d44ebd2b147ac97c36b2403943dbee8a25fd74012/virtualenv-16.0.0.tar.gz -tar xf virtualenv-16.0.0.tar.gz - -python virtualenv-16.0.0/virtualenv.py venv -. venv/bin/activate -pip install mxnet==1.5.1 -zip -r myvenv.zip venv -deactivate -``` - - -### Get the training examples - -Get image_classification.py from this [link](https://github.com/apache/submarine/blob/master/dev-support/mini-submarine/submarine/image_classification.py) - - -``` -SUBMARINE_VERSION= -SUBMARINE_HADOOP_VERSION=3.1 -CLASSPATH=$(hadoop classpath --glob):path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar \ -java org.apache.submarine.client.cli.Cli job run --name MXNet-job-001 \ - --framework mxnet - --input_path "" \ - --num_workers 2 \ - --worker_resources memory=3G,vcores=2 \ - --worker_launch_cmd "myvenv.zip/venv/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --num_ps 2 \ - --ps_resources memory=3G,vcores=2 \ - --ps_launch_cmd "myvenv.zip/venv/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --num_schedulers=1 \ - --scheduler_resources memory=1G,vcores=1 \ - --scheduler_launch_cmd="myvenv.zip/venv/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --insecure \ - --conf tony.containers.resources=path-to/myvenv.zip#archive,path-to/image_classification.py, \ -path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar -``` -You should then be able to see links and status of the jobs from command line: - -``` -2020-04-16 20:23:43,834 INFO tony.TonyClient: Task status updated: [TaskInfo] name: server, index: 1, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000004/pi status: RUNNING -2020-04-16 20:23:43,834 INFO tony.TonyClient: Task status updated: [TaskInfo] name: server, index: 0, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000003/pi status: RUNNING -2020-04-16 20:23:43,834 INFO tony.TonyClient: Task status updated: [TaskInfo] name: worker, index: 1, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000006/pi status: RUNNING -2020-04-16 20:23:43,834 INFO tony.TonyClient: Task status updated: [TaskInfo] name: worker, index: 0, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000005/pi status: RUNNING -2020-04-16 20:23:43,834 INFO tony.TonyClient: Task status updated: [TaskInfo] name: scheduler, index: 0, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000002/pi status: RUNNING -2020-04-16 20:23:43,839 INFO tony.TonyClient: Logs for scheduler 0 at: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000002/pi -2020-04-16 20:23:43,839 INFO tony.TonyClient: Logs for server 0 at: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000003/pi -2020-04-16 20:23:43,840 INFO tony.TonyClient: Logs for server 1 at: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000004/pi -2020-04-16 20:23:43,840 INFO tony.TonyClient: Logs for worker 0 at: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000005/pi -2020-04-16 20:23:43,840 INFO tony.TonyClient: Logs for worker 1 at: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000006/pi -2020-04-16 21:02:09,723 INFO tony.TonyClient: Task status updated: [TaskInfo] name: scheduler, index: 0, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000002/pi status: SUCCEEDED -2020-04-16 21:02:09,736 INFO tony.TonyClient: Task status updated: [TaskInfo] name: worker, index: 0, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000005/pi status: SUCCEEDED -2020-04-16 21:02:09,737 INFO tony.TonyClient: Task status updated: [TaskInfo] name: server, index: 1, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000004/pi status: SUCCEEDED -2020-04-16 21:02:09,737 INFO tony.TonyClient: Task status updated: [TaskInfo] name: worker, index: 1, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000006/pi status: SUCCEEDED -2020-04-16 21:02:09,737 INFO tony.TonyClient: Task status updated: [TaskInfo] name: server, index: 0, url: http://pi-aw:8042/node/containerlogs/container_1587037749540_0005_01_000003/pi status: SUCCEEDED -``` - -### With Docker -You could refer to this [sample Dockerfile](project/github/submarine/docs/userdocs/yarn/docker/mxnet/cifar10/Dockerfile.cifar10.mx_1.5.1) for building your own Docker image. -``` -SUBMARINE_VERSION= -SUBMARINE_HADOOP_VERSION=3.1 -CLASSPATH=$(hadoop classpath --glob):path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar \ -java org.apache.submarine.client.cli.Cli job run --name MXNet-job-001 \ - --framework mxnet - --docker_image \ - --input_path "" \ - --num_schedulers 1 \ - --scheduler_resources memory=1G,vcores=1 \ - --scheduler_launch_cmd "/usr/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --num_workers 2 \ - --worker_resources memory=2G,vcores=1 \ - --worker_launch_cmd "/usr/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --num_ps 2 \ - --ps_resources memory=2G,vcores=1 \ - --ps_launch_cmd "/usr/bin/python image_classification.py --dataset cifar10 --model vgg11 --epochs 1 --kvstore dist_sync" \ - --verbose \ - --insecure \ - --conf tony.containers.resources=path-to/image_classification.py,path-to/submarine-all-${SUBMARINE_VERSION}-hadoop-${SUBMARINE_HADOOP_VERSION}.jar -``` - -## Use YARN Service to run Submarine: Deprecated - -Historically, Submarine supports to use [YARN Service](https://hadoop.apache.org/docs/r3.1.0/hadoop-yarn/hadoop-yarn-site/yarn-service/Overview.html) to submit deep learning jobs. Now we stop supporting it because YARN service is not actively developed by community, and extra dependencies such as RegistryDNS/ATS-v2 causes lots of issues for setup. - -As of now, you can still use YARN service to run Submarine, but code will be removed in the future release. We will only support use TonY when use Submarine on YARN. diff --git a/docs/userdocs/yarn/docker/mxnet/base/ubuntu-18.04/Dockerfile.cpu.mx_latest b/docs/userdocs/yarn/docker/mxnet/base/ubuntu-18.04/Dockerfile.cpu.mx_latest deleted file mode 100644 index d1f062d..0000000 --- a/docs/userdocs/yarn/docker/mxnet/base/ubuntu-18.04/Dockerfile.cpu.mx_latest +++ /dev/null @@ -1,49 +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. - -FROM ubuntu:18.04 - -# Install some development tools and packages -# MXNet 1.6 is going to be the last MXNet release to support Python2 -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata git \ - wget zip python3 python3-pip python3-distutils libgomp1 libopenblas-dev libopencv-dev - -# Install latest MXNet using pip -RUN pip3 install mxnet - -# Install JDK -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN echo "$LOG_TAG Install java8" && \ - apt-get update && \ - apt-get install -y --no-install-recommends openjdk-8-jdk && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -# Install Hadoop -WORKDIR / -RUN echo "Install Hadoop 3.1.2" -ENV HADOOP_VERSION="3.1.2" -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -RUN tar zxf hadoop-${HADOOP_VERSION}.tar.gz -RUN ln -s hadoop-${HADOOP_VERSION} hadoop-current -RUN rm hadoop-${HADOOP_VERSION}.tar.gz - -RUN echo "Install python related packages" && \ - pip3 install --user graphviz==0.8.4 ipykernel jupyter matplotlib numpy pandas scipy sklearn && \ - python3 -m ipykernel.kernelspec - -# Set the locale to fix bash warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) -RUN apt-get update && apt-get install -y --no-install-recommends locales && \ - apt-get clean && rm -rf /var/lib/apt/lists/* -RUN locale-gen en_US.UTF-8 diff --git a/docs/userdocs/yarn/docker/mxnet/base/ubuntu-18.04/Dockerfile.gpu.mx_latest b/docs/userdocs/yarn/docker/mxnet/base/ubuntu-18.04/Dockerfile.gpu.mx_latest deleted file mode 100644 index ecfc752..0000000 --- a/docs/userdocs/yarn/docker/mxnet/base/ubuntu-18.04/Dockerfile.gpu.mx_latest +++ /dev/null @@ -1,49 +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. - -FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04 - -# Install some development tools and packages -# MXNet 1.6 is going to be the last MXNet release to support Python2 -RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata git \ - wget zip python3 python3-pip python3-distutils libgomp1 libopenblas-dev libopencv-dev - -# Install latest MXNet with CUDA-10.0 using pip -RUN pip3 install mxnet-cu100 - -# Install JDK -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN echo "$LOG_TAG Install java8" && \ - apt-get update && \ - apt-get install -y --no-install-recommends openjdk-8-jdk && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -# Install Hadoop -WORKDIR / -RUN echo "Install Hadoop 3.1.2" -ENV HADOOP_VERSION="3.1.2" -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -RUN tar zxf hadoop-${HADOOP_VERSION}.tar.gz -RUN ln -s hadoop-${HADOOP_VERSION} hadoop-current -RUN rm hadoop-${HADOOP_VERSION}.tar.gz - -RUN echo "Install python related packages" && \ - pip3 install --user graphviz==0.8.4 ipykernel jupyter matplotlib numpy pandas scipy sklearn && \ - python3 -m ipykernel.kernelspec - -# Set the locale to fix bash warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) -RUN apt-get update && apt-get install -y --no-install-recommends locales && \ - apt-get clean && rm -rf /var/lib/apt/lists/* -RUN locale-gen en_US.UTF-8 diff --git a/docs/userdocs/yarn/docker/mxnet/build-all.sh b/docs/userdocs/yarn/docker/mxnet/build-all.sh deleted file mode 100755 index 5aab922..0000000 --- a/docs/userdocs/yarn/docker/mxnet/build-all.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -# 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. - -echo "Building base images" - -set -euo pipefail - -cd base/ubuntu-18.04 - -docker build . -f Dockerfile.cpu.mx_latest -t mxnet-latest-cpu-base:0.0.1 -docker build . -f Dockerfile.gpu.mx_latest -t mxnet-latest-gpu-base:0.0.1 -echo "Finished building base images" diff --git a/docs/userdocs/yarn/docker/mxnet/cifar10/Dockerfile.cifar10.mx_1.5.1 b/docs/userdocs/yarn/docker/mxnet/cifar10/Dockerfile.cifar10.mx_1.5.1 deleted file mode 100644 index 313b0f8..0000000 --- a/docs/userdocs/yarn/docker/mxnet/cifar10/Dockerfile.cifar10.mx_1.5.1 +++ /dev/null @@ -1,62 +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. - -FROM ubuntu:18.04 - -RUN apt-get update && apt-get install -y git wget zip python3 python3-pip \ - python3-distutils openjdk-8-jdk libgomp1 apt-transport-https ca-certificates curl \ - gnupg-agent software-properties-common - -RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - -RUN add-apt-repository \ - "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ - $(lsb_release -cs) \ - stable" - -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN ln -s /usr/bin/python3 /usr/bin/python - -# Install MXNet -RUN pip3 install "mxnet==1.5.1" - -# Install hadoop 3.1.0+ supported YARN service -ENV HADOOP_VERSION="3.1.2" -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -# If you are in mainland China, you can use the following command. -# RUN wget http://mirrors.shu.edu.cn/apache/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz - -RUN tar -xvf hadoop-${HADOOP_VERSION}.tar.gz -C /opt/ -RUN rm hadoop-${HADOOP_VERSION}.tar.gz - -# Copy the $HADOOP_CONF_DIR folder as "hadoop" folder in the same dir as dockerfile . -# ├── Dockerfile.cifar10_mx_1.5.1 -# └── hadoop -# ├── capacity-scheduler.xml -# ├── configuration.xsl -# ... -COPY hadoop /opt/hadoop-$HADOOP_VERSION/etc/hadoop - -# Config Hadoop env -ENV HADOOP_HOME=/opt/hadoop-$HADOOP_VERSION/ -ENV HADOOP_YARN_HOME=/opt/hadoop-$HADOOP_VERSION/ -ENV HADOOP_HDFS_HOME=/opt/hadoop-$HADOOP_VERSION/ -ENV HADOOP_CONF_DIR=/opt/hadoop-$HADOOP_VERSION/etc/hadoop -ENV HADOOP_COMMON_HOME=/opt/hadoop-$HADOOP_VERSION -ENV HADOOP_MAPRED_HOME=/opt/hadoop-$HADOOP_VERSION - -# Create a user, make sure the user groups are the same as your host -# and the container user's UID is same as your host's. -RUN groupadd -g 5000 hadoop -RUN useradd -u 1000 -g hadoop pi diff --git a/docs/userdocs/yarn/docker/pytorch/base/ubuntu-18.04/Dockerfile.gpu.pytorch_latest b/docs/userdocs/yarn/docker/pytorch/base/ubuntu-18.04/Dockerfile.gpu.pytorch_latest deleted file mode 100644 index 8404b42..0000000 --- a/docs/userdocs/yarn/docker/pytorch/base/ubuntu-18.04/Dockerfile.gpu.pytorch_latest +++ /dev/null @@ -1,77 +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. - -FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04 -ARG PYTHON_VERSION=3.6 -RUN apt-get update && apt-get install -y --no-install-recommends \ - build-essential \ - cmake \ - git \ - curl \ - vim \ - ca-certificates \ - libjpeg-dev \ - libpng-dev \ - wget &&\ - rm -rf /var/lib/apt/lists/* - - -RUN curl -o ~/miniconda.sh -O https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh && \ - chmod +x ~/miniconda.sh && \ - ~/miniconda.sh -b -p /opt/conda && \ - rm ~/miniconda.sh && \ - /opt/conda/bin/conda install -y python=$PYTHON_VERSION numpy pyyaml scipy ipython mkl mkl-include cython typing && \ - /opt/conda/bin/conda install -y -c pytorch magma-cuda100 && \ - /opt/conda/bin/conda clean -ya -ENV PATH /opt/conda/bin:$PATH -RUN pip install ninja -# This must be done before pip so that requirements.txt is available -WORKDIR /opt/pytorch -RUN git clone https://github.com/pytorch/pytorch.git -WORKDIR pytorch -RUN git submodule update --init -RUN TORCH_CUDA_ARCH_LIST="3.5 5.2 6.0 6.1 7.0+PTX" TORCH_NVCC_FLAGS="-Xfatbin -compress-all" \ - CMAKE_PREFIX_PATH="$(dirname $(which conda))/../" \ - pip install -v . - -WORKDIR /opt/pytorch -RUN git clone https://github.com/pytorch/vision.git && cd vision && pip install -v . - -WORKDIR / -# Install Hadoop -ENV HADOOP_VERSION="3.1.2" -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -RUN tar zxf hadoop-${HADOOP_VERSION}.tar.gz -RUN ln -s hadoop-${HADOOP_VERSION} hadoop-current -RUN rm hadoop-${HADOOP_VERSION}.tar.gz - -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN echo "$LOG_TAG Install java8" && \ - apt-get update && \ - apt-get install -y --no-install-recommends openjdk-8-jdk && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -RUN echo "Install python related packages" && \ - pip --no-cache-dir install Pillow h5py ipykernel jupyter matplotlib numpy pandas scipy sklearn && \ - python -m ipykernel.kernelspec - -# Set the locale to fix bash warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) -RUN apt-get update && apt-get install -y --no-install-recommends locales && \ - apt-get clean && rm -rf /var/lib/apt/lists/* -RUN locale-gen en_US.UTF-8 - - -WORKDIR /workspace -RUN chmod -R a+w /workspace \ No newline at end of file diff --git a/docs/userdocs/yarn/docker/pytorch/build-all.sh b/docs/userdocs/yarn/docker/pytorch/build-all.sh deleted file mode 100755 index f0f795c..0000000 --- a/docs/userdocs/yarn/docker/pytorch/build-all.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/env bash - -# 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. - -echo "Building base images" - -set -euo pipefail - -cd base/ubuntu-18.04 - -docker build . -f Dockerfile.gpu.pytorch_latest -t pytorch-latest-gpu-base:0.0.1 - -echo "Finished building base images" - -cd ../../with-cifar10-models/ubuntu-18.04 - -docker build . -f Dockerfile.gpu.pytorch_latest -t pytorch-latest-gpu:0.0.1 diff --git a/docs/userdocs/yarn/docker/pytorch/with-cifar10-models/cifar10_tutorial.py b/docs/userdocs/yarn/docker/pytorch/with-cifar10-models/cifar10_tutorial.py deleted file mode 100644 index 02824ec..0000000 --- a/docs/userdocs/yarn/docker/pytorch/with-cifar10-models/cifar10_tutorial.py +++ /dev/null @@ -1,354 +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. -# - -# -*- coding: utf-8 -*- -""" -Training a Classifier -===================== - -This is it. You have seen how to define neural networks, compute loss and make -updates to the weights of the network. - -Now you might be thinking, - -What about data? ----------------- - -Generally, when you have to deal with image, text, audio or video data, -you can use standard python packages that load data into a numpy array. -Then you can convert this array into a ``torch.*Tensor``. - -- For images, packages such as Pillow, OpenCV are useful -- For audio, packages such as scipy and librosa -- For text, either raw Python or Cython based loading, or NLTK and - SpaCy are useful - -Specifically for vision, we have created a package called -``torchvision``, that has data loaders for common datasets such as -Imagenet, CIFAR10, MNIST, etc. and data transformers for images, viz., -``torchvision.datasets`` and ``torch.utils.data.DataLoader``. - -This provides a huge convenience and avoids writing boilerplate code. - -For this tutorial, we will use the CIFAR10 dataset. -It has the classes: ‘airplane’, ‘automobile’, ‘bird’, ‘cat’, ‘deer’, -‘dog’, ‘frog’, ‘horse’, ‘ship’, ‘truck’. The images in CIFAR-10 are of -size 3x32x32, i.e. 3-channel color images of 32x32 pixels in size. - -.. figure:: /_static/img/cifar10.png - :alt: cifar10 - - cifar10 - - -Training an image classifier ----------------------------- - -We will do the following steps in order: - -1. Load and normalizing the CIFAR10 training and test datasets using - ``torchvision`` -2. Define a Convolutional Neural Network -3. Define a loss function -4. Train the network on the training data -5. Test the network on the test data - -1. Loading and normalizing CIFAR10 -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Using ``torchvision``, it’s extremely easy to load CIFAR10. -""" -import torch -import torchvision -import torchvision.transforms as transforms - -######################################################################## -# The output of torchvision datasets are PILImage images of range [0, 1]. -# We transform them to Tensors of normalized range [-1, 1]. - -transform = transforms.Compose( - [transforms.ToTensor(), - transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5))]) - -trainset = torchvision.datasets.CIFAR10(root='./data', train=True, - download=True, transform=transform) -trainloader = torch.utils.data.DataLoader(trainset, batch_size=4, - shuffle=True, num_workers=2) - -testset = torchvision.datasets.CIFAR10(root='./data', train=False, - download=True, transform=transform) -testloader = torch.utils.data.DataLoader(testset, batch_size=4, - shuffle=False, num_workers=2) - -classes = ('plane', 'car', 'bird', 'cat', - 'deer', 'dog', 'frog', 'horse', 'ship', 'truck') - -######################################################################## -# Let us show some of the training images, for fun. - -import matplotlib.pyplot as plt -import numpy as np - - -# functions to show an image - - -def imshow(img): - img = img / 2 + 0.5 # unnormalize - npimg = img.numpy() - plt.imshow(np.transpose(npimg, (1, 2, 0))) - plt.show() - - -# get some random training images -dataiter = iter(trainloader) -images, labels = dataiter.next() - -# show images -imshow(torchvision.utils.make_grid(images)) -# print labels -print(' '.join('%5s' % classes[labels[j]] for j in range(4))) - -######################################################################## -# 2. Define a Convolutional Neural Network -# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -# Copy the neural network from the Neural Networks section before and modify it to -# take 3-channel images (instead of 1-channel images as it was defined). - -import torch.nn as nn -import torch.nn.functional as F - - -class Net(nn.Module): - def __init__(self): - super(Net, self).__init__() - self.conv1 = nn.Conv2d(3, 6, 5) - self.pool = nn.MaxPool2d(2, 2) - self.conv2 = nn.Conv2d(6, 16, 5) - self.fc1 = nn.Linear(16 * 5 * 5, 120) - self.fc2 = nn.Linear(120, 84) - self.fc3 = nn.Linear(84, 10) - - def forward(self, x): - x = self.pool(F.relu(self.conv1(x))) - x = self.pool(F.relu(self.conv2(x))) - x = x.view(-1, 16 * 5 * 5) - x = F.relu(self.fc1(x)) - x = F.relu(self.fc2(x)) - x = self.fc3(x) - return x - - -net = Net() - -######################################################################## -# 3. Define a Loss function and optimizer -# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -# Let's use a Classification Cross-Entropy loss and SGD with momentum. - -import torch.optim as optim - -criterion = nn.CrossEntropyLoss() -optimizer = optim.SGD(net.parameters(), lr=0.001, momentum=0.9) - -######################################################################## -# 4. Train the network -# ^^^^^^^^^^^^^^^^^^^^ -# -# This is when things start to get interesting. -# We simply have to loop over our data iterator, and feed the inputs to the -# network and optimize. - -for epoch in range(2): # loop over the dataset multiple times - - running_loss = 0.0 - for i, data in enumerate(trainloader, 0): - # get the inputs - inputs, labels = data - - # zero the parameter gradients - optimizer.zero_grad() - - # forward + backward + optimize - outputs = net(inputs) - loss = criterion(outputs, labels) - loss.backward() - optimizer.step() - - # print statistics - running_loss += loss.item() - if i % 2000 == 1999: # print every 2000 mini-batches - print('[%d, %5d] loss: %.3f' % - (epoch + 1, i + 1, running_loss / 2000)) - running_loss = 0.0 - -print('Finished Training') - -######################################################################## -# 5. Test the network on the test data -# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -# -# We have trained the network for 2 passes over the training dataset. -# But we need to check if the network has learnt anything at all. -# -# We will check this by predicting the class label that the neural network -# outputs, and checking it against the ground-truth. If the prediction is -# correct, we add the sample to the list of correct predictions. -# -# Okay, first step. Let us display an image from the test set to get familiar. - -dataiter = iter(testloader) -images, labels = dataiter.next() - -# print images -imshow(torchvision.utils.make_grid(images)) -print('GroundTruth: ', ' '.join('%5s' % classes[labels[j]] for j in range(4))) - -######################################################################## -# Okay, now let us see what the neural network thinks these examples above are: - -outputs = net(images) - -######################################################################## -# The outputs are energies for the 10 classes. -# The higher the energy for a class, the more the network -# thinks that the image is of the particular class. -# So, let's get the index of the highest energy: -_, predicted = torch.max(outputs, 1) - -print('Predicted: ', ' '.join('%5s' % classes[predicted[j]] - for j in range(4))) - -######################################################################## -# The results seem pretty good. -# -# Let us look at how the network performs on the whole dataset. - -correct = 0 -total = 0 -with torch.no_grad(): - for data in testloader: - images, labels = data - outputs = net(images) - _, predicted = torch.max(outputs.data, 1) - total += labels.size(0) - correct += (predicted == labels).sum().item() - -print('Accuracy of the network on the 10000 test images: %d %%' % ( - 100 * correct / total)) - -######################################################################## -# That looks waaay better than chance, which is 10% accuracy (randomly picking -# a class out of 10 classes). -# Seems like the network learnt something. -# -# Hmmm, what are the classes that performed well, and the classes that did -# not perform well: - -class_correct = list(0. for i in range(10)) -class_total = list(0. for i in range(10)) -with torch.no_grad(): - for data in testloader: - images, labels = data - outputs = net(images) - _, predicted = torch.max(outputs, 1) - c = (predicted == labels).squeeze() - for i in range(4): - label = labels[i] - class_correct[label] += c[i].item() - class_total[label] += 1 - -for i in range(10): - print('Accuracy of %5s : %2d %%' % ( - classes[i], 100 * class_correct[i] / class_total[i])) - -######################################################################## -# Okay, so what next? -# -# How do we run these neural networks on the GPU? -# -# Training on GPU -# ---------------- -# Just like how you transfer a Tensor onto the GPU, you transfer the neural -# net onto the GPU. -# -# Let's first define our device as the first visible cuda device if we have -# CUDA available: - -device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") - -# Assuming that we are on a CUDA machine, this should print a CUDA device: - -print(device) - -######################################################################## -# The rest of this section assumes that ``device`` is a CUDA device. -# -# Then these methods will recursively go over all modules and convert their -# parameters and buffers to CUDA tensors: -# -# .. code:: python -# -# net.to(device) -# -# -# Remember that you will have to send the inputs and targets at every step -# to the GPU too: -# -# .. code:: python -# -# inputs, labels = inputs.to(device), labels.to(device) -# -# Why dont I notice MASSIVE speedup compared to CPU? Because your network -# is realllly small. -# -# **Exercise:** Try increasing the width of your network (argument 2 of -# the first ``nn.Conv2d``, and argument 1 of the second ``nn.Conv2d`` – -# they need to be the same number), see what kind of speedup you get. -# -# **Goals achieved**: -# -# - Understanding PyTorch's Tensor library and neural networks at a high level. -# - Train a small neural network to classify images -# -# Training on multiple GPUs -# ------------------------- -# If you want to see even more MASSIVE speedup using all of your GPUs, -# please check out :doc:`data_parallel_tutorial`. -# -# Where do I go next? -# ------------------- -# -# - :doc:`Train neural nets to play video games ` -# - `Train a state-of-the-art ResNet network on imagenet`_ -# - `Train a face generator using Generative Adversarial Networks`_ -# - `Train a word-level language model using Recurrent LSTM networks`_ -# - `More examples`_ -# - `More tutorials`_ -# - `Discuss PyTorch on the Forums`_ -# - `Chat with other users on Slack`_ -# -# .. _Train a state-of-the-art ResNet network on imagenet: https://github.com/pytorch/examples/tree/master/imagenet -# .. _Train a face generator using Generative Adversarial Networks: https://github.com/pytorch/examples/tree/master/dcgan -# .. _Train a word-level language model using Recurrent LSTM networks: https://github.com/pytorch/examples/tree/master/word_language_model -# .. _More examples: https://github.com/pytorch/examples -# .. _More tutorials: https://github.com/pytorch/tutorials -# .. _Discuss PyTorch on the Forums: https://discuss.pytorch.org/ -# .. _Chat with other users on Slack: https://pytorch.slack.com/messages/beginner/ - -# %%%%%%INVISIBLE_CODE_BLOCK%%%%%% -del dataiter -# %%%%%%INVISIBLE_CODE_BLOCK%%%%%% diff --git a/docs/userdocs/yarn/docker/pytorch/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.pytorch_latest b/docs/userdocs/yarn/docker/pytorch/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.pytorch_latest deleted file mode 100644 index 83e8fde..0000000 --- a/docs/userdocs/yarn/docker/pytorch/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.pytorch_latest +++ /dev/null @@ -1,21 +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. - -FROM pytorch-latest-gpu-base:0.0.1 - -RUN mkdir -p /test/data -RUN chmod -R 777 /test -ADD cifar10_tutorial.py /test/cifar10_tutorial.py \ No newline at end of file diff --git a/docs/userdocs/yarn/docker/tensorflow/base/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 b/docs/userdocs/yarn/docker/tensorflow/base/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 deleted file mode 100644 index 0e575e6..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/base/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 +++ /dev/null @@ -1,75 +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. - -FROM ubuntu:18.04 - -# Pick up some TF dependencies -RUN export DEBIAN_FRONTEND=noninteractive && apt-get update && \ - apt-get install -y --allow-downgrades --no-install-recommends \ - --allow-change-held-packages --allow-unauthenticated \ - build-essential libfreetype6-dev libpng-dev \ - libzmq3-dev pkg-config python python-dev \ - rsync software-properties-common curl unzip wget grep sed vim iputils-ping net-tools gdb python2.7-dbg tzdata && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -RUN export DEBIAN_FRONTEND=noninteractive && apt-get update && apt-get install -yq --no-install-recommends \ - krb5-user libpam-krb5 && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -RUN wget https://bootstrap.pypa.io/get-pip.py && \ - python get-pip.py && \ - rm get-pip.py - -RUN echo "Install python related packages" && \ - apt-get update && \ - apt-get install -y --no-install-recommends gfortran \ - # numerical/algebra packages - libblas-dev libatlas-base-dev liblapack-dev \ - # font, image for matplotlib - libpng-dev libxft-dev \ - # for tkinter - python-tk libxml2-dev libxslt-dev zlib1g-dev && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -RUN pip --no-cache-dir install Pillow h5py ipykernel jupyter matplotlib numpy pandas scipy sklearn && \ - python -m ipykernel.kernelspec - -# Install TensorFlow CPU version. -ENV TENSORFLOW_VERSION="1.13.1" -RUN pip --no-cache-dir install \ - http://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-${TENSORFLOW_VERSION}-cp27-none-linux_x86_64.whl -RUN apt-get update && apt-get install -y --no-install-recommends git && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -# Install hadoop -ENV HADOOP_VERSION="3.1.2" -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -# If you are in mainland China, you can use the following command. -# RUN wget http://mirrors.shu.edu.cn/apache/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz - -RUN tar zxf hadoop-${HADOOP_VERSION}.tar.gz -RUN ln -s hadoop-${HADOOP_VERSION} hadoop-current -RUN rm hadoop-${HADOOP_VERSION}.tar.gz - -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN echo "$LOG_TAG Install java8" && \ - apt-get update && \ - apt-get install -y --no-install-recommends openjdk-8-jdk && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -# Set the locale to fix bash warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) -RUN apt-get update && apt-get install -y --no-install-recommends locales && \ - apt-get clean && rm -rf /var/lib/apt/lists/* -RUN locale-gen en_US.UTF-8 diff --git a/docs/userdocs/yarn/docker/tensorflow/base/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 b/docs/userdocs/yarn/docker/tensorflow/base/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 deleted file mode 100644 index dc7027c..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/base/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 +++ /dev/null @@ -1,89 +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. - -FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04 - -# Pick up some TF dependencies -RUN export DEBIAN_FRONTEND=noninteractive && apt-get update && \ - apt-get install -y --allow-downgrades --no-install-recommends \ - --allow-change-held-packages --allow-unauthenticated \ - build-essential libfreetype6-dev \ - libzmq3-dev pkg-config python python-dev \ - rsync software-properties-common curl unzip wget grep sed vim \ - iputils-ping net-tools gdb python2.7-dbg tzdata \ - cuda-command-line-tools-10-0 cuda-cublas-10-0 \ - cuda-cufft-10-0 cuda-curand-10-0 cuda-cusolver-10-0 \ - cuda-cusparse-10-0 libcudnn7=7.4.1.5-1+cuda10.0 && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -# Install TensorRT -RUN apt-get update && \ - apt-get install -y --allow-unauthenticated --no-install-recommends \ - nvinfer-runtime-trt-repo-ubuntu1804-5.0.2-ga-cuda10.0 && \ - apt-get update && \ - apt-get install -y --no-install-recommends \ - libnvinfer5=5.0.2-1+cuda10.0 && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - - -RUN export DEBIAN_FRONTEND=noninteractive && apt-get update && \ - apt-get install -yq --no-install-recommends krb5-user libpam-krb5 \ - && apt-get clean && rm -rf /var/lib/apt/lists/* - -RUN wget https://bootstrap.pypa.io/get-pip.py && \ - python get-pip.py && \ - rm get-pip.py - -RUN echo "Install python related packages" && \ - apt-get -y update && \ - apt-get install -y --no-install-recommends gfortran \ - # numerical/algebra packages - libblas-dev libatlas-base-dev liblapack-dev \ - # font, image for matplotlib - libpng-dev libxft-dev \ - # for tkinter - python-tk libxml2-dev libxslt-dev zlib1g-dev && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -RUN pip --no-cache-dir install Pillow h5py ipykernel jupyter matplotlib numpy pandas scipy sklearn && \ - python -m ipykernel.kernelspec - -# Install TensorFlow GPU version. -ENV TENSORFLOW_VERSION="1.13.1" -RUN pip --no-cache-dir install \ - http://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-${TENSORFLOW_VERSION}-cp27-none-linux_x86_64.whl -RUN apt-get update && apt-get install -y --no-install-recommends git && \ - apt-get clean && rm -rf /var/lib/apt/lists/* - -# Install hadoop -ENV HADOOP_VERSION="3.1.2" -RUN wget https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz -# If you are in mainland China, you can use the following command. -# RUN wget http://mirrors.shu.edu.cn/apache/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz - -RUN tar zxf hadoop-${HADOOP_VERSION}.tar.gz -RUN ln -s hadoop-${HADOOP_VERSION} hadoop-current -RUN rm hadoop-${HADOOP_VERSION}.tar.gz - -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN echo "$LOG_TAG Install java8" && \ - apt-get -y update && \ - apt-get install -y --no-install-recommends openjdk-8-jdk && \ - rm -rf /var/lib/apt/lists/* - -# Set the locale to fix bash warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) -RUN apt-get update && apt-get install -y --no-install-recommends locales && \ - apt-get clean && rm -rf /var/lib/apt/lists/* -RUN locale-gen en_US.UTF-8 diff --git a/docs/userdocs/yarn/docker/tensorflow/build-all.sh b/docs/userdocs/yarn/docker/tensorflow/build-all.sh deleted file mode 100755 index 5c02379..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/build-all.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env bash - -# 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. - -echo "Building base images" - -set -euo pipefail - -cd base/ubuntu-18.04 - -docker build . -f Dockerfile.cpu.tf_1.13.1 -t tf-1.13.1-cpu-base:0.0.1 -docker build . -f Dockerfile.gpu.tf_1.13.1 -t tf-1.13.1-gpu-base:0.0.1 - -echo "Finished building base images" - -cd ../../with-cifar10-models/ubuntu-18.04 - -docker build . -f Dockerfile.cpu.tf_1.13.1 -t tf-1.13.1-cpu:0.0.1 -docker build . -f Dockerfile.gpu.tf_1.13.1 -t tf-1.13.1-gpu:0.0.1 - -cd ../../mnist -docker build . -f Dockerfile.tony.tf.mnist.tf_1.13.1 -t tony-mnist-tf-1.13.1:0.0.1 diff --git a/docs/userdocs/yarn/docker/tensorflow/mnist/Dockerfile.tony.tf.mnist.tf_1.13.1 b/docs/userdocs/yarn/docker/tensorflow/mnist/Dockerfile.tony.tf.mnist.tf_1.13.1 deleted file mode 100644 index 86874d4..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/mnist/Dockerfile.tony.tf.mnist.tf_1.13.1 +++ /dev/null @@ -1,72 +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. - -FROM ubuntu:18.04 -ENV HADOOP_VERSION 2.9.2 -ENV HADOOP_URL https://www.apache.org/dist/hadoop/common/hadoop-$HADOOP_VERSION/hadoop-$HADOOP_VERSION.tar.gz -RUN apt-get update -RUN apt-get -y install apt-transport-https \ - ca-certificates \ - curl \ - gnupg2 \ - git \ - software-properties-common \ - openjdk-8-jdk vim \ - wget python3-distutils -RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - -RUN add-apt-repository \ - "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ - $(lsb_release -cs) \ - stable" - -# Download Hadoop binaries. -RUN set -x \ - && curl -fSL "$HADOOP_URL" -o /tmp/hadoop.tar.gz \ - && tar -xvf /tmp/hadoop.tar.gz -C /opt/ \ - && rm /tmp/hadoop.tar.gz* - -# Copy the $HADOOP_CONF_DIR folder as "hadoop" folder in the same dir as dockerfile -# pi@pi-aw:~/apache/submarine/docker$ tree -# . -# ├── Dockerfile -# └── hadoopconf -# ├── capacity-scheduler.xml -# ├── configuration.xsl -# ... -COPY hadoopconf /opt/hadoop-$HADOOP_VERSION/etc/hadoop - -# Download and config submarine -RUN cd ~ -RUN git clone https://github.com/apache/submarine.git -RUN cd submarine - -RUN submarine/dev-support/mini-submarine/submarine/build_python_virtual_env.sh -RUN mv venv/ /opt/ -RUN chmod +r -R /opt/venv - -# Config Hadoop env -ENV HADOOP_HOME=/opt/hadoop-$HADOOP_VERSION/ -ENV HADOOP_YARN_HOME=/opt/hadoop-$HADOOP_VERSION/ -ENV HADOOP_HDFS_HOME=/opt/hadoop-$HADOOP_VERSION/ -ENV HADOOP_CONF_DIR=/opt/hadoop-$HADOOP_VERSION/etc/hadoop -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 - -# Crate user, make sure the user groups are the same as your host -RUN groupadd -g 5000 hadoop -RUN useradd -u 1000 -g hadoop pi -RUN mkdir /home/pi -RUN chown pi:hadoop /home/pi -RUN mkdir /tmp/mode -RUN chmod 777 /tmp/mode diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 deleted file mode 100644 index 188e487..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.cpu.tf_1.13.1 +++ /dev/null @@ -1,22 +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. - -FROM tf-1.13.1-cpu-base:0.0.1 - -# Include models -RUN mkdir /test -ADD cifar10_estimator_tf_1.13.1 /test/cifar10_estimator -RUN chown -R nobody /test \ No newline at end of file diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 deleted file mode 100644 index 8819fa6..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/Dockerfile.gpu.tf_1.13.1 +++ /dev/null @@ -1,22 +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. - -FROM tf-1.13.1-gpu-base:0.0.1 - -# Include models -RUN mkdir /test -ADD cifar10_estimator_tf_1.13.1 /test/cifar10_estimator -RUN chown -R nobody /test \ No newline at end of file diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/README.md b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/README.md deleted file mode 100644 index 4ca03fa..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/README.md +++ /dev/null @@ -1,542 +0,0 @@ - - -(Copied from https://github.com/tensorflow/models/tree/master/tutorials/image/cifar10_estimator) - -CIFAR-10 is a common benchmark in machine learning for image recognition. - -http://www.cs.toronto.edu/~kriz/cifar.html - -Code in this directory focuses on how to use TensorFlow Estimators to train and -evaluate a CIFAR-10 ResNet model on: - -* A single host with one CPU; -* A single host with multiple GPUs; -* Multiple hosts with CPU or multiple GPUs; - -Before trying to run the model we highly encourage you to read all the README. - -## Prerequisite - -1. [Install](https://www.tensorflow.org/install/) TensorFlow version 1.2.1 or -later. - -2. Download the CIFAR-10 dataset and generate TFRecord files using the provided -script. The script and associated command below will download the CIFAR-10 -dataset and then generate a TFRecord for the training, validation, and -evaluation datasets. - -```shell -python generate_cifar10_tfrecords.py --data-dir=${PWD}/cifar-10-data -``` - -After running the command above, you should see the following files in the ---data-dir (```ls -R cifar-10-data```): - -* train.tfrecords -* validation.tfrecords -* eval.tfrecords - - -## Training on a single machine with GPUs or CPU - -Run the training on CPU only. After training, it runs the evaluation. - -``` -python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ - --job-dir=/tmp/cifar10 \ - --num-gpus=0 \ - --train-steps=1000 -``` - -Run the model on 2 GPUs using CPU as parameter server. After training, it runs -the evaluation. -``` -python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ - --job-dir=/tmp/cifar10 \ - --num-gpus=2 \ - --train-steps=1000 -``` - -Run the model on 2 GPUs using GPU as parameter server. -It will run an experiment, which for local setting basically means it will run -stop training -a couple of times to perform evaluation. - -``` -python cifar10_main.py --data-dir=${PWD}/cifar-10-data \ - --job-dir=/tmp/cifar10 \ - --variable-strategy GPU \ - --num-gpus=2 \ -``` - -There are more command line flags to play with; run -`python cifar10_main.py --help` for details. - -## Run distributed training - -### (Optional) Running on Google Cloud Machine Learning Engine - -This example can be run on Google Cloud Machine Learning Engine (ML Engine), -which will configure the environment and take care of running workers, -parameters servers, and masters in a fault tolerant way. - -To install the command line tool, and set up a project and billing, see the -quickstart [here](https://cloud.google.com/ml-engine/docs/quickstarts/command-line). - -You'll also need a Google Cloud Storage bucket for the data. If you followed the -instructions above, you can just run: - -``` -MY_BUCKET=gs:// -gsutil cp -r ${PWD}/cifar-10-data $MY_BUCKET/ -``` - -Then run the following command from the `tutorials/image` directory of this -repository (the parent directory of this README): - -``` -gcloud ml-engine jobs submit training cifarmultigpu \ - --runtime-version 1.2 \ - --job-dir=$MY_BUCKET/model_dirs/cifarmultigpu \ - --config cifar10_estimator/cmle_config.yaml \ - --package-path cifar10_estimator/ \ - --module-name cifar10_estimator.cifar10_main \ - -- \ - --data-dir=$MY_BUCKET/cifar-10-data \ - --num-gpus=4 \ - --train-steps=1000 -``` - - -### Set TF_CONFIG - -Considering that you already have multiple hosts configured, all you need is a -`TF_CONFIG` environment variable on each host. You can set up the hosts manually -or check [tensorflow/ecosystem](https://github.com/tensorflow/ecosystem) for -instructions about how to set up a Cluster. - -The `TF_CONFIG` will be used by the `RunConfig` to know the existing hosts and -their task: `master`, `ps` or `worker`. - -Here's an example of `TF_CONFIG`. - -```python -cluster = {'master': ['master-ip:8000'], - 'ps': ['ps-ip:8000'], - 'worker': ['worker-ip:8000']} - -TF_CONFIG = json.dumps( - {'cluster': cluster, - 'task': {'type': master, 'index': 0}, - 'model_dir': 'gs:///', - 'environment': 'cloud' - }) -``` - -*Cluster* - -A cluster spec, which is basically a dictionary that describes all of the tasks -in the cluster. More about it [here](https://www.tensorflow.org/deploy/distributed). - -In this cluster spec we are defining a cluster with 1 master, 1 ps and 1 worker. - -* `ps`: saves the parameters among all workers. All workers can - read/write/update the parameters for model via ps. As some models are - extremely large the parameters are shared among the ps (each ps stores a - subset). - -* `worker`: does the training. - -* `master`: basically a special worker, it does training, but also restores and - saves checkpoints and do evaluation. - -*Task* - -The Task defines what is the role of the current node, for this example the node -is the master on index 0 on the cluster spec, the task will be different for -each node. An example of the `TF_CONFIG` for a worker would be: - -```python -cluster = {'master': ['master-ip:8000'], - 'ps': ['ps-ip:8000'], - 'worker': ['worker-ip:8000']} - -TF_CONFIG = json.dumps( - {'cluster': cluster, - 'task': {'type': worker, 'index': 0}, - 'model_dir': 'gs:///', - 'environment': 'cloud' - }) -``` - -*Model_dir* - -This is the path where the master will save the checkpoints, graph and -TensorBoard files. For a multi host environment you may want to use a -Distributed File System, Google Storage and DFS are supported. - -*Environment* - -By the default environment is *local*, for a distributed setting we need to -change it to *cloud*. - -### Running script - -Once you have a `TF_CONFIG` configured properly on each host you're ready to run -on distributed settings. - -#### Master -Run this on master: -Runs an Experiment in sync mode on 4 GPUs using CPU as parameter server for -40000 steps. It will run evaluation a couple of times during training. The -num_workers argument is used only to update the learning rate correctly. Make -sure the model_dir is the same as defined on the TF_CONFIG. - -```shell -python cifar10_main.py --data-dir=gs://path/cifar-10-data \ - --job-dir=gs://path/model_dir/ \ - --num-gpus=4 \ - --train-steps=40000 \ - --sync \ - --num-workers=2 -``` - -*Output:* - -```shell -INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ -INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, '_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'master', '_is_chief': True, '_cluster_spec': , '_model_dir': 'gs://path/model_dir/', '_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, '_session_config': intra_op_parallelism_threads: 1 -gpu_options { -} -allow_soft_placement: true -, '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, '_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { - per_process_gpu_memory_fraction: 1.0 -} -, '_evaluation_master': '', '_master': u'grpc://master-ip:8000'} -... -2017-08-01 19:59:26.496208: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 0 with properties: -name: Tesla K80 -major: 3 minor: 7 memoryClockRate (GHz) 0.8235 -pciBusID 0000:00:04.0 -Total memory: 11.17GiB -Free memory: 11.09GiB -2017-08-01 19:59:26.775660: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 1 with properties: -name: Tesla K80 -major: 3 minor: 7 memoryClockRate (GHz) 0.8235 -pciBusID 0000:00:05.0 -Total memory: 11.17GiB -Free memory: 11.10GiB -... -2017-08-01 19:59:29.675171: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) -INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) -INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=1; total_num_replicas=1 -INFO:tensorflow:Create CheckpointSaverHook. -INFO:tensorflow:Restoring parameters from gs://path/model_dir/model.ckpt-0 -2017-08-01 19:59:37.560775: I tensorflow/core/distributed_runtime/master_session.cc:999] Start master session 156fcb55fe6648d6 with config: -intra_op_parallelism_threads: 1 -gpu_options { - per_process_gpu_memory_fraction: 1 -} -allow_soft_placement: true - -INFO:tensorflow:Saving checkpoints for 1 into gs://path/model_dir/model.ckpt. -INFO:tensorflow:loss = 1.20682, step = 1 -INFO:tensorflow:loss = 1.20682, learning_rate = 0.1 -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) -INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) -INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=2; total_num_replicas=2 -INFO:tensorflow:Starting evaluation at 2017-08-01-20:00:14 -2017-08-01 20:00:15.745881: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:0) -> (device: 0, name: Tesla K80, pci bus id: 0000:00:04.0) -2017-08-01 20:00:15.745949: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:1) -> (device: 1, name: Tesla K80, pci bus id: 0000:00:05.0) -2017-08-01 20:00:15.745958: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:2) -> (device: 2, name: Tesla K80, pci bus id: 0000:00:06.0) -2017-08-01 20:00:15.745964: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:3) -> (device: 3, name: Tesla K80, pci bus id: 0000:00:07.0) -2017-08-01 20:00:15.745969: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:4) -> (device: 4, name: Tesla K80, pci bus id: 0000:00:08.0) -2017-08-01 20:00:15.745975: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:5) -> (device: 5, name: Tesla K80, pci bus id: 0000:00:09.0) -2017-08-01 20:00:15.745987: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:6) -> (device: 6, name: Tesla K80, pci bus id: 0000:00:0a.0) -2017-08-01 20:00:15.745997: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1030] Creating TensorFlow device (/gpu:7) -> (device: 7, name: Tesla K80, pci bus id: 0000:00:0b.0) -INFO:tensorflow:Restoring parameters from gs://path/model_dir/model.ckpt-10023 -INFO:tensorflow:Evaluation [1/100] -INFO:tensorflow:Evaluation [2/100] -INFO:tensorflow:Evaluation [3/100] -INFO:tensorflow:Evaluation [4/100] -INFO:tensorflow:Evaluation [5/100] -INFO:tensorflow:Evaluation [6/100] -INFO:tensorflow:Evaluation [7/100] -INFO:tensorflow:Evaluation [8/100] -INFO:tensorflow:Evaluation [9/100] -INFO:tensorflow:Evaluation [10/100] -INFO:tensorflow:Evaluation [11/100] -INFO:tensorflow:Evaluation [12/100] -INFO:tensorflow:Evaluation [13/100] -... -INFO:tensorflow:Evaluation [100/100] -INFO:tensorflow:Finished evaluation at 2017-08-01-20:00:31 -INFO:tensorflow:Saving dict for global step 1: accuracy = 0.0994, global_step = 1, loss = 630.425 -``` - -#### Worker - -Run this on worker: -Runs an Experiment in sync mode on 4 GPUs using CPU as parameter server for -40000 steps. It will run evaluation a couple of times during training. Make sure -the model_dir is the same as defined on the TF_CONFIG. - -```shell -python cifar10_main.py --data-dir=gs://path/cifar-10-data \ - --job-dir=gs://path/model_dir/ \ - --num-gpus=4 \ - --train-steps=40000 \ - --sync -``` - -*Output:* - -```shell -INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ -INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, -'_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'worker', -'_is_chief': False, '_cluster_spec': -, -'_model_dir': 'gs:///model_dir/', -'_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, -'_session_config': intra_op_parallelism_threads: 1 -gpu_options { -} -allow_soft_placement: true -, '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, -'_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { - per_process_gpu_memory_fraction: 1.0 - } -... -2017-08-01 19:59:26.496208: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 0 with properties: -name: Tesla K80 -major: 3 minor: 7 memoryClockRate (GHz) 0.8235 -pciBusID 0000:00:04.0 -Total memory: 11.17GiB -Free memory: 11.09GiB -2017-08-01 19:59:26.775660: I tensorflow/core/common_runtime/gpu/gpu_device.cc:940] Found device 1 with properties: -name: Tesla K80 -major: 3 minor: 7 memoryClockRate (GHz) 0.8235 -pciBusID 0000:00:05.0 -Total memory: 11.17GiB -Free memory: 11.10GiB -... -2017-08-01 19:59:29.675171: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_1/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_2/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_3/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_4/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_5/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage/residual_v1_6/: (?, 16, 32, 32) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/avg_pool/: (?, 16, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_1/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_2/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_3/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_4/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_5/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_1/residual_v1_6/: (?, 32, 16, 16) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/avg_pool/: (?, 32, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_1/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_2/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_3/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_4/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_5/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/stage_2/residual_v1_6/: (?, 64, 8, 8) -INFO:tensorflow:image after unit resnet/tower_0/global_avg_pool/: (?, 64) -INFO:tensorflow:image after unit resnet/tower_0/fully_connected/: (?, 11) -INFO:tensorflow:SyncReplicasV2: replicas_to_aggregate=2; total_num_replicas=2 -INFO:tensorflow:Create CheckpointSaverHook. -2017-07-31 22:38:04.629150: I -tensorflow/core/distributed_runtime/master.cc:209] CreateSession still waiting -for response from worker: /job:master/replica:0/task:0 -2017-07-31 22:38:09.263492: I -tensorflow/core/distributed_runtime/master_session.cc:999] Start master -session cc58f93b1e259b0c with config: -intra_op_parallelism_threads: 1 -gpu_options { -per_process_gpu_memory_fraction: 1 -} -allow_soft_placement: true -INFO:tensorflow:loss = 5.82382, step = 0 -INFO:tensorflow:loss = 5.82382, learning_rate = 0.8 -INFO:tensorflow:Average examples/sec: 1116.92 (1116.92), step = 10 -INFO:tensorflow:Average examples/sec: 1233.73 (1377.83), step = 20 -INFO:tensorflow:Average examples/sec: 1485.43 (2509.3), step = 30 -INFO:tensorflow:Average examples/sec: 1680.27 (2770.39), step = 40 -INFO:tensorflow:Average examples/sec: 1825.38 (2788.78), step = 50 -INFO:tensorflow:Average examples/sec: 1929.32 (2697.27), step = 60 -INFO:tensorflow:Average examples/sec: 2015.17 (2749.05), step = 70 -INFO:tensorflow:loss = 37.6272, step = 79 (19.554 sec) -INFO:tensorflow:loss = 37.6272, learning_rate = 0.8 (19.554 sec) -INFO:tensorflow:Average examples/sec: 2074.92 (2618.36), step = 80 -INFO:tensorflow:Average examples/sec: 2132.71 (2744.13), step = 90 -INFO:tensorflow:Average examples/sec: 2183.38 (2777.21), step = 100 -INFO:tensorflow:Average examples/sec: 2224.4 (2739.03), step = 110 -INFO:tensorflow:Average examples/sec: 2240.28 (2431.26), step = 120 -INFO:tensorflow:Average examples/sec: 2272.12 (2739.32), step = 130 -INFO:tensorflow:Average examples/sec: 2300.68 (2750.03), step = 140 -INFO:tensorflow:Average examples/sec: 2325.81 (2745.63), step = 150 -INFO:tensorflow:Average examples/sec: 2347.14 (2721.53), step = 160 -INFO:tensorflow:Average examples/sec: 2367.74 (2754.54), step = 170 -INFO:tensorflow:loss = 27.8453, step = 179 (18.893 sec) -... -``` - -#### PS - -Run this on ps: -The ps will not do training so most of the arguments won't affect the execution - -```shell -python cifar10_main.py --job-dir=gs://path/model_dir/ -``` - -*Output:* - -```shell -INFO:tensorflow:Using model_dir in TF_CONFIG: gs://path/model_dir/ -INFO:tensorflow:Using config: {'_save_checkpoints_secs': 600, '_num_ps_replicas': 1, '_keep_checkpoint_max': 5, '_task_type': u'ps', '_is_chief': False, '_cluster_spec': , '_model_dir': 'gs://path/model_dir/', '_save_checkpoints_steps': None, '_keep_checkpoint_every_n_hours': 10000, '_session_config': intra_op_parallelism_threads: 1 -gpu_options { -} -allow_soft_placement: true -, '_tf_random_seed': None, '_environment': u'cloud', '_num_worker_replicas': 1, '_task_id': 0, '_save_summary_steps': 100, '_tf_config': gpu_options { - per_process_gpu_memory_fraction: 1.0 -} -, '_evaluation_master': '', '_master': u'grpc://master-ip:8000'} -2017-07-31 22:54:58.928088: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job master -> {0 -> master-ip:8000} -2017-07-31 22:54:58.928153: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job ps -> {0 -> localhost:8000} -2017-07-31 22:54:58.928160: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:215] Initialize GrpcChannelCache for job worker -> {0 -> worker-ip:8000} -2017-07-31 22:54:58.929873: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:316] Started server with target: grpc://localhost:8000 -``` - -## Visualizing results with TensorBoard - -When using Estimators you can also visualize your data in TensorBoard, with no -changes in your code. You can use TensorBoard to visualize your TensorFlow -graph, plot quantitative metrics about the execution of your graph, and show -additional data like images that pass through it. - -You'll see something similar to this if you "point" TensorBoard to the -`job dir` parameter you used to train or evaluate your model. - -Check TensorBoard during training or after it. Just point TensorBoard to the -model_dir you chose on the previous step. - -```shell -tensorboard --log-dir="" -``` - -## Warnings - -When running `cifar10_main.py` with `--sync` argument you may see an error -similar to: - -```python -File "cifar10_main.py", line 538, in - tf.app.run() -File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 48, in run - _sys.exit(main(_sys.argv[:1] + flags_passthrough)) -File "cifar10_main.py", line 518, in main - hooks), run_config=config) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/learn_runner.py", line 210, in run - return _execute_schedule(experiment, schedule) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/learn_runner.py", line 47, in _execute_schedule - return task() -File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/experiment.py", line 501, in train_and_evaluate - hooks=self._eval_hooks) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/learn/python/learn/experiment.py", line 681, in _call_evaluate - hooks=hooks) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 292, in evaluate - name=name) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 638, in _evaluate_model - features, labels, model_fn_lib.ModeKeys.EVAL) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/estimator/estimator.py", line 545, in _call_model_fn - features=features, labels=labels, **kwargs) -File "cifar10_main.py", line 331, in _resnet_model_fn - gradvars, global_step=tf.train.get_global_step()) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/sync_replicas_optimizer.py", line 252, in apply_gradients - variables.global_variables()) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 170, in wrapped - return _add_should_use_warning(fn(*args, **kwargs)) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 139, in _add_should_use_warning - wrapped = TFShouldUseWarningWrapper(x) -File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/util/tf_should_use.py", line 96, in __init__ - stack = [s.strip() for s in traceback.format_stack()] -``` - -This should not affect your training, and should be fixed on the next releases. diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10.py b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10.py deleted file mode 100644 index 5e1a708..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10.py +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 2017 The TensorFlow Authors. All Rights Reserved. -# -# Licensed 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. -# ============================================================================== -"""CIFAR-10 data set. - -See http://www.cs.toronto.edu/~kriz/cifar.html. -""" -import os - -import tensorflow as tf - -HEIGHT = 32 -WIDTH = 32 -DEPTH = 3 - - -class Cifar10DataSet(object): - """Cifar10 data set. - - Described by http://www.cs.toronto.edu/~kriz/cifar.html. - """ - - def __init__(self, data_dir, subset='train', use_distortion=True): - self.data_dir = data_dir - self.subset = subset - self.use_distortion = use_distortion - - def get_filenames(self): - if self.subset in ['train', 'validation', 'eval']: - return [os.path.join(self.data_dir, self.subset + '.tfrecords')] - else: - raise ValueError('Invalid data subset "%s"' % self.subset) - - def parser(self, serialized_example): - """Parses a single tf.Example into image and label tensors.""" - # Dimensions of the images in the CIFAR-10 dataset. - # See http://www.cs.toronto.edu/~kriz/cifar.html for a description of the - # input format. - features = tf.parse_single_example( - serialized_example, - features={ - 'image': tf.FixedLenFeature([], tf.string), - 'label': tf.FixedLenFeature([], tf.int64), - }) - image = tf.decode_raw(features['image'], tf.uint8) - image.set_shape([DEPTH * HEIGHT * WIDTH]) - - # Reshape from [depth * height * width] to [depth, height, width]. - image = tf.cast( - tf.transpose(tf.reshape(image, [DEPTH, HEIGHT, WIDTH]), [1, 2, 0]), - tf.float32) - label = tf.cast(features['label'], tf.int32) - - # Custom preprocessing. - image = self.preprocess(image) - - return image, label - - def make_batch(self, batch_size): - """Read the images and labels from 'filenames'.""" - filenames = self.get_filenames() - # Repeat infinitely. - dataset = tf.data.TFRecordDataset(filenames).repeat() - - # Parse records. - dataset = dataset.map( - self.parser, num_parallel_calls=batch_size) - - # Potentially shuffle records. - if self.subset == 'train': - min_queue_examples = int( - Cifar10DataSet.num_examples_per_epoch(self.subset) * 0.4) - # Ensure that the capacity is sufficiently large to provide good random - # shuffling. - dataset = dataset.shuffle(buffer_size=min_queue_examples + 3 * batch_size) - - # Batch it up. - dataset = dataset.batch(batch_size) - iterator = dataset.make_one_shot_iterator() - image_batch, label_batch = iterator.get_next() - - return image_batch, label_batch - - def preprocess(self, image): - """Preprocess a single image in [height, width, depth] layout.""" - if self.subset == 'train' and self.use_distortion: - # Pad 4 pixels on each dimension of feature map, done in mini-batch - image = tf.image.resize_image_with_crop_or_pad(image, 40, 40) - image = tf.random_crop(image, [HEIGHT, WIDTH, DEPTH]) - image = tf.image.random_flip_left_right(image) - return image - - @staticmethod - def num_examples_per_epoch(subset='train'): - if subset == 'train': - return 45000 - elif subset == 'validation': - return 5000 - elif subset == 'eval': - return 10000 - else: - raise ValueError('Invalid data subset "%s"' % subset) diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_main.py b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_main.py deleted file mode 100644 index dbd2418..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_main.py +++ /dev/null @@ -1,521 +0,0 @@ -# Copyright 2017 The TensorFlow Authors. All Rights Reserved. -# -# Licensed 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. -# ============================================================================== -"""ResNet model for classifying images from CIFAR-10 dataset. - -Support single-host training with one or multiple devices. - -ResNet as proposed in: -Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun -Deep Residual Learning for Image Recognition. arXiv:1512.03385 - -CIFAR-10 as in: -http://www.cs.toronto.edu/~kriz/cifar.html - - -""" -from __future__ import division -from __future__ import print_function - -import argparse -import functools -import itertools -import os - -import cifar10 -import cifar10_model -import cifar10_utils -import numpy as np -import six -from six.moves import xrange # pylint: disable=redefined-builtin -import tensorflow as tf - -tf.logging.set_verbosity(tf.logging.INFO) - - -def get_model_fn(num_gpus, variable_strategy, num_workers): - """Returns a function that will build the resnet model.""" - - def _resnet_model_fn(features, labels, mode, params): - """Resnet model body. - - Support single host, one or more GPU training. Parameter distribution can - be either one of the following scheme. - 1. CPU is the parameter server and manages gradient updates. - 2. Parameters are distributed evenly across all GPUs, and the first GPU - manages gradient updates. - - Args: - features: a list of tensors, one for each tower - labels: a list of tensors, one for each tower - mode: ModeKeys.TRAIN or EVAL - params: Hyperparameters suitable for tuning - Returns: - A EstimatorSpec object. - """ - is_training = (mode == tf.estimator.ModeKeys.TRAIN) - weight_decay = params.weight_decay - momentum = params.momentum - - tower_features = features - tower_labels = labels - tower_losses = [] - tower_gradvars = [] - tower_preds = [] - - # channels first (NCHW) is normally optimal on GPU and channels last (NHWC) - # on CPU. The exception is Intel MKL on CPU which is optimal with - # channels_last. - data_format = params.data_format - if not data_format: - if num_gpus == 0: - data_format = 'channels_last' - else: - data_format = 'channels_first' - - if num_gpus == 0: - num_devices = 1 - device_type = 'cpu' - else: - num_devices = num_gpus - device_type = 'gpu' - - for i in range(num_devices): - worker_device = '/{}:{}'.format(device_type, i) - if variable_strategy == 'CPU': - device_setter = cifar10_utils.local_device_setter( - worker_device=worker_device) - elif variable_strategy == 'GPU': - device_setter = cifar10_utils.local_device_setter( - ps_device_type='gpu', - worker_device=worker_device, - ps_strategy=tf.contrib.training.GreedyLoadBalancingStrategy( - num_gpus, tf.contrib.training.byte_size_load_fn)) - with tf.variable_scope('resnet', reuse=bool(i != 0)): - with tf.name_scope('tower_%d' % i) as name_scope: - with tf.device(device_setter): - loss, gradvars, preds = _tower_fn( - is_training, weight_decay, tower_features[i], tower_labels[i], - data_format, params.num_layers, params.batch_norm_decay, - params.batch_norm_epsilon) - tower_losses.append(loss) - tower_gradvars.append(gradvars) - tower_preds.append(preds) - if i == 0: - # Only trigger batch_norm moving mean and variance update from - # the 1st tower. Ideally, we should grab the updates from all - # towers but these stats accumulate extremely fast so we can - # ignore the other stats from the other towers without - # significant detriment. - update_ops = tf.get_collection(tf.GraphKeys.UPDATE_OPS, - name_scope) - - # Now compute global loss and gradients. - gradvars = [] - with tf.name_scope('gradient_averaging'): - all_grads = {} - for grad, var in itertools.chain(*tower_gradvars): - if grad is not None: - all_grads.setdefault(var, []).append(grad) - for var, grads in six.iteritems(all_grads): - # Average gradients on the same device as the variables - # to which they apply. - with tf.device(var.device): - if len(grads) == 1: - avg_grad = grads[0] - else: - avg_grad = tf.multiply(tf.add_n(grads), 1. / len(grads)) - gradvars.append((avg_grad, var)) - - # Device that runs the ops to apply global gradient updates. - consolidation_device = '/gpu:0' if variable_strategy == 'GPU' else '/cpu:0' - with tf.device(consolidation_device): - # Suggested learning rate scheduling from - # https://github.com/ppwwyyxx/tensorpack/blob/master/examples/ResNet/cifar10-resnet.py#L155 - num_batches_per_epoch = cifar10.Cifar10DataSet.num_examples_per_epoch( - 'train') // (params.train_batch_size * num_workers) - boundaries = [ - num_batches_per_epoch * x - for x in np.array([82, 123, 300], dtype=np.int64) - ] - staged_lr = [params.learning_rate * x for x in [1, 0.1, 0.01, 0.002]] - - learning_rate = tf.train.piecewise_constant(tf.train.get_global_step(), - boundaries, staged_lr) - - loss = tf.reduce_mean(tower_losses, name='loss') - - examples_sec_hook = cifar10_utils.ExamplesPerSecondHook( - params.train_batch_size, every_n_steps=10) - - tensors_to_log = {'learning_rate': learning_rate, 'loss': loss} - - logging_hook = tf.train.LoggingTensorHook( - tensors=tensors_to_log, every_n_iter=100) - - train_hooks = [logging_hook, examples_sec_hook] - - optimizer = tf.train.MomentumOptimizer( - learning_rate=learning_rate, momentum=momentum) - - if params.sync: - optimizer = tf.train.SyncReplicasOptimizer( - optimizer, replicas_to_aggregate=num_workers) - sync_replicas_hook = optimizer.make_session_run_hook(params.is_chief) - train_hooks.append(sync_replicas_hook) - - # Create single grouped train op - train_op = [ - optimizer.apply_gradients( - gradvars, global_step=tf.train.get_global_step()) - ] - train_op.extend(update_ops) - train_op = tf.group(*train_op) - - predictions = { - 'classes': - tf.concat([p['classes'] for p in tower_preds], axis=0), - 'probabilities': - tf.concat([p['probabilities'] for p in tower_preds], axis=0) - } - stacked_labels = tf.concat(labels, axis=0) - metrics = { - 'accuracy': - tf.metrics.accuracy(stacked_labels, predictions['classes']) - } - - return tf.estimator.EstimatorSpec( - mode=mode, - predictions=predictions, - loss=loss, - train_op=train_op, - training_hooks=train_hooks, - eval_metric_ops=metrics) - - return _resnet_model_fn - - -def _tower_fn(is_training, weight_decay, feature, label, data_format, - num_layers, batch_norm_decay, batch_norm_epsilon): - """Build computation tower (Resnet). - - Args: - is_training: true if is training graph. - weight_decay: weight regularization strength, a float. - feature: a Tensor. - label: a Tensor. - data_format: channels_last (NHWC) or channels_first (NCHW). - num_layers: number of layers, an int. - batch_norm_decay: decay for batch normalization, a float. - batch_norm_epsilon: epsilon for batch normalization, a float. - - Returns: - A tuple with the loss for the tower, the gradients and parameters, and - predictions. - - """ - model = cifar10_model.ResNetCifar10( - num_layers, - batch_norm_decay=batch_norm_decay, - batch_norm_epsilon=batch_norm_epsilon, - is_training=is_training, - data_format=data_format) - logits = model.forward_pass(feature, input_data_format='channels_last') - tower_pred = { - 'classes': tf.argmax(input=logits, axis=1), - 'probabilities': tf.nn.softmax(logits) - } - - tower_loss = tf.losses.sparse_softmax_cross_entropy( - logits=logits, labels=label) - tower_loss = tf.reduce_mean(tower_loss) - - model_params = tf.trainable_variables() - tower_loss += weight_decay * tf.add_n( - [tf.nn.l2_loss(v) for v in model_params]) - - tower_grad = tf.gradients(tower_loss, model_params) - - return tower_loss, zip(tower_grad, model_params), tower_pred - - -def input_fn(data_dir, - subset, - num_shards, - batch_size, - use_distortion_for_training=True): - """Create input graph for model. - - Args: - data_dir: Directory where TFRecords representing the dataset are located. - subset: one of 'train', 'validate' and 'eval'. - num_shards: num of towers participating in data-parallel training. - batch_size: total batch size for training to be divided by the number of - shards. - use_distortion_for_training: True to use distortions. - Returns: - two lists of tensors for features and labels, each of num_shards length. - """ - with tf.device('/cpu:0'): - use_distortion = subset == 'train' and use_distortion_for_training - dataset = cifar10.Cifar10DataSet(data_dir, subset, use_distortion) - image_batch, label_batch = dataset.make_batch(batch_size) - if num_shards <= 1: - # No GPU available or only 1 GPU. - return [image_batch], [label_batch] - - # Note that passing num=batch_size is safe here, even though - # dataset.batch(batch_size) can, in some cases, return fewer than batch_size - # examples. This is because it does so only when repeating for a limited - # number of epochs, but our dataset repeats forever. - image_batch = tf.unstack(image_batch, num=batch_size, axis=0) - label_batch = tf.unstack(label_batch, num=batch_size, axis=0) - feature_shards = [[] for i in range(num_shards)] - label_shards = [[] for i in range(num_shards)] - for i in xrange(batch_size): - idx = i % num_shards - feature_shards[idx].append(image_batch[i]) - label_shards[idx].append(label_batch[i]) - feature_shards = [tf.parallel_stack(x) for x in feature_shards] - label_shards = [tf.parallel_stack(x) for x in label_shards] - return feature_shards, label_shards - - -def get_experiment_fn(data_dir, - num_gpus, - variable_strategy, - use_distortion_for_training=True): - """Returns an Experiment function. - - Experiments perform training on several workers in parallel, - in other words experiments know how to invoke train and eval in a sensible - fashion for distributed training. Arguments passed directly to this - function are not tunable, all other arguments should be passed within - tf.HParams, passed to the enclosed function. - - Args: - data_dir: str. Location of the data for input_fns. - num_gpus: int. Number of GPUs on each worker. - variable_strategy: String. CPU to use CPU as the parameter server - and GPU to use the GPUs as the parameter server. - use_distortion_for_training: bool. See cifar10.Cifar10DataSet. - Returns: - A function (tf.estimator.RunConfig, tf.contrib.training.HParams) -> - tf.contrib.learn.Experiment. - - Suitable for use by tf.contrib.learn.learn_runner, which will run various - methods on Experiment (train, evaluate) based on information - about the current runner in `run_config`. - """ - - def _experiment_fn(run_config, hparams): - """Returns an Experiment.""" - # Create estimator. - train_input_fn = functools.partial( - input_fn, - data_dir, - subset='train', - num_shards=num_gpus, - batch_size=hparams.train_batch_size, - use_distortion_for_training=use_distortion_for_training) - - eval_input_fn = functools.partial( - input_fn, - data_dir, - subset='eval', - batch_size=hparams.eval_batch_size, - num_shards=num_gpus) - - num_eval_examples = cifar10.Cifar10DataSet.num_examples_per_epoch('eval') - if num_eval_examples % hparams.eval_batch_size != 0: - raise ValueError( - 'validation set size must be multiple of eval_batch_size') - - train_steps = hparams.train_steps - eval_steps = num_eval_examples // hparams.eval_batch_size - - classifier = tf.estimator.Estimator( - model_fn=get_model_fn(num_gpus, variable_strategy, - run_config.num_worker_replicas or 1), - config=run_config, - params=hparams) - - # Create experiment. - return tf.contrib.learn.Experiment( - classifier, - train_input_fn=train_input_fn, - eval_input_fn=eval_input_fn, - train_steps=train_steps, - eval_steps=eval_steps) - - return _experiment_fn - - -def main(job_dir, data_dir, num_gpus, variable_strategy, - use_distortion_for_training, log_device_placement, num_intra_threads, - **hparams): - # The env variable is on deprecation path, default is set to off. - os.environ['TF_SYNC_ON_FINISH'] = '0' - os.environ['TF_ENABLE_WINOGRAD_NONFUSED'] = '1' - - # Session configuration. - sess_config = tf.ConfigProto( - allow_soft_placement=True, - log_device_placement=log_device_placement, - intra_op_parallelism_threads=num_intra_threads, - gpu_options=tf.GPUOptions(force_gpu_compatible=True)) - - config = cifar10_utils.RunConfig( - session_config=sess_config, model_dir=job_dir) - tf.contrib.learn.learn_runner.run( - get_experiment_fn(data_dir, num_gpus, variable_strategy, - use_distortion_for_training), - run_config=config, - hparams=tf.contrib.training.HParams( - is_chief=config.is_chief, - **hparams)) - - -if __name__ == '__main__': - parser = argparse.ArgumentParser() - parser.add_argument( - '--data-dir', - type=str, - required=True, - help='The directory where the CIFAR-10 input data is stored.') - parser.add_argument( - '--job-dir', - type=str, - required=True, - help='The directory where the model will be stored.') - parser.add_argument( - '--variable-strategy', - choices=['CPU', 'GPU'], - type=str, - default='CPU', - help='Where to locate variable operations') - parser.add_argument( - '--num-gpus', - type=int, - default=1, - help='The number of gpus used. Uses only CPU if set to 0.') - parser.add_argument( - '--num-layers', - type=int, - default=44, - help='The number of layers of the model.') - parser.add_argument( - '--train-steps', - type=int, - default=80000, - help='The number of steps to use for training.') - parser.add_argument( - '--train-batch-size', - type=int, - default=128, - help='Batch size for training.') - parser.add_argument( - '--eval-batch-size', - type=int, - default=100, - help='Batch size for validation.') - parser.add_argument( - '--momentum', - type=float, - default=0.9, - help='Momentum for MomentumOptimizer.') - parser.add_argument( - '--weight-decay', - type=float, - default=2e-4, - help='Weight decay for convolutions.') - parser.add_argument( - '--learning-rate', - type=float, - default=0.1, - help="""\ - This is the initial learning rate value. The learning rate will decrease - during training. For more details check the model_fn implementation in - this file.\ - """) - parser.add_argument( - '--use-distortion-for-training', - type=bool, - default=True, - help='If doing image distortion for training.') - parser.add_argument( - '--sync', - action='store_true', - default=False, - help="""\ - If present when running in a distributed environment will run on sync mode.\ - """) - parser.add_argument( - '--num-intra-threads', - type=int, - default=0, - help="""\ - Number of threads to use for intra-op parallelism. When training on CPU - set to 0 to have the system pick the appropriate number or alternatively - set it to the number of physical CPU cores.\ - """) - parser.add_argument( - '--num-inter-threads', - type=int, - default=0, - help="""\ - Number of threads to use for inter-op parallelism. If set to 0, the - system will pick an appropriate number.\ - """) - parser.add_argument( - '--data-format', - type=str, - default=None, - help="""\ - If not set, the data format best for the training device is used. - Allowed values: channels_first (NCHW) channels_last (NHWC).\ - """) - parser.add_argument( - '--log-device-placement', - action='store_true', - default=False, - help='Whether to log device placement.') - parser.add_argument( - '--batch-norm-decay', - type=float, - default=0.997, - help='Decay for batch norm.') - parser.add_argument( - '--batch-norm-epsilon', - type=float, - default=1e-5, - help='Epsilon for batch norm.') - args = parser.parse_args() - - if args.num_gpus > 0: - assert tf.test.is_gpu_available(), "Requested GPUs but none found." - if args.num_gpus < 0: - raise ValueError( - 'Invalid GPU count: \"--num-gpus\" must be 0 or a positive integer.') - if args.num_gpus == 0 and args.variable_strategy == 'GPU': - raise ValueError('num-gpus=0, CPU must be used as parameter server. Set' - '--variable-strategy=CPU.') - if (args.num_layers - 2) % 6 != 0: - raise ValueError('Invalid --num-layers parameter.') - if args.num_gpus != 0 and args.train_batch_size % args.num_gpus != 0: - raise ValueError('--train-batch-size must be multiple of --num-gpus.') - if args.num_gpus != 0 and args.eval_batch_size % args.num_gpus != 0: - raise ValueError('--eval-batch-size must be multiple of --num-gpus.') - - main(**vars(args)) diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_model.py b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_model.py deleted file mode 100644 index d67c233..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_model.py +++ /dev/null @@ -1,80 +0,0 @@ -# Copyright 2017 The TensorFlow Authors. All Rights Reserved. -# -# Licensed 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. -# ============================================================================== -"""Model class for Cifar10 Dataset.""" -from __future__ import division -from __future__ import print_function - -import tensorflow as tf - -import model_base - - -class ResNetCifar10(model_base.ResNet): - """Cifar10 model with ResNetV1 and basic residual block.""" - - def __init__(self, - num_layers, - is_training, - batch_norm_decay, - batch_norm_epsilon, - data_format='channels_first'): - super(ResNetCifar10, self).__init__( - is_training, - data_format, - batch_norm_decay, - batch_norm_epsilon - ) - self.n = (num_layers - 2) // 6 - # Add one in case label starts with 1. No impact if label starts with 0. - self.num_classes = 10 + 1 - self.filters = [16, 16, 32, 64] - self.strides = [1, 2, 2] - - def forward_pass(self, x, input_data_format='channels_last'): - """Build the core model within the graph.""" - if self._data_format != input_data_format: - if input_data_format == 'channels_last': - # Computation requires channels_first. - x = tf.transpose(x, [0, 3, 1, 2]) - else: - # Computation requires channels_last. - x = tf.transpose(x, [0, 2, 3, 1]) - - # Image standardization. - x = x / 128 - 1 - - x = self._conv(x, 3, 16, 1) - x = self._batch_norm(x) - x = self._relu(x) - - # Use basic (non-bottleneck) block and ResNet V1 (post-activation). - res_func = self._residual_v1 - - # 3 stages of block stacking. - for i in range(3): - with tf.name_scope('stage'): - for j in range(self.n): - if j == 0: - # First block in a stage, filters and strides may change. - x = res_func(x, 3, self.filters[i], self.filters[i + 1], - self.strides[i]) - else: - # Following blocks in a stage, constant filters and unit stride. - x = res_func(x, 3, self.filters[i + 1], self.filters[i + 1], 1) - - x = self._global_avg_pool(x) - x = self._fully_connected(x, self.num_classes) - - return x diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_utils.py b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_utils.py deleted file mode 100644 index d3d29dd..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/cifar10_utils.py +++ /dev/null @@ -1,153 +0,0 @@ -# Copyright 2017 The TensorFlow Authors. All Rights Reserved. -# -# Licensed 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. -# ============================================================================== -import collections -import six - -import tensorflow as tf - -from tensorflow.python.platform import tf_logging as logging -from tensorflow.core.framework import node_def_pb2 -from tensorflow.python.framework import device as pydev -from tensorflow.python.training import basic_session_run_hooks -from tensorflow.python.training import session_run_hook -from tensorflow.python.training import training_util -from tensorflow.python.training import device_setter -from tensorflow.contrib.learn.python.learn import run_config - - -# TODO(b/64848083) Remove once uid bug is fixed -class RunConfig(tf.contrib.learn.RunConfig): - def uid(self, whitelist=None): - """Generates a 'Unique Identifier' based on all internal fields. - Caller should use the uid string to check `RunConfig` instance integrity - in one session use, but should not rely on the implementation details, which - is subject to change. - Args: - whitelist: A list of the string names of the properties uid should not - include. If `None`, defaults to `_DEFAULT_UID_WHITE_LIST`, which - includes most properties user allowed to change. - Returns: - A uid string. - """ - if whitelist is None: - whitelist = run_config._DEFAULT_UID_WHITE_LIST - - state = {k: v for k, v in self.__dict__.items() if not k.startswith('__')} - # Pop out the keys in whitelist. - for k in whitelist: - state.pop('_' + k, None) - - ordered_state = collections.OrderedDict( - sorted(state.items(), key=lambda t: t[0])) - # For class instance without __repr__, some special cares are required. - # Otherwise, the object address will be used. - if '_cluster_spec' in ordered_state: - ordered_state['_cluster_spec'] = collections.OrderedDict( - sorted(ordered_state['_cluster_spec'].as_dict().items(), - key=lambda t: t[0]) - ) - return ', '.join( - '%s=%r' % (k, v) for (k, v) in six.iteritems(ordered_state)) - - -class ExamplesPerSecondHook(session_run_hook.SessionRunHook): - """Hook to print out examples per second. - - Total time is tracked and then divided by the total number of steps - to get the average step time and then batch_size is used to determine - the running average of examples per second. The examples per second for the - most recent interval is also logged. - """ - - def __init__( - self, - batch_size, - every_n_steps=100, - every_n_secs=None,): - """Initializer for ExamplesPerSecondHook. - - Args: - batch_size: Total batch size used to calculate examples/second from - global time. - every_n_steps: Log stats every n steps. - every_n_secs: Log stats every n seconds. - """ - if (every_n_steps is None) == (every_n_secs is None): - raise ValueError('exactly one of every_n_steps' - ' and every_n_secs should be provided.') - self._timer = basic_session_run_hooks.SecondOrStepTimer( - every_steps=every_n_steps, every_secs=every_n_secs) - - self._step_train_time = 0 - self._total_steps = 0 - self._batch_size = batch_size - - def begin(self): - self._global_step_tensor = training_util.get_global_step() - if self._global_step_tensor is None: - raise RuntimeError( - 'Global step should be created to use StepCounterHook.') - - def before_run(self, run_context): # pylint: disable=unused-argument - return basic_session_run_hooks.SessionRunArgs(self._global_step_tensor) - - def after_run(self, run_context, run_values): - _ = run_context - - global_step = run_values.results - if self._timer.should_trigger_for_step(global_step): - elapsed_time, elapsed_steps = self._timer.update_last_triggered_step( - global_step) - if elapsed_time is not None: - steps_per_sec = elapsed_steps / elapsed_time - self._step_train_time += elapsed_time - self._total_steps += elapsed_steps - - average_examples_per_sec = self._batch_size * ( - self._total_steps / self._step_train_time) - current_examples_per_sec = steps_per_sec * self._batch_size - # Average examples/sec followed by current examples/sec - logging.info('%s: %g (%g), step = %g', 'Average examples/sec', - average_examples_per_sec, current_examples_per_sec, - self._total_steps) - -def local_device_setter(num_devices=1, - ps_device_type='cpu', - worker_device='/cpu:0', - ps_ops=None, - ps_strategy=None): - if ps_ops == None: - ps_ops = ['Variable', 'VariableV2', 'VarHandleOp'] - - if ps_strategy is None: - ps_strategy = device_setter._RoundRobinStrategy(num_devices) - if not six.callable(ps_strategy): - raise TypeError("ps_strategy must be callable") - - def _local_device_chooser(op): - current_device = pydev.DeviceSpec.from_string(op.device or "") - - node_def = op if isinstance(op, node_def_pb2.NodeDef) else op.node_def - if node_def.op in ps_ops: - ps_device_spec = pydev.DeviceSpec.from_string( - '/{}:{}'.format(ps_device_type, ps_strategy(op))) - - ps_device_spec.merge_from(current_device) - return ps_device_spec.to_string() - else: - worker_device_spec = pydev.DeviceSpec.from_string(worker_device or "") - worker_device_spec.merge_from(current_device) - return worker_device_spec.to_string() - return _local_device_chooser diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/generate_cifar10_tfrecords.py b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/generate_cifar10_tfrecords.py deleted file mode 100644 index d1a599c..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/generate_cifar10_tfrecords.py +++ /dev/null @@ -1,118 +0,0 @@ -# Copyright 2017 The TensorFlow Authors. All Rights Reserved. -# -# Licensed 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. -# ============================================================================== -"""Read CIFAR-10 data from pickled numpy arrays and writes TFRecords. - -Generates tf.train.Example protos and writes them to TFRecord files from the -python version of the CIFAR-10 dataset downloaded from -https://www.cs.toronto.edu/~kriz/cifar.html. -""" - -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - -import argparse -import os -import sys - -import tarfile -from six.moves import cPickle as pickle -from six.moves import xrange # pylint: disable=redefined-builtin -import tensorflow as tf - -CIFAR_FILENAME = 'cifar-10-python.tar.gz' -CIFAR_DOWNLOAD_URL = 'https://www.cs.toronto.edu/~kriz/' + CIFAR_FILENAME -CIFAR_LOCAL_FOLDER = 'cifar-10-batches-py' - - -def download_and_extract(data_dir): - # download CIFAR-10 if not already downloaded. - tf.contrib.learn.datasets.base.maybe_download(CIFAR_FILENAME, data_dir, - CIFAR_DOWNLOAD_URL) - tarfile.open(os.path.join(data_dir, CIFAR_FILENAME), - 'r:gz').extractall(data_dir) - - -def _int64_feature(value): - return tf.train.Feature(int64_list=tf.train.Int64List(value=[value])) - - -def _bytes_feature(value): - return tf.train.Feature(bytes_list=tf.train.BytesList(value=[value])) - - -def _get_file_names(): - """Returns the file names expected to exist in the input_dir.""" - file_names = {} - file_names['train'] = ['data_batch_%d' % i for i in xrange(1, 5)] - file_names['validation'] = ['data_batch_5'] - file_names['eval'] = ['test_batch'] - return file_names - - -def read_pickle_from_file(filename): - with tf.gfile.Open(filename, 'rb') as f: - if sys.version_info >= (3, 0): - data_dict = pickle.load(f, encoding='bytes') - else: - data_dict = pickle.load(f) - return data_dict - - -def convert_to_tfrecord(input_files, output_file): - """Converts a file to TFRecords.""" - print('Generating %s' % output_file) - with tf.python_io.TFRecordWriter(output_file) as record_writer: - for input_file in input_files: - data_dict = read_pickle_from_file(input_file) - data = data_dict[b'data'] - labels = data_dict[b'labels'] - num_entries_in_batch = len(labels) - for i in range(num_entries_in_batch): - example = tf.train.Example(features=tf.train.Features( - feature={ - 'image': _bytes_feature(data[i].tobytes()), - 'label': _int64_feature(labels[i]) - })) - record_writer.write(example.SerializeToString()) - - -def main(data_dir): - print('Download from {} and extract.'.format(CIFAR_DOWNLOAD_URL)) - download_and_extract(data_dir) - file_names = _get_file_names() - input_dir = os.path.join(data_dir, CIFAR_LOCAL_FOLDER) - for mode, files in file_names.items(): - input_files = [os.path.join(input_dir, f) for f in files] - output_file = os.path.join(data_dir, mode + '.tfrecords') - try: - os.remove(output_file) - except OSError: - pass - # Convert to tf.train.Example and write the to TFRecords. - convert_to_tfrecord(input_files, output_file) - print('Done!') - - -if __name__ == '__main__': - parser = argparse.ArgumentParser() - parser.add_argument( - '--data-dir', - type=str, - default='', - help='Directory to download and extract CIFAR-10 to.') - - args = parser.parse_args() - main(args.data_dir) diff --git a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/model_base.py b/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/model_base.py deleted file mode 100644 index 35e52b8..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/with-cifar10-models/ubuntu-18.04/cifar10_estimator_tf_1.13.1/model_base.py +++ /dev/null @@ -1,219 +0,0 @@ -# Copyright 2017 The TensorFlow Authors. All Rights Reserved. -# -# Licensed 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. -# ============================================================================== -"""ResNet model. - -Related papers: -https://arxiv.org/pdf/1603.05027v2.pdf -https://arxiv.org/pdf/1512.03385v1.pdf -https://arxiv.org/pdf/1605.07146v1.pdf -""" -from __future__ import absolute_import -from __future__ import division -from __future__ import print_function - -import tensorflow as tf - - -class ResNet(object): - """ResNet model.""" - - def __init__(self, is_training, data_format, batch_norm_decay, batch_norm_epsilon): - """ResNet constructor. - - Args: - is_training: if build training or inference model. - data_format: the data_format used during computation. - one of 'channels_first' or 'channels_last'. - """ - self._batch_norm_decay = batch_norm_decay - self._batch_norm_epsilon = batch_norm_epsilon - self._is_training = is_training - assert data_format in ('channels_first', 'channels_last') - self._data_format = data_format - - def forward_pass(self, x): - raise NotImplementedError( - 'forward_pass() is implemented in ResNet sub classes') - - def _residual_v1(self, - x, - kernel_size, - in_filter, - out_filter, - stride, - activate_before_residual=False): - """Residual unit with 2 sub layers, using Plan A for shortcut connection.""" - - del activate_before_residual - with tf.name_scope('residual_v1') as name_scope: - orig_x = x - - x = self._conv(x, kernel_size, out_filter, stride) - x = self._batch_norm(x) - x = self._relu(x) - - x = self._conv(x, kernel_size, out_filter, 1) - x = self._batch_norm(x) - - if in_filter != out_filter: - orig_x = self._avg_pool(orig_x, stride, stride) - pad = (out_filter - in_filter) // 2 - if self._data_format == 'channels_first': - orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) - else: - orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) - - x = self._relu(tf.add(x, orig_x)) - - tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) - return x - - def _residual_v2(self, - x, - in_filter, - out_filter, - stride, - activate_before_residual=False): - """Residual unit with 2 sub layers with preactivation, plan A shortcut.""" - - with tf.name_scope('residual_v2') as name_scope: - if activate_before_residual: - x = self._batch_norm(x) - x = self._relu(x) - orig_x = x - else: - orig_x = x - x = self._batch_norm(x) - x = self._relu(x) - - x = self._conv(x, 3, out_filter, stride) - - x = self._batch_norm(x) - x = self._relu(x) - x = self._conv(x, 3, out_filter, [1, 1, 1, 1]) - - if in_filter != out_filter: - pad = (out_filter - in_filter) // 2 - orig_x = self._avg_pool(orig_x, stride, stride) - if self._data_format == 'channels_first': - orig_x = tf.pad(orig_x, [[0, 0], [pad, pad], [0, 0], [0, 0]]) - else: - orig_x = tf.pad(orig_x, [[0, 0], [0, 0], [0, 0], [pad, pad]]) - - x = tf.add(x, orig_x) - - tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) - return x - - def _bottleneck_residual_v2(self, - x, - in_filter, - out_filter, - stride, - activate_before_residual=False): - """Bottleneck residual unit with 3 sub layers, plan B shortcut.""" - - with tf.name_scope('bottle_residual_v2') as name_scope: - if activate_before_residual: - x = self._batch_norm(x) - x = self._relu(x) - orig_x = x - else: - orig_x = x - x = self._batch_norm(x) - x = self._relu(x) - - x = self._conv(x, 1, out_filter // 4, stride, is_atrous=True) - - x = self._batch_norm(x) - x = self._relu(x) - # pad when stride isn't unit - x = self._conv(x, 3, out_filter // 4, 1, is_atrous=True) - - x = self._batch_norm(x) - x = self._relu(x) - x = self._conv(x, 1, out_filter, 1, is_atrous=True) - - if in_filter != out_filter: - orig_x = self._conv(orig_x, 1, out_filter, stride, is_atrous=True) - x = tf.add(x, orig_x) - - tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) - return x - - def _conv(self, x, kernel_size, filters, strides, is_atrous=False): - """Convolution.""" - - padding = 'SAME' - if not is_atrous and strides > 1: - pad = kernel_size - 1 - pad_beg = pad // 2 - pad_end = pad - pad_beg - if self._data_format == 'channels_first': - x = tf.pad(x, [[0, 0], [0, 0], [pad_beg, pad_end], [pad_beg, pad_end]]) - else: - x = tf.pad(x, [[0, 0], [pad_beg, pad_end], [pad_beg, pad_end], [0, 0]]) - padding = 'VALID' - return tf.layers.conv2d( - inputs=x, - kernel_size=kernel_size, - filters=filters, - strides=strides, - padding=padding, - use_bias=False, - data_format=self._data_format) - - def _batch_norm(self, x): - if self._data_format == 'channels_first': - data_format = 'NCHW' - else: - data_format = 'NHWC' - return tf.contrib.layers.batch_norm( - x, - decay=self._batch_norm_decay, - center=True, - scale=True, - epsilon=self._batch_norm_epsilon, - is_training=self._is_training, - fused=True, - data_format=data_format) - - def _relu(self, x): - return tf.nn.relu(x) - - def _fully_connected(self, x, out_dim): - with tf.name_scope('fully_connected') as name_scope: - x = tf.layers.dense(x, out_dim) - - tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) - return x - - def _avg_pool(self, x, pool_size, stride): - with tf.name_scope('avg_pool') as name_scope: - x = tf.layers.average_pooling2d( - x, pool_size, stride, 'SAME', data_format=self._data_format) - - tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) - return x - - def _global_avg_pool(self, x): - with tf.name_scope('global_avg_pool') as name_scope: - assert x.get_shape().ndims == 4 - if self._data_format == 'channels_first': - x = tf.reduce_mean(x, [2, 3]) - else: - x = tf.reduce_mean(x, [1, 2]) - tf.logging.info('image after unit %s: %s', name_scope, x.get_shape()) - return x diff --git a/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/Dockerfile.gpu b/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/Dockerfile.gpu deleted file mode 100644 index 55aa1c9..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/Dockerfile.gpu +++ /dev/null @@ -1,75 +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. - -FROM nvidia/cuda:9.2-base-ubuntu18.04 - -RUN echo "$LOG_TAG update and install basic packages" && \ - apt-get -y update && apt-get install -y --no-install-recommends \ - build-essential \ - curl \ - libfreetype6-dev \ - libpng-dev \ - libzmq3-dev \ - pkg-config \ - rsync \ - software-properties-common \ - unzip \ - vim \ - wget \ - && \ - apt-get install -y locales && \ - locale-gen $LANG && \ - apt-get clean && \ - apt -y autoclean && \ - apt -y dist-upgrade && \ - apt-get install -y build-essential && \ - rm -rf /var/lib/apt/lists/* - -ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -RUN echo "$LOG_TAG Install java8" && \ - apt-get -y update && \ - apt-get install -y openjdk-8-jdk && \ - rm -rf /var/lib/apt/lists/* - -# Install Zeppelin -ENV Z_VERSION="0.7.3" \ - Z_HOME="/zeppelin" - -RUN echo "$LOG_TAG Download Zeppelin binary" && \ - wget -O /tmp/zeppelin-${Z_VERSION}-bin-all.tgz http://archive.apache.org/dist/zeppelin/zeppelin-${Z_VERSION}/zeppelin-${Z_VERSION}-bin-all.tgz && \ - tar -zxvf /tmp/zeppelin-${Z_VERSION}-bin-all.tgz && \ - rm -rf /tmp/zeppelin-${Z_VERSION}-bin-all.tgz && \ - mv /zeppelin-${Z_VERSION}-bin-all ${Z_HOME} -ENV PATH="${Z_HOME}/bin:${PATH}" - -RUN echo "$LOG_TAG Set locale" && \ - echo "LC_ALL=en_US.UTF-8" >> /etc/environment && \ - echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && \ - echo "LANG=en_US.UTF-8" > /etc/locale.conf && \ - locale-gen en_US.UTF-8 - -ENV LANG=en_US.UTF-8 \ - LC_ALL=en_US.UTF-8 - -COPY zeppelin-site.xml $Z_HOME/conf/zeppelin-site.xml -COPY shiro.ini ${Z_HOME}/conf/shiro.ini -RUN chmod 777 -R ${Z_HOME} - -COPY run_container.sh /usr/local/bin/run_container.sh -RUN chmod 755 /usr/local/bin/run_container.sh - -EXPOSE 8080 -CMD ["/usr/local/bin/run_container.sh"] diff --git a/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/run_container.sh b/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/run_container.sh deleted file mode 100644 index 8b90920..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/run_container.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash - -# 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. - -"${Z_HOME}/bin/zeppelin-daemon.sh" start -while true; do - #perform the test - sleep 5 -done diff --git a/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/shiro.ini b/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/shiro.ini deleted file mode 100644 index 89f976a..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/shiro.ini +++ /dev/null @@ -1,120 +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. -# - -[users] -# List of users with their password allowed to access Zeppelin. -# To use a different strategy (LDAP / Database / ...) check the shiro doc at http://shiro.apache.org/configuration.html#Configuration-INISections -# To enable admin user, uncomment the following line and set an appropriate password. -admin = admin, admin -user1 = password2, role1, role2 -user2 = password3, role3 -user3 = password4, role2 - -# Sample LDAP configuration, for user Authentication, currently tested for single Realm -[main] -### A sample for configuring Active Directory Realm -#activeDirectoryRealm = org.apache.zeppelin.realm.ActiveDirectoryGroupRealm -#activeDirectoryRealm.systemUsername = userNameA - -#use either systemPassword or hadoopSecurityCredentialPath, more details in http://zeppelin.apache.org/docs/latest/security/shiroauthentication.html -#activeDirectoryRealm.systemPassword = passwordA -#activeDirectoryRealm.hadoopSecurityCredentialPath = jceks://file/user/zeppelin/zeppelin.jceks -#activeDirectoryRealm.searchBase = CN=Users,DC=SOME_GROUP,DC=COMPANY,DC=COM -#activeDirectoryRealm.url = ldap://ldap.test.com:389 -#activeDirectoryRealm.groupRolesMap = "CN=admin,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"admin","CN=finance,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"finance","CN=hr,OU=groups,DC=SOME_GROUP,DC=COMPANY,DC=COM":"hr" -#activeDirectoryRealm.authorizationCachingEnabled = false - -### A sample for configuring LDAP Directory Realm -#ldapRealm = org.apache.zeppelin.realm.LdapGroupRealm -## search base for ldap groups (only relevant for LdapGroupRealm): -#ldapRealm.contextFactory.environment[ldap.searchBase] = dc=COMPANY,dc=COM -#ldapRealm.contextFactory.url = ldap://ldap.test.com:389 -#ldapRealm.userDnTemplate = uid={0},ou=Users,dc=COMPANY,dc=COM -#ldapRealm.contextFactory.authenticationMechanism = simple - -### A sample PAM configuration -#pamRealm=org.apache.zeppelin.realm.PamRealm -#pamRealm.service=sshd - -### A sample for configuring ZeppelinHub Realm -#zeppelinHubRealm = org.apache.zeppelin.realm.ZeppelinHubRealm -## Url of ZeppelinHub -#zeppelinHubRealm.zeppelinhubUrl = https://www.zeppelinhub.com -#securityManager.realms = $zeppelinHubRealm - -## A same for configuring Knox SSO Realm -#knoxJwtRealm = org.apache.zeppelin.realm.jwt.KnoxJwtRealm -#knoxJwtRealm.providerUrl = https://domain.example.com/ -#knoxJwtRealm.login = gateway/knoxsso/knoxauth/login.html -#knoxJwtRealm.logout = gateway/knoxssout/api/v1/webssout -#knoxJwtRealm.logoutAPI = true -#knoxJwtRealm.redirectParam = originalUrl -#knoxJwtRealm.cookieName = hadoop-jwt -#knoxJwtRealm.publicKeyPath = /etc/zeppelin/conf/knox-sso.pem -# -#knoxJwtRealm.groupPrincipalMapping = group.principal.mapping -#knoxJwtRealm.principalMapping = principal.mapping -#authc = org.apache.zeppelin.realm.jwt.KnoxAuthenticationFilter - -sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager - -### If caching of user is required then uncomment below lines -#cacheManager = org.apache.shiro.cache.MemoryConstrainedCacheManager -#securityManager.cacheManager = $cacheManager - -### Enables 'HttpOnly' flag in Zeppelin cookies -cookie = org.apache.shiro.web.servlet.SimpleCookie -cookie.name = JSESSIONID -cookie.httpOnly = true -### Uncomment the below line only when Zeppelin is running over HTTPS -#cookie.secure = true -sessionManager.sessionIdCookie = $cookie - -securityManager.sessionManager = $sessionManager -# 86,400,000 milliseconds = 24 hour -securityManager.sessionManager.globalSessionTimeout = 86400000 -shiro.loginUrl = /api/login - -[roles] -role1 = * -role2 = * -role3 = * -admin = * - -[urls] -# This section is used for url-based security. For details see the shiro.ini documentation. -# -# You can secure interpreter, configuration and credential information by urls. -# Comment or uncomment the below urls that you want to hide: -# anon means the access is anonymous. -# authc means form based auth Security. -# -# IMPORTANT: Order matters: URL path expressions are evaluated against an incoming request -# in the order they are defined and the FIRST MATCH WINS. -# -# To allow anonymous access to all but the stated urls, -# uncomment the line second last line (/** = anon) and comment the last line (/** = authc) -# -/api/version = anon -# Allow all authenticated users to restart interpreters on a notebook page. -# Comment out the following line if you would like to authorize only admin users to restart interpreters. -/api/interpreter/setting/restart/** = authc -/api/interpreter/** = authc, roles[admin] -/api/configurations/** = authc, roles[admin] -/api/credential/** = authc, roles[admin] -#/** = anon -/** = authc diff --git a/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/zeppelin-site.xml b/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/zeppelin-site.xml deleted file mode 100644 index 2bde161..0000000 --- a/docs/userdocs/yarn/docker/tensorflow/zeppelin-notebook-example/zeppelin-site.xml +++ /dev/null @@ -1,569 +0,0 @@ - - - - - - - - zeppelin.server.addr - 0.0.0.0 - Server address - - - - zeppelin.server.port - 8080 - Server port. - - - - zeppelin.server.ssl.port - 8443 - Server ssl port. (used when ssl property is set to true) - - - - zeppelin.server.context.path - / - Context Path of the Web Application - - - - zeppelin.war.tempdir - webapps - Location of jetty temporary directory - - - - zeppelin.notebook.dir - notebook - path or URI for notebook persist - - - - zeppelin.notebook.homescreen - - id of notebook to be displayed in homescreen. ex) 2A94M5J1Z Empty value displays default home screen - - - - zeppelin.notebook.homescreen.hide - false - hide homescreen notebook from list when this value set to true - - - - zeppelin.notebook.collaborative.mode.enable - true - Enable collaborative mode - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - zeppelin.notebook.storage - org.apache.zeppelin.notebook.repo.GitNotebookRepo - versioned notebook persistence layer implementation - - - - zeppelin.notebook.one.way.sync - false - If there are multiple notebook storages, should we treat the first one as the only source of truth? - - - - zeppelin.interpreter.dir - interpreter - Interpreter implementation base directory - - - - zeppelin.interpreter.localRepo - local-repo - Local repository for interpreter's additional dependency loading - - - - zeppelin.interpreter.dep.mvnRepo - http://repo1.maven.org/maven2/ - Remote principal repository for interpreter's additional dependency loading - - - - zeppelin.dep.localrepo - local-repo - Local repository for dependency loader - - - - zeppelin.helium.node.installer.url - https://nodejs.org/dist/ - Remote Node installer url for Helium dependency loader - - - - zeppelin.helium.npm.installer.url - http://registry.npmjs.org/ - Remote Npm installer url for Helium dependency loader - - - - zeppelin.helium.yarnpkg.installer.url - https://github.com/yarnpkg/yarn/releases/download/ - Remote Yarn package installer url for Helium dependency loader - - - - zeppelin.interpreters - org.apache.zeppelin.spark.SparkInterpreter,org.apache.zeppelin.spark.PySparkInterpreter,org.apache.zeppelin.rinterpreter.RRepl,org.apache.zeppelin.rinterpreter.KnitR,org.apache.zeppelin.spark.SparkRInterpreter,org.apache.zeppelin.spark.SparkSqlInterpreter,org.apache.zeppelin.spark.DepInterpreter,org.apache.zeppelin.markdown.Markdown,org.apache.zeppelin.angular.AngularInterpreter,org.apache.zeppelin.shell.ShellInterpreter,org.apache.zeppelin.file.HDFSFileInterpreter,org.apache.zeppelin.flink.FlinkInterpreter,,org.apache.zeppelin.python.PythonInterpreter,org.apache.zeppelin.python.PythonInterpreterPandasSql,org.apache.zeppelin.python.PythonCondaInterpreter,org.apache.zeppelin.python.PythonDockerInterpreter,org.apache.zeppelin.lens.LensInterpreter,org.apache.zeppelin.ignite.IgniteInterpreter,org.apache.zeppelin.ignite.IgniteSqlInterpreter,org.apache.zeppelin.cassandra.CassandraInterpreter,org.apache.zeppelin.geode.GeodeOqlInterpreter,org.apache.zeppelin.jdbc.JDBCInterpreter,org.apache.zeppelin.kylin.KylinInterpreter,org.apache.zeppelin.elasticsearch.ElasticsearchInterpreter,org.apache.zeppelin.scalding.ScaldingInterpreter,org.apache.zeppelin.alluxio.AlluxioInterpreter,org.apache.zeppelin.hbase.HbaseInterpreter,org.apache.zeppelin.livy.LivySparkInterpreter,org.apache.zeppelin.livy.LivyPySparkInterpreter,org.apache.zeppelin.livy.LivyPySpark3Interpreter,org.apache.zeppelin.livy.LivySparkRInterpreter,org.apache.zeppelin.livy.LivySparkSQLInterpreter,org.apache.zeppelin.bigquery.BigQueryInterpreter,org.apache.zeppelin.beam.BeamInterpreter,org.apache.zeppelin.pig.PigInterpreter,org.apache.zeppelin.pig.PigQueryInterpreter,org.apache.zeppelin.scio.ScioInterpreter,org.apache.zeppelin.groovy.GroovyInterpreter - Comma separated interpreter configurations. First interpreter become a default - - - - zeppelin.interpreter.group.order - spark,md,angular,sh,livy,alluxio,file,psql,flink,python,ignite,lens,cassandra,geode,kylin,elasticsearch,scalding,jdbc,hbase,bigquery,beam,groovy - - - - - zeppelin.interpreter.connect.timeout - 30000 - Interpreter process connect timeout in msec. - - - - zeppelin.interpreter.output.limit - 102400 - Output message from interpreter exceeding the limit will be truncated - - - - zeppelin.ssl - false - Should SSL be used by the servers? - - - - zeppelin.ssl.client.auth - false - Should client authentication be used for SSL connections? - - - - zeppelin.ssl.keystore.path - keystore - Path to keystore relative to Zeppelin configuration directory - - - - zeppelin.ssl.keystore.type - JKS - The format of the given keystore (e.g. JKS or PKCS12) - - - - zeppelin.ssl.keystore.password - change me - Keystore password. Can be obfuscated by the Jetty Password tool - - - - - - zeppelin.ssl.truststore.path - truststore - Path to truststore relative to Zeppelin configuration directory. Defaults to the keystore path - - - - zeppelin.ssl.truststore.type - JKS - The format of the given truststore (e.g. JKS or PKCS12). Defaults to the same type as the keystore type - - - - - - zeppelin.server.allowed.origins - * - Allowed sources for REST and WebSocket requests (i.e. http://onehost:8080,http://otherhost.com). If you leave * you are vulnerable to https://issues.apache.org/jira/browse/ZEPPELIN-173 - - - - zeppelin.anonymous.allowed - false - Anonymous user allowed by default - - - - zeppelin.username.force.lowercase - false - Force convert username case to lower case, useful for Active Directory/LDAP. Default is not to change case - - - - zeppelin.notebook.default.owner.username - - Set owner role by default - - - - zeppelin.notebook.public - true - Make notebook public by default when created, private otherwise - - - - zeppelin.websocket.max.text.message.size - 1024000 - Size in characters of the maximum text message to be received by websocket. Defaults to 1024000 - - - - zeppelin.server.default.dir.allowed - false - Enable directory listings on server. - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/workbench/HowToRun.md b/docs/workbench/HowToRun.md deleted file mode 100644 index 4ef2cb7..0000000 --- a/docs/workbench/HowToRun.md +++ /dev/null @@ -1,114 +0,0 @@ - -# How To Run Submarine Workbench -We provide two methods to launch Submarine Workbench -* Method 1: Run Submarine Workbench on docker -* Method 2: Run Submarine Workbench without docker - -# Run Submarine Workbench on docker - -By using the official images of Submarine, only a few docker commands are required to launch **Submarine Workbench**. The document includes information about how to launch the Submarine Workbench via the new docker images and the information about how to switch between different Submarine Workbench versions(version Vue & version Angular). - -### Two versions of Submarine Workbench -1. Angular (default) -2. Vue (This is the old version, and it will be replaced by version Angular in the future.) -#### (WARNING: Please restart a new **incognito window** when you switch to different versions of Submarine Workbench) -### Launch the Submarine Workbench(Angular) -* It should be noted that since Submarine Workbench depends on the Submarine database, so you need to run the docker container of the Submarine database first. -``` -docker run -it -p 3306:3306 -d --name submarine-database -e MYSQL_ROOT_PASSWORD=password apache/submarine:database- -docker run -it -p 8080:8080 -d --link=submarine-database:submarine-database --name submarine-server apache/submarine:server- -``` -* The login page of Submarine Workbench will be shown in ```http://127.0.0.1:8080```. -### Check the data in the submarine-database -* Step1: Enter the submarine-database container -``` -docker exec -it submarine-database bash -``` -* Step2: Enter MySQL database -``` -mysql -uroot -ppassword -``` -* Step3: List the data in the table -``` -// list all databases -show databases; - -// choose a database -use ${target_database}; - -// list all tables -show tables; - -// list the data in the table -select * from ${target_table}; -``` -# Run Submarine Workbench without docker -### Run Submarine Workbench - -``` -cd submarine -./bin/submarine-daemon.sh [start|stop|restart] -``` -To start workbench server, you need to download MySQL jdbc jar and put it in the -path of workbench/lib for the first time. Or you can add parameter, getMysqlJar, -to get MySQL jar automatically. -``` -cd submarine -./bin/submarine-daemon.sh start getMysqlJar -``` - -### submarine-env.sh - -`submarine-env.sh` is automatically executed each time the `submarine-daemon.sh` script is executed, so we can set the `submarine-daemon.sh` script and the environment variables in the `SubmarineServer` process via `submarine-env.sh`. - -| Name | Variable | -| ------------------- | ------------------------------------------------------------ | -| JAVA_HOME | Set your java home path, default is `java`. | -| SUBMARINE_JAVA_OPTS | Set the JAVA OPTS parameter when the Submarine Workbench process starts. If you need to debug the Submarine Workbench process, you can set it to `-agentlib:jdwp=transport=dt_socket, server=y,suspend=n,address=5005` | -| SUBMARINE_MEM | Set the java memory parameter when the Submarine Workbench process starts. | -| MYSQL_JAR_URL | The customized URL to download MySQL jdbc jar. | -| MYSQL_VERSION | The version of MySQL jdbc jar to downloaded. The default value is 5.1.39. It's used to generate the default value of MYSQL_JDBC_URL | - -### submarine-site.xml - -`submarine-site.xml` is the configuration file for the entire `Submarine` system to run. - -| Name | Variable | -| ---------------------------------- | ------------------------------------------------------------ | -| submarine.server.addr | Submarine server address, default is `0.0.0.0` | -| submarine.server.port | Submarine server port, default `8080` | -| submarine.ssl | Should SSL be used by the Submarine servers?, default `false` | -| submarine.server.ssl.port | Server ssl port. (used when ssl property is set to true), default `8483` | -| submarine.ssl.client.auth | Should client authentication be used for SSL connections? | -| submarine.ssl.keystore.path | Path to keystore relative to Submarine configuration directory | -| submarine.ssl.keystore.type | The format of the given keystore (e.g. JKS or PKCS12) | -| submarine.ssl.keystore.password | Keystore password. Can be obfuscated by the Jetty Password tool | -| submarine.ssl.key.manager.password | Key Manager password. Defaults to keystore password. Can be obfuscated. | -| submarine.ssl.truststore.path | Path to truststore relative to Submarine configuration directory. Defaults to the keystore path | -| submarine.ssl.truststore.type | The format of the given truststore (e.g. JKS or PKCS12). Defaults to the same type as the keystore type | -| submarine.ssl.truststore.password | Truststore password. Can be obfuscated by the Jetty Password tool. Defaults to the keystore password | -| workbench.web.war | Submarine Workbench web war file path. | - - - -### Compile - -[Build From Code Guide](../development/BuildFromCode.md) - -```$xslt -cd submarine/submarine-dist/target/submarine-dist-/submarine-dist-/ -./bin/submarine-daemon.sh [start|stop|restart] -``` diff --git a/docs/workbench/README.md b/docs/workbench/README.md deleted file mode 100644 index 77a3379..0000000 --- a/docs/workbench/README.md +++ /dev/null @@ -1,177 +0,0 @@ - - -English | [简体中文](./README.zh-CN.md) - -# Submarine Workbench Introduction - -Submarine Workbench is a WEB system for data scientists. -Data scientists can interactively access notebooks, submit/manage jobs, manage models, create model training workflows, access data sets, and more through Submarine Workbench. - -## Register - -Everyone who needs to use Submarine for machine learning algorithm development can log in to Submarine Workbench's WEB homepage. On the homepage, click the registration link, fill in the user name, email address and password to register the user. At this time, the user status is `waiting for approval` status. - -After receiving the registration request from the user in Submarine Workbench, the administrator sets the operation authority according to the user's needs, sets the user's organization and allocates resources, and sets the user status to `pass the audit`. The user can log in to the Submarine Workbench. Different users have different permission. - -## Login - -Each Submarine user logs in to the Home page of Submarine Workbench by entering their username and password on the Login page. - -## Home - -In the Submarine Workbench Home page, the top level shows the user's resource usage and task execution through four charts. - -In the `Quick Start` list, the most commonly used feature links in the Workbench are displayed so that users can work quickly. - -In the `Open Recent` list, there are nine items that the user has used recently, so you can work quickly. - -At `What's New?` In the list, some of the latest features and project information released by Submarine are displayed to help you understand the latest developments in the Submarine project. - -## Workspace - -Workspace consists primarily of five tab pages, with the total number of items in each tab page's title. - -### Project - -In the Project page, all the projects created by the user themselves are displayed as cards. - -![image-20191007161424534](assets/workspace-project.png) - -Each Project card consists of the following sections: - -1. **Project Type**:Submarine currently supports six types of machine learning algorithm frameworks and development languages: `Notebook`, `Python`, `R`, `Scala`, `Tensorflow`, and `PyTorch`, which are identified by corresponding icons in the project card. -2. **Project Tags**:Users can tag each Project with different tags for easy searching and management. -3. **Github/Gitlab integrated**:Submarine Workbench is system integrated with `Github`/`Gitlab`, and each Project can perform `Watch`, `Star`, `Fork`, and `Comment `operations in Workbench. - + **Watch**:[TODO] - + **Star**:[TODO] - + **Fork**:[TODO] - + **Comment**:Users can comment on the project. -4. **Edit**:Users can open projects in **Notebook** and perform algorithm development by double-clicking on the project or by clicking the **Edit** button. -5. **Download**:The user downloads the project package locally by clicking the **Download** button. -6. **Setting**:Edit project information such as project name, profile, visibility level and permissions. -7. **Delete**:Delete the project and all included files. - -#### Add New Project - -Clicking the **Add New Project** button on the project page will display the guide page for creating the project, and you can create a new project in just three steps. - -**Step 1**: Fill in the project name and project description in the **Base Information** step. - -![image-20191007171638338](assets/workspace-project-step1.png) - -+ **Visibility**: Set the visibility level of the item externally - - + **Private**: (Default) Set to private project, and all the files included in the project are not publicly displayed. but the execution result of the project can be individually set and exposed in Notebook, so that others can view the visual report of the project. - + **Team**: Set to team project, select the team name in the team selection box, and other members of the team can access the project according to the set permissions. - + **Public**: Set to public project, all users in Workbench can view this project through search. -+ **Permission**: Set the external access rights of the project. The permission setting interface will appear only when the **Visibility** of the project is set to **Team** or **Public**. - - + **Can View** - - When the project's **Visibility** is set to **Team**, other members of the team can **only view** the files for this project. - - When the project's **Visibility** is set to **Public**, other members of the Workbench can **only view** the files for this project. - - + **Can Edit** - - When the project's **Visibility** is set to **Team**, other members of the team can **view** and **edit** the files for this project. - - When the project's **Visibility** is set to **Public**, other members of the Workbench can **view** and **edit** the files for this project. - - + **Can Execute** - - When the project's **Visibility** is set to **Team**, other members of the team can **view**, **edit**, and **execute** the project's files. - - When the project's **Visibility** is set to **Public**, other members of the Workbench can **view**, **edit**, and **execute** the project's files. - -**Step 2**: In the Initial Project step, Workbench provides four ways to initialize the project. - -+ **Template**: Workbench Project templates with several different development languages and algorithm frameworks are built in. You can choose any template to initialize your project and you can execute it directly in Notebook without any modification. It is especially suitable for novices to experience quickly. - - ![image-20191007184749193](assets/workspace-project-step2-template.png) - -+ **Blank**:Create a blank project, and later we can manually add the project's file in Notebook - - ![image-20191007184811389](assets/workspace-project-step2-blank.png) - -+ **Upload**: Initialize your project by uploading a file in notebook format that is compatible with the **Jupyter Notebook** and **Zeppelin Notebook** file formats. - - ![image-20191007184825531](assets/workspace-project-step2-upload.png) - -+ **Git Repo**: Fork a file in the repository to initialize the project in your **Github**/**Gitlab** account. - - ![image-20191007184840989](assets/workspace-project-step2-git.png) - -**Step 3**:Preview the included files in the project - -![image-20191007191205660](assets/workspace-project-step3.png) - -+ **Save**: Save the project to Workspace. -+ **Open In Notebook**: Save the project to Workspace and open the project with Notebook. - -### Release - -[TODO] - -### Training - -[TODO] - -### Team - -[TODO] - -### Shared - -[TODO] - -## Interpreters - -[TODO] - -## Job - -[TODO] - -## Data - -[TODO] - -## Model - -[TODO] - -## Manager - -### User - -[TODO] - -### Team - -[TODO] - -### Data Dict - -[TODO] - -### Department - -[TODO] - -## How to run workbench - -[How To Run Submarine Workbench Guide](./HowToRun.md) \ No newline at end of file diff --git a/docs/workbench/README.zh-CN.md b/docs/workbench/README.zh-CN.md deleted file mode 100644 index edebaf9..0000000 --- a/docs/workbench/README.zh-CN.md +++ /dev/null @@ -1,176 +0,0 @@ - - -[English](./README.md) | 简体中文 - -# Submarine Workbench Introduction - -`Submarine Workbench` 是为数据科学家设计的 WEB 系统。数据科学家可以通过 `Submarine Workbench` 进行交互式的访问 `Notebook`,提交/管理 Job,管理模型,创建模型训练工作流,访问数据集等。 - -## Register - -每个需要使用 Submarine 进行机器学习算法开发的用户,都可以登录 `Submarine Workbench` 的 WEB 首页,在首页上,点击注册链接,填写用户名、注册邮箱和密码就可以完成注册,但此时用户状态为 `等待审核` 状态。 - -管理员在 `Submarine Workbench` 中接收到用户的注册请求后,设置用户的操作权限,所属机构部门和分配资源,设置用户状态为 `审核通过` 后,用户才可以登录 Submarine Workbench。 - -## Login - -每个 Submarine 的用户在 `Login` 页面中输入用户名和密码,登录到 `Submarine Workbench` 的首页 `Home`。 - -## Home - -在 `Submarine Workbench` 的 `Home` 首页中,顶层通过四个图表显示了用户的资源的使用情况和任务执行的情况。 - -在 `Quick Start` 列表中,显示了 Workbench 中最常使用的功能链接,方便用户可以快速的进行工作。 - -在 `Open Recent` 列表中,显示了用户最近使用过的九个项目,方便你快速的进行工作。 - -在 `What‘s New?` 列表中,显示了 Submarine 最新发布的一些功能特性和项目信息,方便你了解 Submarine 项目的最新进展。 - -## Workspace - -Workspace 主要有五个 Tab 页组成,每个 Tab 页的标题中显示了各自项目的总数。 - -### Project - -在 Project 页面中,以卡片的方式显示了用户自己创建的所有 Project。 - -![image-20191007161424534](assets/workspace-project.png) - -每个 Project 卡片由以下部分内容组成: - -1. **Project 类型**:目前 Submarine 支持 `Notebook`、`Python`、`R`、`Scala`、`Tensorflow` 和 `PyTorch` 这六种类型的机器学习算法框架和开发语言,在项目卡片中以对应的图标进行标识。 -2. **Project Tags**:用户可以为每个 Project 打上不同的 `Tag` 标签,方便查找和管理。 -3. **Github/Gitlab 集成**:Submarine Workbench 与 `Github`/`Gitlab` 进行了系统集成,每个 Project 都可以在 Workbench 中进行 `Watch`、`Star`、`Frok` 和 `Comment` 操作。 - + **Watch**:[TODO] - + **Star**:[TODO] - + **Fork**:[TODO] - + **Comment**:用户可以在项目中进行评论 -4. **Edit**:用户通过双击项目或者点击 `Edit` 按钮,可以在 `Notebook` 中打开项目,进行算法开发等操作。 -5. **Download**:用户通过点击 `Download` 按钮,将项目打包下载到本地。 -6. **Setting**:编辑项目信息,例如项目的名字,简介,分享级别和权限。 -7. **Delete**:删除项目中所有包含的文件。 - -#### Add New Project - -在项目页面中点击 `Add New Project` 按钮,将会显示出创建项目的引导页面,只需要三个步骤就可以创建一个新的项目。 - -第一步:在 **Base Information** 步骤中填写项目名称、项目简介。 - -![image-20191007171638338](assets/workspace-project-step1.png) - -+ **Visibility**: 设置项目对外的可见级别 - - + **Private**: (默认)设置为私有项目,不对外公开项目中包含的所有文件,但是可以在 **Notebook** 中将项目的执行结果单独设置公开,方便其他人查看项目的可视化报告。 - + **Team**: 设置为团队项目,在团队选择框中选择团队的名称,团队的其他成员可以根据设置的权限访问这个项目。 - + **Public**: 设置为公开项目,**Workbench** 中的所有用户都可以通过搜索查看到这个项目。 -+ **Permission**: 设置项目对外的访问权限,只有将项目的 **Visibility** 设置为 **Team** 或 **Public** 的时候,才会出现权限设置界面。 - - + **Can View** - - 当项目的 **Visibility** 设置为 **Team** 时,团队中其他成员都只能**查看**这个项目的文件。 - - 当项目的 Visibility 设置为 **Public** 时,**Workbench** 中其他成员都只能**查看**这个项目的文件。 - - + **Can Edit** - - 当项目的 **Visibility** 设置为 **Team** 时,团队中其他成员都可以**查看**、**编辑**这个项目的文件。 - - 当项目的 **Visibility** 设置为 **Public** 时,**Workbench** 中其他成员都可以**查看**、**编辑**这个项目的文件。 - - + **Can Execute** - - 当项目的 **Visibility** 设置为 **Team** 时,团队中其他成员都可以**查看**、**编辑**、**执行**这个项目的文件。 - - 当项目的 **Visibility** 设置为 **Public** 时,**Workbench** 中其他成员都可以**查看**、**编辑**、**执行**这个项目的文件。 - -第二步:在 **Initial Project** 步骤中,**Workbench** 提供了四种项目初始化的方式 - -+ **Template**: **Workbench** 内置了几种不同开发语言和算法框架的项目模版,你可以选择任何一种模版初始化你的项目,无需做任何修改就可以直接在 **Notebook** 中执行,特别适合新手进行快速的体验。 - - ![image-20191007184749193](assets/workspace-project-step2-template.png) - -+ **Blank**:创建一个空白的项目,稍后,我们可以通过在 **Notebook** 中手工添加项目的文件 - - ![image-20191007184811389](assets/workspace-project-step2-blank.png) - -+ **Upload**: 通过上传 **notebook** 格式的文件来初始化你的项目,**notebook** 格式兼容 **Jupyter Notebook** 和 **Zeppelin Notebook** 文件格式。 - - ![image-20191007184825531](assets/workspace-project-step2-upload.png) - -+ **Git Repo**: 在你的 **Github**/**Gitlab** 账号中 **Fork** 一个仓库中的文件内容来初始化项目。 - - ![image-20191007184840989](assets/workspace-project-step2-git.png) - -第三步:预览项目中的所包含的文件 - -![image-20191007191205660](assets/workspace-project-step3.png) - -+ **Save**: 将项目保存到 Workspace 中。 -+ **Open In Notebook**: 将项目保存到 **Workspace** 中,并用 **Notebook** 打开项目。 - -### Release - -[TODO] - -### Training - -[TODO] - -### Team - -[TODO] - -### Shared - -[TODO] - -## Interpreters - -[TODO] - -## Job - -[TODO] - -## Data - -[TODO] - -## Model - -[TODO] - -## Manager - -### User - -[TODO] - -### Team - -[TODO] - -### Data Dict - -[TODO] - -### Department - -[TODO] - -## How to run workbench - -[How To Run Submarine Workbench Guide](./HowToRun.md) \ No newline at end of file diff --git a/docs/workbench/assets/workspace-project-step1.png b/docs/workbench/assets/workspace-project-step1.png deleted file mode 100644 index c090e7cf95e1de6e44eb8fd18a559966c6083240..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 215256 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�M$DRuY(!Ph! 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ξn;%-4FL&3 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
      }a}egD}^mo?yr`f!7)Y(meH>!bBY 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
      LgyyRe>J9h{sWTQuo5Zye1z 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%0AC*7x7l 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 z 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 diff --git a/docs/workbench/assets/workspace-project-step2-template.png b/docs/workbench/assets/workspace-project-step2-template.png deleted file mode 100644 index f28d4cf91ff445773e09b8f5e94fd5a01b81c09f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 159251 zcmeFZbySpF+c=D%0wMxZ0#YI%(jqyOQYr#UcM3y?!~g?~h;&(WsYsW@(B0iV#8A>* zGr$1zjd9NVJm30$N4`IQ?>cMUupK zI5?M72`*!Q2^;r{#=*JZWhEo??6Hgt)3cWj7FM?AI5>CSnHd}3eav;I&BVmmxUHL$ z&U3Xn0Q%;1nZ{S-UX?9%1Yda9UUxm&JMkDyFZMd4 z5-Ny$smUrWI7>gc;ym5(o%i>C1bq(3)*h^MB#`VybClh2*6jPDL#tiTOE?R(4jM54cH zetbnCwnVK?Wu6ZFct-?RMo6PxRI2n-(e2_#3iSfKIw}hFZFPM(U$0RBNmHfpeU*R| zfJo9#qqaKZtggDcNk3A>_?EhF-XwT_O&o7xJH#(v_OZDfV7GMTdg%4pYrvD1he1Y( z7Pc2n_C)ykz9G;U42%{J4}JS`KrJ~2gQ;G|U}{5sk$Cg#(${cqgREx4Y_5}F$wBD& zNXHomhl=&b--XAjx3_U{q;Ve0K2UeRus%iNl4PF5du)X1!+A(*_s;iG)OM@Htflz=CnlaFp^2&doqWwtkTOZX!nyFL7d~0v6`86Y^Yf0E{=~%OzUX(Jseg`XyiO`kM->xF zc)smOOK*1p&#~=a>j$thxeIaeP?MhvROwfBU4CR$XU8>Tm6hzsjVbWA&P0}TLgGuv z!)LbG6)T#A`3!I&E{T*hb4Fs!K?t#rWi?8}g@yzOyfyuhEDnR6X^S zKQ90*WLWkHjt8HYTm3Ix>`mXESrhvsWB=Ng{4FepTo**0llzRX5D_FR&DM{)o)hXY zS?O)t+t!=R=c9ie1r@1yLW5ty+BwN`Bly(}{L#>)%=r-N%fW?(*B{?#^qlg>cl|;= z>|JJg;GZ?cPYBhtvG86YsmVX5$Qj?peGO!J?o4t{dZmBE!b`#6Wx#$;gg&}>u~+`f zBEvc9_0$9lFNgSHh4MKO`i_7gIb60|;+*t~ZNS2-=DzKkbWVi+D**qD*?$G#pKV*+ zql*?1-`UQs;BMn4@yeYHB7;&ecju^UBix0+m`P4D-fF6TSZQf3hnH=&2jQngxEHSV8F+IO zeX5T3@Arv1J+)OhIskS@l+El1h4zNHW2_dIs_3M!!np%O-aeNwtI5wSBnJUXPKRkd527|3X4RCt7c*dF z|BTna#MhVrm&37SQK7p2+kI!ayR8Cn(7^zW2wFq%zH%!=OhDrD{Nn9eZ)$=2($g9D zbI)sUZ+xlSkiufNHc0z460RCIPa&q5mIh1%rUNr*ZOyQl7DBcppGyfEs}dDSQSZDv zAj6b%&oz%m=xYta)QGd9)j!y+W7T6zk7nojC{|quDv>)u7|EYB3LLFiXR{7}w1$O; zV^#84nRV1(DETMNS@)G%dk009QqF6NIXiI`#7>|nI4*C5wHo_M#gG2!)4!%S9w5?3 z`vnz9Bx3B-Y1Q&d`YEwKf`LljxhNL9j|APhcdN|%lUYn3blEqunNKPsa5SId-%hqB6-{_U&s)p>k2pq5;v>KuOyQTBf7T}-TEytvH+a!r#)MMPL`EeG{vfaF0Y z)uYLoSxMvvz+r_(9pdL;+XZ?=WT3Q4Z{1v_prBx*=l9u3Kra5m?3_251QwnZ{jg)13{j-SYr^ltqZ@GaUD|O`s zQrDfPKj3Wz!azGZWTT0~j;*dJ*^>!Hye)-_nB(L2^mhme!7Z!=%$9*{;iNfwF$xpR zn+``q+1hTy4VmQ9fHy^X3 z;z@=X*P{u&^4W#FJ$-Y{WJ!|K&)M@$zdvO2{&BJ9b!6{@^+Kz7v%4#BvmlUI3|R@$#%QD7GQdA{<7k%9 z@AQ1saDFi@j-V>_S_}~>n5`H)e(Gavt(+6NcqQ)mgG#o@dswN*3F3R$Bhf#A==kE2 zyci4ISi=ab6(fvL$x8Lm0UWq7>LWuz)zW83u(qes3T0re)VR0gNyzThYnt8wLCGoT zEcsINZeW0`+U#6{WC>Hns9i8Ckp&56QG6PTN*nXinyBk?SStNqIG!L`Ax_I^Ku)|6 zSEN4@kNGk_*AaaLU9C|tn_Usb$+HTgoHnE>olNeQitXmoM&~y}zrRj|^s=>~*f1$_ zlz(8pI&DJn!~Nw_uUTOhA0#6Sf{*iy2pAqk7l2HpP*+5K-H4-Rp*oeSMyDP*tnMkL z!e?$fC~n){z^mForfJ9kJ8LTVsgkBii#hy0bjJ=?!z6?tAXl!_ExZ)RMv&z?3r#4_djv-RC=h1AN%{i^UGAXZ`RE1luU65Db!i308E$-8gWGuN5;fd z@6R3dpUB$qwA5~ThngxOg-uEb_p0OgzFcAbXT$6JoMO2vy5(k`xsYO~r#YyJaf%YU z6X_Xg=%v}zO)WpUExn?FznNh(P~5yB1JRhIn;IQj8bVc&%a=~IkH@D81&S5&+J-08 zs59K|Ed1cK6wUtSprNKu$J$1os!6Pznabz5#Ql4+Z9rZja$>%N7YMtjw8)*{bhorV zzcRXI6(7J3J2OGrJ-;s~D0^BJV0q`rro!=gZWTIs%-zOD4qe(*!TrI75FU~oaWo+g zacHU9WB6yFF5r5QA7*TrY4t|~SP9ISta@nhY#y zUQF5G`daK+Se_csYa24|Ezw^is8_T5IjzmXuUFoCfQ zMbb;0E?Fx(g!xk!$?l<711WIVe8dty+jTCE9e+TMmFJ8pD-8(?0S`{>?fj4n~Xevuk`1)EFJ2aMj6Ne3e%zAOv(Rl_(PgTkP0+TBzMO zD&mV*W=!xH8sRSIi7$Nt^Q0e3GbL;E-00 zh_0FP>84a07(fqvYlD@{Q)Yui_u{`Syk4{vL)C3fn?M|n4c7k@7V(9WA08F7T?SAFDEOD9(=UU$QXfoCpjrL;+q;gE}%X=s)p_k9KUDr+i+`Mg;C2s-sjSs zJhkLX9;N%TQnt2Q_Pu59sdcES*~Hw~&`TXSOtrJys7%5W{VROCe(85OFH zkIu~^!J4h+DIAm>$u#bEWnSi9^LwGDNG9e?Urv(AH4jgA z`)kK2(aPkAGW#>u=VDR_JNUY1cbZa~DblrRH$d@810)Zc<_#yE@-!XHSZp0YhgMq$ zgR$E9U|5RBKh)C)%DiY)QRObvbd)pK@37Bfr0Ze7Folxu2Jr@`u|6nn2xmo6AV8(9 z%wHcI}<-MXRZD|O`4G%d*=t+H%~E;#d+?To8NgOPGx+j?Y?2mXj255=Zw z14<`#Be(BF7#7p+NY4WLP6!0E9^~NT!j}kHD)*X_X_*QQdoHgY(tQ4K80HYX~Z>`y|XR(f00lh(ZLXuG7P*tIDFH48*k; ziqmbCtCPo07CNudh$(g#O&5z(-RFu#&UG1Uj5Dl$4hYpvE#IGO#j@746|cm-+|%TY ziF=VU{ynN6HlQbFM5ae1Pf|4Kl#DDnJPg4_Qs9}xeeudXtkYsYhO~?_=LSXhii~b& zEiwo6Jb7}XXESU-#njDg#nz2-DH>AtWI1j>65K6UHn$s6Wd1rP%}9D;)~B| zddIxuUVG-ytd)Lk_eE*%Q+AS)58ZrjgUzG##-pB%*_M)=dRK}oSwWrPHD z2P+GKNeFaq1?uYzTw1Esel2Xo`Tbhm2y~;ae0}8XaLLKL3$|Ux%3g(?KUJuFkoZ2A1AQ>x1=Bh)G`f!Xjl8_XC0kVJDBSB&Kn1WNi3m z+>*o?Z=JcH01UkuBWuDA1TOXlFjeiv*_mq<>-Rk~mrpBHytdU{WgFa8z!jWc9yK^@ zuE^q3Zc5nRsns0a%X>3+VRbUyeXb$8j5Xn%jj>f9F?6$@6}sENbt9@I**31tff9Lq z)*cO>e9w*2E(|jpd>yTQ2)3EWQ`AHml^uPKSZ;p}+eT97{?`EBtSI2&#Uaw zpRK)@LWP_jto>k6iWE52qP)g?+|Z)!aU}gLn?I*|VNS`(Tqr>gQnYlI){pFJ&=x7J zO*7eY0nTQQJL}GuF2t}}V9W~5yx#+uZeU4cOeDs$bo8lt8H=-vVhftb04E7VUgu6&wLk7I!C|^qD>oVI-&=Dw zivSAMde6YI(Sj2=35(&BfTL|Lss*-XHWdT4pH@wfA-jgfYaYf?^A8VY;8RCA$>>BzMT5(GJfg->sxE4LyF z`*e0%Du~X!^`#09dBEMTfxOfccNh?QlPlnt>_S$ZQY7{;I7Q!(%yct5tg;ERP7E(oJDYo6i^bs#FB+vFfAXd$f? zHV=3IWA3Kq@u!Sk$SA}7l6{xOohKJy19afDt$LFVP!4vx2W{nUf?|@@X2Vdw!Kj<~)jgIE6hGv_*rsPRtb< zHK#3r^PGCPB2dE2zF_TOMM@u zIdD3aSn#bnJdT1QTbpIam~}m8v+k@lYm}NRe!lin1)1Ain(omZq6c=dP>iH11=Tn_ zb`l2Lg+>7Jdt9Z;xkI4Y0i7|;Avu>V{3nhFBYe??o=+Apghms=7C7*GA}k%2dN!9= zHX}CQ*XA49h8`GIiBX*dCfps@zaGk)nIj^!T{0UFIF6yF7a1=_Jya++ryA5766YJ# zSvcs1X!F|x+$@M1uG!J$^&-@yIO$F;Pgfaz_g~H!NdCBsyuo=j@jD0-I?E8z@3OY{s7D;;=73pf;%h*H#vHZXh_R)L8w z%fEF))6D~((A|HQlWdtu|7g`k0zm~iT39nR7&fQxv}ZUFwlmVz71A4hz_{Hv!u6ua zoq##juVesHI2)~Nk>W8@73;079DMnIZuz#Nuo(W z@>O2nZZ_N*i92TCm-J?AE{uGn#`cvC7o8aJen!R3djfAFTluBnoAiif)-;6L!_v#x|-A;cCK&WKp zU7xazU~QMpdJ8mdy`MZdNa5MT1HG4e+6OP`{}6+@fSbz1w?s_2W*G4>VL0A>kiYsf zjDk;bVz5`i%gb!bXk29itQ>y0+JHFSIRsT5OEP%VtN~+pYzZ2Q*+*lH4*HJAkPTlf z#h@qKpSA{6qj{@FK*!6mYQkW33q{?1f4~<(J;uWO&x9gHy+4Osxz z3S8XOyv#P7dwT9mY{TRq4##sq_kzO$}4PL7AW~^Uk`>yS2^)s|&*W)quH_>TC_sKPF>#S)PGT)^_%m zT6`pPdVvB-+_4iATM{}YxBPnyS3}3Xp4L|0oy)Y9D-4AtHf4vhL?eWe@>yH(6B{$k zr^nkD>tUa-&aH!}ED~vBgR><@rUn_5Ao>iqvk~f`Tq%bKlj<*D!lxqT*Q(xeQE1nE z2cBX>;gH2`;Ij4ffTpUFY@=Xlb5e?Zenr=dh1~#i;fO;e=b_$CYet_H79Z1MI-t?F z+nNS7LeU5f@d<_mbj&mt1KmlniM{vzL>;mxH&1r)dWI6=H@M;bbCyLQ7ujwpYClV| zQC^W$O!C0n@kLvmo}Np1D07w@-FpgVmkVv5DyPuHU>M^_RI~-zdQFw&<y$}DO?u|&9r$W@PgR3)XRCVKIWwB{U-_dZiIiWZ7pam zxQCJCO~S2E$-I-=?7$vVEwF7xt@|{oQDmN*fzo}hI|mat*EXe^AW2WGBhSWjioHcz ztxac%>4;_vJ{PGvTYJNcH;g(gH~>RMdU6=+(cu>x2KTqWmu%Sw9oRL~jM9E_LP*Ev z-caS#_r|1aW2%+#ge^3Z_#LgRYNCtAQ^@wRGi6hE_)C{Yr=9{8<&Hik*DC zyJ%FU?TaMAQ5&+8`%{G>9idxRkqf{S`WWxS!ZNOEpChKxbU==eLr21X#2?Q)F?E2Y zuR66Y_GmvY$LQC<=8XXSTbtm*L;D#)dc~!Xi3|w)T;b;~a*ZmJiv?y=D6)?qC-kuA z9g+J7)I9CC%oZkGsg1}Ie4a}Z>8wyrsW?QWF>)uZaRI zImw8%;-~1lRADu1721F{RKaO}F_f9})9DWKjx3=K$xa&Mcd**J-yiG2_>ytMGhPTJ zhxa1^&M=)$Ns+!oyGYruwe=+(dqxgUEie=7bTb)*8_^ju-5j~)H4N&aNXR^k?|!SnP_0L=SUb7aUz}Rdz1|Z)sAsCtzHX>d*&b|xZ8+sQIX9!8hFkV2r&bGG z*uJf$*5L_Evi3mO@Oj}Ipj&4ZWq;ynAnauhMC)Kl2vP(!g}3j%)wKeI#>>}C0<8e^ zl_@%BkIT))T@<-2+ZrNj+a!hkK8+jU}rs3B{}VU z6uMNjq5`(lTLWIHgw1wpwVDgZ1hP^KYc=Hs9#+##^Y7gMQ&~kH=k^GBdNYj!?Ws;L z!p+oSc|A7OGeu1_6>fYMCGh3+V6Hx2ylOtHH*2fpGhx@war68qxCe~7WTmb}jHGSj z+i7XgS;ash>(f;dv)Rda+%O&6>azi<&^4)1s+>^#!ck&jqqx(kn);h5t@ZX1tz zdieDOEo2XlhR76yaIv8(l)`Gu`xKL0dygs!90dPz%*$}3JfCthT6U&L)S;hKtm(Yi zP&Oa$>SS(pXDfff=`j-Y&90f6TJvK2aelr{5G#ChJS0Ic`%Sy2jI|X*-asBJtqLPJ zWq>_m{A`5?RyUnqHm8`D(oF1hkQU|51(^%k;$9(o9?i&jGPUfD)RpuG-k)}rgO>su zyR{fk(4cO5=yF%c*6G_?VLwy{&7Y9Zr-?h5uGGmk2B%h$kn(ia?e2;{HZ3tm=y*GK ziz9P_Fz&s5;J5ixv6p&&1X>e?WyKFO$f!>i`nDK5qJGmP43S}G*_$ww zAYofJ5#lNpW==h#QJ&{j^X)G6N5*)5K(u&#v8&I~Z2h!gQ+B16yiEIUJcoGk4pHdk z+O(~wje?wW$Avl_g)~#w%5sFLro<0bqXg6XTi{AgzzKSOm+FzR!==z{{E};#X4`o9 zBl-*D-^WYRJA&~@1c~pf8giQ|@^+92Hj6<{H(!Dct@3&R zw3h~UuyH4rlx!ihX}%g^e4A;}KVtSW?qG&WWc0Buy!82`>he0CcW6cRzOKVESM@d5 zoGSK9eKqlm*i-`df#|`M(ESUlGR}9)v)SS$YuFgdmm%r%Xk1AE@YuAd4)*X09|Isu0H% zgeh#+aO>t=9xDXbR`3h?cskur)*o-JxI^^*K;ka9#!;Jh`+S}C-FY=Z=LAzFG>g*& zabEL75-*8bK}~No!hJ5-yr1up;aXk7WvK!8RYJcME{PA^Y3^GoF{2tFQ*)95;^y8u zW1s49p5vkHGSC`1bX_JbAdO^w%0c_tj!}IVv}W84=BPiI(GgB>6H_? zS5vJa~9nRLnZ18XgY4hrT-P zw06L6*}TLXqA`s&5#RB*O|N`VGuU{9xH`ZZ_{XSJEJ0T+KMMl9TJv1bey>``b}>v? z;bdN*8e)Ykygv_jES=-BYIa*KyiuKLW}sR21Hr~1gfe6n2v-^K>-nrBh?yuUAP4jV3@mR{KmTRbTc+rISi-a zH6KNZC6N|8M?{W?;HV7)zb_lBfV5oPs)yE64i?^wkBgi&jXTkxZ}NvJbHGtq&I(9_ z4#`FZ;B;Ed+?&iCzz`}ETL58=Er6)ien`dS<)U=3ZMgHk|9IVe!)0rd1^_ysXsHAm zDRsq3uv^=7%D6YTGVHr%PAB*Y&E5WE?4RCO%g9@BMDiZX*@RRVZPI0DL z_H@;u;o6@Tjh(}-1Z_nuL14lNbhz1ku`TYG_A2@$rTqPEcDLpP1fPIKcl;0e4qtla z2aFyUkNx6|t*_Di1XNJ4^>$R7d}(L3%*6>ZR2w2pT5y}B_*3yXxeODxsK-g}Y5#Z` z(3HaKhDN$%dX27yvwM&gzbqYg!)%GtOERTRQNs3;pEjc-g`4ZyJ;i6J@c&qb<$J}K zq9I<=+fyH%ECD?O3e2aCrfcZ)iz1R8_sPZ5T{Fy$sr_d3zhEn9gG*$ zhuzgQ)J=)GGW^G~BetTtt~dcA0bc`5O*>#sXH_qLgX>^eNc@6nE`WO>@+>1#t` zm)TQ?DXnEav0Ls!Gxvt7t$J$@ch9V;Ymc9RX16&ql2tc~%>Gb_^1FQC=}TV<@d+4E z<)k-%#i{++?2C1uB`)n(f0-?V6YDB7Vc837_g(rV9aX(3;rfPh=zw%s7ZEzavz5DdOi9h1% zc8Rv;vCrboQYm>y)OY@hJ{sRR0bn$@QXIA#a0#2k$%XfeTpN!n=WBgFv8OLQWBOSZN>!>}$tn~|8;H8=?&j{Z$@ZuElppKy zrCl7j7nL>(lM(?sOjaHayJPfF3oXpU@2#H{Q6|=L-2$LvT<+p}S(^7$1tmh+!Jd=NKx>5oa7`eW( zwWqPP85}9J9$s+zJyW}MBh%f^xB+@*(_*@`%ynsayo^2HyEj?HN7G|_BQrIkuxjzf zCzT&|t}_kIu)E4R#RSBIzur)Fd#_6JBqCa#(%ZS}e=ZF8 z#pR7ZTanCAn^RDS>6&bmrU58 zA@Ad{i->Hum+x;$(Y?ZcH1wlC?Y(_Bq-uI$VjM>92A2bP<>0 z7Bfm_06+w|E5PY;D$@grg7AU3VnMW74;@lrYNtTqGy$p5m^eB=`2p3O)k=bJ(>)g8 z&Wk&xT*Xqp84-xn{(4sm7uwQHLNU4M(?_`%#ECY) zV{`+s1p1?p7Hp<+4po3yLrCr?~cliptEyD)XWKA5`t zOCb-SF2iT1Xd>n!3TZ`j^JtM#McRz+vEl>RoQ*a6#zaIFw(|BJBOc|s_7-~&mqR2v zx}`|T)^~-x(rfr!Mb1C8xjVL|I=r;(kCC_EL^OW=qor&6g8Cl|Tz-?NMGsr7UezoS zc^=z>9Yd~<9sio-)9#)!3^gV6Sgw!_=}9v3+E)UaTV6;wdhUm{WEj_ zZ7ulfvE$heaqgy^lVbDS*z$D5T(ZJ>Z2l`8Z0jd>d_DfNqjOU1hQp6O7AlnZIT8BQ z5j&nx@>R!qo8JBvfxn6W|M~L2K?E!qR*zuiZVW0_)`Mpw~}CTz-loMI|G)hIFaQ6Ifq(sz ze|Ad$#m~R^`A-b|Yajm;8-J^jzhC~v&;NS-2<&OT_53SdAm`f?bL-3s+|&!9+zB;O z5KpLvY(@pe7=|vxC%_s?NSnnssVvH3Jaa|lw|cysn*h_-cP27qhs?L^euvb28_Bl8 z-yQcSf0yTn1=QITR8vh&P3?4W7BuA>RNktd#^yEGrz(XFA*TloEZAGv7zBVlVc6_h zbH4&3eJcal_9kf3>A9Ysp1TyStL1;?2BUu80TYEkh}JS%;khZfFtiRSF8(We(eijk zp;vwq^`gm7ML`_y>P{kIwt-R2~Y2^qJ0MWbZji#W|7Xk^@`~aW* z=hacwCG2y}wwH^H%mqH5t`U)`yf7(-AjozcfwCaCszb}V@`V9YyoJO7 z0CY^x)B3_WF7p-FmM|KY)u9@1^c7fo8hlWdfLnso&dRE%qM|}%qiFDApZx7Lw*NU0 zeE1Rle;HZutAD|lkk=8da?9R36I4<-6bAvxH?XUQkd7vgo44mBemrE?7SVUhWJ$>8w3b#Jo>- z@S3Na4-@DKqVW2!i2L~=PIF-V?z zQ9E61+4!w9kp!pi-$fr!?R^KPSv*#=u>WX@i+}1-Unu2RjW<~Q==%r%z@ecb3X7Wn z?7Nxn@dLhyiL-T#uLYKE{b~9$^zu57+0aN$O=;+a>db-N6&!3qsx?-JVI}xQ0Mn$Ei3c3LT zcCN0j{_x%i%jXRLk#DOb!(MCz_;T{sZy&Gxxc8{`%wy}F9xSdo-xIU~XQ{>HVR+}9 z;ZJR?&}{(NtI0r5)ah>-d&=+=SzA$9WHB-y{M2Q>?+Cv-jym^BXq9X zj7=Ww5301ndL{KNPriOozWZjbW%04@e{@(dZQ;rgCwF&&6^4FiMV{LJZucg8u1D^K zR=DMZ+BjNMxzg}M3q@jF9i;Pt4o$*R@wH+azi>(r_Vm*s_{9rQB*uW_+ZL+ruo8Uh zC+lKc$Fb^}3oCM_*a`)H2SimYR&{Gj+RNId_#Ce|o$R!>&PPfa60}vH9j`g{h%SX? zatr^Zo3RYbCwMVkCER|M^_L_#-o7}{b&JErZGi5U(20qp3{WnHB1lm%U01C;%k6ji zmT%`$NUZ{!uF45RoFz-T;ZGUoE0d02;qvdnmLySb`JgJDX~Z}+Q*fQa!^8dm^W$G> zh0E9rnCPCiIQ>!&Gv6+1o_KGqn_%zktgR5Ao17NQU2IucR5!!kGnHsT``G*2?=6#S z{XoPQWZl-gV6m60zX}`ha8)D@)J>4z?hnFGj`rru<|F7t;s&eluj%~wKKioK-{1dK zAD`l1&FBbHw*Hpa#_NYYCD>cBCMRTd4V`bj=?S4%E>4dhj6QyQZ2CLZ$CmtqKZCVS zrJH>suWFC|`k7qG7>(TMhr@O50JsZ8$sPjb=GE5#h@FUriJ`zD>i@x89owbVIs^aR0@c)s{3%F_6a6d*048&uU zb1gYld_-`Y^x-3_rw=7x$zE@|tn}uJV345Q11{aK8ecO>NGSX776cVo+Syz(q70Sv zi4J_tVQN?OMDCf{XXEri@=*1C)$GWF&|Qgp_XZZLsnqa^ z{p~;e_4%(!F22I?2VQvfNqSaiNhBid_3z1h0KOkIb&_{kD(Off@jNf3fMRqvUWGhp{t^nPfK-*o%^ z^6HlKEKM)o&o6&`tV#Y1E@ybwWWP8%?ND6q29yqc+}xH6+}PaiWBxtr8yTNrq>IJv zDu$IVg&63&pR{yw!F}>EjayFCecM>yvHlXh#O(~sRE4XIs_J_?y&qF3-_QN8)um(D z`gWYfK`V`|Gk-CSH)$LELSnQAmAb{Ze!uZRm9zba&0kH?OIoi&4)XiYiV%%-fL#PR(mt}U6S#}u(D^Sn5VYuLM3#*^9j=}vKXUyf@CZD)1U#!bxY9;8=hYm zsKiP%UXdD4aNt>im&Jw2buf*SfQ*@)65?%V;WH9;3n>Qr&k@?*Z)h$EA zJs7mL{Ag$GIUg_+kl2;CCbO^LfO|&Tpn9o{l{+ujD?m84E4O~IQxUW8?(WM(0O*>D ziOCH0d31)! z#bQ!rmxMU63}_IFWxeamnQHHS;VX5lWcNPEgsB@4=bqwf8&WL8H;{NQB}|JSz8@QZ z5)_m}O8Vd(rOjFIjV|ys|2wbT3XENqgxZLZ!vi>GGd0$6I-%!XWDSyFS4%~v4A#s@ zxpS2Kv04bjn80nSRY`}Cwk2G?8w`lTx~$4fiW z^M-fczFDcQxey)URGCk>JgM}THju{UX6d8h?bVZio%**V>&nhZvDQhFxioh+jxu)o zjUlxSxpB^V#in2@+@x(kB>Ju<5G712@X19B$Oa0e5)aeyYW2@s!>^pKJ=yR36(VUDv4cv7`_o- z{avaZn&T{m3tYZT&#ECQ?Y8wx&6(7*IyfXSD@pqwe8u=faZ5|AlAN4U*O44o#4S9u zQn}>AOL*4@T|v+nQMoeT%2sO>nK%_$$s6}dyt|c?+H47a zR#_gYCRwtek-fRxtdvWCoL!GZ!ZYinfTBgZz2!o?z@2!`&qpna)7}JHbQfPD*cBT$ zP}31sYV6ECwO7Qp28D{XBBp5lmY=#h96@cY?`^XGAZx_qPr4tMvA*InMOEb5C@;=~ zM49e>nM2#iW0^s8`T+sx7ouok5`ziD@HNccnq+9xwyV1F?A{A)cQw#Y$U)<#~+3=Ue zQ%(_L$o9K~Nxwj)2;S*kru!d@c)L&N;`nSOt{u4ukQuwnpU*alFY0DRZ+p2k>cFzTM`!rMM}@zNhJw> z6e205%9ND*LR_HYJIYgVq#~&2_B71^YbC=i@S%4}zVWxi>2mD~Tgqt3N{UOj^j)-W z&5?I^w?i*T_AIWH$>Cyc5y2s*5`I&!&GFN+7K1D>AfNfx6EtMNA$Xs}We3#77OwUw zStGE?q=;buskx&*OTUg%eM0QPG-&?wwD_CK1%a)%m9{3#H}2i-d~xNGOkK*+aQV}f z#&nIsiDSbn(332WGO@i|T+^zn=x@@fk7h9op6i$8g~i-_-BQbu-hh~Ro2b(tdc01; z*R1usk|4(^8dVzHJBhM3Spxx|mF%Um$pSl&PV1*9eNwq>*f;}eF?c#PR7Twlz_VXMBneDH{Cws>>=xm^d(>x4ne|GFzTVOj_2NY;Xo)5W3p70@x<+OCTgLq z?G|S6n)LIzijIyami+j}R~}vAD0>8b_MDm8s6`b@&uJv?y8<%6R}6Aez|U3qI#jnJED-A&DsiUw0Sv3?V}&%`B3 zxl`R$Q&Nz3`6lKiof~}-*mV}wTFQ%BCjQIklg{|z?PZ9BUH#kJBk@($QGUXGK*0kF zlP3|Al5|gS?Mm6N9=&>L(J0HI^lQ4QIy5_0W8JBRy^EWF+2ZM9R|X%*D>p%6SG+j; zM#8jih?Woq0L6PcL8UJVxryt{2^Uq`SLYtqloO^)Z z-5Piq%F@E*CcBoAdg+I@Q^b;;Q2pXye#}A%af?dZswQ>8_5P0|NJ2iXRnA2ma^lg; zwdgp4-m`4iT?~+^K;dL7&z}GGgC+~igtl!u>aA`N2PWPs#!9BpQORRlv`t|Annoe! ztsht+ptJFb--KY=*#4%XJDV0octGJvjYnI>u3Z?CEZ8J-I%jokYGMewhtAErzr0pH z)L|u(_(MvRJIBG+aY`B=?{pTVozbmNK%NNGB!zJfnD)=(R&x}AL@oz;0#Oi2g|yTo z$Jqy0Ll`2S$w+z2u377b-L;?u_a<9#JYUPjdptTBK*s|GYB(2bfOBPKA2}FTs>Q0m ziNc5mp<7tX-8LL2-VtU6eT<>4P=4I950<^Zy!qJNoBIjUwv~?29yBLXX2Kd0fC&69 z*^|DfMi?Qx`UthObmWv7tmBt3);smLTYS6k39i01EDA^TCkR+5D(?BJbZ+z;F^rzw z>GDvBZW6OcajL589xeYgCGn;`!d_8DgqrZJG@6}sdFwk}STEm#$L@{P<*rvtCDgAB zE;B!$z91c90%6MbjgTOfM4JjU9ai7Pdsu7CVRQ(YB|ekcyL&4KzJSdcESFR2PV`^Je~=M^C~)-z@i6ci-=>@9#&sgvF^GtZX? z5Gvoo2V3s468*}^Q*j?&PWbLq(g`xrWCAigGh@8JVWTx^14Z|WRq^oCP*FzauAqz? zSOaLJyouz71MD;bS1&|jbYC};LLO6X#_`uvbOQ8P^Y|162x1BGT?HJ38%ZnQ|9w<@ zrGQ)2upJZt_}jgSzx55BS>1}dEHn(WLt&28X2N;*MTIBxNA>j7pl5rW(#>asLnFF2 z?e01)FB@)FeS45>4+s%{tbE%3WSw(7uyFUuP_Xm{HpI6~X7OO|+l#9zA^wl~(r8>x zb90(Dr_j&zbqST`sV0SKIoccFiQj1`F7-yc6z|7W)~pH!Cf_p(%fyINuIQ78)N zaC^4>KU}?YbY$K0Jv_n0&cwEDXC|E3wrv{|YhouevC*+@O>En?ex2v@;QPL7-PM2G zwYvMD~6m&kR(BuKbe5era6?)3^ zCNNzQ!!-A}r%B+dg+dIC(vlk|hFe37bc}WOqNRUsQ_daGnMQLMo__Zm@o$~ z>vTFl6hB!Gd|O=5^jqEP;AS9HXj+I+_(|U?z5ipYTGfs7iK+#eDGbwHoja!uSHW05 zu{pPIp`jAfc%a1kZOIKLCV};SANaoBqPmfb1) z(lIR?{7h6cO4YF4m%N=9SScjHcPViPm-)#yd7M`wpy)1yAwN7`9Wc#?*z!(P*87P zn-E${!YeAP+4qCRN(nx(q|l$DydM#o`(oW!u!YToV+j=;Inj-D+p*DXxX`Rj59s!L zU51gins4oZm`oM{lUSJNK*(i?t~nQ=F=Y4JyMPVFj{}O+t|~V8)DZC053VfN8@vPc z_PK=-@x#h47YBzii9tE0YeAN)vXrk|?pcnuzPp_re$(<^ci4Xk@|3W~x~oMVXkQ3_ z$8}+ZBM7kS)3|)Tz_VIv2g|PqBO6J3%NF~Y_$$gGMe&v0%TJmB26BK&(ev96p?bT) zyY4QJJh_wPCGCdb?I}x9lHtDAX>%@97!K=iYaLf|W*g;usd;V@6IsFB)Es;jux}@F#Jb6XvXiaSa>p3#qa%+9ez04aA&KRt~!Z+b9d#9 zHd9DIpAa2_N0jkg@mT%9{jJYqs~5Uxfi7xZ;$~I~_W3iB^GVb~`!)Q2-C~&S?larB zX9Y9C*-7fEaiKm`*_?wvS?$q5{(=0_&ntf!PUN@XafjgC_ z!5-itH+@0Sm!S=qQ_I|Z9HV619gJL}`qI4aJVeLh8ne~0Z$z=^H_naPo@JnQ(Vo!W zeKMh?w&Ps>OW`QEoKBb&Wn0;!s_TRXokg(7*bWYqV>13!MvOy0OAOez z6GFu%iKm-Q_7{|aI?vT~ivTcuZNF@-zD$?#sYJ(Bj@Y-})iS~*wcj3Ktr1*a2I|{q zN!sw*6p8fNKfjU=Hf`3~)=W@vTz`+}_R%Gv{wgv{weP;jQYJuKebkx&YnD89QI30# z4gD4{U9?bm{?c3v4uXydtkJ@(`IuECHc&gywXU3AY2h0WI|!rNXohTFu?Y8QhFov^3Y9{;f{LfS?Xu6T9h(`hZs@JI; z;{%lyvhy{mv&s6iJ+OaLE;MMp?8+V8wjxE;Zh$FzeaRQ!3>y1N_PQn;sr37V=f(-F z{juI0via?JQ*^ysqMFYmXs94$ZZz-U_W~!OG~Nh08EF1!uJpp~O)Z8rsEB+5^W9DIOv@>1|ghEnXaJKF&mQ?7_MBvMHeth~4D zsK}Q5iPq#m*TjjZ4+QuKk-$M;Grev|83kV}Metuv%dCh&84w}UF&A@I{i9b8m4wKW z)}1-nxv&A*S|PvZ*f6ha#4@#S!b5*J=ytcxEUMindouOza+f&_IE+3=nLxW4-O9jy zhxf0uA~6~D5$7;0vi5MvaF5|Ugn;F2mEM!i@&d&pe z=)JS>xZS6Qp%V%nzi-}_nXT^1w^dd;{D!F8{i8*x%qDy^)^z)4)c%@ws1+Hl6IDI| zUto)N^eQWtOGUoP1okMZ?+S|RxFe4P`)b4_7*5RmiF+N%+^l=SFc?F5&*`>^*FGg3 zS8{Fj3+YF$oCJhg7nK+qA6kAO;6_)==g2AKdrrqVCDazteORui=BRmEt}5JAykBeJ z-CW$ThLP66gHADZcev{OqARI%r?o1CzV$edOl+FB7_$QNXm?F`_n6va)+Qb0^bdeO zR#3VPW&~#L_`ViAdwVkq0tchP72Y7e!O4a}uSS3|&AJ_XblW3+B;aw?5A3{LSSQGP zel~8FZgmwqp$=`~WlqA3o3@Zhh-{l;IyTXSsdn%g^qJjY7a}A%Su5nZ;ye3kgRNS% zWuL?=kJn68qpekIx=-CgRt?G$aSFb-GYf!BnyF{XAE--~8}5+tGkzs_Pb<;CjduA_ zH@DhW+K}BlL>mG#$R&Iea!QuR>?}iKsM~rGOD;`heoD^!6OFF(gW*s=-?Uic*wlQ^ z^^h~bv2Nk|5>jn{b`iNzUlctK&K7*;%h2UpmAzjJzZY0bh9l{aLLo<^?$OL*2vFAj zpLE|WO%P`t#d?Y8?%!JnoZu2N3*OQv^FCf#HyEqQO@@Bic?ZjHMdsBO)z3X9j@C2t zb2!0+>9rNAPQ;-a+}Cd(xv(%u62Ak5%6SR?>~77>e{4l>Se^Gdx{YTi8&rvmQ1j!ROLc8v|( zX+U^yn^a$0^Ux;s*=JuGJCjsLgadTA)oU->lw~!if~PEd-eg9+)Buc&Jh91C?8KNL z*Ik2qRZY7>NFbt!}z{>1ZWnzJhHBkJ=8 zHM)Abn*Al$O&LG*`&yJ=lHkCZlTMbs7!St|$a#zGM#pOSI9%pk=pdD26AMnNqipD8 zoYA8lzkutt(gfF_Tp0U}qj~@feQ(tSdmhAyuTP!nWNH`f4)Ss9P^y|E*{(Pms-fuYADm{w64# z-cPmG!s5B-IVRW+^REFmP;m(=^#mNg*O(z0#oW}eRu=gJPi~T_`OcP`g&&I%cC6MS zMMAs)ZJ#WNHKo@Ta$aAA1UL)EC&qnQh}n1a+=@cf^_!Ip0#SSeaPzRM#IZ~g81ARk zv`p$MJ(2nKGn5d+omC)D_bNZ%2Kbv>xaQ`<`P`m%`@5-gy_MJLLF)?zRt%fb;R%ey zmpiU0WjN2UQu=*7zj#K%FH6WBSLmMF7amAe#37@a=h?DuWH%pQ{TyF3S{z&(rwXsS znmAj`VC&W6JJK`bg_FSv9&VRbyKIGmDUI3>GwiT$8ip$52<|H9%!X5u)Ag5@)cG(> zh?8zjt_j2E`MUnevj6BE!E|IhSCJW$ct_%YmXLq6^snyrIBL|nS z0krPNw_UXFExCOqeP{Pra2(RBixtn@1TlO`$17|$HtadtNsE+EdWl3lUw-oIW0UK| zMlYDjL(TaHZUxY}IV@TfMy(7u#sUQes)L(KU3b4`e-_WMqcPETY@)@YvOUeJ=xf*3 ztU7vBrgTwr-}L8=^s>&$f*&>4rVf6t)^NORnb;0;UP^kB>MeJ)?HM#uXP=_xKN}f{ zXE?`s`NzB?BCauitL1m?yDUj zJ5Gk`vWVa?*p$=|7}~jg;8drQ0+({&FEQq=Q@FV^1W1+C=krh7AGaRcKW?bq2+|>- z`ve4aE7SD7yP-@B@CG#r{INEB#`Y#R+M4^Wx|jr4URog(NyjIft25472z|~pG+D$a zA57<~X*LK^j}1!z6r^$2q96F|jP_vEqtFVdP+JaL5xZhMs~dtK(!#sa@#<>QRVH8K zg*2p>_Rp8a9M32d?CNl=z9IM=&EKc?u!p`gifcF$ijnS)gHAR_%-M*JLx6OdmOI~= zil}b@K&o4%P1+TQ-!I9Hc#es0xlBnq9h)T49^XA47-?D&3soiPrLd*zrQU}{LS)VQP zc25(fax{Di_z}yI?bG>SQ`dN45qbIG&FzWe%#BNpq*%_gIUb?&(CB-SdTz^Z{T7&L z*-94E945XQ!NZ2!b|Q>=S~SgBJ&!(*-Kxb`qsAK*&kANp77R6h{h$$Spfb1|`{zoG zK^&*aHl*R}5*M0|fAY&}!FfPlK>z%RLHX@9XUD&(q&lHe><;FBYGtQSaLFc;m)lpW6$G=hJ+?$dU)72*S^z1mW+A)pf2vvM15v;#wcK;z5GmmuCl)WHmBA1^9d&L81@Xd^Lul*s6?@yb}@I!B`T1oaV-d309J3Q zLgh9bN!VTqA~=^bSH+>uSz=q;erl~rsbR_u>*rqx%Ac-Hv~Jz%J?+!Gydp}W6)$IU z;!v5kL88#Ac1K{4v-*ZvyF#VKYh~wqE{p3$$qd{Amd+J~!Rxl74BD8y zv9mIHkSDQS!ldlI>AX2rzVFdVJ0&uJwr)*2;z>##^+eU#v-rj=_fstQYWBO_-%7o_ z$vS3oM3WE`GdlYq7$lF`A@@b~XI|7O{DN zP{z!=-*{VXJcwV0_37I)slm#`K8gEJBMi?q!?hwt?7nE z5XDm`j(z-*9YCxb6nMxq&|%%WjMVJ`57shWL+G7*jN+3_GSaeAi?c^5SY?HmjcnI( zP(R!ayLSn_7!7Fv$q|h}vZ%GzGnXK{I`f=1H@YOqM*SM=I6V+f`~6YCBzC&ZcQIfw zH|ORuSJZGAezB3?GD%T9B&I%Rin^Pn0WsqCw}08JRr0Pt6lz{{@IifRQmrP&b`w`T z(tgP$PYb~aJgv2;Pb-q<8|P>Fv;|8kbn;b3=xczQ6_7b~)~s zamuSl=b#{)@r)2^WzDQNp@sgHeGu+lSSTj(X!**WBMS&B?dnL}jk)Ue2H89fP9+m~ z88JF7g0HaA&k{NT;r@eTq-;6AWL?ekl;2S4_sWMk6-925iG1nSo`^X`wdhP|Nz1h= zK=^nD963t8)y-;6x!ths>lc%*ABT#u7LyD}-A{R2%}tk-YR}AbJbRQLwmc=lVP+Cx z%cLxtSH{G=&oed+tvM=Zuqp0JxK8bfyBRNfi_oNqEUnr^p3%PL*Vshe4T1t@yj6r>w=3uMR+SKZoy%;6~cC5=?{%m6il+!tx!ymKphHhz0vctw+o^M>B) zCK!4YtOy>?VxS}cDmM5Ys~hcTAg9Gk>7MswVr*Z zbrVcd^Rn|lG~JBD7|p4{>KMq$F62PRc8=+*OyUg!2CLbomluertIe3Wj$C_``Z2i~ zOwg+V$a4bn%R!qYaT(5rWSsiAI$q!Q>|aunFj!oiiZQI!A`DD5iSeJ}<(>9cKyD)Y zW(I6$aY(0?fKK^aLUM~GWO}(RRrY}R9u;~)iEf$XjE^`#Ts8791uKcF^T&p$i zQ8oRy4rSXfJg$WiP}7v$j%Pn5wh#+8e?y0j7rYqb$S)33?Az4tX-$@YSpNnCsQ;6U zO|&n~j_>cwV31{jq#*DKOl(jkzU*p&3l1OwfUGAllvDSF>{ttFu|g)mc5lB3Xnqk` zpiUJ{)BX1I^<>%Y`8+y%_INCZWo$!mXwX?Ut)479pYpZ83d_$Tl>EWL^m##r_hy7* z)KgU0bE1>|maFyc7tUm=8dv?MbWJFH4e+Z2Qbb^4+fA+eqt|CuWg5|QeD*ixJF3^#!{XcFzR9Gz7InV~ z{MVv}a~y%j-yiWhWPE$NSy6XATiSvsd`)K#Al{u4Yktg$fjj;UEzVzR{@zG$FA+E@ z8^)7vC#epF4grOmHToWhM1Apg^2J5>mXKX`OG(57M|A+>!YOl<42y>dAk%u);Nq(J zSSp9bbihVme4-t?Ik~0E@*R5LW`yun^v_+Tvu8cReu>-`Qa%@?xUs5y)5z5CI?h&U zg7hz?unm#hFUplm42yek_b;^HW1Am_o#RGq1nVIuu}GH}$-#Q^E~lk)SaPW(HPCHZ zr7%9Ddz<1wcRQNJ`rTjj&{q=hDe(ZEL=)}pdj|cbalE$&vy<$LL7Sue%)@L z3~cFJM#v_jlyDA9d7>i*F+?ABlKRXt-~5q$bw_6t&t>6stI2m*nZf=DNztVstuFoG z6FnK!x8l5suO4}(ia@#nP_r=i`$4X5jDY3qGCf0w)>iwa2Prp8YZDfFDm_+%9~sWc z^PEpRjv~wHh-My6vLuW$A(@H6NBI)@CQP; z&72TLYw2(@#zNjGvK|Iq@VtSA%9VcE`d6f32^r6`359dMF*`I@8Z*;APc z6?!qPGiR_qS&R~qo{M|o*jJiPw`Q(Bv-KNS98?;mNbQeNvdrpc7Z#wbYICW_12d(n zS}_DJkKd09KWPH)dn~O1%3J#Br>}0`u&2B(49!}Pln)NnLxGx`JD46(UoM8&Zk-JzabQ2MWSodvdkA4W7(G(RuKCnimaZvVC}wdO zakHGpMu86*a41*wINstVQdk<1XxU!K@zm>Xo1WV}OTGtjCR-})|M~GIYT11)ucb3 zfQ%}RM=yiFNlU{Yz|Y5MCMW>TeBJpOLu(_RhwgC3?yfe^A&?gGfH)4B$wOoazsz?a zqiNV-HwLNlJ@$~Hd8O?!+KQv}(x9%uEWAD?;e{C${gjx1pJu zhn8H2)B`YDkhU?+JR{M;81fE3E0#IJWTNGYYB2m3?wWvPt&3cOt)M@dMegINC7DIW zGeF#*JbG`z-;fVdczimruq)o9q3F+-T`^FQ>9TaU`5o}Xq*YV0gz0(fEB-y3mu6|i zn{ZlktjXnq>S?I#1d`}6u6KQIs|VbZg=MJ+?qT8ep%$G4oPNv|VergKm6t8C3HeY5 z7S&fGeUJ&k!m$zAe^3Sxls`~r$>B@v0v|Og|GPR(L5Up5>^08dGLwviE!;}5;an9Xrc2}{ zV!Qr$gWAdG8SL*-7(d@dnX-mcP1NwGnwE8tMQ`W0XR<01vssFgKPllAmR3K9O6u;L zFrst_AW$xt*>WXBe0JR<_U=}Sd|b05?e8b9w=Fs)Ds~L5OstuuoIbB1ehyC{7ZZgG zwE@VM^0;|u95Y&d$EB}}qRZ}QJB#ckwK`|>_BriT$v8k>yX}JBuyPY zI$0_tpvp7 z5oi169cYOmk=6P7Q-hqcnfZL+=BjH5JM^x1i%M!?<`^7wygc@!oH0f(&jUP|>J(et zg=B{L5F_gxHj)gp^6iGQ87sCc{$k`&tkx|y!rHvp@)c44L*uRme`z+@0Csk{GGaSC zJ#HP!Y%wSWnuCbxPl<)S=f{4#$K`X#s%+|+=NtBKb2f_kL?d*ekwE+w^SjZfR#8?u zd83EqctMl3y_h{xThSYo*>y>H;#tT{2S^=WdOwA37e?on48sfz7e65=$6tOWZl1ao z6yela{Un*N4I!@v2Z;CMP5(AJ=8z5;-NWD4LWh&QxVlSsH&N^0vN0>}4lAL~NKDb{ z(>R#(`(^W$(?>YD7!8j*973IZYR|Y5B#ufN(7G6a1hUj%82iP9Lt9Z}Cxe8aTol|w z!mUnwDO^s6%$_^Jbj~m&6OPu9{)b_sqt!Jv_o~tfXiGOrDuxtT%-wQnm`dMvDm{-ZqYmjo$~S!+VHG93^%1)i!^- zE*p`<=}YzEYW37rGS!D62jUfM$FYZqP0?V>0xTWBxL+-{CuCO@O&i&7*WMQU}h z$A#*7$^3Yx|5t>(hV1jS=fa$3)p9h8I>NKiUSV&ah6q<|mxdY(<4yF|*E86K1;F$K z!{p2y_BgBVS%*slp?o=aPUdx%4K?JG)}`c4RFuBG4UT7ml&?z24v{8pLN_!EC#9vC7Z+IFv;e||?dJqtm zYc6P@0y`*tmGEod<%^S+aal-bQ@thVY7P?u^Nk1#u%3iVXAg{#*9IqzzvF9N|G^D- z(9el3t@2cG$wU7xlu$Gj4ya^J&((`1PsEds*T&;i3UZ2|oXf+db1d2ana0>ThyI}Z zJ;iQBI1j<>(b+#tzX}oG6*feqjixy0_z>TJG9i1s5TbN@FSqCJ@fpJeF53AYdjmna zkn)?S$y&5S{I_Ha6`VG%_@roMLP-Flp1Q8xo4BrZuOhe8!kxZ|xp?&v;bN`)>S1Wi zJ0J4eFGkV{a{V=52hm8nuOvL2k1)R-x^z`2_9f63BhtbuA$GPFwWRshdH2t-*1tnP~RvZ zJz_&edb(D;{IhOq`IR`1m8Of*^2T2Qx|1L%pT|uV^aLx@oICVyPgyuj4=TGmk`peg z`;D2mo}vg?v4hWV_u?aN1qO)1)toF;rsi{f$=aqD273i_`_W)HIq3 z!=K>rU6>R?dTX_`4r(p*7G~Nw_A%QOoO4ucAns;yR%TzE`NQzg|1*aJad1lBV{x&F z_P+yaK^_t$hI>sHJdp4XkST_n7)MEpW$Ux#WUdG!GJo})Y>(G{lVuv$PrfRPZ+K+y zGUezGvS_8$)OXkFD3ybvIZzYf)-r?pu^zn$ajNVwdmJd4`I068reyLS6#QUd*%bIa zoKVLfjn?PV=S}S_a!DH#nckdv@|=ohIAh50>J~c=e)Wb)rpmz1-?M5Lr5?O34jR+l zlucAL4M!PdjjOQ585Q*vTi6YVb4RmrMH*OW5upg3CCma1u?JQwQ8jjtf6RUWTi^t4 zu~dM(zGL=G4(zCDn}4?KeYY`}T+j4f??PzjgGeb5ZSkS_r5*FIS_K(Ml?>*aOkk)E z0Ck&e1dX#d{dBzl>_O`HyKc=%n+UxTIaB&^mIRZJ7-8}^5!4}0^hJ@~iLO1{nNR+$ z;**8`-L>s@QtZ`_*&EykR+*99^9vt&8{OuMSr^4uI9+F(mXdt2SNVb$BFKgqxDeR@ zKn+o-&fr$kKE-o|MvI@g1!-M zI4GYW#@GG@(SOt#{!xY^y>Ad}zEANbc^mnnH>%Jw2LJ5;{tR;Q?qjsRrUS8ZpT)nP zO)jaB!#)#Y2IPQ`vuf?>SV6;>jjIhcPIc54`EThRS`k<1&6bR9Ff7qv9O1@Drd>>djG__s;Z z9s8xQ^ZG%kF4bbMAd3&1vUm2s`6Z1|>D~IGEqtljI%;#oa-s zA0o$WakX{btO-geFO(`Qt!<%RVD^Y=#5JCJ#?Q38`VIrfnI2>YmxM368)y z4r|=pb<^z^GW6oa|5@Z_zR#Z%Ceey+Dp?tVx3SOUKW7KU3UagqCY^Hkch2$)6%~`e z6Mto2>;=cjA;E~Xy+u}6(P4```m90VQ)IR-(Yb}k69Q@Y+oCyDtluQWNaODVJFj7JE}!^ zFBQgB3`bflWADG>&-whc)wG$CJa=i8WFEuX8uz|OO-CB8>6xV*oK%(z8>*HboZ;29 zsNr)c3(x!}yfMd9;mW|Rh@igvVi|0x^Vu-#MBGKdl&cmd9noDiPT5!e6PUel!`rO& z{>?`p7l%gt+W_EB8+ni?3ncBnc1$I`Z;gG^Eu-%O?Wj8DIC@wpsGuN7 zcJ)lhDHz*Id(tI`WjA3q1e}a~U$YfCpq6Q|U^1p+QGbcuI)kn+tq@qd()hKVZ#PnM zggMp2ppV>btb!aaL9gr1a05BH;K#Pd;>`kf0`}dpr_xwB+r8G02y)$+V+!D@UadEE zF;+uOMp^NiAM1Q0OYnTH&6-Chi}$cyNK&(-H2y?AdlT3>+_V3A*}icu0cNOecA5g% zlQT;shv;9cR=2RqGrgwSLNa(!xcwxn;j54FB@w(y+nB+kNm`yZk>Jm}+BiOX?&<9- z%ismPiydEhiI@CWcV>bgDZ*ny$Z?5Dxvhgl6q4WBjhTRst^xX2LVjQf!p8BHL*e93 z${g%yX8%$SiqX$hWvlKim~%MG5d`j<&M;DB?`O<@&zpJKeMOFKEwqJJ&HXc%qj<6f zdRsU2lZEI21~&6w%URasH;w{4AB_h8ONqH@`~_dfCe_`U=>N4sF#i$U`(b`6HrA(N zZgWh=cZt;n+c&D5ng%}yG3Fp-FtV1=N3OIrE1z+7pD~AP+Pk0XjScM1C;miBwp=eL*a|3Qg9HFMs%PG+`UB|IY)LE zCYOEM8hya8hHIKz>tv0^dac%rCF<6=YZ#T?7uZ?;6+>61Ng4J)rkAwhW`@s_v8o5^ z9?ImYJr1{PgX7|?R(0zom$*guam=*uyQxhwSP#`H}$^7-~CWzL}zwmwc%Joj=_JO zR#A+om%r{yPq}ZmI;9f+eTq3eRV+;_y_VznJ^g3)Ulti8=+>zHLs46sE;Y6lR--k= zy!ALBD{fW7cFlLA$UWc0J2}?{A(5<~q2BD~aQA&ckh&k0LS|ua#=v$*BE$^p+Y6bY zv+R9&PX)}xJRbbO-9~v~cK>i9&E?JT80Y30zDPs6I9?^dve*I1)8&g^%ypVQErb}B zh{&Ce^eaMmXh@f2*)m`tqO%3Wlf9knt-M#_(%CWgl@n|Kz;fi5iS1(T6TFp!S)wRu zixHEfk(eSMO?`QfCJw8<4unB>Izh-}NPPtja%Sx26Cw;@Sno=5FtwGhV@*55_pQ@> zTaSvzL$4$BFu1zW;#?&wozfw4tBi%1Md7< z1b=zQ5UbJN`1Fq{`$tO<%4D?{2!pT{`j_iI3xvBnh#eFbH?R7h%^x3+$>!bQfs_?v zDwlmUD-eb&mgSy-HNDKtE9V~6@bYrK;_qOK7^3zQ&Rzbb<0e`3x4 zG&_y+tU6lnqsQtzlCP&hycg(@=U{rHCdE#ae#%0Sk7zW*CCA~_zFo*v%hWY7lUH{3 zQu)3Tyd7^xLr*XR0(wqA(ok@`S>~~$d{W^cFOZc4=Tb@E8RzUF5X08f_NMGRE|eNU z6|o&!fkByJi%DlGJ*~5BNkQy0Y#*E4HU5+rh zneD3JmR6hMmU1bCDt9zNv1F|p9l1SUDm03PT2A>& zjEJc1&}ObbUHe>f>)t$|zcft_jl<5z1BUTxf(8>a=uR{+@gz-EzsDaqn$35Vp`#42 z9sicQLgT}kEER9}SI-wO(!pX4#Y|lMy7xU^Nl6Lsjm7sG+DfjAZ{B*dI#z3*n1!?V zsg_)>5MqcY{bxPFc=lk(*nWkAKtYX~z7hkKYS$eUcC(bM-%_AMnvc9L-m7Y5#^sdV zJY2^ou(B$l3YK!TPab-fSlr!VM$cmDwV&~0y`-7DGd$De57C1oC`=E)?shjH5nVTb z9Ip?-*HJD#ANwQ>o!6{b8%O=iqFcD)p!A{&^auKR@ zQBj5yJLLa9SChQH6kK9^ORj9msZKwSPgAw}$Lltwi{BLHdj9c?qkZt^c??YJ^?rxJ z#H2=`>aaSEgo{;Yv$w}}=;URTH(Lfp`kT6+3fbs%p+VF?;HV#X1~~T|4YW*y`oG+w z83TAfBE;Qy=0L=7zsbOt^VzttPMzxad?Kp3fsU(p-gY%5rji^31SP6Lb-#4SG(&IP ztfxo2{ZEqN9=62ze0F9-*=*BDP7KP<)EdzW}rLc(>Tp~U>g;E z$k#Ywsi5^a6}A0k`L%+)av!975%{beqZz5=dPEEMO38YgywsRmsU#mktL?w^VtAg|xq&r{nwYp*Q(^H!g?o*M|JNKo;xStpl z*?W+hnMW8XYXKl{_5@ypN>=uj-OQ>TF$RKGU(-~R@GpXs7DiON1lCV)F8yd~w6Gf> zJR^~EA@QgG`q5({Tt#z+G}$yF)aUki^s4dxbjw*j9DY|L%X?-s8!f04Q#;Hg02eJI zKSH;MMQh#Nn$06DUkqFAc>87khe>ezUCD4p{*I(A_8qU|{Hto9At~!rhk`!<049n8_Q=<7d^!xD%7A6}9d?Ulnu_L!*va=<~i$MU# zSn7cTLEr7wcGGCTtuK4tq>XQeWK<-;|HBY?kwPOQg|)TufGuAJ)vtYp9g8TM(C}PWN%@FIV$1GGjBcbR-7_WIlZ>0RVKMg5z2@B`Nn z*`T1h+q7)AO2mo@^o&qDib1_uod~TkK5%dD$nPuaEAw>Dve+)%EH2svEWN>xhD8yg-B0rm(OM_ zPIl}`eCz{OuX63U1Ys?)2ef$C82g0N)sZERKWTR-X(zPTe%Ow7nJ*g68wxO7icxx37+=Ik0`%KGP)UCrcaM zkC3&Tjfps*eeHi7Y$BVMuCFmc<{0Y(HqQ9h6Cn+r@6DAF&q!7nf-1k@IYw~+NtV+2 z*ZykhJL@F{x2G?(ty5+*ai=WSBruUoWTEZY z(d+Gzz9FYZva%7X4eSD3ysrRyqBdnLt1gfZUEN;$~0T$-hv^A9E-# z-822-{49wQ|9fqnvK!T(Sk;{&4PXqfN=bE3Ssi8U6VX8ZlOh9Ursujwckw+70Vbl! zwS=G1VH^|P=NJqZQ#7Aj}?&g!y-+N~kJ233WFiGzwZNF$dHS%I5 zpJ<`(?*n_N_w}>_a9B#dGdqu^H9&Dyj(r0}P|`LQcIo8(wqZo0-l`E9(e2H^8NkvQ zn+;>x+v>{@!DJbf{iKu%m1lFqN8`v`Z23S#Qo%f6*|VA1&1{A*QV$Cu_? zBpMC-OaV+ollI`ky;X}8#bcUm=xxS*d1SUX!L=f1_Le2PlLHpq4qtoZf~fhn`QQU& zNRl$&oH@AfWpj;Ah-lg9n~Nd9on0tbu9_TFFs3%afym45()=z>t1Ur1*^kCH1ek$@ zbZ^TZC*F1_-P&I4 zt~UTQl#u0jSBAN^8>kgURl}N#&Umgt1}~g=1!>bP8#Q4o#kVSq<97h&BK`zO_4Up1 zLX&E*)59j&I7@U}x*lNT&i_ddzV#GRJU=`SDzAa&-#S6Z+-WTsv zoV+z`k3qC@<2?sRS&34R45PkG1+v()Bt2uElTiG?FN#K;C!<#o+I z!P=al_p8o00ETI?v}ZL&ix>FD?fH8mAwU<0@{@!pcW%CXGFzRNA(F>1N{R-w!+_u! zWMqmHflYdxHK067K07HvzVR%H$8H^-_}dkVtGE$w96Xp9sXKSgHzeQc-=+%OY4M*% z8G~v{7{-@s7IWwek(Ce8K{dazYvz9DTm8loRTcHU&4k-TqU7BOuc1j%0iq(^2hs*J zbH?EPV`U=XM0lF4{-DLE&N#C}sc5(1K5JrtMSnF3YuB75^<0v6mBPU3XPH{-TQxVq zAEo;z=K&J9X`P>yXDK=y=TDav?>OWP4GdRKO>q99Q$9g+Li2W@xjBJd^!)C$RLmU9 zEOBt8znG}>6YB?ajXLA}Jqt{LRCL~zmhxBt3;MzY$rJ$oUo%LC7TIn#g)1^ds;YTfRco1 zSW89olFQnVIthh7%{W$anYCG;ySy&|dzKg+I^MDA&Zt~E1!HrX=Ny^&(E;TNcDZNMlCo6BYO^z|uN zjDsuYxYeR%4_E{GviD;(`e9u)S~uZ^wdG-3%i=B%_XGM(gi1(A*y!{JgMx(>GBGjf z{3bwhbhk9Up7ZssW9}4`O`79J=mNFURQXZ^7(3h5^)*m~GomXHsQ$FJZoBt+{MtUWZ?TkUd9!~9M?)>p#X$ic&U0(GEokr}iG?)vN`Kz1X; zX4Zqxde0_;;wTg-qlKV?Q`8QL+f7zpyqHZytc1OABA@B#cL7I$xvwR`(wgmU-dGSo zx2n3Jlq~w(Bk~9REd5c`FbaNHO!t*F+EVF$plN2166eEv2vQ)Sq6Thl8Kg6o=H!5) zM~JK+4rs*a{FW22){e&Kvxq1M77WN$yDSkK+*d(Kn-zH1cbEwY1ECa*9Ob3#^wT90 zvbkfLZa(F2UO&_niAIRc`jTClU!D0s zGP{XQ*L2mgiFxyVn|`D;WBPy_{*Q`RjNhe4-mCk*K#UvTmOxVN4j9NW)5$_TbSZvz zkh(83%mjcjukP6Dk&&_k z6NA8;zxX@C7oklq_TM{gsw;GVI$s=b{z3>L`Oo$Z9M=UyV1>sH7RTT7{*cYb8hfUOjT)%>ORTLK3Z(AE$laYwCYwL1Cj`+oZB)iZRp_?p#GFEUvk{+m6qW z^sF1Chx{NK1S!aWG5eE|lP?h~jo4)IxK{Lt0naK_$K`e!L=Op%S{&zoAu|5tL&&(5 zb|@ZY;DadeD-Ze~m+Oxp% zUjZC6SK2&0b#*c%tzCwu1Hb;=U?#W$Md?3hfSggB^FtHo^q%|_9&e}N zO8v1SJUl3eg$MTSA5pyMZ=G&@Q}SMSdlZ#ot&^Ml|IAc2c!D4e8Cl=nia!{n71p1n z!osXJZl9M%MW+IT-v^^CG-vR5naxX(=YyU zvGz*&u`E3NYhU+&;qm2PuO#cfd7u@4QvH9$^uRg5ixQNQigYv|?(Y6pL~DkZPpRvA zzGm&HN{3fsp#T5*?~fK#RnRY4O(>h}|F~;ET`1lsp^e~8!6>vwvIfJ@iG%~G#}Y4< z_EJo>|GjqLCpZ0v241dc=W%Sb$Iih&i~ayS7y%C^qAvibNvXd-p2_KcmDgUAIhPPK zth!qR)OzgvcliHA{%25fZhO%%%m4l~P^@q_8x)lRl-k0ds?An$OC*YDoT_c?FgoA;l2cP29)L(VyC|MseTue}y94ISTa@4_Fo9^hi< zKLIcVg6pRL?-E)k5`aL6-cVNl29y99EHpoSg_l>(L%tIl1Nqw{{-6N9OTn{a!{38# z@^!O@&b2nMHif!sB_7m9>^&B6{Bf4V za687SyqEic#TC|zyED7{k?h>n2Ggih`N&o8dR~sD-SgeRCxA}Bg_O=*ZgWlQSXi; zkS%&l;N1uLt>j7$4E#f(SW|uD$KiJI-)R8eXDuEOEA!Y3w;$8or{Z&9d0EnI#mlhp zf!n#|!JBW=SwD_Znc<@YX1NmCPaOUe;;U4R^Dj0gq=BNC$nH0SzXL+APc=C?Iamfs zv4078@#lqv81^4J_MCLmIWU#B)x$aP=Ck&&@bCvEL$4Up)6>sh3hoRVTE6OdKp>s&IyyOeEFKT-$*+S6AnP z_ET0l$5LK;smB%`J+D}K=vMJy*;e8oI_AylNylmqDGbA^_k<7UzK%b#;p{aOEoDe^ z+4-6#{E+(FM`>vr#y$lyoI2HaspGz`?huTWlbv1M&dk6N@Kz}#bysAC6}bN*uGSbJ zdBqmf6f*jIIY-4f?gBd*z`0Ufw~?W~s7T7NI74!BHtVVa9Uv~i_(qP16=m%NvnT6jl`vCX!xjAG7~m-KSLu$zVw*&qoW;)F+hE; z#4$A^aqi2Pzlx_An!frQ6N>_B#OA{0?e7kO!_lM|oip%P3+96UR7s^6PznDhDVx*F zTnukY#Ay;*95w=uboBe!fV8v&W>^l4I7vB{Ss2V?eQ&S0w?;<&PSGz%H=`d{&NEO9 zJRr{oxR%NbVt)s^;>x~@(!4x80Vm!j%XoAIpOch4ea9zL_|5wKz;QtFLm1%2;LhvM z+N0QItVlWe`DLit{#>@0K|XnTjypb$-!;h}YTza?0v4NsyWdBUcl6!i8mX6&3+u^s zHRcuB-(JQpID38DfbI_nx5#)_?^pMW0sflh;aL_toQL63+=m<+6^(rjm|vilmM3fsT<0s65Ep*bx)WB`5-xY20IG)#ar{;X(6k?kl>o*!WS>gxJ*UNuGT+0DG8VstIr$nVQXh3 z9nU^|`0%o%$ct~kCfIxzr00)c00m)hvi^CF+VwOQg=gRB@L`~09n;&A3%{&8dXUY4 zCB-@d*63k?`FCwxaeg15VH?sqUjN|(`7*rA%X7ElaXIx?Y(N|6F&zpRH@*RTzeNiWPz~>a)ZMD@-^lxnSrxyQ%(f;9^E=#}$^;^=3?fduO`w^ncdfw2EV^KX9|;{<@)3gOEA3!p#sU&Xj{K=Hgd zsorBTe@x~dM)7ATCo4VvEJATi|Dl-1|3d0d?wk?cWliCbgn;ip=1~|f7fZ? zj6(e1ns1X}Kpah`G(|Lb>Di<#ppPdRTly*x^FN;$`GxJp#Ug8_{G)fm(q~={zY*8J zE_V6aqmOYwq8MBN{;?(O4=oga??!<>as=Mj{=Wa-pUoeB`^%4I$$$9f-{=2#p#H_@UwnQL zJ;i_J>jyOcu2cTS=j^}u{HQVh)t^72@pp^=|37@r7)!_{Tc}iW;1VX_?!WhV`J?ID z51z@7SiR{#U>IfpzT^@vZX*G2S6d)+`ERbz-<8qsH;?py=JDo9GDjPQ9#^S-Z|3*k zE)>y6fo1BYyXABz|GO~%@y0j8Ktr$=^1|=E)P5xVpWYKt0W{#ruGG%^vd3uudeb{K zzy}mofc`8wO9u{g&Mn2vU;RmpuI$p&);apK3p^gR+t@ao z6~q{F#`)`0LmOj_P}OfNd}e3b#$Kh_hzXkc^pSab1ElHSStRxEiw4dz{bM*4@PXzC zT>UX(dKT`vfdX?Egrpugq86vfbfA5wNJtvk@wZMuismV?4PYN?y}NlJB9K+;UV_0Z zszyC^xOilqNI-KGQrf)7WDnsHBlgD_SHwD+t8mZN+k~#)E ztWW=y%YUEacl!dE`xV&;(38b1FN(Shn1pTRE2N^VrOyKm>z;OOkm9?4q1vWG4YoB} zh>I5sCCGI)+KIcX7#0l_b)l{uW@mIUmF1RDP3S`1GAtbkQ{3R_up+mPB2h1^n<4`Z zrJzGn$b%92@qWRGXvK-0{ZF3x92efxTi?~(Y+rEY({SDq)75uVY0lqZLhg9seN?1- zXKCJ8nu{3~v7{6U8CNhy&wq)Q9N`0JD8dJ-6q%kkhjc~+CMYCJU;T0*BA>f(3U=)JwFf2n|C22>t6VDwKYEqh0AllcQ7i>TuDp ztrhbn{sVM30v4*1tDA~1Qs9D1V828s&76nHb(_H3@KQX=X8zO>Vs{DP;WNMWJ^lO3 z&RhoCIGQIl1N=OBXF_l^`rb(Efg^470p!>1(ci|cCd=9r#Iik$-KY*HDelO@{X3aG zuGaE{GB?HM4;+c$f6ghhRd~Nj#m}fl4R70jl>W7R0Qq!Vbn~oC5!Vm>K!0TQ03tnr zC{~uT}!ka-K>kT5fyA3HbymsnJWSD9RNRmH(?2{r-pmo)h%4iRbnE_E1sZfB5^w znBs0_YPT05 z*boKsgSEA_iJc;Qb#?XfTD_W;SbQpT_2prU|F(B@^#&j&M^x-(-@DK7&9C3@HDF6H zylrN6MD3ER`$Az;BhbN^BV}hT3;UTykWoI7B}ElXbhg0I_u zJYs0-q=u{z6Q4f4KQYUn71%Q8D9K^|wWaqzE0DR}&8^_hbp?u-8!Kf)P&bRCL@l5W z$K^N5F2tKn?6TWxZ^PKFPseHVTS(JBHu?Ga@S5q94cBP9yRHhn zoaGVK9u||U_K0C+o*5nsY5nJo_WPY()E(>)n51{yT`~2nq)bA{YmU2 zA11Zdof;AvH}x5u1$1owxRD)u9UZ+Cr6LVYn>|Hi{veyvsKj{`@#>$cKSDo90Sp6) za^`;T6YXgo1axE-+p>|eFiP@c!B0RgReAttVzaLH({R`N=Pqnv7a8o?_vfmot#kX! z(O=JwrL&$+KX6y_+tYgl=<=t-H2GkWWJ?ivdrW*M(GPu6gCMVG4MN2RqlB{FJH?Et zf)=XW-4K|#4S1QfxUaKKTSREHn!TRE*6p@#|bee9i9pFW7*Oo+D2aljBO#w(8Jg`?m1E8|A#Z9A>sJ8Wy48nOBh9P<&V zPyP51Ib_YwIUiG&(@*EPSTfK^s3BC}7L%d*;JdS$(izkxPyTjX<3kh=$_Apbu+>Qk zRoThrtsvYK%`EU^y(N@2`B8uK!@+LvwyzJ0YPj7ShoZ}v6G}FS?Sv1qAmy3amd9s4JR z67hCZPdkaJSe!uEhSMR#xLT-v(l&Q^YT-zmYI&EUw5p(-g;ny0_@TV`4AG3-tqzZx zlPFMWTe6HqhxB|7kKAbb72JG8=T0Bd_^a*6x8~`})NQWqPX&y$*?t9Ad}}&cX4)bW zlpW94ZQ_~PCXB$Dr}m2mr*w$n!nQMta|#_G+y$6e(`?fc*$W~6f&JSjD^eee z-vikz-W=JN9ly{@+`s4wgJ?0Cwa$$|T36A9i=4XA?9#2Qn^<dU6tKclr$4d~wjpi2A*Wqu&DAW^&)B!l+5N zJ$!t{$BG$LR6P94c9G`fPgS2Ni=mq-$t!iZ`FTpPTl=<+iX= zu6}gs1@V+h$Aaf#R9r{w1`8ex@(vigsFRTj8H|f+CQli`bMf!9-F?@yL6N(`QjmOE zNlC-JDWPI!VId-f!~1fP=CpMyP*47RC9SKit*z|JSFY~vZhy|@oDTCSsY^g#`J`_5 z{2kj)LVYgIgv}`2*0k!1fDED6TJ8gn1eYlYqT#wTHo8eJN#x>`7IAL9Lcvc zDy!dU%oj5wyAvB9DPfm~6$z(&LzLZlNAAQmWMjk1IGBAqnRWUJcCs7Wi-lW>fyJpM zpo)uz61h=5XN)sK$`tgdDAgazPh+R0Y{90>KB4OdKe3 zL=Du+yBZ=zIwZN6FF?2FK`Fei4kGDf77AX=LEV>xhBp&22mY?(1({F~MWui4|x^QvgU^g*r4HOx}x2mDf zn6=}iV(d2Sw*Oi=d!gIF%E!(1FRieJIi5YCHLE=uny?^2oIA4#|D1EJ?>!{5uSl@6 zdP4FESYeY8TFDXNDID9`J`y{M%9lDf9+@9`8EVu4QgM|{GHt!7SP}XwhWf(>l`Yo#sJ!j{Qm6GEXkpMkh#!pjXmloFSD63vH z=cD9ha|!9@K7xxW9MkFM9+~^A@#&$ZdbCRt@g=^s5g#SgUpi4vZrgX3EQW?^Gr``= zw2$BedrNOIYvEdnLIor6B@Up7+RX*1KzX`tYt!*+zeL_x_GwH{&@jm#4$s`csULEQ z=2(i!M`C+vECLdHCYQe)kLG*2v5B3ft>lcGb}lYY-=}L8PvOpf=tT|B$gy$YNg!mX z%`%9uuiw<0Ht+63BNdLSdqX7J?IW>02e%u?6|X%Y)XaDl$-q@7>1-Z7%UqL>zOORP z^*$;K`KHaPL<+%UI4u|o%UoF$xGy$-N4oLk?CDwEa1@`EOOyl0TYfIxu^@&6E1!z^ z)|~rv^d|3^I5%G`Uv4{6c}6o4ii8qoF@%PN%&E1}MSuSd*>09-w+z8tQ7UhO_zjo& zC$A|*sqsmdc)C`RD&yZ$T$vknl+0aNnRB~+HYFPyo;FQ(-Q38OU-Zh!rVNIN-dw%M zZv)GIIOQF$cQG!{&PMH8<=VE`xFkBUM#O*JmAEY-(@yMH;5A-QFaDf?t6S>LtZ|+1 zwaXEdeBdV<31%Ic*7l8-XG+${#C7r|#SL|PTB!2fN;$<9wCTLKc6=}XcT_xTQOKqm zNnN!aE;h7$R215O+LDj~w6Uw?IloO=zF3*xBf(X(lE)Zv<>n=B83j&ock!(iG&X!NClp{jk?3ylDVF`k=LKy)AiQIl%->34Kmdp8Kqw} zP2WM|ml*Tdj&v=mHnH^&*b(kGvF&)2zJ#qcFTbkgU>&OD-69+4f@WW`b4yjvKMkdw zK8DUhyqoT0kX-q?7JOUP9g0XWp-VW~l+k6ikZ|L8Ps0)#Gju`^Q)OPCtmo^h#HUbh z0efAOx48hyjYiw#EBhCo8&&YoFm~OVDsn?4mx=c$m0$L#EG;_N;;;~o2Gz*s)z~iw zK18o4nm=HrFj1X4noe*afpX{laWxR79Fq~|#5`k=YwHluInR)VO~9CeAA2;4aS@ig zvE%AtSH3oP+Qy=!8awVu86Ij0;o+7MShb&-k6KJIU`uTEyM$;Ms)cHZuKBM`5|$#xA;K3lptu z8Gh$})zFCZh#9+yZ#liymob>AX7L!hVo=LH=LVk~#3ado>hl8($OL20In$XsxLjV+ zO@J6Z+>YGZ^uX^suj}Wjl;dgA>|uTHMIH_k?lzFl`G$*+SHVYl$p6f=<H4CS+e;7=QP*ENP|$%a&u$MCD!4D)KKJe*&oQz76|h9c*no_d^_-6K z#c<3PPnC{%sF)@>p|Z#R8X^7hfVMIzE@$-l6Fr)!`QxBTkoP@mpN6`Khek-ZYMMj+ ztNF*h)Z9`wkMsC!6g~^;bRfG@kJ3IJ4(`<>Us%Vjb*4L-e1H~}@o(Re?s&JT(NxKk z9G$4;xya3YB<0kqMgwuA+{HyiUT(GRE93(?LQ~s`{GoSiJ_O4a6h6f-1RiUP+TxM>sEaf#n;4+H1*Z|(R|7Lc%cV~fjQ+KE604e9H>%Od_?$~D=j8t{oj)`hxE2X^Kn8L~QfWs`gFxMz1H z9D`@b+}yUmJ+ojxJ2a?5d8e?prkG%`@FdmtA@j(~&z5nSnggfru*GHkVsOO;o6K`V z%u~+osw>O^w3VTaT)ar2i{bfzOY=x)Ip325nzXVRHjOzxDB!#qtlWs@DAd9~KwG=6m*yk)8M2ou?=O)`aB z1*qPIB4;Q)CJbfMG!~>L7252PmEyk*{4wV(5SsNu5+5x?OVnzuPG(#U>hW`0Bn z@UP~+#5KIP=}*WsnC*wv&W1(#qfRWAt#@h`FAf=*qo#FLRxiJO+FzFQOblYe$R8qh z6QTiL*z6&G<`YgX^O4_3a&M6QY|izxBdU!s$Q3Ym)OEDn-fSV=XvO!T4qrl?gHpT$ zWa}%TmLaYTBklMmO7vBC$Dr%Cmk)|LV(o8t!hztzi}xWK1ZSX$x?6^Ao!c?}KoZ%i zfJC~1Oz9Ib!f(Q0kUFwJOLuICghb?A zYy}p@*_t^0eVY663hf*1bAv^eGZA{old`SobLCxw+EdIy;WS1nrZ$oYGC}J>^cqQ^ z7E$G=Zf86~-??LLl(S9R(X^U3m>+*x9M!tykm%4iDp`Y%&38tH17&bBYH+7tpXn1LUsNI`mQ2c^xKZSh=R-=UUa7=iXi%kr~d`d1e zVK$8$9-P{I#$k&PDwfYb^xjjCj{t4BXXQNsiXcFg;X23Y& zt=_UZf`@-fE)rIuC{deEN@T2FopZh+-57Ex+Q}y&U~w(x_!W4`;)bj5=3xj2rp-c5 zgPEN_a${>go6Bv^DwInP zd03uW3RUrQ@)PZ3ud+7vd96Hc!erZ-1RCu1w6Nu?bu_Q1d^}s4uIZ3&?n;r)08a1V zFtur22K%~NM5+0rX(@#Tv;MdCkpLU5pF-wEbn=OPZFrhg0pJ68xRa2_puK zXAO;owY78!^V(=Z8Sy^!Xzj2>eiRylIujnX;BVOdQSEJ6HtvjF`v=v$=t=HlewRc` z1j70f#cv?F`x|o0ouu^phX$!8tr}(V^$UluTdI~zx3FgyrNsG!p|8eA@X@an26 zj*C#=PkyD(py%%}X;vWJJ_cjUasf9Tj3Y!(M{TfoS9|uE#ec5Z=4~CY3)NBnglH^Z zHJ@w}Z!Ao?TO2k8FejwWzS8`5g|ZE$=cLRbDo@mE=}VSwR=Uobz=4~ptC@^Gi?}bP zwl(bFO!p`c-HL$yUVq(P_^zHG-5LuL>(y0fzhliLSWPttsaR~1R($12o66$N;q?I(U zuNUZ1tGY6q0>Pg-sAFXqxjqn`$OJ$+zS6b(II|SG++a}fW^(VmuOZYcrg{}uqCv)$$KuY`vEyr~VZ_3_N@~i*b8?lu)oi5R)3CQv zDHkRgF5UDk+YSu~@0=BoST9UB__)KLxc1I^3y+=ce-XrTl?aj)EpNN?tze=51S&B%uJ$&Z*URO&5Yu5=| zvCrg|R4+l14WEGO`^8_aK0`O-pY`1{tXNf1Dzj+X#2?p2HzXEoyx4~&Pj!g04YO&T z?b5mh?>dqj|<86uWBt(tFw7vU*B#5N%WVV#l{N% z*wM%4{NWnUU<~piiH1?U3)>5~Y}%{Qg;=(MhRo|`S^WLJbL0A#U3CkJg_WszBAi=z zZ+fm~DhcRU@r{?Nmj`;dg3aGrt_53QFV!X?q?saCI0W)!yu&wIaUinfsFT6{_AQ8^ zrtz2O>%no!C#E}x853zzIF(E{EDi)L6gySGY@~Fl`=Yt?$ZKgb4_BGP{OV)Rw;8e9 zbC;>@K(i1vN9Ay#8@4xXjPmj(of;_m@P}rTaZ_u3Lvh)`s6@KDJ-Ri!fBANTN%rC@c4ojDx4|bF z8`PU=Z6oI$6NX&8hg`3|zPu2na(+}tR2y{}dNVyd0EFSd*MImjV37?`8R4*g4WsC+-nIny#FqFUO zMx8{F%G)mU^>z^~2Fx0XUr}i=``5^%#G^dnh=tKr{k3G2w7#Dfwn$K#^YpQ?HhEVB zOuT*}E^|K({8R_pQ#VR(W6*Q0TP1{XdpGqVGBT|?JeX0CbRj#P#^O3Q^zvgEd2S1b_grIW4ZhajrW5oUeXO*O8Q zl(xh}`)&K)6&t!OBu?bm_es}yTYXeiGH(MFofj9EXgnAP=@2W$ipZqSN9!u9;)6Dv z(VOdBPH2#+{OK4TJu82^N-y69SsQIW9%jTa=b}?vJeTGa>^0VABy```d)Hr;dxOPp zK7fD1pQ*HNE7|5WZ~MhqnB2_EUrM=zX z%cXncTef<8VE%ChnJ=xw*Z+d%_sogjyvJh(i}1?L6pHSb$o%wKp87s*1ZB8q!OWjD zv}2^oWY1BNaIlt6wQTfEh1*T}LLs1vedschFz@eCp<`vpL;dL(cs4va zg@skx$a^$F-`PjC?Y788G10atlsYYb&|a@0c$k)CVKee_uF_uNv?h^93-3pSgbnTe=D-aMMJo$6AsbY12OTO1G2A!0T3V*aN$X?=twL9QnJA|iw=c*NW3Ycw1|c@OI=~C;Xpz**N+40% zOu3O;L4_}(UdSImlxCdkgpcJ6KN#8B;G&GGaORKqoftE1$mbNE^RT}$kQRN4xieSd zjP&3ebaYJ0ZT?zqLi7f(W+TCc9vkid?jQZ-B7jBUs_s*ZV2RqAL=S@K#1*S_$BMz~ zH}4*x#J0UqVqaORM&J%XC>LGoz*rk>4d=~~`v~7pg~}Q?4b?^TM~v1CnQAHv)$W>K z_qf2jYI8N~!hwO9OSh!_mMhHf(d3+X{Zz3z2=_9yZkf8+D3bPR)p@jyiDLgyv6#oz$SFNcKFb4;OnXKPqUtgFMzUDJNa;%?2GM0$DS9n)*9=aPEcw$G-WDuAm-?e zZP}pvOGE>T8dyD-0pi(*C~=+%=;1R1-C?E~uwbTDg#m@XD;{)63S3ws-L79$uB=`x zQPx<=o+WPcM^C3jY!6C}85pn3STK3eI+RaEF*>U5t9YO)-EV?fOnK%2nwy_()p9(S z%uN%}eSqj!0X8cw?!I%X8aApO#5Xan-5T6+-a8FDzkLptDwkbL?3w!NJ8`D>M7Dg1 zz{Ugwvw`Ku9|t)^@^+Z$Z<~J*;&%Lel>5epL|R<1RH36OH8_ItJWKy(%^;xYKjreL zwKpQTO5OOP`&3(k`4IkIk?97@n$tA-Q+ljKOlx_T5f-iz*RXO!bZ%OUs-L0=vYzs+wCl#9$Qni8TeCi1&jCh!+il51r8 z{cXT@KA4w9xWwyFxZ0;NL03k&K!QT^)!riko!1*)nc75TWOqjMb7GRR->$-FyYY?f z-LUP^c7B^Arhbp6ejKoQk1XP}`4U$H&zteSqFN?)W3>uq&3E#`;$~Z^D|Eik5&}UF zc;OU(5y*z#6{S;S9(m5Wikbpib8|sV^yM`x%S1}iFOTPCB(B_zH|VFQ*~^12s6E&- zd0myCCMiL{PH#mo+ZP18RC(F-E+xy=sQG2HgrAQ_{WG3qw`&z0o1<$UU!ubZuXom? zAsTOU8RdETcyiWbBN;f=qk}G59)QKxM(JOEncH?pB)U4+x>X^w0@`y-Cg`Gp@hdfl zD|V-$lRK`F%R3-gjH-Qk=H)U+()R2YMNeyLV3sLxR^K1?1dLPnk0-q1@v%DRcx%?a zBkYzp$71MwPc9El>$rBRS57!`R?hUb@}q(3Lhfopuz+vjG~1#wb6ZG_VIR1mOheZB zfw42{!}ay#GW$?yWnjUZu`aXDvl zb~-jbjvE6+dNZW_p{b;B=1s4HV~7DC+?Wm2== zLCUFsmD!E;L~2XsYADJ~a`9{F$4vxTwGz9+R+@ogUhO>0ft*Hd0D&KRt37<+#_&jC z&B$ty+@2|UC6^r?`Na(rL#Rg*tjI$iFy8}#<(EaY&0HckTO#&Z_7tt`HBXDCi=EVly~S! zsvgc?SPnyv&*SQ8yiZWKv=ZdKVyZ7Uu57a&{~0N{En+kEF~`0cA4OP$fXZcqunsJI zE`25pdfU+Y5G}T%$>5jf)r%9ZG95}p&?>~220>|e!*3c~EEZm0zcDT0am+M^-qFBW2(_Mf`Ds)Qv2K~W{AK-;@l z2Lq?d?7}i~1wLx5zJDzg(&~_0Moc%NxmLgq8hmagW*gqeY0A`8()KKPnv`1UqG7k) z274CWHdEeTM`vNB%jrE-Nv-)JS>a8 zrPTNn+G!n>8#ReDJsDm!Y?^ttdFei(G_@iw&p_TYyYo(yrIKon56H-MWKf~V1LN$L zQ{&;4BZZ5xj^8$RMVHA9L1z8!bNoE3tLolo!C5^pz8)j~lmOU?`NSnd9X4!yrozJ`xN@Z8wB-xU{*T8itYKljgMp` z+Q}-xsX$0QLuNJ}88*jhY#*wPDY@ipg&;ugG!1pfQ>EwbryQ&sxyZBG$1#9LQJlYt znBkp-Dsd>!1qF}BOrtO>vRcZ;@UR4V&!m77lf>~6UyK4GheK~m&=Jc)TEH$6LBjO+x-*BG;?yl!-H&pj!P zv*EAx9~qC;`Y|{GjYq%j=l3jy#JH@2Iq!(rqUrH?pH05lYPo|2E&Kyj{6TLI$p%w=WidySeb=J392cJY1PE~;je{tiGFqCsm+4`PPDl|Y zf)NbP6eYEmF;YBo;W8je-*$5BYs0=06NARAs;`U(AbS>^JTkerF0M}opC^!~B+r-d z9PHyeKs+ct-ap(}WF6TT=gS8;B=E<&36oQ}{(4v~%g4(pvv=@CGuy4LT%1NIn8UV#6{9k+(#c!i4i3T!C(pu={q+s#xF)xL$}^K<=aWSkkY^%7TP$Ni{LyVE6V5D1$v;q?> zxbP+$8|qsE(}Y7ToMML?DJh}2_>ImDt~F<1j}^+v3@+d6XN_WE6&NN{mO{1V%Vk&8 z9iW}-g%yO0)|$EF7lE!%S=nh0+3> zo_@LrXUv!F5IIWGeA5i36WLr> zQq3eiVqIiUu6feGG6%a2r$hI zYc&z%F_W-49xsd)^Q46Dhl{1Yv&BH_P8SxDX^^O!40Y$T8#FlrXV)?&(6FUmr3}5` zI*euwbGVL{%}zJ=&Yy<8bYF+qgq86UFq{6wGzQwqCnKVQUd zhQI(?_VmYD!7kQpdGe0_P6eXh$h2V}}Umj}T zZ1>E7eRXJ@?9vgH;Xjy=xSsoN=v+1!4t3&_w)L>vT5&7nn)m4LsqoaPqR6$TxjpT2 zbyw|b-`#J)lwK6~FLu;!zfK!I>g<;zYl{jcF;g4vnMX}`B!F3VeJ!6-X{_N#N(4J6 z8b$FNXA0^qJjV2|dk#dnND^E8Hh|zLR9ibV?d2q#G0Ky~OtRhF8U(t2NcHwEkw~s- zg-dI3R`V^B*LoCGY9-l=E-MO`(4ICW>B%QM92`=J7`M;A{WiDwP)mCJXK%kmD@IlO zb}ERvAWIGIX&G6%FaB6j4Njd|G;!tI>u2|4HU#<7$}`NjWobHTpCYZ;UqnfKZfL&l zOR}*{$0uU^?yue>y|?^w915fjPm7xZsZ36vk7ARF4xVx-m|f{RA4l-&RQn_i`w=6; z#!ZccjmtE7>(vE9tgXSH=$=OD_J@F6vuuQrT0~!YWaBk)8l*%GKC(qx=JP1T2g~+r zV0$G0E@leOU71RHpM^{mM?WgY&3cMkH6?K+rcHhol1HTA!qjml0}5=Y+q1epoNOO; z%qmR45C~*#QodH(Y_*{A-j_?*B^zBF1n9D+^hggxF*nDawu$$djE!m~7lJLDmQ>Z> zX{D?zX0Mp%M&$dH)vo748q_7wF;L=R|K-E@apqddD9Q0qNnF+HigJtmRBc)qsO>s9 zoLNv{6ag9_^&J0{x3uJ0Dj1pFSmP;O?FR0=jh&y#oQnwe!ND~k?Fcv7B?Ks@vL>tNdsGV<$R1Usq!-$ zv2tYXsCygPElMxW2EJg$$~sB^>eSaKg62V>OGX4WRKAUaDlxC+FmW~d6k_QOqqyp| z=nsMh)#_W`tI=55I~mxb&A|{>6!t!+N1;URR(pBDIFLlo0A!8X81@EOo(HN7+IGY< zO1D;YclDmhofWLT|KRClHY@SvNwJ6XdT7jA5{#;QLk%OvwTea4)e zD&D_G7$`{(oP2q-$u|YQlKoA{H?xtmz zVf>&8`g#7P*@agiYQ>$&KrW|KBMZ3x(_vByy}6fH@?Hu2XEl#g<+1jS8Tk3y)}xdA z>^*g}f_@3u=3buDtCi;Po_YI0{A@Pz`s2ENXP-M{Y%T2TqBVIfMddQp_H6u@A$|VV z76GGDK01Ywm@IRH_K^YKu(lDGG|N4<3f{N_r=%V&kNB>ehz-t2+pXjtRee5ir1wP~4cqufF9x(hoDmzi&3}w!7G|N6+b69F9o#%5|g-%I`cHGM;Pp9nk>FaO-^%>J*f2doMn<7EOh zqB8&YK}#`yv&P~Cd0$qIze&M&arp5fV3rwBF@7#87k>P94>JZ(si+Q|Q}0`wMSA|J zF8^5<{r)_)+Q(z4wM3codq49(KzU>coS@6pNNN1Z+CXMRzyf7rMi}-wY4w-)Y9ax{ zA?8aI-P5xCWiF6{z(K9;si-}-T>n!w2P7~7wTEVrS@{17%bz#B_5&=)tc1snp9HiQ z0R*P%K$TkVpPR9|wcW}BwdGuUt|9&>p>HyGO*(PSM)ohr?e)4$5OCm<*v|gqKj!ft zMeEl`i1DBG)J0}#V1IJPu5JS}hJ-AI{wJM#^7lI%0MLI$U{8F`{wo4|Gv}{7_J5)X z9M+(mvz-qGY*L?YV9Bq(?*AACP@U;E4dTqO@T~8=jfx1o4~gp6`$;8p{~Aza4tqoP z!`3?|*!>*XLBH=c z4{hJFR_WZjcmGx{{>0k;fCIOw4}4Y>czWy;#T06lk|a{rHqmww+yNon?x@KH&Rpjr zpzA0>+zDV<=6OwjVTZj?d3Q%~%s|J7`X?QWH#-Lo09^HYUg#(7;D;0Rp1P+}KL0E^ z3i|@U>k?DmKU;M013-^XL)OpMK%CP6hPxeE&hfM3y#mmqgXj5Ka)>8^;r-)yR-ab-^PAYwz1$np|C~6>a zYT9(GMNjuk78Fh)PXnbn7VbHX?)&X=1<)hubww*V=?dGk8kKVTEk5qM>+6-H>v;|X zbKh^;Ot}4U>16y@tzQPsAln8#J`00|PV0SoO}+$lTr}!i2&bu#d*HU(+@3Y! zj`Y5KTvu$!%HL@yLDlKqUp!uk*>)(~$(*bh-PtH>k|T_~0?AOwtJq|m54en!^!w6+ zyG8(f6x}Jiss_}Y@eidD`1ocmN<+gRWf|8H!6I^=|E)>%Fv12Ij2H%(8%sI$$l7{F z?2R3H6Yr%-c`hH(vbX0dcDVp+t4b?hrE*C#nhM}qlua2YbfHkc+S@H1ifmd~>z4M_ zT(qeKI0oCyozjLI269ob1z+e|A(eztC>Gzu*-6lLk9Os^)F$C5JGkAQ+w+#cpgua8 zpK)mua;j%gS-bDnP`;*ChITiC3tf;?rA}2fKx=I^zv9*#ng1>D?0u!!;s+b;qijGZ zOmQGTuiZ*V8B6}(Xh5Mrf_LkdOtou~9T=!HhX=}IocEWAW|I&Y8XjKFI2SEXoUwlN z=t^ZV$pLRl0TQ@kI`{XmYiFuGON)}eLOi+V2Goq2T73e5W}oF(HKQ!p(wc?M8|I3Z zJppVVRhTCu2ERrL~y`CbTV{@z%no z7cO=y25QMX$sH`US%0V1Nk6MdwcsAL=(GR0q;%OCSVlcK#_tf zyY7&Oc?h6}p5)A%KcfPlj5a$J4lj%JnwZ0_>-SS!_L9S20=_WW7f6~2w~ovpEAK z^eU#0;SwP=Qn>Yezx8Y~`-s@Q0d);f6pNVk5kStnZ>uK`7>lPz^|^zZzKgb?@HIM| zJ@gCPC_N`>uqm~?ynL9SN1v}D?>)ns%G$Q!5k(yvV*x<~R8*t{q<4@}M5#)L&;%iLq}LFUu~97$M4Ac# zDFG57^rBLvh7O?xDG3lDK!6ZJd3V&gr#v_F_x5n_`c zv~@xq=#07_8A=YM2-$H#Aq1@PAn6Ken3uR5-T$vabwqQ^WqcFdX3sm%C;H&Y20hE54xL+V_0V+-GXfLR3OtM zCu(B}hqo7bwr^WVVBw~TH$vvkL)$uwPMnCtoGUj8ZlBCsa$*p$*?f4wthhG`VXb<_ zgl2ZBRc9|c7W=epFD|1@xNPd3QfQklxRC;K^VdlJf~=TZsuBYD7_@}LKdC1{K#bO1Yhx`bxGlH+bIVRjtp2*=FeC zz;2aAUU^*K4s#w8kao;7u9vf26TriTOmvT~#iAV$vuV?t>+#s2^o?GHGXl1k1Tisp z1Z^cj7+Ft3?Mk0zipbG;^!-@Krh2na27)&n1Zqt}`^38C!8S>}w)-^5i!sRTAdL^i zNtZZFK|H{&icf)nG;kxGy71jNUAugSx$=Mh)ipr6K?PHsS^##E$CNKHgx_p5Jp*Y4~q0e$Hg z_`)?I)L~!CWL62=26dczoUpm+yPF*Ox;`kN--=f`ZX^#II6^sB*%v;Sp5Q8Adpi(7 zjE8m6+yaVqUQ6)f@sJegl2y)Qo?scv0kI@aTu&H?`N_#<&kRp~E1^yP0d3Dv29cDu z+;m#SjV390Qw5N^0%q{8X?cbg9y z%6~@K#bLVJAltAm++z9NJL5XHCgTLAU3{9ao~7tu{kw0g8MG9a?LB9xKe}^b_HqQ1 zSn^?BO#1#q8CTYCnIzkeuMWE9*>8Q=#}g5Q$m!R8W9kN8f41Hc9b9hrvK{C8dRjOYJ#6CAs;V^4PyDv;a6Mxn5_P z`4O|`s-s5kXPK1{R38*V(_Tk;)63m>F#+x-gx59a*E4bC+q}7J(m_K*eQSfLEHeCh zKpWRlhDkzaq+1nA?7K;MJo2DPH$U*eA<|qx=G)-eAi(7005@0d^i1;ZHDT3=&iJWf z$+ogt3oz|AgBX`hdzS`~L!0iNedz@Z;z$0eoDxCiu8f+RrQj_<^YaV)(zTj>*i;~O zbwmZCEbUlg-C`K4puqa=MC#5(c6L|5i~a=4Rb={f{uvt4k|3SeZEE@;JIEnp=}kdz zZ*Q2bh{i)XUj{d!%;^2yWyx*PmYXw1MnRgO0S42C;Jl8Bj&5&JOc7%3B^u*ATvp^| zS(brBBE6g+f6FL62@^77=taRBx~th^m8Ki%niiAs<+{CS5EwHt+37JfIXH;lTD`$h z%Fy_#2YwYC8K0!4ZJvlRxO+*ff$Y~HU&fr4L2&@*Td7oOPQW(%V5&{82D;$zj|vMl zy93K4-gxrgpIaM`CZjYD+#`bqO{1Cj`k{kzUoti8UhGfC5D0`<^1iOqot4y)L7P$I ztW*Vgm)mEUJGcO3N8O#eez^9|p~n7*`}Yx2YCoC3-1A6dR5H(B3m_$vaT8{SZql%@ zs1tYLX!r)8c7zqLuU{(fv#8uo3AJu~uN#6+im4M~Mj$TaboLG|-KG$+B7(MY-&SQx z>r7=v^X`IXYIAcMqHvqwww1ootxe6)PCCT^)75z-IZU@LP0Hg}F~zC}eol?Ym79T=hONGD&fki540j6fmjG!xUTC*J;bjh12C8- zDv$rfb4II@1~FQe@TxOdM}D_?Kvss_dSGr4E_(~^&hyn~v1>8$@16p{LAPggn~q?J z$>mBeu$jyZb#KI(_l1Wbrk$wbIm_)8ONNK?G#c=iP9)T1obm1AcvJ2Or5u7L6Dy_euUW>rD{ z6_X&hOk)8O&>rIeu#KM$UDb4u%`8MXgX-Y$sC6Q2iYM=6kU3Is+{8|i(#BVu)=>NaAOmQiP-s)ymX_f z!$1h>4urC?O{^g{=5dwk@mI={1zFKozv<8kCPpwD1bF-+4nPF2YARRWpS+R-VJ-K6 zqZdG)ca$nz9B*jwOr|7m=p4}3F=^LrA7nmhcFXiv`BpC7{6S!>GcWTCyeC%CpZ+x} zxL?1L6}=uGS6nwABkZ2Y)baw8eAhbGe&@;iI>9p~~%POA}YyEe~UZel(Hr~p3( znIBaQdZKb`oiyGHc596WA~puwq&({l4X=@4`rPom29HGFLTLZB09NFeC->ezC5%BNTQ6JlLL(SO9U15nlzV<4WB%tmMPdpa&ogXqk!X{*3 zy|aktbMD`-FnDN56RazzEkDgm=2NCM$^bbEn=c<9 z(iEAn0>F%VK*`ixI(~y(1#p~R2ZO;|L?Bp>E<7}DU}Vn9K!^%HXw$vFh6gzGjrO1R z?!N5~0QckCprgBao|KcT%DobObblHI(l>03E;kC5#DJITUeQ0WM}xfFrK7CK;-R5& z4erJd#-VMSn{neE*$lCL^qJ(1fMfu12=WU(Iv5N z{DDsXqb4*oB0<_MYS6VDIiYWnTf8aJ$M43Vk^0(P0vKV2X-*7U0-*I0>5NcLqrqqA zL~W6fRc5Oxw<1>iO$w7p@M1V+5~WK(Eip_K&#n5%<+pOs%PtNM)9?!ydgvq6s$zZ1 z_51`ScpT&ut^Ki5jL5^Dfq~Z|gDZ1xu<{M}u~423tJwmq5-aiRYW@_`asC;+L&#FS zptuS_onvIY!kmF1WjR@sqfQC%a|o(k<%-P8h&TC#W_J%b)3>PAmbYEXs*R&4CF4=y zF-Rd7{{9&)w*WnE_E^FJ7KMc?K|qS({iOu>gm6>(=+cRHpH|7f3F--#jFv11jy5+a z3CwD%ci)Wm0?&GKAMK2-mKMxn;larXNxVNXi4~MKx<*vqrm+%VxYJgnx7VWGfwatI zMsE3h8N=>0i}()ecqW|)GV)931SpEJlPbRf^A0qYO0^Hz3F1e#x2O%f_MN^J+_ZDt z^Tv*m+QPl1jILaICg!t3t;X$+=Db; zzeNYguiuYt+)2u(=DTs$)-uHaiK*73HL(a5mF)26~}-bb(X z6yX_Z0SZ>Rdd%ypuIK1f-~c|^ z05&X;mbtbV4I2VYF~W9ukNbGN!I1okeT~`ux-}-i^(TJv1%mK6rm3*NE{_TRdpSWG zl*DB|TOSZ+sl~pobj)|4(Bb)m?xte>Er!ZWRzYqA9gvfsjL~b-!R?G+0U$0l1+Tf4 zSS;O`_{Tqw1d`2Xd^|lp9bgc7{?wZ^I8&wW6;l}IxVFsMDq5?Xp%AM9qMKDjF)pA|PnFR8a8_Fe=iPxs>*+EFfibQSyxt2dK+uT5M{4z%K0C6psh~V!h z*@^_3OqY<_0Os;z{JYf$bTKi@A@VN#yKgj2JQvGDM8DZhTZ@Np2LLSV>O2N|qX`H} zPeT|3v{rNGKm>v6ucJ9V{CWh%Z_i(uKpk|e4u+i4n3QrIVu#T*8n!hqxBF7oS4fmn zm5x;)8?R2LB`14dZbO#4J3E@{+i0QJsso{ zk(Y7)iq*+I$$(v01L7V_fq1c)(}2r}7!R3EYdJlMlijN;#T@^$1m}}ifnQUxHEqng z*K?P0%;ZH-<57h=iOvc0`k{*+L-qQexp>eVUBwC8$8 z%?6D!&WT^UK3mk+W~1G;bPHhWm;DX#?mDr0U*);4|5bG98A0?opLWE_ic#i{{(j@0 z&R0eKFzn8C=6>@%-w&u_%gco1&pJ9T@dI6xWwOPtb7d8I`!to_xUQRFxuAD9c~c!L z7&BVfm4kzvhe||EO--!JZ_8#wCM=q5v%l{$JkT2F}U9 zFYq;6_+MA)-yPUVmHxh5{~n>gi0uDdu78iv|6G&5e)I1U`oD050weW574^>Zl6W$U z)K)7D_Op`(7EXLm4m`b2rMZgz!X5e-bM_aLXQhAOv!9f}V}p#pe7&PpJ#*O$NWZOg z`8YOr2ail+OxcW!eayGk>dWD39R&Yp}ujs#|3Us+6Y=u_{rQ>{R-J(I(K$f<$pPI00gt9V4d^FA(#e$Va*!T`%y$F0Kr_y*{c6>1Z*tu zJXvceeiRW3AYc`;t3`ht0Sh=DIRZ)#f6$M(1p{99-{s%Qi(&wf|6Tr_^}@fWf2Wi4 zRp0)reEuF6{bjlSRX)G_*8kNl`2V4N@{J4-tlW}J3s@NB|F4w>mdS z*^1;4zgQo|#R=rAqSMpUUtPZQ>uhPptGe6bYjQhsWd3;*t?mN`WAA>c0aqOrI{-w( z7@d{Vmy7tRkUy+v=ReR`Z?RcLXr>>pq7KR!v#dj=Fr;BgTwDF8^Uk9Vl? zfQBo8seRYh3xF~Ok)v&OAbUKe0m!5$L9S?gfB@yhrtP$!3YQ_BX*WfIdWSBT&y3L< zs8gUCk@M8MJDQtvQ?g(EfcLh$$P`oV%3TV9fq{h?6ZJM|fAFWDno48;bN9c0xOEXQ zp@&i}eDvT2-lX11juzb%Jpy_eGF0NOc#Lt^3=~R~MIsO=7%mAp@avf#FdIbMY5*uS zgVh4=l`MH&6$&(f@!IRPqHFN!H-f$E=`SLW=A3L6%dt;mapG+XD`*+&VNj(4vg@lr z0HELsEXl3Km&{$<;1aGAdBI^!YHqn?^+l=ZNAbqtgyyat8$>G)>{lSg+Id;rP_d@s zVX(AGaXq^NAbrjpbNH^tF2{XbUbkie+JWcjbN~pDZIl;vl||93#`|#Ea9O!8eV}9` z!qZw6CZ|NHEg2<`oDfex;w(hh^DfI!Yz}*lc{HMHJ=Fqp~kE3o4JxKbL6y;mP_AIt14sm+kt*1+|(Si<%g)Mbx_*2Wb}utq;8N{5)!#XOFkY3RWAp&6xe( zq`7%=L5W=5b8E=KLi|KlthcN1k$v*-k?(g->*fzKN?|UKtnGQyjE{)}g|IzghwZ{M z+ZZ6%X4iB~=donWhZCN$2jpDsD3W1cDBR?+ala=EfhRjKEZe zeCq2^a!Fts$uCFopn`_wI;L1{@G6U1pg>Q5G`2#6w1=uL^xAE6_bLv-C+(Usj|lcj!Pg3x z4blseJ||DkE01uoxV5RLL-0ycuUT9odDFG#S9aUc>oI3nlu%p* z@yvVobg-{}=JCKg{=h63+@ah_6UEjKd*{LWMmCKNs?o5N;_kPvP7f&Ch*r^GXD#jWgB}o-Rc&O+%`3*+( z4_HLzbL=e47K>;dL(OWPtQse4#}edS6&G!c>Js^75^gu!nJp zM+?%uH+_e=eS_Rpgl%{g%A__dL%y$~i{$A0)%;0@nc$SoFQt3&guB^z1IzNkb*RX;I)-RdQ^wwWX3T z;PAkof(g*Nb#A9AY-3gsz3YD9PEkk5oukhdosD0q+bP1q>FolmQlkCPWg)$1asw-T?0poMERP{dP%DTU1R9t%8PL$Ip09}|(eNl#Q3t9bP;E02zr-l&!X2X6H zy8^&)CUPJ<6mrjkfAw-1TKq&(hgxFR@ZaiJq3#_Y+a~cD zNhji<8~y#t;CJHXsWu#Ih4TGXnc6#6|1O^cGE|ZK=?ju&{uDw5>ck-_GjNAt$LhTz z`GLXd3q~d*b0FW5V|`wGZB;d+2x!~$36_`n?0m*@EY?ZJDX@*~?lMxGyizWAV9Qai zlLa;C`uaz&6dXLJ35_Pd7>%#Z0uz~gjeD<8KWa-VC07fzK?B)pdJ}E6o0YChX*);y zLo8V-8LYm!QAMO?wA)>tGkN9i-tMB><(JB-vEu09yFBiCw9KyYG|#*+@q)=~;d7ll zc>+G=+ieP<+_H(ZSME1FCDNkbMz)HQv<{Ace0lKc6FT?o8a{IVVbZtK;8ng+sM4=w z%B~it`7JC-Zucj2op7|Wbgm-3-#+OT^AP02!r|i=8xo6Cz@iz(9-cg&FK{@IS7cc! zz(~nzT`jyzK_66x+SMuNmqN_hGOFKtj=WTakTjwIK56+(FKn136v8G?>FTS0T7U*n z0d#ngC{5OLY$%(}R@OP(#b3x0=gU=>l#p_RQqVgKJEy&|Ktylvw+fKR2&V+ck6stUt4}`8vulUmul%B3*|E zP=ql6Goa`k$>zf9!UF!3TJiQ#@>a2TAe?m^hDN**F3atv_in$04h=23h*$?Xou&_r zEgeQ>kvtM`VhP1V`ew@fcHFuaCA_63?vhw9L%AszVy(>dD{i#MHJb`T3>VLBBjmg> zlT;7dXEIuy$B&m@6F7TE5wwD1_Z)$Kh`R39(zLv^vbF46bjNL34gC!A~vGpXw+YprZEu}dzyMDU6)pR79t9w#?F=z|Y? z80C4NXidWtcy%HW8Yk=CAvDI*;xvV;yG!xEsI|NX%i*h#g@e$Hn8@PU&NFm)kMqte zyla<+OVm&6_oPZ)zzuzGP&N%mzy+#c)xl4_3-4X+RTC*VK^qGUFfmZUJi%tARnTXT z^W-L0=^3|lYC`SNJVnqL!D)$N9ycgtY3JD+Xs7B~+__spwBW*PbPl_sOJu7ew5DZV zh`tbL`rI9vaRBf#G9WjbbIsy~F@W!9#K9Mr^op}95IpZ#ok@E;AQKo z%i_W#%r2wb0+-)cAx!6X@PT(R@tz0DyT6S-&c@9F{Eh}gPI+HAXWk*-&3&06y?295 z0;shVY^5wIFW^bjYCB+2(=Oa#loH!s`Iq`fL1i5RW8M(t2`c*4`Fl1_{(m>0Q|pk|4*=F69Op zw}ySU2hRXc2vSi_rdL2W2l_$jnK#f64K zc_VX}N4st8*iILVu|$D6U2q%kEkhuK#kE-}_+!PJ)&`hs5bilVa>iUyw4|zh{Y2A_ zF=*(8%RwDCLRV^M&fY3!LUz0sbBb}vE?{{o4#7T=%}YA2#)BJhsxgX)KkccV%+U-_ zkACb>+FD#YwCr9O6yF-3(GWpEH~G33zkTa;rvHk-Yrv|~g<+#-ktPqb^U91MFIQ=%)3Srd|Xp(zjtuT_} zO+3#n)f7CjE^P(2k67tyM-Fj<_L|MrJz@u&YGm=++;A$6I4eJ33?(jgs<56$$jyE| zL?K^}FDQxR`1Vo#uhuQE)EaxyP#uZzcp>hJ2K*y?C9Csx7jS#B^3H6`0kPyN7t4?@ zPbYNFeek4UXd59p$gaiTLPH|Dnc#%`4e3yga>qxWtgDmG9l5>u)2d^$?@wHwf`6%d z{Bd;O>j4ThHE6T}Nc-q0(e63}VEuk3tS;C=!)0)<&YKx*JXTJC0O9D$ZAM$9O-c=p zNGSGhEtR$HOXTphxV(S5%?DMkmm)7cMws-UemsayWP7~4DumnD9T;{UJ!`L*Wymi; z`G$0Or21w?I*v+fkLucm6qR*Dl*Aq;QH~WMiFOLw+_a9{1W_b!;kznR}ev>HQ!fRa>02 z03QxXC=Y-Z8Hqa)^dEDdos{&mM12QLyqJ>iT-qvcRM(Us#}ch9Wh%dwxoqCprewTo zUe=ebrGrQuMZJzyzqrGzCl4N^U!WD-_yv9Iy+qIe^aQ6Ht(ucI7~~G*&bj;P%i)bR-PFYP?d}OqngMi+8OypD`{kYUU~;3{Ea`?MPo03v@Q+EVFy7 z9lxmgnI7}t17mtByL4_t_wLYMa`*M4eujmL_OaRT148O~tw&~`Tquq+k`#%0-5Yo$ z;?d8o@~&0Tn?YlqB%2XYP)8xmsU@gwf~zkJ$Juqv%|u27E;7IWA(%E7KHe=)sEg;r zMi7Kba^|ptHjPE9ugo0nT@zyzL%(-8A%IG%FiRkeAo&u44fl@|As=eD9DPCHs`X(Z4c zu$1^}$cT_n;2mp0TNU*bTjGzFd{0u+_SH@;C8Y5b|-%+R- zJ)X2n|ERQ?x5H3-*H2v4mq$GAlJ7tiqkQ9F#}y3{+Ey~6#UaJ@O@l@d&vH&{_tgx# zl!!3B76ml4iHr1~ZU`o{l+1t9kjpmV>N5{^h!bFpF@n^tXvBHT;{9dPWeF89!=Z(` zsP=*%8Y*|d7-tT2 zy56wrs7VLmnWP~LE8u1y5n7?t*q=(=2ObtB<_M0pY>O8! z&1_9K-yy;koitFEK4mfn8&WaMC6bXMZS!j`(79>%o(ycH|0GMvxJQfp%23IS6JRV| z@xGkz9CV$CN&Bu}5%XOI->9KiaL#_N!qP?aZt4svD6$35g&F%T4Y^`d zvFyNL(cEZO^xNUrA*m0WM zRYaFC-B5q#PpQMd>TmWtA&OFkE*ly;*oD7?RbBOE6o91b;#6vMJ>c(iJ?8T1e-?oU zTBE*NFioIUFkLfV?7Yh%Z$zqX1>MUL%t{m~kul6jNNp2u@@9T?PS zWhtq8Daq?LJRz%_?RjJH)si{S3?JbHCBf!%n0(%FV?!Hyz4LsbVuFJ0V1GJcCdHiu zw{O?mLtou2)|%4}#1zTxL5G zNG@2sDQG+o(EXS$;Y`6q%P;AzB z)C;aSK2$9mUPt7bT@ckT!~Mm6*Q)=TL;quU zuV8_?5MYC2A&mYoMwx+;Ehpoxm{SmM3iOGuL~YI$-5K26Ga!wrBdoTf0_xBu%Y)hS zJogMw%R4R2Q}dI*E3c{Bz-Fki@%;mY0g%5@-2M;I*8s;bIvOZwNHAKk6>c$n8-E{k zy--1St}}nAsp&^?TR9D2J?6U~x%dK^AbBbYhUdIqb{~5%CHDa2!qLiGQT`%*4sbDF<9E%)$;dfzYkTYM;_l04)6q=`F)j z_2=KYy2ZzOquD846Y`*Ky-xa^wD;yE|4x(ev1_=t>vx4DzL7-x7y#u9qsi-frNA^b zF>z~CaBn8ue!x>=MayzWufX(pzs=Rb`s(H7b{*G%bIOWEh^jbkvtpm&_ue;fP250l zUFQNBfOtROO1pvvV!C>ZK=0ZMN}J1FKqmmA#qMhj?ZiWX&L9S&B^c$j>01~@g<~-N zQWxJrHLg*1wRSw48~l3z8hcitNPy(c{s&z1TUK@?K7MbOq0DS0whGD?yO;wUUZ{Ih z41dSaP$EPapsHvnV~$xsV~gsY6DiCFe6vc}iJRZvHY5bt3znAV z;hhc}AhA~k0l(cI3KX#PMvYA`iZj1;`J>+1DxT~3d1M60 z*g}BQ4`IiFAC&|msT{)NTl@Z4z(0bJzyCOJ&E*O}V?62uJN@-J|4=D^d(iicI)u{|NN(rF94=ms$#@+XIcKs^Id5@2w;6^XS@Gur*^&zu){S4Usifg{op@1 zS^&Iltt@Yk{N=WPd&@uF&dQHLqL5d-<4D85-S-v+SWw5{{oXq+;h%n-am^=&4Ea?S zeQzND-ySREHN%IbTz$X$2X~C!0@$&CMPTRc_*Vq}7hUoHpa|4hNa929%+!<>ksf7U zXq`R6R3GTe&W!!0+OmK&QeK;m!#^1n=+B@1dgG#gRIi?C*Sb<);Cfy$<<)>#5%FMK zlt9Qi@vud1gHKuF3`xHQ0g8a$Qln)%H?y#x2Rd!K&KO9~WItbY?q)$9*)gd9tM0J6 z$Ix-P83X^zLHJ#UF3$khN3NgkRr#kC_|rWOCE5E z!{1)?KMTH>VdqB!cAlW|H>;5fm@(XY9&4^2B$fvV_W(!5OsD7v9Tlr?zz%b+T+Ipn z(Kj{&%uFaLQ|bqgL_`21AsYO|`$tLpLm77Ro?_3B+R59Dobtayu=Dx*R|x*Mqy4WC z0K&{5pJs^wpk+9Yv%wB+rF9|Wcep}iCj1!o_6}1qplNb z7BxB@>LE=sd2n(8%9;4{q{Y1x!da2WN(B4^K9EmY_Ee&a9UBEl=r5pQ`SS&wfk}4H zT^x;1`b2V!S9#h&>>$37?Y7yE^Fi8@E%BbgFy-o-L`V{OEBGHbtc4Mpc>aITC@YM1 zPfH!dkE+BrKqV$neq1HKXM`r}0Rlf7yLmEndg71k^ea&2+-x^@^#mjn4{XETtmNL= z_4W0!PK1U#ZE3Q^V^aOCJU}KC&3urp_MK`tKoTg+CSq}#LU?MDh_pfeQ(*tcLOU`R zDSK21o3b}PN#0kuEk#+`QK$2#LKda9Hwyv?F#7IIA@j1rUm~O&uS@^Op8ey8S1$qU zNSMgi&e3zL-t?&e(8ZIr(nI&Irsa|Hs;lxp;=KC~2PpzPm8l;O*gGuX>cUSR%#-*D z1ReJ3(gLPnhIw#k|K|>Nc~`b{gWoL1Yu+VbM}qBXGEB6fiLSaxBHwr-2Oo0qkC*w+ z|9txpa+|@K!z3Ojl98R5Botj9F1q*SW7e?t?)FY2Jw3g%?X#a)l!bC$ zz;k2ZdvjN))P|;5L1eI@K^`W2lh}6Ma*;;1zhL|NHE(%|L*ZcVcTR94lQXcl(gE~_ zEfuU#+jY#efZ9)!f!25Ap0c^j{>_K*Y@v+x>7$<;8li(@SLE8WF%4fD2FCc)d(zE;vr>5663m*WVqLvfCvt9BN!%PKWR4U%d?}&j`QG=#9?c;4@kr_G zWsat0$4q^FeTRVT$xC4;u@xz^0YOF7c1XzM>TxR6+Xjpd5M4RM&aG zs4${1N8%X>B#-=bTREij6Mj)+HX<~7J`AKR!?8Ke2Y>J_V1K0&LU`KS^-kGXmfs=D71xqH(FZI5Y^=?GP1>sS-Bh!3e z1fXb~>@KAjpGAN~yXGV{LabMEL_w6L$>xVH(p_bpAO)_K6ZYXNDJEQ?PsM`k6EpUe z^x{;C2u~yw>wQvSc4PkORB0gnbK#0}6#Bb#@bA|L9u(@~lCzzJky#}B)IHA)v1Zw5 zc)2(|>~cF#OIkeE^T~Q$f!2r78M`l+H@7BPw_eOCaIR%bZMHk^w5)yi8Bc5VOM3aw z)2nghN~*=%*VBjgYcvM~T+|1>Z3}S5h4vj@zQ~X!o!+Q5nQ7O_tK%Nz1nXg*xrj*Y zTv$kvuH0CQ@`VtHblh>7@8zM~pF>20u_uda>+_UP@KvuGdu6!Htve)Q`9dHL6K%0U z%T*NDi7x*ub~lBluboDerj$o^-?e6A|FD&7o$$WxLDHhD}C)F?aX!7o#%U0 ztOydLB_~4pIEX=Fh6n-em1|V_%8tas84s~BkhBqJK_eX=M*Yg|@P`=up*78*fQdDN z9ZIicCblIBcB8zeJMA4$jjPy3f^IfzlWveSECCYT9Mm-&pU`EP|HQnyZpx|89lo-| z&paa@e?Bg3{Oh;)z^Z-^Ti(;iMlvnrBiSF4C>y8q!21QBLM^v$kfyRGphT0mwt7ED z9b4}9_fne;bT~7e?#30i;>HtU{8D*$f*8B zWaw22n=*26>6XGh^1xBrURSDGA4T~IU$oB&Jr)@Fuakh8 zkH{#7jK_0Ds}dJxr-|j5dOgcQcF^$+`NzrCDHT_@m3``{TeFQbD|}idqQ49sd>2Q5;T*X&r)E9eq?x#t9lF^6C2A?@!%MT-pbao87?`W9t%Tw| zQWcwKS|ol%d3{=j){^SJfSCW_JXugnds<7wd}*89)1&j^3_5pPp?6Kyd6S@rS`-h3 zVpIGtR4qb2RSP!Q=+GCfxsWL8!u)3gO`Qw^xUw;K$0*-O&1$44(-0|sVF92aX`oSv z2YV1IceK%E7e&hEdj~t?J-j`)iF;ZCi+EE|_z}W`kKIG_j?O7ZvlsvrxkAGzasqvP z&2pae!j$uw){uQXkzJqU;!SR6EqR?Dgl%6^fjGQw>!(7f4dHHw1mDC|&IBIoUv2Rl zKj}U(*oetbf@H%lKM$9rX{Rwc{Bdgk^O|2jgm4_qAHzjlwyabaHoLKEs2;`XT5^_6 zSV)mMp=veFJI&j?!cVlb%&lUvemYyTF_g(@B(kfnr>!%*wUxE`=Am?t?;)sJ7ZYuY zp5I+#RwxA8OqNz9kzF-0_|yIR^t$b0`2kn3xw>&M8AkH*_s$(U*{7!Qdef7o_AM;- zX;n(f6E}t6oM%$hy2oQ+%Z+PjkoA&imqb&R?eN1wq~#C?xO!pQ-el;+CfT>48IM1% z7Umf>&!coa1Lo_NV{UfCbd9*YjS`7MWV^FQd(qn?Nxj#kUOwIOwTLFd7Ve!E5w7tG z!si+nY}*$`trQ>4ma4ldFID^6%c+$mFqMRWSmQf7PuZ)D)fx3Qq|3hy96t?u>0WYA zE;(r9v(;1I;gf;YOM_2Um;y4TE&RX4%Pb6C;ge&Td-}54U#6E&FfKA+$kS3`MJ+{V zNo{!pmRB31#&Z4+WV(Z+Az3i-+92k!HHCa$n?mW>ET|4w#0UF~UVpJvx1GV)8|-?| z8#NaBq*!k3T1S8QjUm#jW!6 zzNQc1jZJodv0X1J{Vd#a9{gmrRuJZ$Hbgy64?e+JRjmlWkWIEV%#FT^r#oNUPFS=L zbT98WNEpxD_P#1~6Emf0GzN0!Oi1n>lm>OF{GQPIdsfDbb(dhWIqPbCc41y#-Yt_; zhotn>GIMo@#SO?qxf!z7h1*3I(^`hdVP0EL*m)kZIS3-#n&yN zvdJI-+$6#jvSQHk0d0mk z>9KoGaQWw!dx_5nO5CKE7Tr{S@gzfHyQv4|Pkq}T@5*AKkPM6?Msz(VBdK+78-Sq? zgXrfsLla)3QS&3Kes?u)o*Qc|-bX0o6=x|I`}uL-cJp&8Wp)?fh{Mdi{QSD{P&(}1>qM{X0o;St^xcvk$u(wk&h2qrs z!;8zI3C#|2csa0Ao)4Px^b^X#{FoPfFZ_bH5Pf33A8PN0CYVo8J&DRiHD5x^(urOQ zo{ih8&g%r<7jHiFJl8s?y;%Udi60cK&*QbAXN*b9Wfm_$*NdFby1lJnZMOE;TMUHn zonwtITZbQ5+1YrphIIUDlB;f`Zwd?1h}*krUk1=Xk}TIQU4YLB^eC!}#qnKurf_*f zgfErSz&Cz(u?L6a;KK5RD_Y{7=V*4A3%ii2H-j{xHb@WA-#6Rgm(ThMP|KT!rRz7* zMdPVzO_GGF#65zC>u0VBHPt-|R48a&gePYU9`GErNX|QjAhFW``($7~9sw zb6p;HB7vNXZZZ^WUfVF*8~RS$m&JKH8Q$5oVl8VW_~JhDu&;i?bBVh3JS7R^Y0sO< zx8E&dwxfH964~UfAXylZ6LPUP$vWz+!C~4h&3g#G0lch zQG<$wrT0+#?WXmkG;u*sR+T%X7o)jw-J6rt*(8#+`E*x&)oprznTuNvk5unNXRXq; zmtmtt$3?28961nV;5nT1w;4CG&pV}68LtR(urTeIovMvCQc(Zree7l`tGhdpED#roR5wclslSo15>4G>X*4RaK%5K z*7{t_C^#^Ct<+J{1?5p;P6R7+HmfZ|-{cdrYz-|m4d0Z@8~NY)?BC^vxtKk{#o6ys zkj=OL!eFU$OLP6k(&S5(rVJ?~;f8Wz0H66a*{kNzW`x|1aHm|xG>q&$%6dH(rDFLk zUEY1IL$~4>Csz;ZG8_a+j|7Rgzm#LREjGI^ zZ7U@?cbGgma{BhNzDReUZx-@d^iGA@_i;5Xs=Phfbxmj6-!PR^d7_GLnwgXhT)X)4 zX>#>2PvDVQ?nunF)xJGRl2b-kiy6ydW%%>NxwzaI19vaJ5EY~^GIE8Q6O9cPkanyw zYO!P^6&Kb&O?9|@t8ADM_YQQ}Cu_*Az&kLf)$oK;U6)s`=!%Vbp%9n+_R^ro&Bfu} z1}&U^39Z{la;>BrE%XPYJU*&M7&+-l1lwu6Kn3LxC)*75;j_Xhnm;fuow^! z`x;@oLxQ}0fsqthGqT#+pgqr3SOvN|RUIy%r{_IPjRMlV!PPsPIYwbL{#$%a~48es7L^tWGsGtWe_CVyG|9Le=k(hgbbP2xQe0y&D9 zlM*b(4Xu?UQ}^XYns^|k#Zhl6q$g?)Sd|_Xynnd2W7AQMcJ=V-NwFF47i~p*qqR`J z+mAk{4{9E<$nk*R-1=$MarxXX9zlDuy4!N%Dd+iq=#8$)@d@9@dy|S>a2zCCQuRWUKo|M+oRmSrm6fS9O7OuW+tWQqy;tnE~DM^y_R*i9$ApIjFrb z$myJu0>~}76oH29{+3>27=#NhpJ1I~v~?X^tHJefh`f5yGj8y@lg6=MRw%j`8fWYU z9S!+e4e9i}$#)=r1TQGl+aK)#UKL`z9nbYb4h#rsiGSzQhmsPsbX<29>W1MYr^< zi@eA>a`4?ycy6fs60)Q3XOdzU*Rb1#JlHH3BBKjNtFf#UbG$ID9E>WAcc{%1dFn20 zt5g4Wh+5ujbXYF@uD&Hrhby&LcB1~{*_1FIyEwNZ?vfoVGlveCAsZAzLHDGPOo)B= zPl{M1_67(X6an;p`BE|^;Gjeuaho_7`mk!@ZlZ$t`tHsTzqNf&Lf{1QbG)GwVUfxU zQ#S7J{DSerPS?quu^+%m%G2Bs(&rC_FJ+sz48eu5VihaSv)dihM^`4WNl}|DN?>(X zQq>3>=qjdI2>&|y<>G0ANcdrv!dQ~h+Nk(qKx_$m#7L($%5DCsBFn`*D$n?shNy=>uIjf_uut})xh!3?p#BWW$ zVf-!x;#lDK!L z|J0ZMr6ikHlBBnC!cP;?Kxs34tmVsb| za931D<&JoQtwt*RQFj|($iTLO5`oOLYw0B1VeX!(8lWxz4}0Gk)@0VLJ!2h3Kt)8U zDgq)+dM`GRCQ9!hMWpvm$V3N`k|13=iUBDBL$AR?Kx(9y&||2fcS6Yb1ZUo(Gs7Iu zkMrZZ&iwIG3{Uo6&)RFRa<6-3dP>`!d}AzliTmNIXNwSWcci!hqD4G%Rkbw8Z>hVd z&ttMX;E>_XTI;Xo$X(g|L+xbrv}RbEwNEXQb(c#TzlHzNM?0) zT~JS&2{f;T6w@?ZV> zDLwa@yq1mtkkh}X!+54=WJKPvJJUM;07k|0u8}qL-eUD(Wc45h-!9WbHgq;+palu) z-31W}l$;!OP}9Hto|%<|H14EoywXw6?d5za^Q58Pv*JCi4kk)r?Pw}2#mtGx&s+K8 z7l%>9j-I%Vq0nZyDttrj_OC`OuR6NlZw$&}ai8g`EG?}M9(8W0cdWvF-Y9DrIJIP$ z@Ce1Nr&b{&WZ430a(@k{x~h`;Y5EXzhecs-28pPlM2suV37VK6I5QU^$D%~G8dCUd zD%pK#``&c*+ho_e#!Zkz7($vgq=wdkW!dBkeOD=5)^(VXkG=lQE9l1=Or9}Y@WukP z)f=yZjv48clP_L~?9)cV?eX3(W8UK3X)ikt7!T8Ujru)&(-{L&E%DixUoHPI#7wf+ zf6OdL^vjblvT=EJp|y1hmfC$z4U-@_wg^lgX#j?ZF!Y*%LBI?*mQJBSAnTwAOf@>{ z3UJP&0jBm$IBc5VBR_n@Lz+8nPqfC(2dJ0)hyA722|m1)oe=#JQ5sp4>*HKQdZqcM zcXl~Jn}wkYh2uk&HTY1kN*#&*$DHFX9BefVDzg!M&knb$ zw~Hv64_hT&t61HV*h+CcnA?r6w4z6@Lv-q*ZY(pLp5-~_<;MG{t!KDimDHZZ+uxHM zAium4B^U9FIghsJx_q{C;RmCO&s>TZ`bF{5UfzR$f5$^A1U{d{Bye5}=Lnv4-s~3C z!rHm3rB=8LQy)^*yR3TfW8hY^Sv^3&Y}nfdx6ZWAf;bk5PUYoaIQ|E&LoMUobbQ2# zLn$1d#iTJCE(VXdQl4W65<~j3)wHy%l8#(ZSvZ)M9|`6fza~%DPk4s!&kv!|hCSds zHlzBXb*4A}wz4nUyr{{KQ|J1OwBb90>~#CSvaVYT`x+ZhAm!O@GV!H5mPbz!sG?K@ z)H*@C-8`GT)KaR=$@1X9*Paspx!`96p4Wb60&StD=4DQ4?7pqie_z@6*2#dxqjhP& zs0heDKwK%6sDmQ$P6CF-S13c(fRaw&{a?;h1#G!J@GQ)<;t0)Vo<43jeKvJk#m4rt zfuWaS@PGIO(}xdi`B*Q&Bo=!Qm3?#3FTDfo4neHA)Q;}^y`wn*v09bgs$SN( z$S2fPdnj8<9#R9#m(DGE<$jR~2cN1V#_i{>xBwNl-WrQ_T8ggmT$SCBkgvnbGA zx%3_l<~KI&@8~n)N}ZMzwqfb$ZUXuaYL*vATs~4qqB;}`DV0p1G+4(GxZ181nGcK0 zcko&oM}NqTnWjuK%1hMUmcfopF8g5Ck?nzduJE<{kcw^p;SnrT{G`$sB70$N98}G1 zeqRd+u=J+AGX}MZ7`%-7xF)_c^TGh(BgTmtL{$KF$4@}xd~7qN272j@L*B4}LE-DS zDv3I6^_p&fgev#sA(>Xgx_uWwuB0aI)B6e^cyCMPLpkhwAb2n>$3%Dn!Ff#3KU z3WWmLI5Zyw6#=RAGk%ib-5p95bO0DmqhIag+LB~rmL|DO|CxH9K;rvkR`gi_>1112 zk#Ldva@A5j6IDS)|IOdIqxaMKKZ34w(*tpcocPyn|55LM{>$eJKnTNVmF^k+#}oET zur_}~Be->&C6a7si!Da--`;QqVM?tSwNg@@5J>W}!~pH~k!7Eb_@ zAN%K!9`zr4{4ZUq0GPPua_sMnO#j_BAV*G}^y#^95Rvpls|Qpu9tipUl&|hTqT~CQ zO??U2@AV^w;y(y$yC(n`x3wtk{l|oU{{k6r0sDP&qS$HQlEe2K0~81#w&ckEJu3bF zVSn>BM4kcrJ#zlh&<~>86lws4=vLK~{QhhA{hmh@qIPPb&;LMI{+(ff_)(ZA|2+WT zYuPu#{`Ua<^O^rYcmR4u@5tNFPb8!Yi^jkFwV&O*+6JR<`!ywePW|1&)+3=m@G;*g z(tnBZjmf)En-Zq0kRQB5s5#8hMaO71n&M*V)VTW{&R#);TU6VuT(Og;+!7*{zmBXZ zl8;Qu?|WyM+Z}*Us%bS3`Bdcj^!Qlj@5>GKrzO2n2F#&)fY83cjPEy?zC^jchF{DI z?z@!lEtehTdZbHh`TjBAf94x2`bY+_Zcy9pl7YD6i z{n7n$0_zc7YW&gV)B{5~{uTdsujt!1^RM{7(e=Md>0j;tt4zN6$-l;DU%N?>669aw z^N%sl|J?XMX6>5zR+3L`0>kWZAA+dbdwUsxQN*D@U8ey^r5qIWt!_0t2AQ1<9LFnVg=jdXm<9 z8FVFpL3NOV1|>F-w*Jq2)N)lmOBQ3XN7CU1NlumAx_SEd`9B_m7#>=VUq09`obaio z0Djr`Yd8kUR>VK++@;%icKw+`JmGxAF~KTs*~NRssDGQksC5`=^3TRQG$ z^2Eanf~XjD=iC{8jYB0SCLRaIbq8)fco19c0WTJDLDbgD>*gEVt`+6@tyT4b^SMl= zK~kpvvkqs{L=`h7nbJ0)CCGIEU?_q;Sh6gOT*$3@#dFbqXkDAIdqb7981pr+lYi>x z+R5He3N7OgS9e-beV%WwS%%gGdn?@~^z*W+tM9k&A|pV21lC&RGCAtgL?DNCYI;3k zy6NGxowcn(zZFbGVJ^E>VgdOFhiDc}6zTw`JZ*M@VLqnWy?ndCWHy&3I1i_ilBAo~3j3(|N@ zf62kkv`ESm$e}S_h&vKG% zY%cWN@_JB-x-I92sXog>p0so&bSZ?+XGEYwq-oLh(wt?XCfNbMr!N(14)3J)8hNBw zqdtL?lUvsj^;t)=XyD6;gRd^_v$S`~3;-T3nQa_G6IWWNR@TdVIJCQH);7Vmf4Vfu z)&wT?%PQ)ufERUK5e2-n=v#$;Y~MZlWE!@Ul|~cj@&`E1 z1W+K))q+9&LP?=r)l68a?frn+6FCz5n3-#nhx2^ICW9r8W6e;&sS8TY*GF0m_$9}Y zCX$>L4fVv5ptr-$svDU=@44*WaQ29o^6PEeBsj*>9#j?Y*ig$OK3RXpuug3()6GO` zH1KUL0+QA4^8u&d^e{I&x6#OGR>#DU{JfJ}m5k?S!w$DLTdt+#vP(lQ&VsYJh6$2% zHSzpPuZ@iPniS`IpE17Xt!!fKijAiRmgnm=cmZJDVZ&Fv>lxlG zFM4#TsrI5@W~K4VoK!#9a#g8fvVmyX`_f~&xW{LPSjA2jSF*soq|*r-7~Iu%FznS_ zGo^rSX;TA*q=s|+q{s6SOI_q*LBp#&8l?w8_$ujfg_qkYOI>WY3EMr8i-!j{Hf^GT zZc)}<-OQGaI;3OOxX;$WgwHlH>5}yMEH_iGJ(FPm^bqHYG=8IcJN-))fZ0vGh>ggC z*c@fuQIsTsBG_QmxmPFXNV2Zu@`O-!yh4dv#|LF>T=2NYf{C;hv|zP$*0DwytSpi{m*X%gQm6`!(2zP z7@FOmKfWc-mJ(nEq(FO-SX7eMlKO7T%h|03bhMImaIEQ$PcLYxt5@t+^P$~0Fa3Vr zAJ|)T{oN7Kq6aZ{k8l9N3-cs~E7ycWiSdlskWx0RxUJYpDdo^zmS^#1b1X$~Gp%AP zJm3|C#S8grrO5?2`FSRQl~~=wVI;qALvIMb3Xk4Nh;}8XK>_j_P8rY3UPIu^ZJ9hE zZC0u# znJH63Aoq%6oh>GUwmu)g5_gipX? zs43PSQhTU(%Acb0|2VxbQV!_KB&FcQ#&pffU0yz4r(EMfRH~;G=-T9_f3sz=H36Uq z;l=a7ZRFZv{ps3;=M}z=4k~w5c>-jKQ?RLW8+!**4W>TPDA$=wwA4f|+2_FpbfrL9 zL)wm$ec@qk&TaDan$PayN7rimQPasWS=VJPppB!cBj+N?b@?cLZVU%clI$|x%D=?} z+ZM6XzOv2Z`lbCKTIbH)x`?}u&*r=Zm@>E#NK#Ugr6a#l--NqzMe6-RV@c`di)$H7 z2oJI2@y!(db#XklDJuX|;;WrZFqT=Yx!I_Toy6hEe8;ZvZJ-@U`XNWeHy(`FIwOn1D)pA`H*zMg8l*CrBk|n8C`Fiv+ zRDuMSHDG=MQ3S5{;mw^a!{Z+c}42!%g((v zM%WVX0|!7LP>?o&qfldkSE_hov}@e+Q@8rdH`<9$J#vX~_9gv7L|18nLx}8%EKIxD(*Sb ze!&Gtj4I=+HT+CYTc6!yaS27YQ0%0=#r7 z;Qh$wpF`&Q%LV$4-`O%kl9mK?QoKb#ZZ`?lSuuoL$#Pnti9#evHPT31MK1uu8&N|4 zej8i6*dLjjVBK3+@0RGD;e1Ov%v#;rR4h;OrX0T`bV#XF65HNKYQTRkxTtK{lg9_1 zukxq}kXwG8=zL3~H>}-6t$KcU4mm&3q2f-@!E4F{PTYBUW7=nH_0Yr{c-{U|HJ}VT z)urzJ!sNfT{O%z9Fja>_YJ%h*m@L6?(ups@$`d-*c(ZOnX7?Upu#nrJB*W0GYP{ch zA(U^#*R@4QR16Gn`q-}N8rEC)bXmBm$kod{zNcg8<-&9m3(!(YBxaCrfLBu`lYR?< zdKYtG-F1B>3^CD&CDSh}gG$_Ac*axsz_OCVLjI3%=>yuw1W+xcg0$oLudV7$yPS zNr-iBkK(o=cwyr5Xs)dU$g5MmxUTj>>wfdX$ZRy>`WK$E0DUeaYCy7asQDaQF(c+)Xi-zVoRK!EfID zHR1}35!vUa71#5EnBl!N^vQBvz%|#vefly2)w@d_NA80;K4GhuAlhzJwZ}P-Wp_T& zs$~S5u`c_%WQu%Q{!Ok+NPsE#ajKq%VuM*)cxP5+ri2X>Vl}{n?BFu&yVK6{1p6`~ zj-z6Dt7!hyNT-mSb-Cbj`R)C(94$1EgfPWK7FI)LbKPI85(^`VR`z3STmDrzB@IFd z4$j97-n3ZVp|#I|tEBh%(B4amr^&y2|Jc&D*<4sKEv?+6ylQc}NhQ_*&K}lb)(XSa z`L@>QEMxcpaoX*uIAfCX^3~#gwUt~_ z$Gbi26TqR5DtxVm5?r6Yo`lYyN?3OGJV7mGR3hjVSRrcY)TGE+bRjV*(eiz;b3JJ; z0{Y3QImi?ImU~%%Ss*{4=am0CBIITj_EmP=4g6Q+O79z>Xdrc>rP_+B)lIPC5!k{z z&*^UIV`i@TY~SfZxBLW|gr;hTy!Ex6R^gkE+YA@_8JXry>H5*?kp|bU*))6Co*VJm z>C;Dt`#N7ok5?oOY}7wB!<;Q$X6DgiG@o`pT7UXKh=K1D5Qlzgp)fWTc@sFhmJc`H z%mf;(FYue8WGsP3Mw98tp1Bv53L29kQ$FndsX}Q`>PFq@=6XMivMUT}D6UsHIApuc zOeO6ttYxtYGXh=XQF7uCeV!}t2ecI=D>CYfJtq&Pk&Au!Uad9LqUY_fKBkR|Mo~E# z$%UoS#+n-bhL{D=rPAUBrYm`~<}%v>s)QPEPsgBU^*z;kcn>JyoY+mpn6Xw=MZM?C z+l+-;Hy1{lh&*{B+nAFHXl+fX6;lgYs$6Pr;%FL7JuRm&YHr!^F+m8qEIx3_bmoc( zdsQ_@Aw9M*Vpz<3UtOrU`aF+n^hNW5u(Q-Mj;c>E4`;4WIt4OkQjFHV;MU?J>Ov-A z4IvDvPzG?1wAV)dYMnhgz38$GubiMtjNzoW#w|?j%x(OL9|tU^bT-^UgpW6~`2@cs za(DjAm}_hXxi!D?a0(nPKr9)5(vj4Q?xc0%@9hJvj!CRXyYe<=r|gxbAh~>_8`aki zbT0d+wrD8s#H(>8I$wnX-Md6r@9B@vHUgYAJh*sjylUI&NEt0qMXQ{ZAnw-Ydb^vp z^Kmv#&GD z2{{#EpP9{yHst_1qF;tF2(;-_?OAtZ=%n`T1bxy-0nf%%U77c-2Kn&QE}n4lyK+T5 zcVn~)Laa09mHJOrt$W{ESUj3HdADKrC~chTqoLA^hALRMiD;eP(1ymgUezr8#*Vb| zu)MtHu5o;HXx58<4aZQW(&D%<*;M^x8Li0lfQDmxd9?DLLp!PQim!KTCs~%Z1(e#3 z0u8k`*-cYYF%CCP9e29`eA-+ey+5ji%Xcocmp`VcWwG(hgf*Sr1Eu6Z_b=5;1kByK zk4jaX+BYg;j-n$3=Ms(wj%aoRs25q4ee!8!i@L_n7VOnRs?Sm_)Il}-mwh2x?+9n# zc259FCs(6dAc=S*QREz@Uq3vEs#*17c#`+kV;xc|5F2=9mL^Q*6d&L{IR;BL^MtUd zv5vAh44sn(mx;RZ6gHks-jY~Z$=_^$Y1wY_bLn)FW22w7C36-{Jxog;Iycw2p3?Z( zhh$S}F*5f4ZHWiExV1K#hvBUink#Ch?Zafg6&fk)>`Vy&FBM&QwPC}Bdq*qXWScc> zwN^u0x30Gk@dRxHKZ@E?E8an`e=_-qwNZ}`a-%p(=3an*&&FIZ0LBPMnnbD|C-9#E zrmzKPZ0thY3*Sh(rP=be*pE-FwFhD#eR{^n#8Tu*t6^BnkF`y=-A}8Hq_mjO=(d@l zHt!X~Bwep+i-O2%Zl+>>H%}*F-5bR+hJr3*I7#!vg~B}}k$`Z}i-=t$M0^I09P z+!yoG1tc!>ygu4j{sxTwKu2+?jss)tUFQcY%JFeVnI$#0EPxS9=$U(S{X*wyaHX@i zN143jIsG2bOEi}Y+F_np){s_9nZf3vZpNXk4kbv6tILSOwf@CIFS(_6&wtGadKJyf z{9$Ow_`$*XcvxLD-ck0b+vI#dGhz~kUV5Ju{xOU%fVG0Z@w3$v`&{Z8*7h@wa~f!S ztQY;kB`FI`Z8Q4i5L1*i&0Z?Xg_>$pw%}YcAoHr(gh=n|WOCMaITQVtivX?1D2(Zcx z3O>)C^^r-a&S8&! z*33`Ak~4FKVR64$IXOXVg419_*r?z$&QzHSWh1@ze#DrzXW-w7UIA>V#XY+nS7!kNH#}=HSaSz;K6BBW6O=`B- zrRCVw*KSUo$pJZmyjL{r6w}CRj;3b?`|2O8ag`cH`{LRJ%AgL~9g}k-DhHMW!Jrtw zK4WWq-?1%Dc){+6bswn|EgGg^NNDudSn1Hxs@dh0rr3;QP={AM`(%xOeMg|%jCHSJ z*o7Mw$(L_pf|_}ZbaktSuJyL9CMVF*{6Syh3e*M~SiA=X`EVQcOwM&j*#b_A4|!*l^nYEp{_kC+aumeNu zTr^5p$Ah*j@!J^-9rzDxhZ{TFGX*cF8H5l>!{gQ`6N;H{?1- z3wIh4LRwdz#*1Gc2>?3_WvK~qy$4fG2wanAo}bzW8PIYSV!tifc|s+QIlp#HuOY8n zH_39jB_+xBf_~*C1IBaf&1SnoPBm*im0tXO!hF)y4oQgXHlBwQU>_!IE>#u67a6ah zicQg7SDS%&)?qoZD^jM*vFYK_LTv*MOHFI#uaE)8`|lQfNs6-6VyZF?(j67emu+Nl z^adM5t;Bd}cj&5r9LwADW{+YXb514MHgSRv396ju-xr+VZkX<-l_)uMKP61R!p*t` z0C5fj6zn$^4QkXnfQIyzVnQ*^{$Sbf9BX$O+ma=<`WOL%j1gecO#E3>DhB@Kdku0siytK@N!ZwjcglLz^rYxK#4e)F zYjh3nguHGmYUE*RrFvNHNB=uq&-3J>zvJuYd9UkJj6= z8ShMfz{m1IYdpsROpkld*dJvvnVqkcJtEH?-akI9H&6b`YR7E7=_IRI4FUKJDw00vcCe~bWd`~PTrl8HQ!l4E zwqJ7N`ywMyr~-QWdVKCyh}&N1hl&sD`>0o(JpW_A{OFgTn{`F&uFYQl{-J+*SN~ys>{EzxQ3pSC=00^dx}i zIr%X!`oEUApR>QW!#8_V;tj5b?B@gj=?keZ0{gxA)Zm{u%D?@>d-6bBwN~_xnCx#w z&3FUY@68iMcYhS^8c0FA+GJn;L3xV&2B2M^o_m<`qi9zW1+RtCRQ^GE0ty76T?JdD zzRqX;Ruq4JwR;)@*`}af)8JA6?I*uV>GMen+}q-XXVeeAur&bSr7N$>v2SAc`;Dbv zq~PWLJpg}yd;yvNdjP&ym_Hl&|APm>#e@`^h~-ED8feO--+13V6uxnihHdXazsozb z=r6|;te)`?_s_!+fb#5Nqk`>^wpip-s8ZBjF6)-&C7Y`>J}gqOwLXKBO;Wm#rF>0# zJK*t%Z;LCC_y1BYx+}6aiH7s_&DQ9mdM0;S%ABWf4e>tqNI@O2KX&8M2|w~-;4@Il z{kT+b9I^jWzSF0B(SUtU+_d`9<=_DGX_aiP&Mj*% zesI5{6muS;@$d(iBa#Yi_h0evr+EL0{~u4K!oS+TpXThz?f*yPL!tf!JH$?=T-aV1 z?>i~&K=bJBw9Ed*i7iu2?kb!=dDh62H+EZumxk zU=eecmbfQln;xyB&3|wK1PnJNZ&WX=tgJ}*rOlAGeZRR6{>P~A^MFxII`zNTQ}OTf z|MBjIoIhqPo-rtdIS-+f_S#ZqnE)oqFreDk00iITI<}_@TSy_e|-4w2hcnbxF|D^iSgCX;bSf;r(e2n0X|y8`HrD z^jHH-$i^oWldfejeRt>YYvWodU}JYT{j8qsvXMaPVc*FVw{Z${U||}Cv$%YZvzX); zusIeCAZQ9lizvw9&FI7F*7B4@Ag@trp7B$<1MWKME~tA1Lw9%gTb;&p@W8!T2vWf} z>MM7&q3qtX8>RQ$wcM>bMfS}^UGoRF_Ykw4n9Xg3C)9<|q3K%+6|H&Vt>pnR77Wz$ z{=`SLb#&xAk_ZBr1kgGig|Qul?@Hdkf3FXuX1XysGbR)0u%L6BM98`0o{53y9odXd zBOYgD(s;XGgOLdMDc@=HRg`G*Tq**fWVFBJ4>pi+y(}hMT;+q?U6>CmDf7*h^fcxM z9GB1U4x~;NNpAvw%!1Urbf2+Hi=*d`aJ9I;JHc9O4kVaff5nCqEtNqL6x&18vLfMxuO1#}GhrhSD5w8!wvT$HeV; zcB&X}s%PyrgGiJ;Bz0qQ6Ocz ztvb|lpl7~%rEPO)A&>zWKIViZ1jsq#i&WoNfYpzkxw{jf{n?;bkM)^+b%`WD?8kceU$vp_zX}YXHfEd zEN6|if5?;4eQ7GMFjVs=qq6~V-I0egBp-5quC5kN^;t!hUwc^95_c|KFKtkA^|7E1 z(iLlo%;6iqVeQGl9>-sCfJaWdM=-ceV|PZsLfj$cQSBRYCR-(`m;W!$B*(Lggbj68#M z6jG}@w(lIa~DrrT5$;xw%M&%-IRJoVW zVHHOxIzGyHa#3bOhK*z|ftd77bWYv|B}UM1zbepfu_v`}5FvMpUWkD0`7sccvS2wX z*BONPICLaDL5~zIQjlmaXCNVcFZp8$ul^a;vsoecZS&oQVk2Rt@GX5$CF0ahtb1+8 zpyOky;|H^M-n-xDmyb0#Hx(fs2zn)gv>}q?D84`&jHOlUp{pW3ZHr5XarJ z^N!+avv$uOl&&wW@mX*Ku^$1CFgWkz$hW}*86rxJ6U*{LIVK)`ydd|D1Mp2w&^(`V zQ0>_b;qrjh=Qjm-TwRMx?}|rdszB(Bo0{5YKFu@-#tE3oT~~>>(J;T}2j2eZGx4r{ zMrYU^EJIu?X-Ao_&V9fZG>F%hWce&X7UUS_Y6Ik0NAzmKp|rA0v-3`DCJO6_YbTWg zw*v^fu4@5E3lo|30gF&5ZY`KKA~jSyCCTen1ELi<`#zXmRmXRgFkpH&Nn_e8;G&tYf5(b#*~Wrd1Rw1j z>(!N1N7vCL6I_%0wsTos+xU#vsaZAs!&SEVQsE_%G*6Ebl}kCu32Om+?jUed|L7O1+M;Tg~EJa>@|58uD&I zhw|laa&v$|I!{IXY`yp2$E|PtA-yAkIJsb;r1^6*F3sd!7ObK&u1p_(_zSEhKIH+3~+O6Ha%#GZq)WsbWNxUgK* zQq7udgB7x+WKU;T(eS20+pV`_1xmOj!Rt2tP}go~Q-Guye^CwF?6WoajH$oy-B{iF zD<)NaZ1M#@zP?in+p6A8X+c^be0=Q|QTLb>Pcx-r_m25Ap%iL(KWPfUg|@^XeGQPSs~Dt2 zx&6u^;Fl9KkSj(>IJ{W|H-#D5=D35uToM&qzF(P#U{dqEykE|$=XP3F1X_4cFvn#A zMzi}?NgoAMdNgV;y8XqJe?4Q6eoA);Aqis#wZWwF^>}}z7O&gcf{QEZ2!A>-%A(%~6M(gi3r9l$T7rTkykeDS5}~wMuM$X>JFZgJN!=j*zjrOE)U!+xoUs z3eYpsac9czFv<)u2rLY-9`!GJx`x)0pMxGWn`3sewlngR-0q4XHUT{1PEdrIG0U87 z*sB|c>f>wi>kab^VF?)vXq)lTrb!Fj5InKDUoj7jg$w1V!4t}*TL~Toz z8~Kpo?kajLvfz}!T75RTggs8%LD+Lyuc3*%vH_u~iNfzOW6kKlTM4jQl)(f8$l`*K z8hPWCbU7nZrzAE_}PCTfc>JQjh;>UJX&+_}NG$m9(_LZI8mJ(8`i&m#Jz@lX;l zWf~ka5w0FIMMQ%`=SKV=l$VPf-6M>3@v=H|KJRho8pbL!ZctcX`CQ0&z%_CCR&GqDBz`2kh1=h2_j1qf z6l7e+-Vimd!AK*!sl7$}^QB5$WL9S=su|nim6}Zk=#L}Fqo41wn_}tYclw+9))TIh z*laU}|NgjNxTgo8_;Yi|5(6zUDXI`L;H;!_iguBdxRyM6`cz-{yCyB^k9 zlR!`P;>kik_C$u#hD3SrWiN+${;cV(;by^WUL|jrhXQ1xwozj%DeZyo{BgX_5ggpV z@<}Il_Pj-Km-B8QBhyPb#Q9h%QP+l;RCM{Xw;Njq{2R!{nZ^Vr&_VnP;Wc@4HUp(J zaA*}eqIZF-1mL!oNzUZanD0Xjns&x`g`1zY;7;& zG&69R_1>T_(-dg?s3{-j-cuv3DWNwl!5r+*C6E!bJScx6vooOm5$WcL23P?pp97B7sM~>f(B!jb(O} zMCI(_rjApy_gB~SuZb4OHl?%#wiH90O_K+sUI4_-1!=mdgvq(w+63!Lu_e5G()} z(KnSj-(bqr=B8nID!=KZ-kGUAEa1#N;1xgmEQ85fY$jfh6|u$6r^S&^zT{!uENWX$ z&J|i~lJ7r2gplG&ctK&cnTgt_W31IXN1$n|p^VgeRg-upyctUsHzYlSz2fJL8 zvbEWM@$>0*H0bMb3sC6_iH^lK_1tD7 zZ{@(ckHEhy>Mcw$b=Y6N4k+Im0xL3i!Wl1x;MFsVh z#T+(X%p^=hvw$I0En9zRk+dU3s{I_j@b+Fy-;7rJ_|k-L;Nf7Gd^wDK&gS7z>5iUw zTNQmt24=a4h=C5fQg&4LXI2+y=e4G&>M`F;bM zx`^Rj3Gp$zGP<*Z9_;w$6Gx67wOk}9B+JOUgq+Z-t+~9Vz0$h-_Q7=FP8U_weihcP z$akKeUApQuCm>-A!NX0)-a`axPYP3ge7l3e!^_W0&3Dl4ZpVUC2Tun#jd03IZik_+ z1fW0xKWX8mn?s5sDvQ3%dm>$LYY^CIQfENZK~o@G3FU!IcT!@vYwwUZx=9dwGnGK} ztw=UTi`~bE(Q{RBc)xbONs{UD=Ij~jH+1!$@~Gr_0p%Gz&G2w|ctU>*qxqAGb5F$0 z_Ko?cQ^w4Keclc}=*l+zl1q*$p8U77YWm_kYFJ5=RqVAF#;sJeq~^D+N_1pYyg?N0 zQ2-tHNsX^>U8%k-ScCbHy*rkm8Mk2W&@WP$PpIR7>o|9y`v3 zTkDu9;>KwiiK%lFF~qxy8;)~YDm=f>BL7P!sJsX0Q1wDYJYPTcf)BD9g?y-_#or@a zAeYawb%f3N(?;Yi>!?W>i^<>w8UBc!Zsu zi4A)3Mr(>A3QIe!X4P^Y2zT}3toR(n7Oa@&j@N2Ea)kOUW;@WgeDgd~PS@1#aMW1L zUeuHR^C20GfaP;p3{Sh}vwl2_PFY5>-TnBS648M;XpAVlVx%93ToDj!(30;nBc>Nc zW~vbhU7xj`2DYreiIu*~qxHUeN8o$n$+wRBd4Pg9>Tj~7^pwZwUaIOCYMW_-{E80TjP!K-*6s}$W%&c(SB;^iZ5 z7BKV04{S80_C?tZmHDb8=i?5uQVO2a8uX+B5Y@LDU^QXQsn}c(O#~fwPLHaJ!%(cSB2yl4p?gRvGW-gofFGi=jXF& zYA9WhJI#ZQTHs*pE%i~BjHlbraajQJbTgns0`0qTadAFm(guYFq3EnnTz4#s!4NF> z;%DY&va)v_PjFc5WLzeLLs&sQRoxg$9M14UJWK3#8Vuvn@U(!sekqM4!b*Ps^5vm| z*K_RRh>!p~i+ox6WNyb-zE_P%xivc=LSy5|My$Y4ESv9~9!i3WOVrl6Gis__{BUYb z4C5e{ft1F=d*r2cYpuObHW`7;sp7FP8`zy$6Msccg}X|qK8J~>wUsh^QsRJjgLI2B zX$ZlTBFstzK12Ey#8Mpj3J1i880e7fT9c41rr4k#uPbIS} z_MH`2&s2}4y>I3K)mh#v!=D~w{>$mZJX0{jerkFku(K8!qE~w5#I2D6VyJw{;JVG? z2B{r7fTJk3-GT4F2Pr=G^EPm=#d_3J$f5o(Ofo zhZVVK=B`hW%}Mv{N2E?41@A75?gjmsW{DUUcsvMpv{AHuut0% z+Y^R{A+P-yvAPgIrmK>rGF!BI^}}+_#&DA1Q^waqTza`F8 zWZnfgd;vs(a+a)?fB@yj%}wn)8*s{X_YKGFbpZ_<>k!ZMXS0?pH?xbmY zDdm|wnC7TK_Plabl_&gA;sCB0+k+lUkwr7Y=0P&^L~u_7JK4hXOCpd-6K@#rW@BbP zHXKTgoS!##G>kTN^9tl_tY%p$<=E)E36Ijg)hlo0t3#CQIBi48jl0|iZk2*x>`QLUF8j(A zAj-M7?%nBW@7opFs5^+ASK$HSUlrLug1!Bc>WOsf9UF73rft9((KKwgM%2y3R$NJz zrEdsaw_^@~m#G!*wwG{kbW4Z2_n75rfS-Mi)D`8qMINbP7N{2KK#h~^*3!I$vEV|^0FHaJzSUmSsOZ;E%!}0L_j0uIbQvF=P(2a@KB!;lFd_c~qt!}zA z3kNWfRJ?+=&U}L9wEqW+9bTbNtU(~jFNZ#&wUaa^EI)!+To)BEn>mF%08>F@C2HMR#>GjMaNe|aV=Byl zd@8IvRBevTz|!rsFZKV7u7cIQA)28sCKS+_V=>Nq#lgkJW#)WVf)G#D86Vvo_r%+G z^BelW72@X_trlp)vAU`#z}L?LcgI zN6w+j>D1#@bVc$!S>5kJn=X240?CZ zsq%f2tFpw!acP=~>9%+(&U=rP@wGCE>-Jkzzk*uMIGdt4*XIUKF=;Ab``Bk!ETz+) z0plEXP&$so5*#CE(tAj)2a%T8dO_SZlL{!*~N!ASB6XR9u5IYoN|;x7mrY2?e1Cu z4k)BXQ237G_>8=6&y;rrwZ$&wPiUWGe&#;enX=mP7M{&vXrxuwd*(n=J!$s|+Si1x=T5zb3He8zrCj!bK)?JV}U_=0x4S=FVjQ%9Y_` zJl_9d)Bavg4^_?iYi$x?4=6D7-KE$44keP@n8AvK!;h_bqO2hgYKcP&<2^>s2;0d* zp`yZ~ccp&RQn}opMD_LE?fKnwbQzMMnPOQN%8buWc}Xg{H&yvuah`qL%!_lIsTq`6 z>ltpI%L>>t!#aQ&wh5_WO`GI?lQWQGl2HeYl#OSqwII9^(VJGqr*Vh~sIAm;JLO2i zCo(0ioFw}43RAi9d>o0P&MMf%fLZf;!<~Mq%$7F_2?Zt)d~>`KFx$48 zIA4VxEix<-p^|EDY5|HQF8ic{|CDvPR(AMMYU|t*OLrB8mK*2_Fr|@eF0F6TyVWM(Fp}T10ooq&ihfSAbvNqt3f>BkyPGU=fADMH126=b0Sv(L z<>BMoKp@e0jIyIn4WBHFU=FSKr0kJiVy>z#(V!hG4?MZ zP*)1Yd15L|5SO4jS+&w8jidB8cn|w#G2ik6lHIq~qYp=w6c&q^B7J~D z+~2P;T@EmhTl5!N!wclTEgxUwfV2TwL7JVdm?)Kf0rSRBfDj@7{q+O{r}fX46~_7J ze7q)F5-b!9tnc+(%>i>z@4Lo|yLo6J@j{Sv@o7zpeBaYzYDx~*TcoUjz&gCyvF6%CR&Ra+F~L(eh7zttpPw~w<3S8 z8JxF*Scwn&ST0SvHSa&E={t!->QBCP(6J0JGTkRn^ygisKLjLXr;I7(|{@ zK#b>XYJO-hK(e8gf~gPJyuN1-zd!kZ@dSa-JURiuK%jzcem{z-Po#h_&%+=8-NU{U z&DWiOJ_qcV(K2~$zl_hH52q+4@hPlw_#55-vrNAIm2^Q0roLWcmgCQo-e>Q209i-g z!#m*(@1G5Ifu)O|G^jbCIL{0#QRsD z?c*JO|9Ai-Olc|+tTzz&_B8*4MDGa$3L%=Ieewt8$#@gk@4p9N-?#Da0r&@H1ODs( z;sNOG&U-Cs`Z;8m&b>OgQjgobnnyHwug?>*eP&Un0OQ(ex4*f8Y@d8PZU738*8Rad zXEc#AA^1$Ng)ecLJ2NIP^{@(0#<>MQ*4vI0+DnKc!=jAy>c~$d%D?{p*c+!ROv`rS z@lMsoy8ok|fR;NzV`=#RUeCe5&);8BD6jHg`TQ%NZ%+09xU1n`{rOja{?(uV&HHP# z@;pAyx9yhzU<8=!I-#G!e*jEjljAooKMBxz@~#(TXLB1G8d?CP1noUNX91>!aNm_W z-nNAIy{Gj3fn;RN2!v#HKcXy5`agJq1&5lMluGI*3k5A`BhF+y*Plk zh&TV&xWj2c8OI-;MuGBI{GMUJ3nia?!v*=U_2Hg-Qc^}mcB)}M;%gM7p!^P~mb(VY zQw3eIqPipw_tjdV&sSaAFGf-@0iv|rum?Gg>_s|llpKrkdtM$%qY7SP0>H}N9a{KP zF(Ip@q~zSAJuY=UB(d+kHsoW#&5p&qu z_nleegI~JueolNg5u~c=&shzc8@#gG&<5UeSEtKIx^;tC^8eWT@31Db?F|^7 z(QzC>MMn@30TmJHBGQ{9Dgpv3od8jgPQcJ1Ktu=WAWCl$X(CN(sG$a=MruexkzPU) zAdt}WKIl2;8$8GJJAZ!H`_6y4NJ93r_u8x8>t20QB6}!!|Gg>@fT!rAZZl2jpEmv0 zKHxA>I^jP=clGFZrx_W=x%}wV-kR+N?;Ups-lrJ78glZZCVeW$bm~iW=nHimXwPza z^0OUs*jZy304GM}C&uRgIS6pj1Kk^2r5%Y{wa4OU0Qi1$vkB@d$VD;XiS%6y?J4r{ zwlFH2%Nso$c%b;hXk9aUJBzDml6gZTqv}^jOz5X$(oG+@u=Soc2LN|r<^xc1j^V-? zd8e}X+JOOJ_NO;5d&k}j=lXu)7!%q;1o!?RjI59O{cfS%x$ujx@?G_TMA`F}z4R)_ zp%BZT?Tt8$jEv5M^xgFX)7=k1bVNST?<=f*o{{k^g@2H}tVQp!6m^q=29v+atN+W> zfD23=XY51`mD=hoThGGt8ccG#WhY*o^?2qK{s-HS=rF9bfk`_h*1iMw?d90c1I@)Z zia<`aWmY7Cm^E@W$h6Z$l zNFuu)@rBILhSpPB%|`;9i&XeUPVNNKTbT=2+3GwX_|xERPkWR1_dLYkLFRkKIlf}o zfZbCE^1FP&n;XIz8=4zeG@IMmlRI^vQSKd@{*hyC05DMC21*bEi5ehtD}sIO0kj?N zSzafzzySe*yF{)Kp|S6QhCkWRh2C!Cbk@{r_Y_yrOk@=RF;+OY1q&pTc9kQWO(R`f zr=6;B=SVrjv>rXSIuXSLvBRnPyRHU#CT4t58sDx>{V%}!PSug0l+JX#v2nQ0LdRf_sJQFjw)1U^Tm~oB3ct}GAVSJg_#LA*Hg6bT{`CEU1Qz$LT1+8(gPLaD64!c$?HRV_*B&Q!n(U8@Q<;}Ej6A6#u0drI? ztA$!dY*|<2^J^W?SexqYNe;P%ZG({jt`(qXn0o)rt{)0_P*KxS=_bGgN-rPFs;EpbaXsUvgEA(UG7q&L}~ zClQ&<6ExWx+1gfu3(Me(EiVj<5qdduE3@TjDmhYmORKqlBRXrYQm`vBHrg?AQ~2o7 z=C%fxp5jMOlnnpTR8Wyfu5@94M~d}v9q!>yKhSU|=30PQ!1X{FvFi#Zv)Db;nR0hJ zg1D8pp_MlB`ul{>zjS0AK%lxz3ID`7XQ{efIK(2$|fe! z+Nf7VP7N9eV^xvHD7FkH%8 zYsl4RAOjUnh0o>4m_%i*loEvq6GVmvcAY)7DH#7SY^uJHr8U-xlGCZLM5&?_c`k)= z=^QB$nuUJrmdgTq%ltGIF>Vz;$xRwNiY>~0)#B$s2gE~uofHlnp zx-Z6i(0V?E_0J_hJv<79Np!l+nf${*y^Jm1fG`p5o`2-4`JcIGEGx)mbblyDN!{&< zo0XeBlM4|$Pqs1u z+KWR|?^<3dY>mC&4kk$)Dp#!Y0?4X_vAdMa{PD=t5Bl}d1*YYcX!W=sW;iR(0Td0U z5yo88vM?zUOLW9u+agd%fuljG15pEOz>wA3`gDMu$P-P}{p0feAQztKODjDnnS6JB z1>O|%iS6w8huRil|NFc$e*&zY{8v_Q3Kt@vTc2AF0WzaNG|wtAi7dJ10n&2&u^>@ z&(4jKpi^(Q%)3^C`Tv2eFBQa3nAAW^&6TM5v@?mgsmWbcWXr5lg8m7iqs>JO&#S38 z56|_ur||9VX8gi*otunzaSWz6Dqo?xTmr(76@whxoFOi6gUO-=Rk0%g5CqP~wZ$FZ zoBVNUFt?~0pbk9AiBx=$3^c7}dyV0)Q?`<#yug@lL^Ga8@q|V%Q;k8NG%@`LHB4Yi zZ{;4Zhoh%v+*7g%Q?Hup>7!C0)jgnSi5|tI(E52|;lFpOG-M>yeMXPg}+JZW{z?uyXm8;H@wND(( zhPdr_x1)xNDyvPrF?6#Ce?ih&^;eOq?&Q#82+BP|;EZ|O3eE8KfuZ8bb@&jEFS=wE z6B3Tjza{V3aoa^-+g?;o2|#`;dBFv4uaaT1oBZ#yw>U8^yztaAiF{h@3R1MYwaSSc z9xkMg+j__7chzTHnWlcL$lL)+sKhz1)B_#Hpd^bnO^x=06_*Ynk)n68I=iZ62n7-DU>Y6Frb`U&wms%O^(eT-4 z2Iu4&sb0QTt<8#DyoY9=RY(DQp6A|rh)T{XgunGMBR%;FgqPPI(V(XGw`%7FtJ27K ziKDR*P0$JtyWBS^TY(OK(b|kqL&j&ig(V|w7rUg=I_^1131kRW zsG~At*MC^Qvf7&qH1iVcdSn*ELaOuxmI&63Y zExp7x0L^)9+BNX<@UNv?oS<~-j3A^6=xE9})Pn$o>+F@Q&s`RKyk}=8q6+gu-RM~e zF}LP-g0{W(y+cb0rRJY1(j}GX?7aC3gVLoCQpFR|Z@#JkfM|*I|L|gVSr|mcB1dS(u{ibC$~oBd+@}yQx?|pQ7NJ`ce@?4vfl61c zS-H7P7$QjtA#scNVYbR~g}9xl=i}GDpN2r~aV{WEz23%Ye~K4UT1q>E;dL*OX^-JL4aY z9+|n;G{6GSU^7*I!{eJX0V49t_a)DN`5c>6y8{&+0Ev98yQs0&7hU*j#yy~OW+Fhw z%X@`w=mYyTpR!og8~v#tvIbo>1|)1jGpoo|IL?KKrkPd5uthw?kupA) zkmn{eh>jp}@`8&ob#3%?v9dO8rzTli zx`xkcqcQ%?@N4$w;)V<9KDQ8G_=LV=&pgD{Lyg7*rwTiK>? z_kgq|Cj;-fQv8oO^>6lsaw35lLv73nkyT^DzehYV$}Sp3H+$fb##46=nLqgbzw^s!$%m>gOe{9N-%k!L%DbM z;#XwyfATr6YCWR8i)zs$0seH~sZXj(Aing8ISsKx@|5`?Nd)**uCijo0=v;>7GKc} zs(ViMRqbz`<%Df#S8Fl3JrVLbFK1OVY@}}lqG>N1x)FZKjX5@k5#ch@%v<=t(=`9V zPd9I&$BS@RR=~#licEP z$ig0koERCo{YU-Kmcjg1rnh%YVy5vA!tkrvdw_tP@pEGdSy@@1^trc|npo0Hf5)xs zmes!ghIKYR;);&&C0tZ~vHso%n;2yN#psr8byqt?3cEw?K4P$ws3m56I_#I!o$d8D z)-O`af_B+{ZVnl9wzPb&hEKGjS~!*`K4W^8M7yHt~t&&fyfdF{I?6 z&ou~#T%D}3G5#H?CDxOQ=AX=A-@3z;+G6Cpp_Oj&`UkG4zwCKH4Ie)`@x;`|);1Uz z;iU{Dpsw2cTLVq*Q3Is+DfMAs%~2l%hkHUJ z?g(#jg@ppKuRhHqec&8huL7H}(Yn%;QspK?G@k9X0Vn6GU4`qLkRrb#wI`A5!g|+- zcyOB)Xp7sb!nOTk4&zU1%(_2wM3THO$(@d4IY!~9lbzZ)W z>YIMFmAjrpt?ajne+mRTWiX_T%!ss9Nxc`{7k`~xgL|w$y5JQl;_Uz#1-%gde0%2^BFQ(pF_s1;H0BemJYPb}7BJ5xG65ao_GQ$zvxNok2Ol1RKlcEcr-`eP<*nie^4ml2wkhSd<$jZI)k zRxocJ7tiz{od-7YNLCLfoMq#6 z`VtMG=|5NayMfeFN9xeZXWG!N&F02n#{)jK$}l1Cm3H#bM*A{U@96f*^bo4BBGzGf zbO$~xF4|SW%yTeP`R*wu>SzKQa{WFkggAN z5zH~CMNJI1JD)cw0jR8aW%w=|397Fuu#~4uXUo4o-gnBzl#NIZ9@;UsEO&!q0qC#w zgM{(dv!?JWk%^cTm3i-dQ06tauTbWzzq`ghgzU60bl_hLdeEy35skCQ+3XiWN5=5y zT2aM-dvTZqeS99mw#MVGs!h4;f>o}X=@s$_yX5h01YLn95Q`ZBy&z(p;oICbrs_HllzTKkNY|*%Lz;v+x&%VfWMr zm8+x#)wu-VvEAR`-002K)&pE^#V2;)bmy9--n(1o=$++2odg~!SRu# z6Hg*_8h^1H5yq=L$`#lrMR~*J(&JIQTlJ%S+{|kLs#1A9QE&5_(`d~e_zTE9U)Dk> zaqVR>V|2@^qX(k6j8cH!5su$<3(iM{a8%n2O~(wM^VnH#3BuCiN@gjbQyPiwV0#zm zzrc~F*U-DB7+sOAU5Wy`eQc!Z%e)%*I|B;Sp|%4h$6y|}9#d&63y{DP_GD$z>?;V@ zQM#eSx+_{}R2*nq{w9AnL=LqmI4NLqznBp*)Zq_9#wRPr==g@T^Sj^j2!YRMlkgV% zk;t7-pKix1ja7@FeAs3$?Lm*}WvJ^s3as*dm~{(Ng{^hGz_0X7Hk&%6Bu%*#RuOOK zg7R^wDC9lPJ;wpobDvh<(k~p)`+?=T@%GmP7hl*t^UP=envXwK^7dmx!!qdP;D;R} zTxNaA!;~_?>I)qS*xxlexWH#2lADEPZkDR9u^r)t*qFj~_u#&)Qg8H9&)`G3++Ccv zwa2;j@e(MbHl{2*gH%J`9a?TWSVTL;*6^qaNxU)_v(j@alq+3SbwvbwO^Td<(b94U!Yt@0^G%8BoLo{66Vy}E&Mh|W!%$}osb5@d z0|v=GnmpBTkAH!N#phqTOjFc^!W1`5&aK;F=VHu+W-o>2YJW^*FO5NJI3+zAeQ2w& zoSZ2y<>+vt|w3vf!NlHksx>6fo{f_`_YjzbrD|>*Kd5J1Wa7E41kWN9oS8 zQ#<@Ke>M@E>bNL1RIR^XJ{R4 zHQ$QOekZ0;YHk5c&>LYjD2*@eZ*w~RR}8QO#AraSL8GsYxvF^tpfgc`iHaWOw^tLh z1+kk1hlutZM}Fll`2cup;0t~j>V=_D6``Kf)@M!~`jjo(b|dl4Q7)05-a&8686};w z3tut8(!-WsXP;^%(O-#^>ud06a!U`c?oG^og5H zfuesS&R@nrhTT^cHj%(XKPLTAXwY4xl6E%t_BVrgLl01=AB07J;1KO4g-!SXC*R=6 zuAOf6qlV`dK%Hw+x^6>L{Qe@)_=X;6GX{w{`M!5JROY~pamXwYo)Z?5&uxO{A7PzX z;{ut}LFt4tM}k2IK{y;W$@w+SeEunEZzo_D4-q2j@{i^I{b2t27fE1rkp8KbO@T|y z*E(jY(23??^ZKDAClm)j+by~a(7nUexi-GMV3}B*?*l4pD&@6S<-G}SO9YlpV{Tc1 zuR3}@Rn0@GfUOQ8pD-YxeeH>MUq7*CJajlbjsn$!-o0d>lWD&otD z-<1I-_fPt&9r{uLu9zO8oOy4LH4HjX+DrFlB36az@?Rgj z-UL`7B9}K8yx(d0%j*1vgsvKlNoX46Pd(i^#_;UT17;#dTRV=KlsgzrIaf}!TUvJ~ zbFk}58By3pjCD=+IMm+=n99?Q`()Uqbxl1px|-k4yr-mB4;*X88oR2(plEzi#v0o;c()EQj*Y$A`z zu^*;A{&~!M5Bf9!h&W6y40#JlF<+_%*ug@T*9P55KXO?2@699kL&6}*>QTG@LOlOh zm3U)>8K{+RUFiQNkN=^z`Qwf>Vxq~wh7RnU zSokmhbKhH520)c>(K|PM-(P=x9ByI&rkEUf|L~7LvTy6IRs$zyg#|(O{q@I3{2m5u zsGIViazFmazOD1eu>lB&zpucLkK^wv@PCN*{|B#ti2+?PKJ$3;oU*uvWX_E7iL0a7 z#w#`lzuJZP1R&|!xjpsYxWca{05zD)ebC7NV{iW@mMwcT`I{S4VGp*yD;{5@jo4T{WRgyle^av5~u}= zC1Mh|H=SBmFB29q-l>WuG-Hal7@~|eXuUq;`=7x`Zy)~LP@;~G{t@ctyHmRn!~9#S z-p0X4>)*ZcBe8z3dt)i@q4@NF{`K#S{fYDUrw=^0*4zE*jMD$;aS5`WP{`H2=k-6j z6S|epz8J+Q|Mc>Im0tBjzhDH}bW(rxeEV$c&j<8G&ja(IS)Psma1z!2efxX+|4jt` z>c{y1z5V}Hu>Y3+f7#3b^x|*j^PPJ7TlxI0`+sCu|2DmUwLJf}OMiPl|J?=p+wc{&qa~$C2ONum3+(K6iAz{a5y%>6aTPY#bdU0Hn)MIRsQ%T6zlx+w#9EYyr&h z{^^jNo!z_ga;cUuj#I~u9eV%C~TE)FNwSGf@#hV&TAfZ{4O^?aN$*#YivOGorrTBg}x+vi1^aMsth9KOq$-zYl* zgt7!KX|un&*t$74fblGky}EcKWG=Fw&Uwhx1T359m*Ss{X(O*8xQ8g5hZfjL+0e04f7b^1gRkfMHDc&L~X zyC{E|urem=i)%4}566||g#P4@I=#d}vVX9)FO6OQi2Z~D=c315#y)TNt@bbF5JGIO z^>78$_aQ3sl}sl*B_Q{|rC{$;*8 z0W9-(q}u-BtdHP_@C1U39>6lX=%iNw2;q&$0~?h1Z4a%;L-g_Hf^y%APkg`pb~OGO zX71So`~8^qUxS~0!JV%>S@olNGW)g!SZ&%x;IVYc(SG}d>^sHt|FijzUj6o4>ao|H zY5(I;pc7{Vfg@I#)|%)4;s4xk1pa=6|9hi=QwTeAY3K8?zh26J3g)l1H(<9w_SRy7 zsz-C@O(R{f8TPz8@@iyIa+%vXzmSau`;;9-FZq=z!F20c4X#wWSovDgy znp~6)4}XAr2F9HP8aO)7%)irhqEGY~E^Cc;?vwc^$*NjcF5= zrWS5C$tJp`dhzuR+#sur#+!Ogxy`o~uH<-`=_UM`6h-PuVEJyuncG&rqdZG;`Xqmx*hWB1&;i)evM zkw$Z|6pT#z$`X6ETenYT$BMma3>GoECVuEdpxye%?fP>hwMQ*#=@Tyek)p|d#1w6G zW!?MG$LV)YN5l{+w^vmx+#N{)G#LfWAx~21wED5tqQ~NsLH(4J{N;|?dv^vcFz%=` zkS5jEUKZ^j4=#N_Xt3I09@dgb`6~t6nl3&|Et<>q5zc15pX0dYWh=CgYCB+2yyh)` z21P2qs^)r8-Q@i}a*Xwtc7|leQ~dGoF4fgDzbLIlMY7(so@@yZRo+ZjKKslueBOwKf7amXG49VWkU{GjGdo4nHI`#|IROnt*XDLS zEp1MhPCYf79A`$U6&cLtKse}~|5!q-il%IqG)+buq=wT53tFo+9L9_kt{I{(i~2aJ z_%KugTj^qo7g2r>i{Q0m8YL-`*k-!2Y)#_U7<@Fi*+`jz%V)w0(?8BzHW@dJ7^JL`;(AhnKjyQMA=Z<(USWr^7VhOkA<; z<(b6ZK_%fW=}NA(!GSCbh;5x>jE2R6Lb4EcGE$d5&Cc_?g!-;6C8Fyj!dK>y6r4NC zeKNd{cXuWKqzmMGhT=u$Ox*Vtw?PE3 zxD}Mh(S6>)4K`*UB4{k6np~B8{we@&l%Ws1FjEdYThoI3(wED0swHt}B(#%H@iVR- z>Q-{`Xsv8@3<*qCxG=MJ=Kg{{`n)Fy1Xh0X+}XErVD;88__bX193{3TnO7tId0EfX zsZPVC@l5fxj@jm8bhlFPRwSI2s`LJ1MU0umWjl>VY4kPPhd&i42Q) z?B=#5HARcP4jX#;$r@B`@KD0r*|@tTgRF~!*eBZNmpszki9RD$yqeIdRhlh_5FM1Y zdw7(`l$}HvR0T05p^Ay0Zb}fqqpbNLxdTp;=`3T!-n2?)`t^^jPrv2GzE$%geTMvVS$7 z`C^2ohLah6WY_LN?f$#*>;@QcY}NwaeTSdA!Na`0Gsf`U#=>_D(gp!+l9-n4badm^ z&tn1!&)&lbI@%^D3{rPJO?Jx4Ds_agDBYu}5T}SWF;w*BUXD{b{L)k1(u%d02Ni0? z-Lt-^Ha*~P?zA1T?y(EjB&G)Or`j#V{~;8^=`zC-;!PBK#gc9Jq3%RH6o6}X$RsdHrMd05<;?Ev~Rn&Z@AIy3kdSZ?68))4aaDQEx2te)rhQs87ZQ}C zT6_5{KP9axWzB;TQ-+j+FJ**Igqz;9-Z+J$;Ny3?Z=a-(e1H@9jV^-Z-k z&XSVh!?gRL;ng(<#hw)wK!b8XH!@F7%6IU%-Nma3 zIqDC_m6py9T05szasc?Ch|oyHROpl>E%GOSn(tP}(pw zXNP9EM$B3#OMo6)-)Xt+#Kq~tqIq0E);JC|gsL{z@Nu7RIZk{bm(OgmIF=%|eSRXF zlUGSv`JH&z36D0=#fT)<<)|%QsSNUW0ozah4g7$DStkc`f3IM!OG~$ccLu;{faTeR zDUip{)8uKxA!w&~>ruOy1pds7daPsn8g%*%=fzPeNo3tFOuA))PpEHqalP4klr0kM zttTwR(U#{@pw>{*(ik<9ZP1br_w~)Ya&ErLg*=Uj@G7Ldm-n!uwpT3mc0bY;4oadZ zq+j~&p*KWB!Fw_QsxufSj}7Z7$#cS+lHu8b{-C| zmT}+8>WUO%tc1nOR<6Dq0nIySz&r~(+8mvZCva&vqGSVRdt+~!SH^=n@D-3AHq+RJ z&ga(Brn}>f=;}zMto|s>-UM#VGAT1ZyuNyP7TxcdkTOA)5K`I^i@V(cA3bRxEa3Z` zNwb9`REdk(Do%kDtwY;XdqfQ-6{V+LzC67GYMR_+=5LNG^u6Hj#-d0n+F{L7Pb-O1 zjf|XzkDicdzgH?rUw<*tKIRa52;r-wPdYasUSgEkPptBC6aOGFw`R~PiMFp>az2U) z%q-^UG4qop8!7P3%n*HKMf@wPE*Gr7QJFY~?lda!c#{@r7JQ{Fh-3a~xnhmzmXQ${k94}1R#Ii?-PY`h zeLV8(E4w85S|!nqrj+GnxVMy}w!UPpa@cL+{vo6l?x9wOtp$G z*(Z;HpZ-GQ5xwsI(SqIiWBa|c_hV=8y>XlT<5`;w6e(yIjMZr*kh%zW*o zsA3!9ZpoAUNL6_i>yuQAnUg7hvJ1V^Sb`PzM0!Ryi7()Xse{G-Wa}Mvu};G9SRJW`E?Nt%_`N8Yh0j|R9MFxfCHvv&m zg(Xgtwy>I_oN_|CQr=H|R#a45_#@RjY+@rUtYK-N!jSiX_d3|mNTw-~E3=yA;O5W# zoHQ=f(z9NTDl6c7zC<0Hr|#5U6jiW&Cij-(yQme&cUdVAC1alNH_2}qzmThl1?z)I zl%CC()jsV=9c{(3CBM%U2eDr@&t_*^o~C~uKg28+Dl5Th@x;E$$|14+GNHU6f>>Ca zZlS!DU{zl=Q|lC*V>BcnlE1$0YdcuzxxBvW=U zuR^+@YC5%>N^hPh><*I0r0NORAz)o~K35zuT_MqW*M&qkr?w`-3+D|Ri#O0^P`Go2 zylSyj0m{R&kWi4KAklS4jj8&mZ?x~7cn|f<*`z4l%3iXtdm)Cn+ofc}O zg(gDa-q&OOJhc*Ltu2MC3nw=nURIW9C$OE;;q1Z`2E*da*yvN|F6s+wVp@n)%$+zh zSRc;;f$JN$nBXJZ@&c@`o~j2WMz3EeFj;mr*?MT&9}RLU(@@6iT(!6MnGHK)J5xMS zz6d*sEl{WQEk2s96{*c~OXXA)blkb&a?Zs7miQp=GWV_)6O@Y!ieHbQQe-Whhh1;$ zY(MGzWWy;f=a^#Za~%F^p+;5&k^q5k#00eo47<+oAX{w%`==rl*WS=P$KcrJss0(4 zx;8HSR;2FOL4m^_#-)2(lr=g${G`{U_10o>ClNB@a$JGv+i)cT@_Kdb`t+xFfB4;) zWFc=K7>>EeeYcP`D9Oi=X{Jk~B+JdXCFsdc!xLZYK(}4I|F&-z{LZ$_NN7^uqP5$6 z;Siiki^!B_&)(Wqr@y7#aK8uIFVD|z{PA{5n=Qb?{riyMXV&#*ex(P$r3?%Vpn(D3 zf%|y}m>k5{xRAQ{pn0 zdTMMGGL-E4grAgI@V6u@*9t2^XYy{kNh?-VeH?o_oXpy>Fr+VPinBaj7LhJewAlb- znw~}U8xD>2buR>xucRu?ZyP#8jC-BcnNlnh!mBppmFQuvi|@=6whAI+#7>WqDWe*g z0x?}EIr}s^*&-zERtFBA5TaVrIA4A)=_*=yZQtm0x+`ty?4a6ibLZ~CeXNpJX zr^Pgy=fuV;{xdhvhBFMC(AE1op2B00xA+_mkh;K=8Xtlc<=;UFq05ynoEH&kA(|&C zCaGf4n~9CDS(G`8K3LqI91eEl?A>zR_GfK09^kkyWY$9+Jv6o`6^j4(SlolQUO`k* zZDz)DaVT$po?4$0I6NIYu$~)^Z%OKEamQ<(lxD4S?-h1#+kE?) z6n)q1r=Ns+)NcKu+kIM;yCMY!kGkoG%yfWOfpP9FL|(Ey|HPjHT$G*f^G0T-0L;w* z3nuOpT%hV?o$6%;qz>lm^0G-o7Lnl?KUxX2@d*D>rI-=^uC}$JOk0TX)^Ou%j{LJ0 zql-C~Tkw@b?C88UOF=tR9{TAW!hGA&=R@HsZ4(b?%IVXZ3^n5>ja>Ys{Co?}8Z1fs` z<=jYXijSv|DQZ3-yxQP(OYIy$PT##)_SD^|WJGL1<{<;`RkSK$(9&kfl;`VUH0(Dy zP_#Y~0G&y|w(ck|cEy)xmSV^;`Cu>jh5ItF@eT3n;T;}%iBS*ecz26RF3iRWUkPnV z>QDr&iO<#urHhYkzldB!E!yrTkL_GuqIGl3J0A$NgdexR9Pc%hZaA z2J1;gs+XXM4v#UX#&g#mVlQ(KC)fbKYPu(P*Y!2{-@vP zn;v)Dgn|Gky^I?&LEJ|AF(Mu zn%6Vx^)wP2a<}y5eePYqr=hCznU@d(jS1p#Qj*qu;R17)sS-mPRdvp^QIhqfZp2o9 zTvfG2Sf%ht92Zc;xxrf)cZq$z5}IvqAYIk;>d9Nv%Bq7A0w$%4FVRK2DYGrxl@gPZ zZ?fN<^C- zY3*-1+Z(PaQNrdT&c$|Ay9A-BJ}Zap-AYuB-BFsXby{@BXkgGo9O6#;%@CoI^dxf~ zCSJ{vCPkuizO?VfkCUyo<;4jnv9($0Rcfs~XOX*8IqRYP3+9Fi)7%}BRiYxfGLu13 zJv+;zD9Nsc81nq^w(2|3>4jj`UgxkrYKLzYM{9)G%TjJF4Ykpt5)*r0PvNeXH5&Zx zj)sP**(nkao<~@Zi)3MAXh}fMNpR0+f1hzMq!^4_F znik(%S=&4KDe>LN_Q=pjdbkLdu9<^Owj3}F?hP;k5_vliI~Agx*uPx;G@t7`*X-Gi z;2R0b{?W;08s8_}b8kq22F7+tV=a5yV0{Av=Z-URR`XeJ;)$4yR7QabBXR8p!$^n7 zxURY{i8A(%7Lk_j%;(%<9rkjItOZr_q6)L*#_CiL{bu}FX>&iXeD9gHKCQbYX(QZ5 zEG``oRJyp_yL+|?U9IH#ye#pV&P2RR44<{JpH6SKO3UgwPjzg61maBiJRQGkywO+I zvr^Ea7^{u;F4I(i`Xx(3j2=r>#t0Z9uPNvDm*R>Zb#qSsc}hEIUZ=eaJ(zphIpDHZ z5(mz{ySh6lb|%ZP?lDAR8O{?zpa_k|crMZ^mfq(;XLAIM`ic2`g9Uy;@OgAMaSH0$S`>k3npl)z2~{nC zgcl;|yV@l#{HG5~L1<~qCAdtt*fAbNqpd`54u4h3Xia5p#U*Q`3yz>VSeE(4NYyhx z?W37(!t;Z!bMIdU@nzrXTyWiPb2$l*K`~1^aJ)Tk^KyS#<;2{Bx9jYo+@Uhx*BMu{ z>sys*MKWvstKfk?TDwpoFc!p=eQcM8+$w4F{ZI`xws7^m?X4^{gYbJ`;zI2OVjx;h zL#>Ifp_iDDw2yhGti+*6XOOWYwX!>>yx3BTXHmhYcRRkP$-yCoFQiUAwlaAKFHjxu zHsny>=+H}(rMyW)o|h>vfvMZtBEdrJqI10_OP6#irt-{AzVRvx53klzsO*wylHbOvcRpnY)Sff=qLBt3Q+ z5;*;g-C3z?jVcRS(iN>5t`NW^3QLn5XgSesixQD-y23hYCi>qdWJQ-@H9Udevx`*Tl%PQH|S&*}uvuKuO z1tT4kI);SxS05+W_E$$}{!u{TuiYmx@|+vXjx2@ilQO#JV}9&cp7y zVx9OP!%j1AcRq3=^>C;}aK7(SdBxRmhxta?T5hnIaRmNli_GK)`*-s-LUOIhi&6@R z*pK%*extc_8eLPvJ->}@u1V+YwM&9kmI!PQu64VYmP61a zXoj!#c0;N8P@W@?gwu3l{^}509s6?JyuD(b@1pWWM-jiZX_hU`?{scW$bp!hfJwc@ z_gVWvF!lbTOI6rfQPfg^SaW8a*;%pL)rUS5*jQ+Gs<$A!60FPKjQZhtoym#!7`f|d z;#yiUA{fDBNr9}agj`xqZ5w|^rT{PUx@GyW6;=MMMVG~frMz|P;yhbtkmO_aB5fgQ zba}Lw?Od!|TU8RIOUz+mNKM(g4z+zPDHkh+P8K-DJS{lNk^0>IP4EK@=ayWZ*#o1;Cp zCvZbRsU5T3=0g>>58f1t$s-}KVd`ukMX4J55x?HbBH7H?XzdcOc`Sxt&`fi{F^bYI z+Dg}zwyL>oEA&_#!dw_I!=s!yl}*>#&}C9KOGIU#yquEXBKPm6mYXYgHxp&~608U_ z*5IJRoiDGhLCWrI4O+j;cWEqsZ1LJMp?PLqAbrve1P()l$(PQ>=gOMak#L?n(cLe5 zi`t(ZBN~@hYX5a?8g9GKS2&^PRDN#Q0?e{tj1XZ1TO} ztOnQ5UAO4glpbN-;{bM9Q>1oEK&N92T0DT+TuM3cr~22fF`cr=uMy!kjSEO>chck> zY{9$Dues_Z99Ua!@jwiFZ7;9)h#9m-${o~MZl#*r-A;J@S_wU}JXe_1Q5wf(7u-te z3M5=?>CbGwl>h+>yqif(S(!I@;CY>g=I>Koh!#697xiZF*H7VBE3KPv^RpF_MwX1t zyHq@yi=9SKb&#tS$zZ)KvU$wOeBxwq&Ew7x>}vc&4UdnV;DnYifni+5PHrSkA=EUn z$PSWNBn*Qr_$i4g%`H&Dk0q-E8|5&N zwiUC={L80BZGy_xd7v5=37e71PH1zV;uPE!ZPSIoWkos?$_TGxF^lC6 zR?E)|U{3K$3R&S?QLtKK^vg52?Iarro|PmIIPUrLFyZjDTE4E3ayQdbDN2xswt(N= zK{v3VvzRZ=WTjGOH$SkMSW<4L)!{={*UFcF2(Ve_3*flqE*IR>GC*y8^kj&S9Prs7 zM;3%?caKCh`Vf2FY-Vn(zyD@RJ+NY?X&fa2^(~AAL$W~`S(RSSQC7q}| zIN11H2UDhXbMt0nlB0ZwMVCZ1{q4AiR>T`BpU(TGmc!VoF*bO%d#vwvW5q=JJSq#j zqfALto_7>QLA|cKb&~K&z+B3Wi?MYH?_7X^rCb*+clocXQV0jE` z#yv6)yX!Hznd+^)@A9Q*$mFg`3v>?ZI|!4)KL}*iMle#k-I1AJhRkALbQ!GF7p}nO z=|h|AICNlh*xd`rned(}Hx+NiBr6Npg)(^sC9mbj;>h@>Fg@)!lO%WgV4OVnU5S)w zF%EG-vKmAaAJb?h#-E*Erv?E+N}vX@6?ZR4<8>dOiz=Fre@1L*hd#`Dui9^L$<>r; z*s_~o)@jQ495DIr5|*8@)HG5^D&(cWRhp$S5jF}H=>c^b7|d23_i|_Kf2gL`?=l(M zxxf#Ze%C<;6iY^Hyr2Lvee0f^Xu?bfc&r@fyI6d_92AF|Z#>gccFP>gP4NUAKE%!2 zToj z?SkGI=o;EOOI#%6)LBk*!Y2R3E{GiTx=Q2ATJ9U46Ww3N?hB*Bw$> zkNOTeX?EOoe|grr&i1Cl2FPNPpp56{RAtfD&>3u9Ji^Ctm&z>MHFwhoYcOe+wR-I4 z#n0fki9xqh{7c0AL?-egZ`CMy%m=NTFxmNT!0Uc*(y$tbEliu&wPb%Lyonn?PjV6_ za=;f5b`d&`_zli_w(cXU_RYn z?wy%4XU?2CGw1xzxcc}!X$zk>jEb6dhRLO@kQpm6&eZUUc9rYO(bp^xnf{wf<$~xk^PL&zLhW&!e(6vK%g;)n7c-iL z8N4k3Hm`sP&fVG93Oo@ZrJByyN=H-gnj~uC`#tObV}t*7URE8u!?vPqv}&Oh$V&AK zU2CW(CUoiX{8*gX_+a!tm~P=*&mRW@*KJnO>ALF`>%$VR^NI?7MJ-M%6x$`@6OrPx z_VvuLVinUti!HgHCjFO(tv@52m^OBiOzxD3u=5vx?2e$me{G^J!;T3ijMoLP1nm6hM3_W0+ZfSRZB zC+P-n17u}syx{nRooH8yR2uKwYzowc4ZqGnA&ClK1l@~^;4+^l>&`&}t7jJ*WrD`*OM z!&P_A0~MOYptx`Q9Z5Ru!MZyw>BDx|x(Vlnx^R)tOIK<8cf4SS=A<+B$7%JkJz|)) z5*@XUKG+{K1v|iTzd$VRy2wgLmaa&Tphpk!+TwTv95y|RbQ{Pp*ctaG)2%_*`{J8j zHC{z^^mW4;NEkSUf&Yo`eW45*;?0qWj5!v zh%)d1sl66WS|X8AIH?H^>2AqFGPCX?KEyNg87a@vT+KgT1c-kRg)+-YBV%Zd%(31# zaV_Bpp9*O6+#5ikv_XZkJ{MFuK#y)(WD)tD$O zVMbmJ{0A-|FntcOo~jtJ-%j$K?G+X;K5ttub?=_NBwtSd~fWvKQ)JsHoHfY;z>9(m$3+MUevJh&XMIT#B;sjoqS_{=<}ej}`kwt6i6`AnG;heW*HM8PI6sX$lHV8@ezG3f;#h>xDJzskFTmf~{Td_aiC#_WRbKQrp_g zRbE6q`Mwj0tC0|wt?w|zl)7~5K{9kz-7$NP%elJO&#nq+k_(IEiA8Y9!Q%NBD(dw_ zoa7(4J5Pk}zo;nlj%*(I0v|yi)kStS$p@*$IDY>?`c+*Dv=Wj=jr~nlJfq< zVi)@hf)z8QX^T19ii%?&W2uMq8VxfwmC(}NeUq@Dg;!2NhGwc}a<0_h^0!R#^`>3G zJ+H(gW=*)NoR*cHnW1Y=+Ukn9)i*%cY}jeE3{UH}8_l=f`CdD!@Pal&lhoVpvS&93 z9Goz8q4k&kX?+w|(x0Zkr(h_Qxn2(skM0Bo)@)Ko)+#!6N?{f_j3ulQMlO3<=;g?4 z^`z6|?aUIBLINyx0*34x{Gd`lw;`pQM5p$Wz$B&1(&NyRdfO zKAkRbL_XF=-=*=M{Jdz`ylB1wDQUxZgO!m#Yhlq&ZD-%D$$w4btgq*^Wy@`@Pj}}p zk$bwqOVyvpd4i|0FEXA)ZNaidv*nq}mnrM(UAbUB0@#ZPKy0n+)Q8$O)eFRL*ts-4 z=*plWjq-mNQ}#QuY&pa)=!4CqdfGL2)SaUgm0r8NY&E;7Wo)`E5TE2vyPpE?ATV19 zMrp&fJV3g&83YM$m6O|Q(gb_BVqKH(I=`x}6S%V`4q zDU#V&J4-gv1D>THPtT;=%mCm5n>*)gNqslBwKp61o^J}Lssxh6PZe%1uoMSmS%AGF z#BVxV{aOh=0)Xwn2D?W^eq#YP09olYdq&v2srw28s3-u8e7R3=Zm+XlAN&^8@&+zW^-G+k9?RjnVgKmGLi?UT^hCjU&W@`odd! z9cJ_6f<#6LXjt3SA;3*br4dBb(4e{q;U-Y#68FN;QRZy&u~Q6Y+nv!~2Gd@2hjbeU zqWhSQ%H;tKf!KLqWPY0todky&Eyd|!Fqph?MF--N#nufj>788HlH=gsC&-~R&F69t z>yS?Y&?EF|mc1ngM9`6LAmIfsOR^mXYG`sN)_3&HhpB7p%!$$aHcpf{O)KDr5v)0O zrhGpu`YjOv@lcrT0T{K|fl(~bwNtt+W`p4H9B{rkv3nZ?FAyhpfrN9ZsCx3<pFK7O~<<{9P9 z$=t|4A9<9-i^v7_>ud!?RaN!qwS}>bl+DOKVqKh>uJ}$lCH{gBY+htul zvd{6Y#zuh?3=#DH#P*$w-oW-5Dg+S?rNG7+fP`s)%XuM@ih>6mcB4q~itqaSlOOUZ zYN3F|TyH<5Cl?M#D1c^6eW+95f311A=GHRPIKnPSjYR_tQ*@y1+H|YeD9cPJGOJiH z($ShpdcR_lHpG28~DC!boaRi?P`cK$C-iMnA3il`;qF zClqc9(umbq*;t;Fg&eWuR63LuQ-hbe^MiZFX@l$4If}6xFhBE$J-3aRcCDt`FBNY( zX~OM;i|TVR5VBG%M(t(`fh~U|^m9SBOx0Umw%d%=lZ3EEc%N+3dHl0pnmU9Ti$FEf z&Lnz^S9z2zcGMBg@e2 zMTO2n{-Fa$(GYINIq8SPxl2VcWJ|Q2TDdtOLK{fEc;S}AvgdtIDFG{+D|Uus=$1dD z{D4ga(Y6KawUIEVQw!Dq`Si&4!=le-G>QwR0xK^xmd6P?t9}EOmIro=1O5KJsvJsD1Ci_YwFc|KCOEzt7!|n(q4~{>X~2JbV|S?;`a7zmPHZXd@5^iAh~g zu$A~f#*WuE?QX7Z%&X_avZu$&DlRR?XJ@?TlFAwXA7wzVTwpwfw{7D^NJMm?x0zL7 z2C4C$*ik>r7qniH=H}*7o5Y{CflU-JA3xtSR&&Y4UaDsh=^CRw&o0zlv}8YU!gnz` z!xuj(b5P@7%+@0%JcWrZg-y2cl6`%hqql)GMLQnZ>8WMwTi;yA*;5c5;3(-7@9#!m z)c=)bRRlobSzX5;{Cd|uxA?gEGsr43Uol|5tO9Gq4df_%Xa23bZSJO^aq-XD3T_+R zF18W)+&VF#{Tn%)9Sj8862iE*fUEhE>c9Ub_cyM9h$vDL(n_f~bhjc6f)Yc6gmia{K{wJR-9rz}ppgH=KVhB?7d&-wf8<}pJRaHOGzATGVE*DuHi^ay?A}? z+O5oM*U*o!Fj3z;(lQ;ncI~={shF6ew3rx;qMh|yQwt;14-p1>dQYUEKKlOVjh^23 z9;V0GcFwQ;{exfYL7JO-nwn`^^jc|B;i z~U2Rzw?wx$wKT=Wkuk3YtB3Swe5pJ@0$h|i zZrMnw+h4mzO#k!Wb?Mi1+t;p%UXy6ju=86k!PWGL zg@-4#M|ruvf63-kh8j!sr&sisiTJ1aSPSmG7xTN@=HnU9>+(bNaclI0D_YFQ^r0e; zxoUTUHZ_OwC}n9oq0R#UPKFWULW6YEzk=$DLvGq9ks@K1{`XymdwOe!<4LOUZxFljWdwrosKxc_hj6EWiL^_RX|xgFE?~ zi9v0x^q;c-v!FhvEaA**F>hN3X%i{Q%@qmnW*RY-vumh+6SyKQ%z%0i)k`DMO)I;M z4X8jsC7uPE=kCM?uMz^7xr>hq$HQP|GPeJpl0EnG*VMZr}fy!xM&^*4=V z{X}4T_MN|d^^dX#qX16+Y!2L1_4$7daET@U zHNYiP=ieFd&)on2fP%W8WQAXqAs*$3_Q~QS_bpobyzcMp>52&4;7(d+d zemIww^Dt#ai2bX%H0x$1T_&Py;b3U`xG$B1XD*$CmRX2#t|4a`wwGszYCpPsl;Dy% z`3K+m80h?1lxt~A#&_N%)5Wr^*E9VB@bp}i#5d*L%>RTBta_28B{D-M2)yfazYlV> zI~$<9zsBTw9@ZxUP+#u7VsPhUi#cOS!Iq_SRJ%};w(9}t@E{_!%gHg z$WUZtfp<33m#rXyZ%LcyioTmw+DE{fVn@>(zZ5|o1>j-2Cm~yx1dayBgOd?o*$z;e zP_iz(aiy@SJyUed9-n&h-cG6jt&Yd$3Vx<#j;GXVB%*`O@n=KE1#hp`P+?P*lf>DU zuEbgM(1=(#f__tJlBazb<>cf;3N)@H8bvu;!G-Xg(xD`Uu$Cu=Y3g8OmZ!sKT~V5% zvurcEt9VwMZfq@NgMaZ^?ulP2f^D-PqaG#2;(;>x)qtV;BMd^mGbWNK+^le#fS7nC zjEWj|)$;?c5S~vFiINH6fJ`xTk6!^Lr0+XuB1qUKUt=$-lw9 z73{Jps^VPwG+DMiE_8&A%}1TkeQIc)Xazb=sXaYCus58tvJO+=COp8|OJ7aOHWAL@ zBYR0)%r>;8IUBk^JV(Q3wHvGMEf(*8f%7vglO8}n9-O}F3LT3 zg;cfF(8V0f33c!UJgA5#l{_{C^(*(pan|BaV~oAQ5N_B0Z2*+FQ+eR)%(%xMj%{-f zlY!C6MXM!S$^p1@*lovbZ5Q}r{p6cU>FPk^TpzJk4;_>5BBi7!t7`*aEj878FjUx4 zMXTRKY{RA2O>a%XIuMK&pREK_w#n)gR-K1ucltZ{T{6K#L85s~aUrAY>kyKG^8%kb z(=ShX)VMX`r`A6iQC-CPFCH!nvmNi*g}Lqu zftCox01^atzKv+jHOZE4ZuQPa&oNsRch1c0&PETEnQL<{8;|6d6_3F3daG+a-xSt( z1D^_)V~egQ8jSD&+bx|L)`=LH@VV;^OrO@}c6u8REjTNk!^DLyA$FfU0+*G%-7$}y zFMsq-~u*im4d`UT^O@ zz&aVoVjVzF!YwJ5&?Bunz6Kp4f;KjA$9Owx>J*p@2onPYz%SMxyT;}m`Yj}mumU9d z?*pf5xtu($Y?YsV%r|RQwUla1wf3)9**bBn)nC^w4DJbAbap?^N=)C}3C)i~wjDkV zaO^Ojq!?Oq=CFL>`1ulxbUx~jvM5ytZSvdK9dtJOi_{C~cTwNfYCugSO_tE=)vr@I z5-B--nSF1=aL-f_h4t{&xS>*>-pAGrl^Tfv0Y-sxmJNT+#&Bv@*|HehF+_XD{M=U* z{3Wyr`uQvQh`o11T^42x#Xb#rSh3BMxk>K%?28pV40O{&y@4_Wm&u3g6^h@|l(Gm^0zcGAZ za>{}4jX0k@DQ=*7=o#X4Zw7Lfh~I|@LF_LSD=dyP!s^!YAE<}5v)%Urx%0dL>fErj z9Sa>9U~e-s#xbsHALD)+Bu=^RCp*)?RcmENJ;~3$x8FOC7!o>v43aAwRfe_}4cM>} zY70bKvQp3BPuJb_dIkW3{6obj2NXf&|a~H8Gn?sup zP)Z2;=t$9mo)V(B$o zWB}j$no?bK>{F?bnY3qCspzurSqiFls6)ZzO#WGX7(z+Xc&39Qy$r7(h*tnSKtlr>g#;-%Pcxs2b zg9BaCm`1&p0%^y&+SjbT05SE9Jm;e%iMi@gpgMaHejUQSH3%r&#eVH#cXx zf}P4m)o7apehqVV)J>N#*y>FL8O|SnOC0_0H}NbveG2gq$bBA z$p-p{HYVGuKzYBJnELodT~lAT97sOfE|=7)Dkll5A6qW!i4CySt)KIMQ&EussspyA zFGUYTYfBeOP0u$Bdq_)GEDE2E14_>{wQGP34k@nr96P+PNdZM=OsZanuL{p}tTb^3 zPHGTIh}!h^_=vqI*SE$xs8N*I10y!s4i}0Q$Ib%4w!Q;)wX6|CwNuvmuUVZB>fXCE ziKx*9tM;ox7H>%2&B$uyhd5YjZO@N2~gZ&^Cm7b{_J;JGhUN^4ckhrHOuogwbgF35On zTv=-AZL9K?IJ3j;LonvWRn?oBe_KGm2VNy^Py&Is?QV9suV`orpr_@zCZWWy72cC8lx3HWh3hJZUg7x>5zKkU5 zu&UYj#do6QDGC7FM*>t%YYm3lflHq{xEY!9DjR7{*SmedWUy$=LErWo17ih;q}bZK z)YAfzAkV4`Kan8vs3IEsuo;j?Un^45OQ@zVX5QoDXg_hWWPStRWU)nXw}OCyLYcmr zw@`)}x2~(f)6;1~@}UNy0oUbDy8dXTLj&{qGR?%foq9#x-t$*4yAGz;FJ=I?%{;q3 zQ9W|=ZGDb(nt=?kS!$;?%Nr2C=niOPO*5gndt;TDz0Sw;hH60>E_9mGMpPsamyJGn~F%Y*!YC>(Q9L8^tUWL3Ax zX7nBGEnH003mbWF$z@40OjzxbpBsNb(m^Gx6u=?f6L-rTU%5ZMm_FEPG&1+2nnKt( z8%Bz1kTIA^KNkb6CetZbFy8uc$I{NVBSGyjl^8erKEHH|CNeKA=Y)mjcq&HCbJ6Bq zKK-iuX_n^vn&ClJ+V?*6u8h6a*3zTkv;+o^!Pt-4WWDSD0-zcI=)BElXEC-|{=FO1 z?t8ap=b%(a803vh;dz)tOAIBG9hk#1U=)NHcRL*^6=bZgI9rG6@96pGUj#21a@(^Jjts#xVUE*3}MM{dS1>RMN-6#*?o;+|U{BDJRs55h}p*2Oi?;Ca#ssgnH(;vyU7= z%k0^|9o%@3`cM<|W%kKg8Ko`E8F=qj2ED@O41O2&ch6ed##C~Nt{MI;K2--$hu4}n z>};oKAaUBRypeBox||;D;k@mLY(wR7V7+;9ddURgYo%No185Wbcvy3?xAI|phtxskF0709&6n8U> zprBMJLBW=K^7%Nj@p$G;(L8w1ISLqndr818`sF!V{5PbwdmwZ=vQX2R3Ing*U!B0scjwBDjQHMmwEXnojU`{vxzsSp`eKT@{KZ`U@b zW-q-J4RT>#79kF~oshvd!BB>bwn$Sui%Y}^wSzk>j|_Ml2VYaN>OkR^`mA=|U=8RKdVIb6DVFjoLz_d?*Dp zSmiO+qA~}}`EFCoJ65p>@XSH#Ss>Ab#*!Wv=lJdy{Bx;lpRy_+jE_Q=>T71)? zVoOBKr+&RGPx~~d&ATzFW+Fa@#e~v&aJ~hI@gyQm91D-EjHeK4h(U1mlZin4v9XwY zUF$~Ffw| z5i?IogYF{h`=C7^L$1p1Ij^9UdZIf1^yA>!8cJqXF5?17xloK@JG%y9>wC8ejm(hk^?QPCs>X&Gy9Rx;1yu=K*$+F&5 z#DD0qJdO2{fX)!xwyocMZi?Ii`Ny_*KKNXkx;jq#gag6ubegMdbiGcxq|dzf76$!+ zgK%~EO1fHuVWlZ*(}5;sWG1fi3;q0U4^oJLCnBnk?_2 z?wwXovQ9Anq@uzyxNU5dB}lw$6jyt4duMT=LC?jpER8%PS*wO0>_K;niHfxSQDljF z^QtR;wTYQLy6J@LINmf%p}%jt^PMX0ijc)AlT!!HLdvA_Uh2b^Nc+f0J|?K+*%s8V zE81g}VtwmeqrTi`Y+P=4y2#o;YMJZvqPwQXVdSRa;ZiJxpPQG@R|U!QI$#Bmnc$M8 zb)PkS6TxG}vyGZOUF2GMN2f_pFDdEa1)XMu?|=?j@Ob93x3heUZO7fWu?&0xT(J^Q zA>L~tgQbk?mGYiqT>bAwCk+{Fx1guMTr!=Sd?xNGC{dC3XKL0bGcR;4YV}@CMcUi9 z3e}|>JbO%jcgdP^(&42&XR^=^Q3GmCWoe%w{kT?O4x|7kng*5GB(~JQr}s7q%Dy2D zW1KmN)O@OHvnAf8-xIxVa6COxr(J4kLf*GgIRH!SGYMQOzx^#RLqvG)<@p3)AVsUE zR|4qlJdCvG{z7a!pI+|Ux!^knriZ#Co{}-gcI#CDp0)=XbtEP6@hmYQ9~AFLfcVFq zjg*2)Re$6j-NrKh7^$O=v+da5dOx zoFh2-IXx`u4gyy;VEnd68l~lpl2uEe1|CkPFIK$%W`ZBmvl^(;+-|80<3^08N!xKo zSrASjWqNOh%I%-o@b2G}rZYQ0Y6}JvyVvQjqfgk)dx(^d+aCvv~c->g&gTz zb-#1apf(*lQJvm5?O|Aeq$l+QPf*yP_R4Jzg3`HNXAhbMR!|0m<&R*{J7Hi$0 z{!t3RZC|ms6WbcdAzX_PdDsNM7VGMWdUM#4R_cl=fr}vP0DG2@uF3t5m^=ZeFdd)* zL3;Q3Xxk@wHfyb~HGjB{fa*o4t57H0Bb!Mz#obD4=PT1(;Qo1#fnZ|H)04W6;=xOu ziQ;3Qsyq9wAa&B;kZYGkmpjUk7otU@fVITCmS3yCLI}x>g$7 zpOp`I7|z|1XIkr`PC(x!VpYALKYp@zrqX4Xy5er8`4nlhHEGf@eLKpMO;Q{4N!9-M zy^|qLeb#+Gn?0Y!(l_q#?>C2-Olh)@r_`!#W}6C*!7Ck@b-UkKk_XO%^i>S?p+MCo zzjuK`sxF&8sK~0O&3O@XFmj~9N=Ml2+T*>wB3rAMu)cE(C!Er6ZJpaSjeM%!&Lc-p zWY7(POTv@)yO8Y0K|NEN0pCUw`$Fu?FK+jR6e%nVg?mUne@TMdXEKIPp3YJC9QvOA z7#3B(twFGI+Gf*~cRW<|Dn?M_&0+SgJ$p*4YYaZmRQ&_Da@fEW*ctAxDVzeawP=S! zs#XHMYFf*dQNZSE$k7v9tF!h$$T+*G-O`~>jJoR}G)i=i-|S0!wjy~vZP@-J`H~fJ zEalf&jMc?sf=`i6H+V)!f8&gA@Eq714;|k=HlKelTTF?+qG7LeTK$2O zwl?Xb3qQ81nI^RKk*b%u_7@_VGaN zV(d&fMw;8{X(~u!^w6P;|Omg2_GQ7AMD@wi(b=Xtk)AV5wCoT*GFNoxRk{l8Utb!tDW8QBv?KPX% z96U7zctZQ9+@83ns9o4L8VP!6J~ey!JX}Pfk>{MLiyr3Z$K6_E2_!iS<<~cb9wAv| zCmP+2E81({<4rfgtu^-%^n0mih(TEI5{nKwa4La1U29Smua9aOo?T|2&UI-tMzbBm z$1zvP^VvJPqAG z%CF9-Gk>9IzDE+%zQhu&V)sL*Jr+V8)c44;uGeByJ{GAybrj#Lme>$pZ{2vXwh(Rq zrp2@juuM%yzIvBRzGziOp_$2oem%Mshq@cL-!N5Z&i%aJ(7YqlccW9sv`1Gvr5;lT zRBH@;svRE6H$kc znok{l5_bi)niYt++gj9HiD@O1kJh;xX~opH@vC}z**$Wh_Z38>CeQrp`?Y>V^oPWh zoI-VJl~e`paRFl+oCHbl`#U*@q23s)<(iQ+lc)vOxWih1zYDs#bO?p_@s42pZ=)=p zIt3Ruka^|{PezJ%wi#BI22d4ndx)rNO{rz7U7YBPQ+YZAeW}0oTE|kf2u6PKbZlK*FYj?K&;<2lJu|->2@%f!T zYVRVaqJLO}wlCY^dHmmwFRw>Rh zmv;Ge{nOrdgVl8XHx>STjLX(lYPvjSq4>Zx@{D=&uy)V&C`%g2scsz;Sup7|X_$j$ zK&$vSMN|eHD!Eld%O8jdjV#lhAKSa5_!)nZxDdb2Gs# z8w^vQ4QD-0h>uLHhraw&)%=dyj*nLJ6z0v|L=vL2F*aL^C!-bw3FhZ78h0Xt5@lg% z+?K+9RYzx`8@4-42aHS3wQrK1)x<2+RWsdsGUL**@-lDn(3t_YxVOu%RZp9t1%NtR zTgeu_Y-}dChOkL&?tGHf?{RLV4)bPKzi<5+w*SJ5C*w|s(WNXykLKv;xU)5MH^vg$ z>&#dhUp_;+6Q+P#m>%gJBpPIJGX$!1jSj`NV9l`is(p``l&M;mYflQDW)uEh!?h#C zzdc+~e5Y`V3t4eY_}FPfsIH2oHgzjN2tmkEDR;H+bfn9QoQ%)7 zG_SvH-I!>XxMp2=Okqva6O(N4xK{FAQw8Dojjd2hT+0wBs1GNDzFDoGEaaQXkd?4w z+$FI^zAVjj?e4;aUq*(Jx1*y4wp&yv8)d;JKcjD=Rmut~oe}N9+DAD~EzdnL{=6yD z#5}k`Z^8fJ6>7zApqcWTFLlS;p4TDTvr~HmV|5Z=ZNISeNU}ehywHr9wIfTSL$SVBP`rNtOYxpOE2Xjz zyF~fFk6VxtNuisb9>T+rBLW=EP>1JokKQS_GOS`|9s)eMyzIBqc(O{l`er$9+DFN)2 zgiA_SevOWG`o>_tsP>?D^`!#vB8wFb6qRNhVL?8-p@cN|9Gl zW)mBL)g7^sw&T4TDOZmyTqTi_JxxLgxi5r1cJDbox`8p+X1#c|!aWSTKiu5G!GRdC zao0WGwDPq^ExX3#@;1sLV(GQKVY65rN=yh7N2v z!n1Cnj$|xl-@96)H_$$%Rlt(mA2pt*jm`BZOg^^sozr&pSQP1^|7eOVtae5Z*qI9dGqbhI6@pmjO~o8 zxuG%Ve-KYc`5wA$JEe1yC4bH}&$d05#v~Tcj}khbS;feJuDc83jD|FdC&YSqLQ^-RRNH2YD3wOp=?*$%UQ*l72^dUe<3So8k&bHzD;y909>g}-lZFZqT?GA<)^^M0yaNH zGm9N$`|@}P0enN(v`z?KBx27FtlyI&pKhbPqD7vD*Lf~|{cw}^G{J%wfRi>dGJ@04 zIb}H#qJ%0)PEw@05*LepsYjc*rmnF*+w6DRj1m?g)Yq7^Tq8+lBCBh94RD$=8kHgt z+K8&x9Y{qNx*9xDv%{y%AxOS`pE!=Mp|1GwN|r~FiXs424L!n6cycB3e|OEtl$j=+ zyN6Nnswe9H?ch?@{8vT)s_6eiLH|y)%Tj>rABjIXZ@ttT9Hdf}yS~nTVrEKsk<$3ZHCHotjo-5k%iz+GuFmrqx67=QplUo?eN}zFLCK5#!TkTnsqi0~ z_!s{FJP-bb|Nl&Fs08H8zwrM@zWSH_|IrQj{LB9Tn8hpp%l`l2t^PX~{TuxJlv(`uL*0Pz87RCv=J5hL_ z?byx*Ft$lECf~!s!8uRu8o+h@yTAUTsP}U_#iM$APAygU=Y9&}Y$y`RHTLH+a&CAN zZpzP#5d8g80$tLb?Lt!iel?8(h&k)m-6uW?cNlyEuhc0wd*Iyv$6>F3IL~a~v(P6nRv; z{4ekM!vwoNDPX*sV-BQ!{Gh_uaIxH(N8+qbiMCh%n~}8;{ajCnj7hNqh}wHfG)xyt zy`x{IKgkjmJ#=yK$-g}c4=Mr=J$j|^Lf1~nJ#)6AfLKCnn!wi16Or%y+dntGYclZ; z`#jVRqg@gD<6NmGP_xBxp*@>bj zB4;4fRUJUDdpnaqh?8;{k<^YP$hR%0eW50vT?-Nw^RR~(Tg&*GNMPCYauB*BWva!F z>vYg6s6juf}H#cAK4>@$> z36-9~!`j-~NKD7=A73w2Mh8bm2W>PaRoyZ*J-E5K+g5W@nd4L=3!ncNxtM99@_z90 z*vcQs6z##DI-W;eOhTnL{giS6BEmFB+p%U8OZTiIkC#g7y(vsi_08!i<4rRKp!#X| zCwywpG3AQvm%o&t$B%XILg@9X@Tq&|;N0Y|m8B8JaNqum16`!!qeo7I(u}Rp83b4g z_#!co7AGrfv*B#F>wKgyfs1M8WV8z5H}uNdU|?Z0fElS?Y1c3 zt*osDItcXbn^;(E=mIu#on+?!3vXByKNrd}I*V<8V@42d%$sGd*qeKMVY5TVaID^5 zFzd--H_rvczmJZoDy!XZCIw?znAK)W_qWEJFn($b@#@$;bJAGqS1pRDDVpiZdd+gm zI*Ui!edB%W0d);|C8af#)&fy;Bpb5J)37Rk{-!3+RJ!PIqfxGFazQsO&-bJ``MuCO zoZUq2%`<0B9cGdnR=p>N57`5+ksFhRyRSdSr#@fz`JuHW+A=1h<#|3#`+G#3J{vIF ztZ0x&9_M#BJfgGCJmQZ4MlP!1{4tIf=W20h=+SR7HY1P%K9p`Y`FW~!NhG(IRb!M1 zr!&h_4t41h-)7y1Ur|%s1=<9PD4wAYGobr(A5sM-&=Ps>+VqKoo@woe&oph>`o{{Ipx;qI2qhhAIu4rscb z2hjj%TxT%1$C1tc#)J}V;-&c$*@Rt{_kH*Nx&>wkQF z-r=d0qPrL+PFHATm(%(WaN>0W7t5bK!6dqU`_Fep+iCUcsa9QP)~WW~UKoER`~8Ch zC)(oT;v>|F{hFef)eS6t&XCew$M4|}!16>N0zZAikb3tYAFW%8;Y%_fp>(2XzdqL= zD5_oWK5nvdn+<~=vL~lp%Uu+RhUe$1Da$?m>nTdVcROyG^DdhcN;+XKZ<|q<)BN#% zzs{{Ben)Inp;UQIY)a`4^33R{Iew~1oP_347+yTo! z?Ans9`OFx8mGYe@#6(enA^+9$IU%a&Nk~r5UicVo&wT65Z%J%~Z{^Z67ZeoW-@CV< zh1m5t8JesavCH`RJ{ZH)+|o|)Pt*OfzvwcJ=rfIF-q7IpzsEHR@QG4YU)nXOa}Nu> z;f7JA3G{T5YyG1CO1w2&-|)eo!!&_l1dq{fj&;Sjx2;FSl+R23Mve&+8Y(z@#LNtq z&xxs1ehv!NdH>-9J~g%VZL$Ao;WyB(i@$r%nR4?lTU@8#KJ$LJHq?ZB6Fq7Wjb9~^ z3|N{Qr)=>=g7`0RB4kDDs7xVL;9d@$u!>M>$*AA*XyQG3{J8WM`1$kacqAla#7f`} zil5RGWaN>m|2Nc0iQ<2u30c1Wr%FVduyQTviY>|$kq3w9+&!)wg{_(ThA|a;PNckS zzn^lUMrFu}d|+x;=_8?KReOO`D{DC$N|O34}9LFPBN z6PY7XninM}c*MfeUSp5C>x-?m0w%d{;I&gKp7$RY52~aMaWKXf=a9>Vs)lhkl zp2hgC#7m0G@H+KI<&c3_Z(!v4O+`)Ieai4VvMf}2PHvei#D5uu9RJ6NBDoLh+T>r8 z+vWj*i$RXinr^5GWB^ikbKJdq3$}vsqw{F#IA34sJtt8C?1rha&xySqNtYi1#T45D z_l+)Ny;(QFmmake3ub~kbExH!x-PE3gkHt1+FF?fyM8?6Y9K{_rZ}3sm4~^1MhMkp(l9cKJ2j2^sk&&hZ zmUl+tJ}J{yA~a*Ps!VjNMMWR|SFo?+lc|@UAcNbIa485o+BuhQXC(xhduBfQT`~PdG-oF6;(r*6h;Yty=<_Y-_b)np#G_tMI7*HR7Z9O&TeZB z+R`=;O}6^P^>aF`Xkmm>@af-{GLpQlb_}}i$fz*4(7~S+A#Kq$?{Mq6N%71Il2!E9AcgP%_?ctdcwQj>A&VJT|YZo^3HC(5gl*f zpB&dzjB%lawn3N%tQY)zUMl#-GHkID?FX`OL@03-Z8j-TzBN~0h0Plh|DM|u(NbNrQj+Lbycf<8*3f&wBviD-M!ZWuZT-0X&1A{aj66YG4V4UYyI4p z^TVrL_&fv$rKsXVUeUgObIY8Cj?CtyVn>nk#W4>~iP~h4w**X$@lVdD@c}>RzYBX{ zlGw!eUon8*t$KL>2RRCYaaRp9PlZqF!QeTDFW!AI>O=a&`d0Bo&KcjPxZF&b+VYcH ztF7ArY6t4^e!|N&HRc!ul4PE!|HEPbI09?ckX|fdfF3edP}(LQ%y2vq&OC91H_-zx z*T%vOLM8{%%L4T~>}3^c-b*;sKNKFAN}?eDF>jF)s)@qjrr$dxB(bOT)14cEUW?Cy z->#57)UQM`o)gO=MM=EdEe3^etlf8#qL2u%=~KpR<08lyxmW)w9_h(Kb=*T+4HVwH zThql%{Qenjxm@-;PK+~kz2vUX!WJ6z-w*GXdmRoyvdX6Dz}A7TeDx7=9{op4ae9{O)T+hz4}7mcrKFhXRlfY{zuDMq-7rk6ks%W)c88oQoLOjtMyHWUP>SKKv_d{z(s=KP@>-|-? z;~f5U>QY~#@Ju{D4NIdLkp4Acmt&hw&=JSppFOjNMUwif?v5A_WDI4fcq2a)wVs^vBS6I@s&@`s9-^ti{%PN6fGu7+28pa&UP}nu0ySet& zX}+URK~@Fd4u?Y_uJW3aceshkn@U%VwO5E#mGEcb$C?dV(lvL9gdDB2v|{OFOO!(pyO1Jj{pOIuj-@nra- zkHKU`J1b=O@j~9nz}h!9$1O^K?C-BLLbNQRd~>#{F{AqmTgAq3%%YC#6$su3gc?-o z3OM1`Vxu)^@>08d3dQ#NStmtdNPXGE&&|&-yFo-mw0QW#OvX9=yVcB_I>yM?QT;^V3PQrX7|l{jq0tKoW0nty8loPlo#uBi^u-hZQM6IsaOA65J4VytcZkKr-M9Ox4yho@JKYU3Fe~X_99=Lz zAFPm~so&od*L`2X08y>R`voO_vjS zaB8?p8MF3d{U=41UAqRfuxyt$ivQJbe>j#QAUbU#6CP4^IFjH=&^ z1T|3d+^sTxV_&J_UihL#+FHL(sYLlB5t7gUW*b9|)20nH;#Qvj=U7VSq{v{?!+^N{ zX~OOkjn5ksp*$j!TP?OW=h*jfysmXLB*`!55KsgR<8Sr#?aeC^mSggirq)USl}~+% z#;7(lX1Z?ohX_CIE^2_58Uuxb{LSm(9#vE4pr=KSQ(NMhxs|Ffcfuq!3N^lvHJXN+w^eYI} z&vgbxB_)Hz2M-^jJ$tq_%mr}%k_N`Cr2vrK7wgvN%vlTJfD!|Q}QFdqk6=tPP}g{;Kzd*J0lyprCXE^=jqNtJ+1R#i+eu^F zYHZuKePi2p^4&h~+voj_Z;bqPM$WzG?!DLEYt1>=JT3u(WV$A9>_|kKqN6pj5F;`) zdd17JdWHj94XFAL*(&}S_156R!DmAHhFNsyR!EIwjs@!IdJypa!HhJvSqZN2!)+sN zV>oH}gR&*_K~A}wqk0OXzNqr(ZfC?W_3c$Bm-2UukpVT;jh|Zky&bi9i5;qw^6)iX z(k7t#^(!xJZsnbb^pNPbuN?&3+44qm$Q^~ls;#x@Mj{ngUhA*E;r=i^p9GGW;rG&S zK`je8E~RUM&+RXxYa(Uv{Ox*X!K!Da?`nDt{rD6uLw1ep6G_LFVO6a%?_3I_DWqd( zgDj~0L6N+AJT#x{pEYDNYk>3lCG^jp^Zn(mC94x|Cnz<{2H-HqIfVYCMU7Hp2tEv?$rv7jvGJQubr{ zS42OP6Y~NB3}#XQ-?4YM<6xCxn1(^X=a)v*R6xbM4pRjG2I23@Ywedi0~ zxqRfSSB8M5eP6?gC+LUxW%_GVqDaqbun)FV9dvHUrO^8Ahv`;8lP83jC4^X_@EcDQ z0R*>JN#YCP7T++xZD zq)=*!M8DnbiN|p^#rkZci@7p~>hNgqg}g`^PlFN%p5rI$gXWF?m7{;?U0(>YOtm^@ zW%FTa3hF)d&*S8@D$j$o3G-Uyjgbd)|NHzYpORd~262cl4}m0d%af|IvP!?MYsgm~ z%(!~!wnG(w?OFCRDb1ncHjjt4a}dMYE3kKva7Phg$lHk4ba}mwZdS?Sx8AyT;XSD? zgw8(~a_dU;iQf1LsSeL#9Hbs*3v7o+-<9R^#`$FuDt1NIjPyV*pLQ}Z$0pqx^^$J8Eh`#uGE= zV-ZosZR^#{7$jw=>8v+j|Hg$;9_KHr1}@p9mN?q>Wbe~TN47=#>r@*XAtHD!R}Nj51XLkG}#U~G#S!rLiH;zrF%Ax;%GfYL4@Dy z2xlvN6y6G})p+5+a9 zEt$6~GJ-8A`7@a_9-B7UF-#kR=9Mg5tk`j%0M$2xVO7j+2s>os({3C*wdby5s>%s( zco9aJ_{=r?TNPbf-7HfH2IYXWCeACYn zXwDN`EWo?_J}j&LjY^5?z9D&*Q8)@ckLLj6z^;Hq6t(SNV9y#7K2Gis&s zYfoyrbH+B)OQb=bK{A*rNh_ZaXpim2grNNuFyL;njq~chzd#Ovqo!`YV)VBZyX-Gk}f(DZE0ThfXrHuWxZ5f zPe+Ct5=lD#8Q=0qiri4U^ys+Nz)&rcLu_K*6*1D>;i&Ev<5IXAQ%aR2Y6!^baTQUHCC z(^)UQlt;9+q@`Tnth~dO_af73v+9>#BYVra#RaUup|r*dWjDfjHTs=y(ms3zA;t#<7qLnGIhCW5p-^+oh zzHBF~-`YUJ-l|isaw5sRBovazx!KSN#;8PL9jq%Ow53tBtu(W13Uy!K_?oVIln&bR zh5vyQ@5YD)HMh9K7<-aJLbza4kn;AskbLen-AAUz>AM-j`8B?fe7l0`-LJ8igb^ZR z>N{=gfp9j-;OV(&e!|t(gGPX+CGN&*xekBefK|l@YM;uQ?|9SRpXWB4DW|yFgh52d zWkRfNwbzSEc)m-m?Jse9-|9#F=!a(!r;rW-855(m z7bXXRoR6LtKVBQv=~A<2aS?e8sqKwu?9ZX-)MCrmL@B&D1{i31329>7=9p^!h<~*rI0#yB7P%eQy=R`R}H@6e9?&nex_?3imP{9 zcP;w(92@+DR#J%ZVp6J_B^GW}#=7H&@Fd}E9J=HMX}w``CKGn)1A5In`u#_Tuml<$5G)_sB1{QxYQnS^P6Y&#`cebHQWC23-vIAO5 zr%#6%7kZ3Ld3qG@&m#-~`!SpLDH0?MBFC%6iXNmmL#8nmGw}$*Y#5lMLT_uZBk$AP z(lmX`a)6()mMLWu{j&1i8KH&yelAym`Sj)IK*kS_sBQn9OkdN}M&ar~Kvn&h`t#>` zT<6f~U2+V%7@=n&(D&k2YKEh9$;7PFqx2j|iucpZaaDepgr1o$dH+}Tg(3@c$usak$(__M)+3%um%eVn)@YXcP9%uhsGkk)o!}#p1 zEMUpZMn?EIfDY5Yke^b>{m$}wIA{ZRJF`RFVohWoifuH&o4D@e_*0X4Wp&#y%x9dn zRNepy@#YClePd&yWy9vk9C&5S8qv>3JB4~Z2}i*ZsCznZEZ?aC;Q`{xY?iy+DPd#j zDZxx*n(Y+u&y>8|k1Mn{%M=DjqOPM44pjGN%i#$$WdhZ`BVq7+x_u|ex2L*NCvtSF zh4ZOl8}6TJD&`yJj0vsMJUN7jN3Y|Qu57irQ9H`qWiFqstBr=_B+xB9K+Lf>MxL`l zgek#!CVnUpHmSD=v2-{QFh`AcAENuBV22e;izU(`2G65fcfBUnd&NGT3|H4|Cqt&~ zdH`z!v;4yhGJ|GCOL5PFod!0R%~0R!!$37`%GJQ99z}}&50zjvz084AyhG+X&j@a0 zdfS!0QcLlu1;s^zfy9YISsLSX`GAMRU6Z-Y@4fq-<17a7>H$wtraPyc712AtTE1GS zcLHGvss$&)hicAnPtRCBeC43FBrS(?=vgrhYDf%fy${cnTAYc4-W z;SLUCs1L4TcXl<-N%~6R^;TAHs%M@+Jm^p-v?2>N-?@^*8+SG6FgAg(vri|~ms5`B zl*m9B2rna*{$c~3s>&4R)RnikernYU#wY28c-00&+;T(p%SU_bX8+4?>*UGd95b4G ziqvZc40+OwMv~2-hseL)@H)decV?&NEXG>Q5XzKX`*6|DR^+1eZUE1QE+Zzw%QJl& z92K|$Ce3+2-W-^4ZLeG>kgW+$ybGC;{F&~XEY(*vq?#S^&q^%%0zyBX`HA^E*E%nK ztnV~ENG~JK2IgE?^~WQLeT?%c2RgJ}09dlF9Tl8+pnIZUhCK%y`qx@l#WY~ zl2qI>$)g#{oCS@Iqip;M;qAN?Hx-V;NF=arceiP{+8Um`tT;F(J3<^(>}!3SUhLjU ziNUQC5vMt)lv>%|kmgo$@3byJagm6KZJ^<_=}rNPxxE8bipII3KdAc6##1e?+*!te zCqzs%Nnt58beZn(tR_5P?YO3=LHng1Wp9RNseYpxsT?#q_H_3*%X6bqIg2(FlWQ5( za1*J0G9}A0%7Plj^Sv$hp|yB)so{iuQ?kPo6FL(ohNt_N;j@a|@6VHIfWx-n%B~e} zt*DiY(R=LNE$q1*tFtGAMt#9a zD9WzE-o4Q8rG48XiM&r>b+H2pY+22lgTOFzY_0Cw%%yw}E=-c-E4$%D!h7l8z8jM$ zYun)~{BF9J#jA{CDLR1hSo~s?FaAFv$kw(L`2^o_Vx&^4lQ9SR+Ole86g6a zpy)Bdr|M|vvGp{Y^_Q@_v8Dj&#Jd{*Qu>lWHx4=SnVXr3++4UXCz1%UtUi#mc^Cv#T4PT z+YVO_1oZ=!drH-1+ZbKb!H{IP8wF0LWAI_m{G`J54T4{ccnC^1id}9{DmeY@hEEQ_CAvPr5`>F8H^&rX9lCN1BO|Qb^^;%qM9Lh zsQcPj2j~=f?5a8Q8a0NllY-CJnL9Ofw#(jI3djovQH-u_M%yS|4^=% z0>87nsbi*V0$q;}vhM8()7fCtG6i5VIgI;5M(n;N1lz2rf^UZAbxf4=D*UOMLFs~& z(`qcXTm0Oj9=&pyALMGRn~{5|oo0m-r(Q4h{jx^~cQUJs!9RPT%L!{nJ^F*RT|cuA z!UzKDD#g&;1^e~GPnQf<+z|xx>w|3@Eeh*FRxq14-Hca7z4|Gu%L zI@pC6mBM!o-YSP)vVS$tSfoYl1AG3w>zje;oU)2^@ePSRgHa(+)16@e*7-ty_y7wQ z#+NS6NM{$Ht05ZqYAE^f(>64VSVP+xTxn}nv5db??^zFbufln$7i(6$?#UKN8AA~$ zRg!kp5B<2in;KzsH{j3o^?TS1z?Lj>K{)C7K3FHw>^qaoLP;ng-yciZiG9%L)8r!X zj2>!9>-|5}!Uz6~hv#4qg#7pEV)aMMyDG!7A@{ur8N= z`&h1m18<7{mTF6k@}*B7@?nZ$Ya0yTDm@WzaAWf^@iL8{Q#v07Ytb#AFRC{Wjv~NB zH1)4a`=xh|1dk8cIG=k38mYktHGEqWHV0)VlE2t=L!P7+o%KxVicYjtBc;=#(r}U7 zuzE?1#$#}_%!Msf@>SPTAx6Cpe;2Yp{{$pLM&cTeU}IBCe)dWGlGoxfhECtA{(>0l zoya0($10&H&2TK2^HwSyE^KQ$nHbNB7-*WU-dq%-OV#x-AuQ;iU7U)J8V8FwaBxEB zL1XYl%^j}Y687Hvmdj>2l)~t?z4lx%SHS63N-e~2DmvD}cim!|k9#+ulUvbc-(WAD z;Z2j$XR-`=hrwY-Ngn|#hR6=A>h?9J%d3Qd3>^)K@3WLur1$8aclK4_=M|n9FsMm%Ob`XGtZJTH zmR$64L>;{0mil8l`#K1-RT6Qg2iv8ZmRBACd5UPN_Rr|IRSuVfi^wd+6CiFsuH!wt z>8PFBK$4aJ{cWHM!^bR`^ozam3jme#dbDuNJy6hn62QFY+ICfiMVG3=*6>bM+XPz+ zyme55;7xezsqJ9=W`8}5({F0EZPxH)2z883b8y4g5jc1YniDZW*QloI4U>)MsuB9j zbUcLOg{h}`y2Aqpj&!Na^u%A|@H`<%i}lZiP8WgiJ$*XRm?7OG`;)u7klLK5YvL9d z!rrXT!n;q*XMgv`YGCtf@P2Mq4M$B1rBn4oI6iwBfVVRFQ{i^!U65jyR5{j@_Q>{9 zRux$o;ff91F|3A7=XnPhP|iB?U?kfn$c7hS!L+jC%vQ`?M15=T9IZMvM31eMbaGlh z*Ik-eo&kNn4cCe}HBo2AYHNFUi$fn@suo9|skII~-=jWV_U>t3q37*H zta~$G%PjA0CXZ+BGn@D$e##mUT4JliPRxXx@^k!g*Qbg&0wE8y~F|Kmt_!=S!Ag9V^+4EX*pm56q3 zr3}2}ae`yZ8V1#DPIA0>@Z71{GvBQCKK7*U7^nQ}1(37`2?KfBPU~57qe3z9M1{Jz z7O_%^7Xg`+HkKW$Nm(blF-G3A_R<+cl2RvoS42hQq^9z8zzO4N0)mubT9w|4K!?9j zrIEXS-mDZA`UW#fM_Io4MT#oFW?Gwt zG2so;8EdOUSnR3cOkMW^Et_*)iJW)MGQNkzpg$h5TRqF|GL#SG&oe{Vdz=iy>L#|4&pgU)Elb-OiC|Q? zBfi8_#J-`fl1@i+IJlYAqsUklTxCJNS6J+hL%hfQ$)~y)6Vcy>*-5uL=iw0i$?^!s zA$Y(COSJ+bGXsh^e}FW-XX2T?=**ZWz4hl;-A4sV$`pN3u%mJ=s6fi{yhT0t)Kkr^ zp4`Y-E0VMp;g6&w+8bV}bh4ao6|=mC4jeNn;HrtiSG_10a&)Qa$h|g*u<$>D#Wfqe zH-A0FId^&LL^!aEIL1z;MGW)e9K`3O5D4JJQp8w^L`gl{Y*7d19KuXan3s05KOa=fl#jU`;wpIMJj`)YQ;0+_8kwsW`V>2Ek7#d%>+0$&3vt= zp+?r0Bb4OmrEHZ5bN$z}800E)oE%WQU3^!^lU%}9*Tzw&l0Ei27=vDV2)EaF=9ll- zX41S5cEmGW14KmpdbDEx_7FI#8&V#nrS-jf+k!1*qmCs|+*JJKx6t;F8#11A&1L!n zcPvB&rVv*(C%hsAoTR8VBnQ)NAZv^gM>+EBEcyF>PAby}~sk8OxYZ05?bM z7OSR(mUx-O;{%1@IeiHCBJhNwZm3ZnMLvBL#_B@{bnUMsN^Si>im1 zB7YhtHKvFaoU#^NqkXvb0a(Ye!iXBxwzR0Z4pAShVX%E1?`f1JOvd$pzkkr6zBh}C zKcYIyoi+gPEE0gUJ&-FdD06Nhc^b4{HPNuXYn}lRs{@BB6(6V!W1ObKZ@p-NO2#p# zrJD2|pkc9qXu_;Ii79xM3bs1-4w6(gd3jT!i1d^XLEf1AT_9A`Fu(A-X5y>4ChWcU zF5$1QRn9b%nD94xIhkZ*v6MPXZ(J8aBIh|TF3Z+}dj$Fxrpc^?6Y|EU@O;aP&Yzk` z(><9{mGqADC81}euo)(ZFhD-8sD+Bnx1Nq(hmN41CQw7YKIIN#7Je9E~LFCzHg|0r^NV^1=#kr7KN0H z&4X-7VEjmJZ79Z>7z@^sSZXCUIVE3>Nl29u(OMYsi^LHk@uv681%o1U_!86VT$ggQ z43y%^Y#Q(dlJC#Zi364-7voXc4uYdX5Vum13@nox2;-GS)8PbD?*O`FpreOjTj=N5 zD{UiuuXp(e9=P;I*HH+weH*)(;VI~(`OKDNZCQky-;S7y?2C%GD{n-<1V2xU2#HxB z$G7_bb{2r{W<)`L_*Z`$4a_b7K=Q;w*b9 zl_UG}(hN-_rPsTywVfan1h{WDSB_lX4)|el1pS>HSQg5({8sPWnCaz%NSXD#Z77Vq z8a|7|Y*+uPZ~m@Q3O|O;0;WG8Mq1vD`#RrxTyJlz6Ag8AcF?;2Zd!b*?SYWF?)3IXoUy(>kYPOOrACuVM4>dv)7#g` zQo3Iua;BN1O4MUPw6oGb!CULR$CIv4`54g3OXqsFC|!|i)p8)Q3~^@BXlLKYQ0LUc zXZEy{PNyXCRwD)omy19v*QT8L`#+xhHexKFa2q+8RSE}s#Q@pKFJNFxeI}NKBFKgc zcwwXCv0i9IeDuUPT#sP)@gotKiY52@#-`Q=Fti_?^BuK!o#ll0N`n1f9ifK1E)vah zi2w&O=9~T>hzN=p&o~+%1q8?`x8gR24pChu zBhm-*e)G0B)4DIOZ_o_jgZ~FFb|LLLL7B8@3i`Wm{|@*<8M|~^w0fYxgVsnc*tzz( zUgDr4w~O3WtBAgG?T-5L-SS#xWc;ll=*CA{%wcfjC0`5PK(fCiG?WWJzXPgNlRxIw zuUJJ!+1Hir>3-s4h<_=9KSOn9gnPK(kEYD5M@GJtpYFZ`n|S{~cX&JDyVER}wZc;R-75EGgD~=5$lZ zkfBuHnILvcM{WZdji4pMGMy~^UC=Hx{Oob3i?*53n-*MbHQ5T zX>i04`nWD;P9682HIQ_LtTmG85B|b})?J=jV0xtn-9fLu7sCu_@F;HRmi|Zh?DM6? z@x%x@&y=wI2I=SG`60_A{pRT)z#eekUHld#i-s0C74~`&lSm-hj~lFK3;BDjLD8&| z_*NVMZlTS(s3smmT*c#S>>d?aTHR=!MWJi+1l`e8JNHC0LvI*Va0fNjJON>pKgs+E*Q_B=2z>Lxc<&dsg!FeY@eaEvV2;O>Em&} z51jX`0UDhA^tB*-`Acapl#k4?~8kvc2+;eSqMu zN5N8H1>r>oJdGdMsv!J+D1Y)!!qZo6!*&^NijB23{&aHi;zsO~UBB+2NwD9Hm@D}{ zuaC||2{)Zh0C|KHd0Aw0s_g}P?pc2)|7@na0DZB!fOx$-f9vtcC^brSb;&Jjr9E&t z?$4^Jb}P0sDU2VbJI0ZC0UZ7C;C&QqaY-z8ofO&k4+S|LW zWZrS>)WDtm+}zTlCeCp4Kg7 zZU6bL>*EdK(VM5n+L{Iw*F`()LOPB(L>B8<=nn+uD81Z-is>tmQUjnXcZw>r$Z~U5 zqzFlFKa@2X@Hc}EoP_L)j2piTB&C_3f^61xO?k$M5N(_gSequ?ZNF0AT~^MCjxn!# z+JsGJ1gvR*_uARthdSVQcC8mA2JuQ@;qv-XSgOIE`ymE4QAn2%?Z3g92*!ZM+ReG3 z)k)%5PZ-<*9)>YJeGDetpBv>7PR^J5mQ2DEGO=#gy((3~BM{P_oLYrTEW_yybapJscF;a#VmlP4D`0g&N!=2|UA=#|($&n#GClww zmgLT>%+nJUyt!3DG%ifK&F~N#aQvIk4`DAUoN)Y(0iGk&EZV8~Ab&-yF}X-rCce^I zH#xwnyvE`HUA1AhPUB#Rz-GRBiQWAPWt~Us9(Bo`_%4v7rcu;j-_T@7lW$7| zmwLgeMDxXF)s5{JoGHkFf&2o4cn|MU?xw=;-DDKHHS##pD9+f?IN4H^gJ2Te2AWo)A*4;NsPm84HZG)t*TT0 z9&|omKqP&hpLmfAJpU^;X!-;Nb7lwOU(T+@#Y$qUC}_ zLUfAil)^SIYBp_k@#pQnqO}#ObX$DwJm7U5bJsIDhzW0hC9(W=rWNNRcFZBL$$n$S z2wB9{sR>MqBdXUtxh!>m8Gk(Fw53dl~i7uY6G%z3E=OGL=W(S;oP2y|E)oTm8B9P*X!jO zRRZix>JYaX&cm|lCBAzqOX|3fp<+uKv$qTTGbgLahfB4EmV?7_WNXeQrYFvhv6d$c z9`{Sek8L^}aEqyOWX+9k&w29U1?*prx1xb`PpiA}vb(wR7mRlYjmGjjG$%e;(dZS$ z`<%qHZzS?hpWmYPP6_CiwKjPCU^a9h7PE^+&>Z8*Zuo*l=QzLls+zKmgkjUy#sgPc z?e8I%G+HrLc9+9X9n>_=n39pE?U$>jWmM#R;7_XkLZ`)-6IBhTzZuNaMNp<&lXTmJ zz26+T9qA?%eI;8R&#el%Rezmb?;CeVo_&9mi-T!7TQUOSeWRe6*FsxqrL zuLr-WkSUo}-j}MZ#dL}n*5`H4QPjPLeCI^-oHp|6Ty-72KCe)^9?=g!+1qn~s<+-N zE^{hNhZ<H)6b=U?pB3K_6ITshaMX=bQyf3>g406OOba zG<_e~AWVQStClCpWG!Sx2aI_pBZ736&$o@tPL?xH_dkbPI&Yc>nYa>wX7{ADks#H3 zw0`)kVGJp7fVrYU^wbhNuJuT)v`s8+6*gwCcx?RTp`}xYO0yFt%3PFhjGw( z4^j7#AH>iYtY4kc&w_=cK1{=k1y_omwyDORcpL7&0~8rJg9Rs7RC$TMwYt8e?2{lyx2s%xAgav6*YzuI(6=

      g{#U|E*Z>O6y}6V~#RYFvLDC~Td*ccQ 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

      ee9vLZV1XG&p2 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

      !&l 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%0Dbs2fUS6q31R`D8iJR)y|2VR>bg-OY+~8I= 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 ADF6Tf diff --git a/docs/workbench/notebook/jupyter.yaml b/docs/workbench/notebook/jupyter.yaml deleted file mode 100644 index 32d065e..0000000 --- a/docs/workbench/notebook/jupyter.yaml +++ /dev/null @@ -1,60 +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. - -kind: Deployment -apiVersion: extensions/v1beta1 -metadata: - name: jupyter-deployment - labels: - app: jupyter -spec: - selector: - matchLabels: - app: jupyter - replicas: 1 - template: - metadata: - labels: - namespace: submarine - app: jupyter - spec: - nodeSelector: - kubernetes.io/hostname: k8s-submarine-control-plane - containers: - - name: jupyter - image: jupyter/minimal-notebook - # mount path in jupyter container - volumeMounts: - - mountPath: /home/jovyan - name: jupyter-storage - volumes: - - name: jupyter-storage - # this path must be the same as extraMounts.containerPath in the kind config - hostPath: - path: /tmp/submarine/ - type: DirectoryOrCreate ---- -kind: Service -apiVersion: v1 -metadata: - name: jupyter-service -spec: - selector: - app: jupyter - type: NodePort - ports: - - port: 8888 - targetPort: 8888 - nodePort: 30070 diff --git a/docs/workbench/notebook/setup-jupyter.md b/docs/workbench/notebook/setup-jupyter.md deleted file mode 100644 index e15ffdc..0000000 --- a/docs/workbench/notebook/setup-jupyter.md +++ /dev/null @@ -1,73 +0,0 @@ - -# Deploy Jupyter Notebook on Kubernetes -This guide covers the deployment Jupyter Notebook on kubernetes cluster. - -## Experiment environment -### Setup Kubernetes -We recommend using [kind](https://kind.sigs.k8s.io/) to setup a Kubernetes cluster on a local machine. - -You can use Extra mounts to mount your host path to kind node and use Extra port mappings to port -forward to the kind nodes. Please refer to [kind configuration](https://kind.sigs.k8s.io/docs/user/configuration/#extra-mounts) -for more details. - -You need to create a kind config file. The following is an example : -``` -kind: Cluster -apiVersion: kind.x-k8s.io/v1alpha4 -nodes: -- role: control-plane - extraMounts: - # add a mount from /path/to/my/files on the host to /files on the node - - hostPath: /tmp/submarine - containerPath: /tmp/submarine - extraPortMappings: - - containerPort: 80 - hostPort: 80 - protocol: TCP - # exposing additional ports to be used for NodePort services - - containerPort: 30070 - hostPort: 8888 - protocol: TCP -``` - -Running the following command: - -``` -kind create cluster --image kindest/node:v1.15.6 --config --name k8s-submarine -kubectl create namespace submarine -``` - -### Deploy Jupyter Notebook -Once you have a running Kubernetes cluster, you can write a YAML file to deploy a jupyter notebook. -In this [example yaml](./jupyter.yaml), we use [jupyter/minimal-notebook](https://hub.docker.com/r/jupyter/minimal-notebook/) -to make a single notebook running on the kind node. - -``` -kubectl apply -f jupyter.yaml --namespace submarine -``` - -Once jupyter notebook is running, you can access the notebook server from the browser using http://localhost:8888 on local machine. - -You can enter and store a password for your notebook server with: -``` -kubectl exec -it -- jupyter notebook password -``` -After restarting the notebook server, you can login jupyter notebook with your new password. - -If you want to use JupyterLab : -``` -http://localhost:8888/lab -``` diff --git a/helm-charts/submarine/.helmignore b/helm-charts/submarine/.helmignore deleted file mode 100644 index b92c4a4..0000000 --- a/helm-charts/submarine/.helmignore +++ /dev/null @@ -1,42 +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. -# - -# 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 -*~ -# Various IDEs -.project -.idea/ -*.tmproj -.vscode/ -# ignore dolder -ignore/* - diff --git a/helm-charts/submarine/Chart.yaml b/helm-charts/submarine/Chart.yaml deleted file mode 100644 index 9f7c49b..0000000 --- a/helm-charts/submarine/Chart.yaml +++ /dev/null @@ -1,33 +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. -# - -apiVersion: v2 -appVersion: "0.5.0" -description: Submarine is Cloud Native Machine Learning Platform. -name: submarine -version: 0.5.0 -icon: https://submarine.apache.org/assets/themes/submarine/img/submarine_white_logo.png -dependencies: -- name: tfjob - version: "0.1.0" -- name: pytorchjob - version: "0.1.0" -- name: notebook-controller - version: "0.1.0" -- name: traefik - version: "9.1.0" - condition: submarine.traefik.enabled diff --git a/helm-charts/submarine/charts/notebook-controller/.helmignore b/helm-charts/submarine/charts/notebook-controller/.helmignore deleted file mode 100644 index 7887c2c..0000000 --- a/helm-charts/submarine/charts/notebook-controller/.helmignore +++ /dev/null @@ -1,39 +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. -# -# 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/helm-charts/submarine/charts/notebook-controller/Chart.yaml b/helm-charts/submarine/charts/notebook-controller/Chart.yaml deleted file mode 100644 index f7024f3..0000000 --- a/helm-charts/submarine/charts/notebook-controller/Chart.yaml +++ /dev/null @@ -1,37 +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. -# -apiVersion: v2 -name: notebook-controller -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. -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. -appVersion: 1.0.0 diff --git a/helm-charts/submarine/charts/notebook-controller/crds/crd.yaml b/helm-charts/submarine/charts/notebook-controller/crds/crd.yaml deleted file mode 100644 index 390f5c7..0000000 --- a/helm-charts/submarine/charts/notebook-controller/crds/crd.yaml +++ /dev/null @@ -1,80 +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. -# -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: notebooks.kubeflow.org -spec: - group: kubeflow.org - names: - kind: Notebook - plural: notebooks - singular: notebook - scope: Namespaced - subresources: - status: {} - versions: - - name: v1alpha1 - served: true - storage: false - - name: v1beta1 - served: true - storage: true - - name: v1 - served: true - storage: false - validation: - openAPIV3Schema: - properties: - apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources' - type: string - kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds' - type: string - metadata: - type: object - spec: - properties: - template: - description: 'INSERT ADDITIONAL SPEC FIELDS - desired state of cluster - Important: Run "make" to regenerate code after modifying this file' - properties: - spec: - type: object - type: object - type: object - status: - properties: - conditions: - description: Conditions is an array of current conditions - items: - properties: - type: - description: Type of the confition/ - type: string - required: - - type - type: object - type: array - required: - - conditions - type: object diff --git a/helm-charts/submarine/charts/notebook-controller/templates/cluster-role-binding.yaml b/helm-charts/submarine/charts/notebook-controller/templates/cluster-role-binding.yaml deleted file mode 100644 index 1e4180f..0000000 --- a/helm-charts/submarine/charts/notebook-controller/templates/cluster-role-binding.yaml +++ /dev/null @@ -1,30 +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. -# -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - name: notebook-controller-role-binding - labels: - app: notebook-controller -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: notebook-controller-role -subjects: -- kind: ServiceAccount - name: notebook-controller-service-account - namespace: {{ .Release.Namespace }} diff --git a/helm-charts/submarine/charts/notebook-controller/templates/cluster-role.yaml b/helm-charts/submarine/charts/notebook-controller/templates/cluster-role.yaml deleted file mode 100644 index bf7e976..0000000 --- a/helm-charts/submarine/charts/notebook-controller/templates/cluster-role.yaml +++ /dev/null @@ -1,128 +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. -# -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: notebook-controller-role - labels: - app: notebook-controller -rules: -- apiGroups: - - apps - resources: - - statefulsets - - deployments - verbs: - - '*' -- apiGroups: - - "" - resources: - - pods - verbs: - - get - - list - - watch -- apiGroups: - - "" - resources: - - services - verbs: - - '*' -- apiGroups: - - "" - resources: - - events - verbs: - - get - - list - - watch - - create -- apiGroups: - - kubeflow.org - resources: - - notebooks - - notebooks/status - - notebooks/finalizers - verbs: - - '*' -- apiGroups: - - networking.istio.io - resources: - - virtualservices - verbs: - - '*' - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-notebooks-admin - labels: - app: notebook-controller - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-admin: "true" -aggregationRule: - clusterRoleSelectors: - - matchLabels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-notebooks-admin: "true" -rules: [] - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-notebooks-edit - labels: - app: notebook-controller - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-edit: "true" - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-notebooks-admin: "true" -rules: -- apiGroups: - - kubeflow.org - resources: - - notebooks - - notebooks/status - verbs: - - get - - list - - watch - - create - - delete - - deletecollection - - patch - - update - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-notebooks-view - labels: - app: notebook-controller - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-view: "true" -rules: -- apiGroups: - - kubeflow.org - resources: - - notebooks - - notebooks/status - verbs: - - get - - list - - watch diff --git a/helm-charts/submarine/charts/notebook-controller/templates/deployment.yaml b/helm-charts/submarine/charts/notebook-controller/templates/deployment.yaml deleted file mode 100644 index 4b05373..0000000 --- a/helm-charts/submarine/charts/notebook-controller/templates/deployment.yaml +++ /dev/null @@ -1,49 +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. -# -apiVersion: apps/v1 -kind: Deployment -metadata: - name: notebook-controller-deployment - labels: - app: notebook-controller -spec: - selector: - matchLabels: - app: notebook-controller - template: - metadata: - annotations: - sidecar.istio.io/inject: "false" - labels: - app: notebook-controller - spec: - containers: - - name: manager - image: apache/submarine:notebook-controller-v1.1.0-g253890cb - command: - - /manager - imagePullPolicy: IfNotPresent - env: - - name: USE_ISTIO - value: "false" - livenessProbe: - httpGet: - path: /metrics - port: 8080 - initialDelaySeconds: 30 - periodSeconds: 30 - serviceAccountName: notebook-controller-service-account diff --git a/helm-charts/submarine/charts/notebook-controller/templates/service-account.yaml b/helm-charts/submarine/charts/notebook-controller/templates/service-account.yaml deleted file mode 100644 index 54aa359..0000000 --- a/helm-charts/submarine/charts/notebook-controller/templates/service-account.yaml +++ /dev/null @@ -1,22 +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. -# -apiVersion: v1 -kind: ServiceAccount -metadata: - name: notebook-controller-service-account - labels: - app: notebook-controller diff --git a/helm-charts/submarine/charts/notebook-controller/templates/service.yaml b/helm-charts/submarine/charts/notebook-controller/templates/service.yaml deleted file mode 100644 index d133a68..0000000 --- a/helm-charts/submarine/charts/notebook-controller/templates/service.yaml +++ /dev/null @@ -1,28 +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. -# -apiVersion: v1 -kind: Service -metadata: - name: notebook-controller-service - labels: - app: notebook-controller -spec: - type: ClusterIP - selector: - app: notebook-controller - ports: - - port: 443 diff --git a/helm-charts/submarine/charts/notebook-controller/values.yaml b/helm-charts/submarine/charts/notebook-controller/values.yaml deleted file mode 100644 index cce3aca..0000000 --- a/helm-charts/submarine/charts/notebook-controller/values.yaml +++ /dev/null @@ -1,16 +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. -# diff --git a/helm-charts/submarine/charts/pytorchjob/.helmignore b/helm-charts/submarine/charts/pytorchjob/.helmignore deleted file mode 100644 index cab781a..0000000 --- a/helm-charts/submarine/charts/pytorchjob/.helmignore +++ /dev/null @@ -1,40 +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. -# - -# 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/helm-charts/submarine/charts/pytorchjob/Chart.yaml b/helm-charts/submarine/charts/pytorchjob/Chart.yaml deleted file mode 100644 index 2c4b80b..0000000 --- a/helm-charts/submarine/charts/pytorchjob/Chart.yaml +++ /dev/null @@ -1,38 +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. -# - -apiVersion: v2 -name: pytorchjob -description: pytorchjob - -# 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. -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. -appVersion: 1.0.0 diff --git a/helm-charts/submarine/charts/pytorchjob/crds/crd.yaml b/helm-charts/submarine/charts/pytorchjob/crds/crd.yaml deleted file mode 100644 index 5804ccd..0000000 --- a/helm-charts/submarine/charts/pytorchjob/crds/crd.yaml +++ /dev/null @@ -1,59 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: pytorchjobs.kubeflow.org -spec: - additionalPrinterColumns: - - JSONPath: .status.conditions[-1:].type - name: State - type: string - - JSONPath: .metadata.creationTimestamp - name: Age - type: date - group: kubeflow.org - names: - kind: PyTorchJob - plural: pytorchjobs - singular: pytorchjob - scope: Namespaced - subresources: - status: {} - validation: - openAPIV3Schema: - properties: - spec: - properties: - pytorchReplicaSpecs: - properties: - Master: - properties: - replicas: - maximum: 1 - minimum: 1 - type: integer - Worker: - properties: - replicas: - minimum: 1 - type: integer - versions: - - name: v1 - served: true - storage: true diff --git a/helm-charts/submarine/charts/pytorchjob/templates/deployment.yaml b/helm-charts/submarine/charts/pytorchjob/templates/deployment.yaml deleted file mode 100644 index 8c46fe0..0000000 --- a/helm-charts/submarine/charts/pytorchjob/templates/deployment.yaml +++ /dev/null @@ -1,49 +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. -# - -apiVersion: apps/v1 -kind: Deployment -metadata: - name: pytorch-operator -spec: - replicas: 1 - selector: - matchLabels: - name: pytorch-operator - template: - metadata: - labels: - name: pytorch-operator - spec: - containers: - - command: - - /pytorch-operator.v1 - - --alsologtostderr - - -v=1 - - --monitoring-port=8443 - env: - - name: MY_POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - - name: MY_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - image: apache/submarine:pytorch-operator-v1.1.0-gd596e904 - name: pytorch-operator - serviceAccountName: pytorch-operator diff --git a/helm-charts/submarine/charts/pytorchjob/templates/podgroup.yaml b/helm-charts/submarine/charts/pytorchjob/templates/podgroup.yaml deleted file mode 100644 index 109d9a3..0000000 --- a/helm-charts/submarine/charts/pytorchjob/templates/podgroup.yaml +++ /dev/null @@ -1,56 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: podgroups.scheduling.incubator.k8s.io -spec: - group: scheduling.incubator.k8s.io - names: - kind: PodGroup - plural: podgroups - scope: Namespaced - validation: - openAPIV3Schema: - properties: - apiVersion: - type: string - kind: - type: string - metadata: - type: object - spec: - properties: - minMember: - format: int32 - type: integer - type: object - status: - properties: - succeeded: - format: int32 - type: integer - failed: - format: int32 - type: integer - running: - format: int32 - type: integer - type: object - type: object - version: v1alpha1 diff --git a/helm-charts/submarine/charts/pytorchjob/templates/rbac.yaml b/helm-charts/submarine/charts/pytorchjob/templates/rbac.yaml deleted file mode 100644 index 0917040..0000000 --- a/helm-charts/submarine/charts/pytorchjob/templates/rbac.yaml +++ /dev/null @@ -1,69 +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. -# - -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - app: pytorch-operator - name: pytorch-operator ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - labels: - app: pytorch-operator - name: pytorch-operator -rules: -- apiGroups: - - kubeflow.org - resources: - - pytorchjobs - - pytorchjobs/status - verbs: - - '*' -- apiGroups: - - apiextensions.k8s.io - resources: - - customresourcedefinitions - verbs: - - '*' -- apiGroups: - - "" - resources: - - pods - - services - - endpoints - - events - verbs: - - '*' ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - labels: - app: pytorch-operator - name: pytorch-operator -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: pytorch-operator -subjects: -- kind: ServiceAccount - name: pytorch-operator - namespace: {{ .Release.Namespace }} ---- diff --git a/helm-charts/submarine/charts/pytorchjob/templates/service.yaml b/helm-charts/submarine/charts/pytorchjob/templates/service.yaml deleted file mode 100644 index c0580f0..0000000 --- a/helm-charts/submarine/charts/pytorchjob/templates/service.yaml +++ /dev/null @@ -1,35 +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. -# - -apiVersion: v1 -kind: Service -metadata: - annotations: - prometheus.io/path: /metrics - prometheus.io/port: "8443" - prometheus.io/scrape: "true" - labels: - app: pytorch-operator - name: pytorch-operator -spec: - ports: - - name: monitoring-port - port: 8443 - targetPort: 8443 - selector: - name: pytorch-operator - type: ClusterIP diff --git a/helm-charts/submarine/charts/pytorchjob/values.yaml b/helm-charts/submarine/charts/pytorchjob/values.yaml deleted file mode 100644 index 555eccf..0000000 --- a/helm-charts/submarine/charts/pytorchjob/values.yaml +++ /dev/null @@ -1,17 +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. -# - diff --git a/helm-charts/submarine/charts/tfjob/.helmignore b/helm-charts/submarine/charts/tfjob/.helmignore deleted file mode 100644 index cab781a..0000000 --- a/helm-charts/submarine/charts/tfjob/.helmignore +++ /dev/null @@ -1,40 +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. -# - -# 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/helm-charts/submarine/charts/tfjob/Chart.yaml b/helm-charts/submarine/charts/tfjob/Chart.yaml deleted file mode 100644 index adffae8..0000000 --- a/helm-charts/submarine/charts/tfjob/Chart.yaml +++ /dev/null @@ -1,38 +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. -# - -apiVersion: v2 -name: tfjob -description: tfjob - -# 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. -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. -appVersion: 1.0.0 diff --git a/helm-charts/submarine/charts/tfjob/crds/crd.yaml b/helm-charts/submarine/charts/tfjob/crds/crd.yaml deleted file mode 100644 index 1064757..0000000 --- a/helm-charts/submarine/charts/tfjob/crds/crd.yaml +++ /dev/null @@ -1,64 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: tfjobs.kubeflow.org -spec: - additionalPrinterColumns: - - JSONPath: .status.conditions[-1:].type - name: State - type: string - - JSONPath: .metadata.creationTimestamp - name: Age - type: date - group: kubeflow.org - names: - kind: TFJob - plural: tfjobs - singular: tfjob - scope: Namespaced - subresources: - status: {} - validation: - openAPIV3Schema: - properties: - spec: - properties: - tfReplicaSpecs: - properties: - Chief: - properties: - replicas: - maximum: 1 - minimum: 1 - type: integer - PS: - properties: - replicas: - minimum: 1 - type: integer - Worker: - properties: - replicas: - minimum: 1 - type: integer - versions: - - name: v1 - served: true - storage: true diff --git a/helm-charts/submarine/charts/tfjob/templates/cluster-role-binding.yaml b/helm-charts/submarine/charts/tfjob/templates/cluster-role-binding.yaml deleted file mode 100644 index 3f14839..0000000 --- a/helm-charts/submarine/charts/tfjob/templates/cluster-role-binding.yaml +++ /dev/null @@ -1,31 +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. -# ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - labels: - app: tf-job-operator - name: tf-job-operator -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: tf-job-operator -subjects: -- kind: ServiceAccount - name: tf-job-operator - namespace: {{ .Release.Namespace }} diff --git a/helm-charts/submarine/charts/tfjob/templates/cluster-role.yaml b/helm-charts/submarine/charts/tfjob/templates/cluster-role.yaml deleted file mode 100644 index 2620ca9..0000000 --- a/helm-charts/submarine/charts/tfjob/templates/cluster-role.yaml +++ /dev/null @@ -1,111 +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. -# ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - labels: - app: tf-job-operator - name: tf-job-operator -rules: -- apiGroups: - - kubeflow.org - resources: - - tfjobs - - tfjobs/status - verbs: - - '*' -- apiGroups: - - apiextensions.k8s.io - resources: - - customresourcedefinitions - verbs: - - '*' -- apiGroups: - - "" - resources: - - pods - - services - - endpoints - - events - verbs: - - '*' -- apiGroups: - - apps - - extensions - resources: - - deployments - verbs: - - '*' - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-tfjobs-admin - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-admin: "true" -aggregationRule: - clusterRoleSelectors: - - matchLabels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-tfjobs-admin: "true" -rules: [] - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-tfjobs-edit - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-edit: "true" - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-tfjobs-admin: "true" -rules: -- apiGroups: - - kubeflow.org - resources: - - tfjobs - - tfjobs/status - verbs: - - get - - list - - watch - - create - - delete - - deletecollection - - patch - - update - ---- - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: kubeflow-tfjobs-view - labels: - rbac.authorization.kubeflow.org/aggregate-to-kubeflow-view: "true" -rules: -- apiGroups: - - kubeflow.org - resources: - - tfjobs - - tfjobs/status - verbs: - - get - - list - - watch diff --git a/helm-charts/submarine/charts/tfjob/templates/deployment.yaml b/helm-charts/submarine/charts/tfjob/templates/deployment.yaml deleted file mode 100644 index 880cb27..0000000 --- a/helm-charts/submarine/charts/tfjob/templates/deployment.yaml +++ /dev/null @@ -1,53 +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. -# ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: tf-job-operator - labels: - app: tf-job-operator - name: tf-job-operator -spec: - replicas: 1 - selector: - matchLabels: - app: tf-job-operator - name: tf-job-operator - template: - metadata: - labels: - app: tf-job-operator - name: tf-job-operator - spec: - containers: - - args: - - --alsologtostderr - - -v=1 - - --monitoring-port=8443 - env: - - name: MY_POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - - name: MY_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - image: apache/submarine:tf_operator-v1.1.0-g92389064 - name: tf-job-operator - serviceAccountName: tf-job-operator diff --git a/helm-charts/submarine/charts/tfjob/templates/service-account.yaml b/helm-charts/submarine/charts/tfjob/templates/service-account.yaml deleted file mode 100644 index 217e05b..0000000 --- a/helm-charts/submarine/charts/tfjob/templates/service-account.yaml +++ /dev/null @@ -1,30 +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. -# ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - app: tf-job-dashboard - name: tf-job-dashboard ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - app: tf-job-operator - name: tf-job-operator diff --git a/helm-charts/submarine/charts/tfjob/templates/service.yaml b/helm-charts/submarine/charts/tfjob/templates/service.yaml deleted file mode 100644 index e84ad6d..0000000 --- a/helm-charts/submarine/charts/tfjob/templates/service.yaml +++ /dev/null @@ -1,35 +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. -# ---- -apiVersion: v1 -kind: Service -metadata: - annotations: - prometheus.io/path: /metrics - prometheus.io/scrape: "true" - prometheus.io/port: "8443" - labels: - app: tf-job-operator - name: tf-job-operator -spec: - ports: - - name: monitoring-port - port: 8443 - targetPort: 8443 - selector: - name: tf-job-operator - type: ClusterIP diff --git a/helm-charts/submarine/charts/tfjob/values.yaml b/helm-charts/submarine/charts/tfjob/values.yaml deleted file mode 100644 index cce3aca..0000000 --- a/helm-charts/submarine/charts/tfjob/values.yaml +++ /dev/null @@ -1,16 +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. -# diff --git a/helm-charts/submarine/charts/traefik/.helmignore b/helm-charts/submarine/charts/traefik/.helmignore deleted file mode 100644 index cab781a..0000000 --- a/helm-charts/submarine/charts/traefik/.helmignore +++ /dev/null @@ -1,40 +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. -# - -# 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/helm-charts/submarine/charts/traefik/Chart.yaml b/helm-charts/submarine/charts/traefik/Chart.yaml deleted file mode 100644 index 5ec6bc5..0000000 --- a/helm-charts/submarine/charts/traefik/Chart.yaml +++ /dev/null @@ -1,30 +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. -# - -apiVersion: v2 -name: traefik -description: A Traefik based Kubernetes ingress controller -type: application -version: 9.1.0 -appVersion: 2.2.8 -keywords: - - traefik - - ingress -home: https://traefik.io/ -sources: - - https://github.com/containous/traefik -icon: https://raw.githubusercontent.com/containous/traefik/v2.2/docs/content/assets/img/traefik.logo.png diff --git a/helm-charts/submarine/charts/traefik/crds/ingressroute-tcp.yaml b/helm-charts/submarine/charts/traefik/crds/ingressroute-tcp.yaml deleted file mode 100644 index 7dbacea..0000000 --- a/helm-charts/submarine/charts/traefik/crds/ingressroute-tcp.yaml +++ /dev/null @@ -1,29 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ingressroutetcps.traefik.containo.us -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: IngressRouteTCP - plural: ingressroutetcps - singular: ingressroutetcp - scope: Namespaced diff --git a/helm-charts/submarine/charts/traefik/crds/ingressroute-udp.yaml b/helm-charts/submarine/charts/traefik/crds/ingressroute-udp.yaml deleted file mode 100644 index 4efa15d..0000000 --- a/helm-charts/submarine/charts/traefik/crds/ingressroute-udp.yaml +++ /dev/null @@ -1,30 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ingressrouteudps.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: IngressRouteUDP - plural: ingressrouteudps - singular: ingressrouteudp - scope: Namespaced diff --git a/helm-charts/submarine/charts/traefik/crds/ingressroute.yaml b/helm-charts/submarine/charts/traefik/crds/ingressroute.yaml deleted file mode 100644 index d42e457..0000000 --- a/helm-charts/submarine/charts/traefik/crds/ingressroute.yaml +++ /dev/null @@ -1,29 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ingressroutes.traefik.containo.us -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: IngressRoute - plural: ingressroutes - singular: ingressroute - scope: Namespaced diff --git a/helm-charts/submarine/charts/traefik/crds/middlewares.yaml b/helm-charts/submarine/charts/traefik/crds/middlewares.yaml deleted file mode 100644 index 8b19370..0000000 --- a/helm-charts/submarine/charts/traefik/crds/middlewares.yaml +++ /dev/null @@ -1,29 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: middlewares.traefik.containo.us -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: Middleware - plural: middlewares - singular: middleware - scope: Namespaced diff --git a/helm-charts/submarine/charts/traefik/crds/tls-options.yaml b/helm-charts/submarine/charts/traefik/crds/tls-options.yaml deleted file mode 100644 index 4bc2697..0000000 --- a/helm-charts/submarine/charts/traefik/crds/tls-options.yaml +++ /dev/null @@ -1,29 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: tlsoptions.traefik.containo.us -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: TLSOption - plural: tlsoptions - singular: tlsoption - scope: Namespaced diff --git a/helm-charts/submarine/charts/traefik/crds/tls-stores.yaml b/helm-charts/submarine/charts/traefik/crds/tls-stores.yaml deleted file mode 100644 index 7283454..0000000 --- a/helm-charts/submarine/charts/traefik/crds/tls-stores.yaml +++ /dev/null @@ -1,30 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: tlsstores.traefik.containo.us - -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: TLSStore - plural: tlsstores - singular: tlsstore - scope: Namespaced diff --git a/helm-charts/submarine/charts/traefik/crds/traefik-services.yaml b/helm-charts/submarine/charts/traefik/crds/traefik-services.yaml deleted file mode 100644 index 7eb8ab9..0000000 --- a/helm-charts/submarine/charts/traefik/crds/traefik-services.yaml +++ /dev/null @@ -1,29 +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. -# - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: traefikservices.traefik.containo.us -spec: - group: traefik.containo.us - version: v1alpha1 - names: - kind: TraefikService - plural: traefikservices - singular: traefikservice - scope: Namespaced diff --git a/helm-charts/submarine/charts/traefik/templates/_helpers.tpl b/helm-charts/submarine/charts/traefik/templates/_helpers.tpl deleted file mode 100644 index d599823..0000000 --- a/helm-charts/submarine/charts/traefik/templates/_helpers.tpl +++ /dev/null @@ -1,71 +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. -# -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Expand the name of the chart. -*/}} -{{- define "traefik.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "traefik.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | 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 "traefik.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 -}} - -{{/* -The name of the service account to use -*/}} -{{- define "traefik.serviceAccountName" -}} -{{- default (include "traefik.fullname" .) .Values.serviceAccount.name -}} -{{- end -}} - -{{/* -Construct the path for the providers.kubernetesingress.ingressendpoint.publishedservice. -By convention this will simply use the / to match the name of the -service generated. -Users can provide an override for an explicit service they want bound via `.Values.providers.kubernetesIngress.publishedService.pathOverride` -*/}} -{{- define "providers.kubernetesIngress.publishedServicePath" -}} -{{- $defServiceName := printf "%s/%s" .Release.Namespace (include "traefik.fullname" .) -}} -{{- $servicePath := default $defServiceName .Values.providers.kubernetesIngress.publishedService.pathOverride }} -{{- print $servicePath | trimSuffix "-" -}} -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/dashboard-hook-ingressroute.yaml b/helm-charts/submarine/charts/traefik/templates/dashboard-hook-ingressroute.yaml deleted file mode 100644 index 9565b93..0000000 --- a/helm-charts/submarine/charts/traefik/templates/dashboard-hook-ingressroute.yaml +++ /dev/null @@ -1,45 +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. -# - -{{- if .Values.ingressRoute.dashboard.enabled -}} -apiVersion: traefik.containo.us/v1alpha1 -kind: IngressRoute -metadata: - name: {{ template "traefik.fullname" . }}-dashboard - annotations: - helm.sh/hook: "post-install,post-upgrade" - {{- with .Values.ingressRoute.dashboard.annotations }} - {{- toYaml . | nindent 4 }} - {{- end }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} - {{- with .Values.ingressRoute.dashboard.labels }} - {{- toYaml . | nindent 4 }} - {{- end }} -spec: - entryPoints: - - traefik - routes: - - match: PathPrefix(`/dashboard`) || PathPrefix(`/api`) - kind: Rule - services: - - name: api@internal - kind: TraefikService -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/deployment.yaml b/helm-charts/submarine/charts/traefik/templates/deployment.yaml deleted file mode 100644 index 0c6e65d..0000000 --- a/helm-charts/submarine/charts/traefik/templates/deployment.yaml +++ /dev/null @@ -1,260 +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. -# - -{{- if .Values.deployment.enabled -}} - {{- if gt (int .Values.deployment.replicas) 1 -}} - {{- with .Values.additionalArguments -}} - {{- range . -}} - {{- if contains ".acme." . -}} - {{- fail (printf "You can not enabled acme if you set more than one traefik replica") -}} - {{- end -}} - {{- end -}} - {{- end -}} - {{- end -}} - ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ template "traefik.fullname" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} - annotations: - {{- with .Values.deployment.annotations }} - {{- toYaml . | nindent 4 }} - {{- end }} -spec: - {{- if not .Values.autoscaling.enabled }} - replicas: {{ default 1 .Values.deployment.replicas }} - {{- end }} - selector: - matchLabels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - app.kubernetes.io/instance: {{ .Release.Name }} - strategy: - type: RollingUpdate - rollingUpdate: - {{- with .Values.rollingUpdate }} - {{- toYaml . | nindent 6 }} - {{- end }} - template: - metadata: - annotations: - {{- with .Values.deployment.podAnnotations }} - {{- toYaml . | nindent 8 }} - {{- end }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} - spec: - serviceAccountName: {{ include "traefik.serviceAccountName" . }} - terminationGracePeriodSeconds: 60 - hostNetwork: {{ .Values.hostNetwork }} - {{- with .Values.deployment.dnsPolicy }} - dnsPolicy: {{ . }} - {{- end }} - {{- with .Values.deployment.initContainers }} - initContainers: - {{- toYaml . | nindent 6 }} - {{- end }} - containers: - - image: {{ .Values.image.name }}:{{ .Values.image.tag }} - imagePullPolicy: {{ .Values.image.pullPolicy }} - name: {{ template "traefik.fullname" . }} - resources: - {{- with .Values.resources }} - {{- toYaml . | nindent 10 }} - {{- end }} - readinessProbe: - httpGet: - path: /ping - port: {{ .Values.ports.traefik.port }} - failureThreshold: 1 - initialDelaySeconds: 10 - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 2 - livenessProbe: - httpGet: - path: /ping - port: {{ .Values.ports.traefik.port }} - failureThreshold: 3 - initialDelaySeconds: 10 - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 2 - ports: - {{- range $name, $config := .Values.ports }} - {{- if $config }} - - name: {{ $name | quote }} - containerPort: {{ $config.port }} - {{- if $config.hostPort }} - hostPort: {{ $config.hostPort }} - {{- end }} - {{- if $config.hostIP }} - hostIP: {{ $config.hostIP }} - {{- end }} - protocol: {{ default "TCP" $config.protocol | quote }} - {{- end }} - {{- end }} - {{- with .Values.securityContext }} - securityContext: - {{- toYaml . | nindent 10 }} - {{- end }} - volumeMounts: - - name: data - mountPath: {{ .Values.persistence.path }} - {{- if .Values.persistence.subPath }} - subPath: {{ .Values.persistence.subPath }} - {{- end }} - - name: tmp - mountPath: /tmp - {{- range .Values.volumes }} - - name: {{ .name }} - mountPath: {{ .mountPath }} - readOnly: true - {{- end }} - args: - {{- with .Values.globalArguments }} - {{- range . }} - - {{ . | quote }} - {{- end }} - {{- end }} - {{- range $name, $config := .Values.ports }} - {{- if $config }} - - "--entryPoints.{{$name}}.address=:{{ $config.port }}/{{ default "tcp" $config.protocol | lower }}" - {{- end }} - {{- end }} - - "--api.dashboard=true" - - "--ping=true" - {{- if .Values.providers.kubernetesCRD.enabled }} - - "--providers.kubernetescrd" - {{- end }} - {{- if .Values.providers.kubernetesIngress.enabled }} - - "--providers.kubernetesingress" - {{- if and .Values.service.enabled .Values.providers.kubernetesIngress.publishedService.enabled }} - - "--providers.kubernetesingress.ingressendpoint.publishedservice={{ template "providers.kubernetesIngress.publishedServicePath" . }}" - {{- end }} - {{- end }} - {{- if and .Values.rbac.enabled .Values.rbac.namespaced }} - - "--providers.kubernetescrd.namespaces={{ .Release.Namespace }}" - - "--providers.kubernetesingress.namespaces={{ .Release.Namespace }}" - {{- end }} - {{- range $entrypoint, $config := $.Values.ports }} - {{- if $config.redirectTo }} - {{- $toPort := index $.Values.ports $config.redirectTo }} - - "--entrypoints.{{ $entrypoint }}.http.redirections.entryPoint.to=:{{ $toPort.exposedPort }}" - - "--entrypoints.{{ $entrypoint }}.http.redirections.entryPoint.scheme=https" - {{- end }} - {{- end }} - {{- with .Values.logs }} - {{- if .general.format }} - - "--log.format={{ .general.format }}" - {{- end }} - {{- if ne .general.level "ERROR" }} - - "--log.level={{ .general.level | upper }}" - {{- end }} - {{- if .access.enabled }} - - "--accesslog=true" - {{- if .access.format }} - - "--accesslog.format={{ .access.format }}" - {{- end }} - {{- if .access.bufferingsize }} - - "--accesslog.bufferingsize={{ .access.bufferingsize }}" - {{- end }} - {{- if .access.filters }} - {{- if .access.filters.statuscodes }} - - "--accesslog.filters.statuscodes={{ .access.filters.statuscodes }}" - {{- end }} - {{- if .access.filters.retryattempts }} - - "--accesslog.filters.retryattempts" - {{- end }} - {{- if .access.filters.minduration }} - - "--accesslog.filters.minduration={{ .access.filters.minduration }}" - {{- end }} - {{- end }} - - "--accesslog.fields.defaultmode={{ .access.fields.general.defaultmode }}" - {{- range $fieldname, $fieldaction := .access.fields.general.names }} - - "--accesslog.fields.names.{{ $fieldname }}={{ $fieldaction }}" - {{- end }} - - "--accesslog.fields.headers.defaultmode={{ .access.fields.headers.defaultmode }}" - {{- range $fieldname, $fieldaction := .access.fields.headers.names }} - - "--accesslog.fields.headers.names.{{ $fieldname }}={{ $fieldaction }}" - {{- end }} - {{- end }} - {{- end }} - {{- with .Values.additionalArguments }} - {{- range . }} - - {{ . | quote }} - {{- end }} - {{- end }} - {{- with .Values.env }} - env: - {{- toYaml . | nindent 10 }} - {{- end }} - {{- with .Values.envFrom }} - envFrom: - {{- toYaml . | nindent 10 }} - {{- end }} - {{- if .Values.deployment.additionalContainers }} - {{- toYaml .Values.deployment.additionalContainers | nindent 6 }} - {{- end }} - volumes: - - name: data - {{- if .Values.persistence.enabled }} - persistentVolumeClaim: - claimName: {{ default (include "traefik.fullname" .) .Values.persistence.existingClaim }} - {{- else }} - emptyDir: {} - {{- end }} - - name: tmp - emptyDir: {} - {{- range .Values.volumes }} - - name: {{ .name }} - {{- if eq .type "secret" }} - secret: - secretName: {{ .name }} - {{- else if eq .type "configMap" }} - configMap: - name: {{ .name }} - {{- end }} - {{- end }} - {{- with .Values.affinity }} - affinity: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tolerations }} - tolerations: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.nodeSelector }} - nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- if .Values.priorityClassName }} - priorityClassName: {{ .Values.priorityClassName }} - {{- end }} - {{- with .Values.podSecurityContext }} - securityContext: - {{- toYaml . | nindent 8 }} - {{- end }} -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/hpa.yaml b/helm-charts/submarine/charts/traefik/templates/hpa.yaml deleted file mode 100644 index 9ecdd16..0000000 --- a/helm-charts/submarine/charts/traefik/templates/hpa.yaml +++ /dev/null @@ -1,37 +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. -# - -{{- if .Values.autoscaling.enabled }} -apiVersion: autoscaling/v2beta1 -kind: HorizontalPodAutoscaler -metadata: - name: {{ template "traefik.fullname" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} -spec: - scaleTargetRef: - apiVersion: apps/v1 - kind: Deployment - name: {{ template "traefik.fullname" . }} - minReplicas: {{ .Values.autoscaling.minReplicas }} - maxReplicas: {{ .Values.autoscaling.maxReplicas }} - metrics: -{{ toYaml .Values.autoscaling.metrics | indent 4 }} -{{- end }} diff --git a/helm-charts/submarine/charts/traefik/templates/pod-disruption-budget.yaml b/helm-charts/submarine/charts/traefik/templates/pod-disruption-budget.yaml deleted file mode 100644 index aa460e9..0000000 --- a/helm-charts/submarine/charts/traefik/templates/pod-disruption-budget.yaml +++ /dev/null @@ -1,39 +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. -# - -{{- if .Values.podDisruptionBudget.enabled -}} -apiVersion: policy/v1beta1 -kind: PodDisruptionBudget -metadata: - name: {{ template "traefik.fullname" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} -spec: - selector: - matchLabels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - app.kubernetes.io/instance: {{ .Release.Name }} - {{- if .Values.podDisruptionBudget.minAvailable }} - minAvailable: {{ .Values.podDisruptionBudget.minAvailable | int }} - {{- end }} - {{- if .Values.podDisruptionBudget.maxUnavailable }} - maxUnavailable: {{ .Values.podDisruptionBudget.maxUnavailable | int }} - {{- end }} -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/pvc.yaml b/helm-charts/submarine/charts/traefik/templates/pvc.yaml deleted file mode 100644 index 0993ea1..0000000 --- a/helm-charts/submarine/charts/traefik/templates/pvc.yaml +++ /dev/null @@ -1,42 +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. -# - -{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) -}} -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: {{ template "traefik.fullname" . }} - annotations: - {{- with .Values.persistence.annotations }} - {{ toYaml . | indent 4 }} - {{- end }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} -spec: - accessModes: - - {{ .Values.persistence.accessMode | quote }} - resources: - requests: - storage: {{ .Values.persistence.size | quote }} - {{- if .Values.persistence.storageClass }} - storageClassName: {{ .Values.persistence.storageClass | quote }} - {{- end }} -{{- end -}} - diff --git a/helm-charts/submarine/charts/traefik/templates/rbac/cluster-role-binding.yaml b/helm-charts/submarine/charts/traefik/templates/rbac/cluster-role-binding.yaml deleted file mode 100644 index d1c5c95..0000000 --- a/helm-charts/submarine/charts/traefik/templates/rbac/cluster-role-binding.yaml +++ /dev/null @@ -1,35 +0,0 @@ -{{- if and .Values.rbac.enabled (not .Values.rbac.namespaced) }} -# -# 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. -# -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: {{ template "traefik.fullname" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: {{ template "traefik.fullname" . }} -subjects: - - kind: ServiceAccount - name: {{ include "traefik.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/rbac/cluster-role.yaml b/helm-charts/submarine/charts/traefik/templates/rbac/cluster-role.yaml deleted file mode 100644 index 191c9ec..0000000 --- a/helm-charts/submarine/charts/traefik/templates/rbac/cluster-role.yaml +++ /dev/null @@ -1,66 +0,0 @@ -{{- if and .Values.rbac.enabled (not .Values.rbac.namespaced) -}} -# -# 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. -# -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: {{ template "traefik.fullname" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} -rules: - - apiGroups: - - "" - resources: - - services - - endpoints - - secrets - verbs: - - get - - list - - watch - - apiGroups: - - extensions - resources: - - ingresses - verbs: - - get - - list - - watch - - apiGroups: - - extensions - resources: - - ingresses/status - verbs: - - update - - apiGroups: - - traefik.containo.us - resources: - - ingressroutes - - ingressroutetcps - - ingressrouteudps - - middlewares - - tlsoptions - - tlsstores - - traefikservices - verbs: - - get - - list - - watch -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/rbac/role-binding.yaml b/helm-charts/submarine/charts/traefik/templates/rbac/role-binding.yaml deleted file mode 100644 index d3d6996..0000000 --- a/helm-charts/submarine/charts/traefik/templates/rbac/role-binding.yaml +++ /dev/null @@ -1,35 +0,0 @@ -{{- if and .Values.rbac.enabled .Values.rbac.namespaced }} -# -# 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. -# -kind: RoleBinding -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: {{ template "traefik.fullname" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: {{ template "traefik.fullname" . }} -subjects: - - kind: ServiceAccount - name: {{ include "traefik.serviceAccountName" . }} - namespace: {{ .Release.Namespace }} -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/rbac/role.yaml b/helm-charts/submarine/charts/traefik/templates/rbac/role.yaml deleted file mode 100644 index c0775f4..0000000 --- a/helm-charts/submarine/charts/traefik/templates/rbac/role.yaml +++ /dev/null @@ -1,66 +0,0 @@ -{{- if and .Values.rbac.enabled .Values.rbac.namespaced }} -# -# 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. -# -kind: Role -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: {{ template "traefik.fullname" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} -rules: - - apiGroups: - - "" - resources: - - services - - endpoints - - secrets - verbs: - - get - - list - - watch - - apiGroups: - - extensions - resources: - - ingresses - verbs: - - get - - list - - watch - - apiGroups: - - extensions - resources: - - ingresses/status - verbs: - - update - - apiGroups: - - traefik.containo.us - resources: - - ingressroutes - - ingressroutetcps - - ingressrouteudps - - middlewares - - tlsoptions - - tlsstores - - traefikservices - verbs: - - get - - list - - watch -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/rbac/service-account.yaml b/helm-charts/submarine/charts/traefik/templates/rbac/service-account.yaml deleted file mode 100644 index 1df7115..0000000 --- a/helm-charts/submarine/charts/traefik/templates/rbac/service-account.yaml +++ /dev/null @@ -1,31 +0,0 @@ -{{- if not .Values.serviceAccount.name -}} -# -# 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. -# -kind: ServiceAccount -apiVersion: v1 -metadata: - name: {{ include "traefik.serviceAccountName" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} - annotations: - {{- with .Values.serviceAccountAnnotations }} - {{- toYaml . | nindent 4 }} - {{- end }} -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/templates/service.yaml b/helm-charts/submarine/charts/traefik/templates/service.yaml deleted file mode 100644 index 40972e4..0000000 --- a/helm-charts/submarine/charts/traefik/templates/service.yaml +++ /dev/null @@ -1,126 +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. -# - -{{- if .Values.service.enabled -}} - -{{ $tcpPorts := dict }} -{{ $udpPorts := dict }} -{{- range $name, $config := .Values.ports }} - {{- if eq (toString $config.protocol) "UDP" }} - {{ $_ := set $udpPorts $name $config }} - {{- else }} - {{ $_ := set $tcpPorts $name $config }} - {{- end }} -{{- end }} - -apiVersion: v1 -kind: List -items: -{{- if $tcpPorts }} - - apiVersion: v1 - kind: Service - metadata: - name: {{ template "traefik.fullname" . }} - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} - annotations: - {{- with .Values.service.annotations }} - {{- toYaml . | nindent 8 }} - {{- end }} - spec: - {{- $type := default "LoadBalancer" .Values.service.type }} - type: {{ $type }} - {{- with .Values.service.spec }} - {{- toYaml . | nindent 6 }} - {{- end }} - selector: - app.kubernetes.io/name: {{ template "traefik.name" . }} - app.kubernetes.io/instance: {{ .Release.Name }} - ports: - {{- range $name, $config := $tcpPorts }} - {{- if $config.expose }} - - port: {{ default $config.port $config.exposedPort }} - name: {{ $name }} - targetPort: {{ $name | quote }} - protocol: {{ default "TCP" $config.protocol | quote }} - {{- if $config.nodePort }} - nodePort: {{ $config.nodePort }} - {{- end }} - {{- end }} - {{- end }} - {{- if eq $type "LoadBalancer" }} - {{- with .Values.service.loadBalancerSourceRanges }} - loadBalancerSourceRanges: - {{- toYaml . | nindent 6 }} - {{- end -}} - {{- end -}} - {{- with .Values.service.externalIPs }} - externalIPs: - {{- toYaml . | nindent 6 }} - {{- end -}} -{{- end }} - -{{- if $udpPorts }} - - apiVersion: v1 - kind: Service - metadata: - name: {{ template "traefik.fullname" . }}-udp - labels: - app.kubernetes.io/name: {{ template "traefik.name" . }} - helm.sh/chart: {{ template "traefik.chart" . }} - app.kubernetes.io/managed-by: {{ .Release.Service }} - app.kubernetes.io/instance: {{ .Release.Name }} - annotations: - {{- with .Values.service.annotations }} - {{- toYaml . | nindent 8 }} - {{- end }} - spec: - {{- $type := default "LoadBalancer" .Values.service.type }} - type: {{ $type }} - {{- with .Values.service.spec }} - {{- toYaml . | nindent 6 }} - {{- end }} - selector: - app.kubernetes.io/name: {{ template "traefik.name" . }} - app.kubernetes.io/instance: {{ .Release.Name }} - ports: - {{- range $name, $config := $udpPorts }} - {{- if $config.expose }} - - port: {{ default $config.port $config.exposedPort }} - name: {{ $name }} - targetPort: {{ $name | quote }} - protocol: {{ default "UDP" $config.protocol | quote }} - {{- if $config.nodePort }} - nodePort: {{ $config.nodePort }} - {{- end }} - {{- end }} - {{- end }} - {{- if eq $type "LoadBalancer" }} - {{- with .Values.service.loadBalancerSourceRanges }} - loadBalancerSourceRanges: - {{- toYaml . | nindent 6 }} - {{- end -}} - {{- end -}} - {{- with .Values.service.externalIPs }} - externalIPs: - {{- toYaml . | nindent 6 }} - {{- end -}} -{{- end }} -{{- end -}} diff --git a/helm-charts/submarine/charts/traefik/values.yaml b/helm-charts/submarine/charts/traefik/values.yaml deleted file mode 100644 index 17d164b..0000000 --- a/helm-charts/submarine/charts/traefik/values.yaml +++ /dev/null @@ -1,336 +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. -# - -# Default values for Traefik -image: - name: traefik - tag: 2.2.8 - pullPolicy: IfNotPresent - -# -# Configure the deployment -# -deployment: - enabled: true - # Number of pods of the deployment - replicas: 1 - # Additional deployment annotations (e.g. for jaeger-operator sidecar injection) - annotations: {} - # Additional pod annotations (e.g. for mesh injection or prometheus scraping) - podAnnotations: {} - # Additional containers (e.g. for metric offloading sidecars) - additionalContainers: [] - # Additional initContainers (e.g. for setting file permission as shown below) - initContainers: [] - # The "volume-permissions" init container is required if you run into permission issues. - # Related issue: https://github.com/containous/traefik/issues/6972 - # - name: volume-permissions - # image: busybox:1.31.1 - # command: ["sh", "-c", "chmod -Rv 600 /data/*"] - # volumeMounts: - # - name: data - # mountPath: /data - # Custom pod DNS policy. Apply if `hostNetwork: true` - # dnsPolicy: ClusterFirstWithHostNet - -# Pod disruption budget -podDisruptionBudget: - enabled: false - # maxUnavailable: 1 - # minAvailable: 0 - -# Create an IngressRoute for the dashboard -ingressRoute: - dashboard: - enabled: false - # Additional ingressRoute annotations (e.g. for kubernetes.io/ingress.class) - annotations: {} - # Additional ingressRoute labels (e.g. for filtering IngressRoute by custom labels) - labels: {} - -rollingUpdate: - maxUnavailable: 1 - maxSurge: 1 - - -# -# Configure providers -# -providers: - kubernetesCRD: - enabled: true - kubernetesIngress: - enabled: true - # IP used for Kubernetes Ingress endpoints - publishedService: - enabled: false - # Published Kubernetes Service to copy status from. Format: namespace/servicename - # By default this Traefik service - # pathOverride: "" - -# -# Add volumes to the traefik pod. -# This can be used to mount a cert pair or a configmap that holds a config.toml file. -# After the volume has been mounted, add the configs into traefik by using the `additionalArguments` list below, eg: -# additionalArguments: -# - "--providers.file.filename=/config/dynamic.toml" -volumes: [] -# - name: public-cert -# mountPath: "/certs" -# type: secret -# - name: configs -# mountPath: "/config" -# type: configMap - -# Logs -# https://docs.traefik.io/observability/logs/ -logs: - # Traefik logs concern everything that happens to Traefik itself (startup, configuration, events, shutdown, and so on). - general: - # By default, the logs use a text format (common), but you can - # also ask for the json format in the format option - # format: json - # By default, the level is set to ERROR. Alternative logging levels are DEBUG, PANIC, FATAL, ERROR, WARN, and INFO. - level: ERROR - access: - # To enable access logs - enabled: false - # By default, logs are written using the Common Log Format (CLF). - # To write logs in JSON, use json in the format option. - # If the given format is unsupported, the default (CLF) is used instead. - # format: json - # To write the logs in an asynchronous fashion, specify a bufferingSize option. - # This option represents the number of log lines Traefik will keep in memory before writing - # them to the selected output. In some cases, this option can greatly help performances. - # bufferingSize: 100 - # Filtering https://docs.traefik.io/observability/access-logs/#filtering - filters: {} - # statuscodes: "200,300-302" - # retryattempts: true - # minduration: 10ms - # Fields - # https://docs.traefik.io/observability/access-logs/#limiting-the-fieldsincluding-headers - fields: - general: - defaultmode: keep - names: {} - # Examples: - # ClientUsername: drop - headers: - defaultmode: drop - names: {} - # Examples: - # User-Agent: redact - # Authorization: drop - # Content-Type: keep - -globalArguments: - - "--global.checknewversion" - - "--global.sendanonymoususage" - -# -# Configure Traefik static configuration -# Additional arguments to be passed at Traefik's binary -# All available options available on https://docs.traefik.io/reference/static-configuration/cli/ -## Use curly braces to pass values: `helm install --set="additionalArguments={--providers.kubernetesingress.ingressclass=traefik-internal,--log.level=DEBUG}"` -additionalArguments: [] -# - "--providers.kubernetesingress.ingressclass=traefik-internal" -# - "--log.level=DEBUG" - -# Environment variables to be passed to Traefik's binary -env: [] -# - name: SOME_VAR -# value: some-var-value -# - name: SOME_VAR_FROM_CONFIG_MAP -# valueFrom: -# configMapRef: -# name: configmap-name -# key: config-key -# - name: SOME_SECRET -# valueFrom: -# secretKeyRef: -# name: secret-name -# key: secret-key - -envFrom: [] -# - configMapRef: -# name: config-map-name -# - secretRef: -# name: secret-name - -# Configure ports -ports: - # The name of this one can't be changed as it is used for the readiness and - # liveness probes, but you can adjust its config to your liking - traefik: - port: 9000 - # Use hostPort if set. - # hostPort: 9000 - # - # Use hostIP if set. If not set, Kubernetes will default to 0.0.0.0, which - # means it's listening on all your interfaces and all your IPs. You may want - # to set this value if you need traefik to listen on specific interface - # only. - # hostIP: 192.168.100.10 - - # Defines whether the port is exposed if service.type is LoadBalancer or - # NodePort. - # - # You SHOULD NOT expose the traefik port on production deployments. - # If you want to access it from outside of your cluster, - # use `kubectl proxy` or create a secure ingress - expose: false - # The exposed port for this service - exposedPort: 9000 - # The port protocol (TCP/UDP) - protocol: TCP - web: - port: 8000 - # hostPort: 8000 - expose: true - exposedPort: 80 - # The port protocol (TCP/UDP) - protocol: TCP - # Use nodeport if set. This is useful if you have configured Traefik in a - # LoadBalancer - nodePort: 32080 - # Port Redirections - # Added in 2.2, you can make permanent redirects via entrypoints. - # https://docs.traefik.io/routing/entrypoints/#redirection - # redirectTo: websecure - websecure: - port: 8443 - # hostPort: 8443 - expose: true - exposedPort: 443 - # The port protocol (TCP/UDP) - protocol: TCP - # nodePort: 32443 - -# Options for the main traefik service, where the entrypoints traffic comes -# from. -service: - enabled: true - type: NodePort - # Additional annotations (e.g. for cloud provider specific config) - annotations: {} - # Additional entries here will be added to the service spec. Cannot contains - # type, selector or ports entries. - spec: {} - # externalTrafficPolicy: Cluster - # loadBalancerIP: "1.2.3.4" - # clusterIP: "2.3.4.5" - loadBalancerSourceRanges: [] - # - 192.168.0.1/32 - # - 172.16.0.0/16 - externalIPs: [] - # - 1.2.3.4 - -## Create HorizontalPodAutoscaler object. -## -autoscaling: - enabled: false -# minReplicas: 1 -# maxReplicas: 10 -# metrics: -# - type: Resource -# resource: -# name: cpu -# targetAverageUtilization: 60 -# - type: Resource -# resource: -# name: memory -# targetAverageUtilization: 60 - -# Enable persistence using Persistent Volume Claims -# ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ -# After the pvc has been mounted, add the configs into traefik by using the `additionalArguments` list below, eg: -# additionalArguments: -# - "--certificatesresolvers.le.acme.storage=/data/acme.json" -# It will persist TLS certificates. -persistence: - enabled: false -# existingClaim: "" - accessMode: ReadWriteOnce - size: 128Mi - # storageClass: "" - path: /data - annotations: {} - # subPath: "" # only mount a subpath of the Volume into the pod - -# If hostNetwork is true, runs traefik in the host network namespace -# To prevent unschedulabel pods due to port collisions, if hostNetwork=true -# and replicas>1, a pod anti-affinity is recommended and will be set if the -# affinity is left as default. -hostNetwork: false - -# Whether Role Based Access Control objects like roles and rolebindings should be created -rbac: - enabled: true - - # If set to false, installs ClusterRole and ClusterRoleBinding so Traefik can be used across namespaces. - # If set to true, installs namespace-specific Role and RoleBinding and requires provider configuration be set to that same namespace - namespaced: false - -# The service account the pods will use to interact with the Kubernetes API -serviceAccount: - # If set, an existing service account is used - # If not set, a service account is created automatically using the fullname template - name: "" - -# Additional serviceAccount annotations (e.g. for oidc authentication) -serviceAccountAnnotations: {} - -resources: {} - # requests: - # cpu: "100m" - # memory: "50Mi" - # limits: - # cpu: "300m" - # memory: "150Mi" -affinity: {} -# # This example pod anti-affinity forces the scheduler to put traefik pods -# # on nodes where no other traefik pods are scheduled. -# # It should be used when hostNetwork: true to prevent port conflicts -# podAntiAffinity: -# requiredDuringSchedulingIgnoredDuringExecution: -# - labelSelector: -# matchExpressions: -# - key: app -# operator: In -# values: -# - {{ template "traefik.name" . }} -# topologyKey: failure-domain.beta.kubernetes.io/zone -nodeSelector: {} -tolerations: [] - -# Pods can have priority. -# Priority indicates the importance of a Pod relative to other Pods. -priorityClassName: "" - -# Set the container security context -# To run the container with ports below 1024 this will need to be adjust to run as root -securityContext: - capabilities: - drop: [ALL] - readOnlyRootFilesystem: true - runAsGroup: 65532 - runAsNonRoot: true - runAsUser: 65532 - -podSecurityContext: - fsGroup: 65532 diff --git a/helm-charts/submarine/templates/rbac.yaml b/helm-charts/submarine/templates/rbac.yaml deleted file mode 100644 index acad2e1..0000000 --- a/helm-charts/submarine/templates/rbac.yaml +++ /dev/null @@ -1,73 +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. -# - -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: "{{ .Values.submarine.server.name }}" -rules: -- apiGroups: - - kubeflow.org - resources: - - tfjobs - - tfjobs/status - - pytorchjobs - - pytorchjobs/status - - notebooks - - notebooks/status - verbs: - - get - - list - - watch - - create - - delete - - deletecollection - - patch - - update -- apiGroups: - - traefik.containo.us - resources: - - ingressroutes - verbs: - - get - - list - - watch - - create - - delete - - deletecollection - - patch - - update -- apiGroups: - - "" - resources: - - pods - - pods/log - verbs: - - '*' ---- -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: "{{ .Values.submarine.server.name }}" -subjects: -- kind: ServiceAccount - namespace: {{ .Release.Namespace }} - name: "{{ .Values.submarine.server.name }}" -roleRef: - kind: ClusterRole - name: "{{ .Values.submarine.server.name }}" - apiGroup: "" diff --git a/helm-charts/submarine/templates/submarine-database.yaml b/helm-charts/submarine/templates/submarine-database.yaml deleted file mode 100644 index 02803a8..0000000 --- a/helm-charts/submarine/templates/submarine-database.yaml +++ /dev/null @@ -1,53 +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. -# - -apiVersion: apps/v1 -kind: Deployment -metadata: - name: "{{ .Values.submarine.database.name }}" -spec: - replicas: {{ .Values.submarine.database.replicas }} - selector: - matchLabels: - app: "{{ .Values.submarine.database.name }}" - template: - metadata: - labels: - app: "{{ .Values.submarine.database.name }}" - spec: - containers: - - name: "{{ .Values.submarine.database.name }}" - image: "{{ .Values.submarine.database.image }}" - imagePullPolicy: {{ .Values.submarine.database.imagePullPolicy }} - ports: - - containerPort: 3306 - env: - - name: MYSQL_ROOT_PASSWORD - value: "{{ .Values.submarine.database.mysqlRootPassword }}" - ---- -apiVersion: v1 -kind: Service -metadata: - name: "{{ .Values.submarine.database.name }}" -spec: - ports: - - name: "{{ .Values.submarine.database.name }}" - port: 3306 - targetPort: {{ .Values.submarine.database.servicePort }} - selector: - app: "{{ .Values.submarine.database.name }}" diff --git a/helm-charts/submarine/templates/submarine-ingress.yaml b/helm-charts/submarine/templates/submarine-ingress.yaml deleted file mode 100644 index 6bddae3..0000000 --- a/helm-charts/submarine/templates/submarine-ingress.yaml +++ /dev/null @@ -1,16 +0,0 @@ -{{ if .Values.submarine.traefik.enabled }} -apiVersion: extensions/v1beta1 -kind: Ingress -metadata: - name: {{ .Values.submarine.server.name}}-ingress - namespace: {{ .Release.namespace }} - -spec: - rules: - - http: - paths: - - path: / - backend: - serviceName: {{ .Values.submarine.server.name }} - servicePort: {{ .Values.submarine.server.servicePort }} -{{ end }} diff --git a/helm-charts/submarine/templates/submarine-server.yaml b/helm-charts/submarine/templates/submarine-server.yaml deleted file mode 100644 index 03dada2..0000000 --- a/helm-charts/submarine/templates/submarine-server.yaml +++ /dev/null @@ -1,71 +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. -# - -apiVersion: v1 -kind: Service -metadata: - name: "{{ .Values.submarine.server.name }}" - labels: - run: "{{ .Values.submarine.server.name }}" -spec: - ports: - - port: 8080 - targetPort: {{ .Values.submarine.server.servicePort }} - protocol: TCP - selector: - run: "{{ .Values.submarine.server.name }}" - ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: "{{ .Values.submarine.server.name }}" ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: "{{ .Values.submarine.server.name }}" -spec: - selector: - matchLabels: - run: "{{ .Values.submarine.server.name }}" - replicas: {{ .Values.submarine.server.replicas }} - template: - metadata: - labels: - run: "{{ .Values.submarine.server.name }}" - spec: - serviceAccountName: "{{ .Values.submarine.server.name }}" - containers: - - name: "{{ .Values.submarine.server.name }}" - env: - - name: SUBMARINE_SERVER_PORT - value: "8080" - - name: SUBMARINE_SERVER_PORT_8080_TCP - value: "8080" - - name: SUBMARINE_SERVER_DNS_NAME - value: "{{ .Values.submarine.server.name }}.{{ .Release.Namespace }}" - - name: K8S_APISERVER_URL - value: "kubernetes.default.svc" - - image: "{{ .Values.submarine.server.image }}" - imagePullPolicy: {{ .Values.submarine.server.imagePullPolicy }} - command: ["/bin/bash", "-c"] - args: ["/opt/submarine-current/bin/submarine.sh start getMysqlJar"] - ports: - - containerPort: 8080 - diff --git a/helm-charts/submarine/values.yaml b/helm-charts/submarine/values.yaml deleted file mode 100644 index fd64b90..0000000 --- a/helm-charts/submarine/values.yaml +++ /dev/null @@ -1,33 +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. -# - -submarine: - server: - imagePullPolicy: IfNotPresent - replicas: 1 - name: submarine-server - image: apache/submarine:server-0.5.0 - servicePort: 8080 - database: - imagePullPolicy: IfNotPresent - replicas: 1 - name: submarine-database - image: apache/submarine:database-0.5.0 - servicePort: 3306 - mysqlRootPassword: password - traefik: - enabled: true diff --git a/licenses-binary/LICENSE-asm.txt b/licenses-binary/LICENSE-asm.txt deleted file mode 100644 index 631ee53..0000000 --- a/licenses-binary/LICENSE-asm.txt +++ /dev/null @@ -1,27 +0,0 @@ -ASM: a very small and fast Java bytecode manipulation framework -Copyright (c) 2000-2011 INRIA, France Telecom -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -3. Neither the name of the copyright holders nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF -THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/licenses-binary/LICENSE-hamcrest.txt b/licenses-binary/LICENSE-hamcrest.txt deleted file mode 100644 index e3d4feb..0000000 --- a/licenses-binary/LICENSE-hamcrest.txt +++ /dev/null @@ -1,27 +0,0 @@ -BSD License - -Copyright (c) 2000-2006, www.hamcrest.org -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -Redistributions of source code must retain the above copyright notice, this list of -conditions and the following disclaimer. Redistributions in binary form must reproduce -the above copyright notice, this list of conditions and the following disclaimer in -the documentation and/or other materials provided with the distribution. - -Neither the name of Hamcrest nor the names of its contributors may be used to endorse -or promote products derived from this software without specific prior written -permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY -EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT -SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY -WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH -DAMAGE. \ No newline at end of file diff --git a/licenses-binary/LICENSE-jgit.txt b/licenses-binary/LICENSE-jgit.txt deleted file mode 100644 index 8a4e20e..0000000 --- a/licenses-binary/LICENSE-jgit.txt +++ /dev/null @@ -1,37 +0,0 @@ -This program and the accompanying materials are made available -under the terms of the Eclipse Distribution License v1.0 which -accompanies this distribution, is reproduced below, and is -available at http://www.eclipse.org/org/documents/edl-v10.php - -All rights reserved. - -Redistribution and use in source and binary forms, with or -without modification, are permitted provided that the following -conditions are met: - -- Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - -- Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials provided - with the distribution. - -- Neither the name of the Eclipse Foundation, Inc. nor the - names of its contributors may be used to endorse or promote - products derived from this software without specific prior - written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND -CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, -INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/licenses-binary/LICENSE-pagehelper.txt b/licenses-binary/LICENSE-pagehelper.txt deleted file mode 100644 index 749be64..0000000 --- a/licenses-binary/LICENSE-pagehelper.txt +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014-2017 abel533@gmail.com - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. \ No newline at end of file diff --git a/licenses-binary/LICENSE-paranamer.txt b/licenses-binary/LICENSE-paranamer.txt deleted file mode 100644 index 991c564..0000000 --- a/licenses-binary/LICENSE-paranamer.txt +++ /dev/null @@ -1,29 +0,0 @@ -[ ParaNamer used to be 'Pubic Domain', but since it includes a small piece of ASM it is now the same license as that: BSD ] - - Portions copyright (c) 2006-2018 Paul Hammant & ThoughtWorks Inc - Portions copyright (c) 2000-2007 INRIA, France Telecom - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - 3. Neither the name of the copyright holders nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF - THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/licenses-binary/LICENSE-protobuf.txt b/licenses-binary/LICENSE-protobuf.txt deleted file mode 100644 index 97a6e3d..0000000 --- a/licenses-binary/LICENSE-protobuf.txt +++ /dev/null @@ -1,32 +0,0 @@ -Copyright 2008 Google Inc. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -Code generated by the Protocol Buffer compiler is owned by the owner -of the input file used when generating it. This code is not -standalone and requires a support library to be linked with it. This -support library is itself covered by the above license. \ No newline at end of file diff --git a/licenses-binary/LICENSE-slf4j.txt b/licenses-binary/LICENSE-slf4j.txt deleted file mode 100644 index ba8ac4d..0000000 --- a/licenses-binary/LICENSE-slf4j.txt +++ /dev/null @@ -1,21 +0,0 @@ -Copyright (c) 2004-2017 QOS.ch -All rights reserved. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/licenses-binary/LICENSE-tony.txt b/licenses-binary/LICENSE-tony.txt deleted file mode 100644 index 181ce87..0000000 --- a/licenses-binary/LICENSE-tony.txt +++ /dev/null @@ -1,28 +0,0 @@ -BSD 2-CLAUSE LICENSE - -Copyright 2018 LinkedIn Corporation. -All Rights Reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the - distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/pom.xml b/pom.xml index 4a8a17c..37de716 100644 --- a/pom.xml +++ b/pom.xml @@ -18,35 +18,35 @@ under the License. --> - 4.0.0 + 4.0.0 - org.apache.submarine - submarine - 0.5.0 - pom - Submarine - Submarine project - https://submarine.apache.org + org.apache.submarine + submarine + 0.5.0 + pom + Submarine + Submarine project + https://submarine.apache.org - - org.apache - apache - 17 - + + org.apache + apache + 17 + - - - The Apache Software License, Version 2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt - repo - - + + + The Apache Software License, Version 2.0 + https://www.apache.org/licenses/LICENSE-2.0.txt + repo + + - + aliyun Apache Development Snapshot Repository @@ -55,532 +55,516 @@ true - + - - - 1.8 - 1.11.8 + + + 1.8 + 1.11.8 - - 2.4 - 3.1 - 3.2.1 - 1.3.1 - 2.17 - 2.3 - 1.8 - 3.0.2 - 3.3.0 + + 2.4 + 3.1 + 3.2.1 + 1.3.1 + 2.17 + 2.3 + 1.8 + 3.0.2 + 3.3.0 - - org.apache.submarine.shaded + + org.apache.submarine.shaded - - 0.3.25 - 2.27 - 1.13 - 9.4.18.v20190429 - 2.1 - 5.1.10 + + 0.3.25 + 2.27 + 1.13 + 9.4.18.v20190429 + 2.1 + 5.1.10 - 2.8.5 - 2.11.0 - 2.11.0 - 2.11.0 - 1.10 - 3.1 + 2.8.5 + 2.11.0 + 2.11.0 + 2.11.0 + 1.10 + 3.1 - 3.2.2 - 3.2.8 - 5.1.39 - 1.25.0 + 3.2.2 + 3.2.8 + 5.1.39 + 1.25.0 - - 1.6 - v10.12.0 - v1.10.1 - 6.4.1 - 2.1.2 + + 1.6 + v10.12.0 + v1.10.1 + 6.4.1 + 2.1.2 - ${basedir}/../hadoop-common-project/hadoop-common/target - 1.7.25 - 1.2.17 - 1.1.3 - 1.2 - 1.16 - 4.4.4 - 4.5.2 - 2.6 - 3.4 - 2.5 - 1.5 - 4.12 - 3.8.1 - 0.7.1 - 1.3.9 - 2.23.4 - 1.6.4 - 22.0 - 6.4 - 1.8.2 - 4.5.2 - 2.9.10 - 2.6 - 1.1.0 - 1.9.13 - 1.4 - 1.3.2 - 3.2.2 - 7.9 - 1.3.7 - 10.15.1.3 - 0.9.0-preview1 - 5.5.1.201910021850-r - 3.1.5 - 2.11.8 - 2.11 - 2.3.6 - - 6.0.1 - 2.27 - - 2.17 - - 0.7 - + ${basedir}/../hadoop-common-project/hadoop-common/target + 1.7.25 + 1.2.17 + 1.1.3 + 1.2 + 1.16 + 4.4.4 + 4.5.2 + 2.6 + 3.4 + 2.5 + 1.5 + 4.12 + 3.8.1 + 0.7.1 + 1.3.9 + 2.23.4 + 1.6.4 + 22.0 + 6.4 + 1.8.2 + 4.5.2 + 2.9.10 + 2.6 + 1.1.0 + 1.9.13 + 1.4 + 1.3.2 + 3.2.2 + 7.9 + 1.3.7 + 10.15.1.3 + 0.9.0-preview1 + 5.5.1.201910021850-r + 3.1.5 + 2.11.8 + 2.11 + 2.3.6 + + 6.0.1 + 2.27 + + 2.17 + + 0.7 + - - submarine-commons - submarine-client - submarine-cloud - submarine-server - submarine-all - submarine-workbench - submarine-dist - submarine-test - submarine-security/spark-security - + + submarine-commons + + + + + + + + submarine-security/spark-security + - - - - log4j - log4j - ${log4j.version} - - - org.slf4j - slf4j-log4j12 - ${slf4j.version} - - - org.slf4j - slf4j-api - ${slf4j.version} - + + + + log4j + log4j + ${log4j.version} + + + org.slf4j + slf4j-log4j12 + ${slf4j.version} + + + org.slf4j + slf4j-api + ${slf4j.version} + - - - junit - junit - ${junit.version} - - - org.mockito - mockito-core - ${mockito.version} - - - org.testng - testng - ${testng.version} - + + + junit + junit + ${junit.version} + + + org.mockito + mockito-core + ${mockito.version} + + + org.testng + testng + ${testng.version} + - - - io.kubernetes - client-java - ${k8s.client-java.version} - + + + io.kubernetes + client-java + ${k8s.client-java.version} + - - - org.apache.hadoop - hadoop-yarn-services-api - ${hadoop.version} - - - org.apache.hadoop - hadoop-common - ${hadoop.version} - - - org.apache.hadoop - hadoop-yarn-api - ${hadoop.version} - - - org.apache.hadoop - hadoop-yarn-common - ${hadoop.version} - - - org.apache.hadoop - hadoop-yarn-client - ${hadoop.version} - - - org.apache.hadoop - hadoop-hdfs - ${hadoop.version} - - - org.apache.commons - commons-lang3 - ${commons-lang3.version} - - - com.google.guava - guava - ${guava.version} - - - javax.xml.bind - jaxb-api - ${jaxb-api.version} - - - org.apache.commons - commons-compress - ${commons-compress.version} - - - com.google.inject.extensions - guice-servlet - ${guice-servlet.version} - - - com.fasterxml.jackson.core - jackson-annotations - ${jackson-annotations.version} - - - com.fasterxml.jackson.core - jackson-core - ${jackson-annotations.version} - - - com.google.inject - guice - ${guice.version} - - - com.nimbusds - nimbus-jose-jwt - ${nimbus-jose-jwt.version} - - - commons-io - commons-io - ${commons-io.version} - - - commons-configuration - commons-configuration - ${commons-configuration.version} - - - commons-lang - commons-lang - ${commons-lang.version} - - - org.apache.zookeeper - zookeeper - ${zookeeper.version} - - - commons-httpclient - commons-httpclient - ${commons-httpclient.version} - - - javax.ws.rs - javax.ws.rs-api - ${javax.ws.rsapi.version} - - - org.codehaus.jackson - jackson-xc - ${codehaus-jackson.version} - - - org.codehaus.jackson - jackson-jaxrs - ${codehaus-jackson.version} - - - io.grpc - grpc-netty-shaded - ${grpc.version} - - - io.grpc - grpc-protobuf - ${grpc.version} - - - io.grpc - grpc-stub - ${grpc.version} - - - com.google.code.gson - gson - ${gson.version} - - - commons-logging - commons-logging - ${commons.logging.version} - - - org.yaml - snakeyaml - ${snakeyaml.version} - - - + + + org.apache.hadoop + hadoop-yarn-services-api + ${hadoop.version} + + + org.apache.hadoop + hadoop-common + ${hadoop.version} + + + org.apache.hadoop + hadoop-yarn-api + ${hadoop.version} + + + org.apache.hadoop + hadoop-yarn-common + ${hadoop.version} + + + org.apache.hadoop + hadoop-yarn-client + ${hadoop.version} + + + org.apache.hadoop + hadoop-hdfs + ${hadoop.version} + + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + + + com.google.guava + guava + ${guava.version} + + + javax.xml.bind + jaxb-api + ${jaxb-api.version} + + + org.apache.commons + commons-compress + ${commons-compress.version} + + + com.google.inject.extensions + guice-servlet + ${guice-servlet.version} + + + com.fasterxml.jackson.core + jackson-annotations + ${jackson-annotations.version} + + + com.fasterxml.jackson.core + jackson-core + ${jackson-annotations.version} + + + com.google.inject + guice + ${guice.version} + + + com.nimbusds + nimbus-jose-jwt + ${nimbus-jose-jwt.version} + + + commons-io + commons-io + ${commons-io.version} + + + commons-configuration + commons-configuration + ${commons-configuration.version} + + + commons-lang + commons-lang + ${commons-lang.version} + + + org.apache.zookeeper + zookeeper + ${zookeeper.version} + + + commons-httpclient + commons-httpclient + ${commons-httpclient.version} + + + javax.ws.rs + javax.ws.rs-api + ${javax.ws.rsapi.version} + + + org.codehaus.jackson + jackson-xc + ${codehaus-jackson.version} + + + org.codehaus.jackson + jackson-jaxrs + ${codehaus-jackson.version} + + + io.grpc + grpc-netty-shaded + ${grpc.version} + + + io.grpc + grpc-protobuf + ${grpc.version} + + + io.grpc + grpc-stub + ${grpc.version} + + + com.google.code.gson + gson + ${gson.version} + + + commons-logging + commons-logging + ${commons.logging.version} + + + org.yaml + snakeyaml + ${snakeyaml.version} + + + - - - hadoop-3.2 - - 3.2.1 - 2.2.11 - 1.19 - 4.0 - 4.0 - 3.4.13 - 27.0-jre - 3.0.2 - hadoop-3.2 - - - submarine-server/server-submitter/submitter-yarnservice - - + + + hadoop-3.2 + + 3.2.1 + 2.2.11 + 1.19 + 4.0 + 4.0 + 3.4.13 + 27.0-jre + 3.0.2 + hadoop-3.2 + + + + + - - hadoop-3.1 - - 3.1.3 - 2.2.11 - 1.19 - 4.0 - 4.0 - 3.4.13 - hadoop-3.1 - - - submarine-server/server-submitter/submitter-yarnservice - - + + hadoop-3.1 + + 3.1.3 + 2.2.11 + 1.19 + 4.0 + 4.0 + 3.4.13 + hadoop-3.1 + + + + + - - hadoop-2.10 - - false - - - 2.10.0 - 2.2.2 - 1.19 - 3.0 - 3.0 - 3.4.9 - hadoop-2.10 - - + + hadoop-2.10 + + false + + + 2.10.0 + 2.2.2 + 1.19 + 3.0 + 3.0 + 3.4.9 + hadoop-2.10 + + - - hadoop-2.9 - - true - - - 2.9.2 - 2.2.11 - 1.4.1 - 3.0 - 3.0 - 3.4.6 - hadoop-2.9 - - + + hadoop-2.9 + + true + + + 2.9.2 + 2.2.11 + 1.4.1 + 3.0 + 3.0 + 3.4.6 + hadoop-2.9 + + - - clover - - false - - clover - - - - - com.cenqua.clover - clover - - - + + rat + + + skipRat + + + + - - rat - - - skipRat - - - - + + + + maven-compiler-plugin + ${plugin.compiler.version} + + ${java.version} + ${java.version} + + - - - - maven-compiler-plugin - ${plugin.compiler.version} - - ${java.version} - ${java.version} - - + + maven-enforcer-plugin + ${plugin.enforcer.version} + + + enforce + + + + + true + + + enforce + + + + - - maven-enforcer-plugin - ${plugin.enforcer.version} - - - enforce - - - - - true - - - enforce - - - - + + org.apache.maven.plugins + maven-checkstyle-plugin + ${plugin.checkstyle.version} + + true + false + true + ${project.build.sourceDirectory} + ${project.build.testSourceDirectory} + dev-support/maven-config/checkstyle.xml + ${project.build.directory}/checkstyle-output.xml + ${project.build.sourceEncoding} + ${project.reporting.outputEncoding} + + + + checkstyle-fail-build + validate + + check + + + true + + + + checkstyle-gen-html-report + install + + checkstyle-aggregate + + + + - - org.apache.maven.plugins - maven-checkstyle-plugin - ${plugin.checkstyle.version} - - true - false - true - ${project.build.sourceDirectory} - ${project.build.testSourceDirectory} - dev-support/maven-config/checkstyle.xml - ${project.build.directory}/checkstyle-output.xml - ${project.build.sourceEncoding} - ${project.reporting.outputEncoding} - - - - checkstyle-fail-build - validate - - check - - - true - - - - checkstyle-gen-html-report - install - - checkstyle-aggregate - - - - + + org.scalastyle + scalastyle-maven-plugin + 1.0.0 + + false + true + true + false + ${project.basedir}/src/test/scala + ${project.basedir}/src/main/scala + dev-support/maven-config/scalastyle-config.xml + ${project.build.directory}/scalastyle-output.xml + UTF-8 + + + + + check + + + + - - org.scalastyle - scalastyle-maven-plugin - 1.0.0 - - false - true - true - false - ${project.basedir}/src/test/scala - ${project.basedir}/src/main/scala - dev-support/maven-config/scalastyle-config.xml - ${project.build.directory}/scalastyle-output.xml - UTF-8 - - - - - check - - - - - - - org.apache.rat - apache-rat-plugin - true - - - .git/ - .github/** - .gitignore - .gitmodules - .editorconfig - LICENSE - license_header - **/*.iml - **/*.la - **/*.svg - **/*.png - **/*.avsc - **/log4j.properties - **/*.md - **/*.proto - **/*.txt - **/*.xml - **/*.html - **/*.xsd - **/*.json - **/*.conf - **/*.libsvm - **/*.yaml - **/*.yapf - **/*.libsvm - **/src/main/resources/META-INF/services/org.apache.hadoop.security.SecurityInfo - **/src/test/resources/typicalHistFolder/job1/application123-1-1-user1-SUCCEEDED.jhist - **/conf/routes - **/submitter-yarnservice/target/** - **/src/test/resources/config - licenses/** - licenses-binary/** - NOTICE-binary - **/go.mod - **/go.sum - **/*.ipynb - - - - - + + org.apache.rat + apache-rat-plugin + true + + + .git/ + .github/** + .gitignore + .gitmodules + .editorconfig + LICENSE + license_header + **/*.iml + **/*.la + **/*.svg + **/*.png + **/*.avsc + **/log4j.properties + **/*.md + **/*.proto + **/*.txt + **/*.xml + **/*.html + **/*.xsd + **/*.json + **/*.conf + **/*.libsvm + **/*.yaml + **/*.yapf + **/*.libsvm + **/src/main/resources/META-INF/services/org.apache.hadoop.security.SecurityInfo + **/src/test/resources/typicalHistFolder/job1/application123-1-1-user1-SUCCEEDED.jhist + **/conf/routes + **/submitter-yarnservice/target/** + **/src/test/resources/config + licenses/** + licenses-binary/** + NOTICE-binary + **/go.mod + **/go.sum + **/*.ipynb + + + + + diff --git a/submarine-all/pom.xml b/submarine-all/pom.xml deleted file mode 100644 index 9bf988d..0000000 --- a/submarine-all/pom.xml +++ /dev/null @@ -1,258 +0,0 @@ - - - - 4.0.0 - - org.apache.submarine - submarine - 0.5.0 - .. - - submarine-all - 0.5.0 - Submarine: All - - - - - org.apache.hadoop - hadoop-yarn-services-core - ${hadoop.version} - - - org.apache.avro - avro - ${avro.version} - - - - - - - org.apache.submarine - submarine-commons-runtime - ${project.version} - - - org.apache.submarine - submarine-client - ${project.version} - - - com.google.protobuf - protobuf-java - - - com.google.code.gson - gson - - - - - org.apache.submarine - submarine-submitter-yarn - ${project.version} - - - - - - hadoop-3.2 - - - org.apache.submarine - submarine-submitter-yarnservice - ${project.version} - - - org.apache.avro - avro - - - commons-codec - commons-codec - - - - - org.apache.hadoop - hadoop-hdfs-client - ${hadoop.version} - - - com.fasterxml.jackson.core - jackson-databind - - - - - org.apache.hadoop - hadoop-hdfs - ${hadoop.version} - - - io.netty - netty - - - com.fasterxml.jackson.core - jackson-databind - - - - - - - - hadoop-3.1 - - - org.apache.submarine - submarine-submitter-yarnservice - ${project.version} - - - org.apache.avro - avro - - - - - org.apache.hadoop - hadoop-hdfs-client - ${hadoop.version} - - - com.fasterxml.jackson.core - jackson-databind - - - - - - - - hadoop-2.10 - - false - - - - org.apache.hadoop - hadoop-hdfs-client - ${hadoop.version} - - - com.fasterxml.jackson.core - jackson-databind - - - - - - - - hadoop-2.9 - - true - - - - org.apache.hadoop - hadoop-hdfs-client - ${hadoop.version} - - - com.fasterxml.jackson.core - jackson-databind - - - - - - - - - - - - org.apache.maven.plugins - maven-shade-plugin - ${plugin.shade.version} - - - package - - shade - - - - target/${project.artifactId}-${project.version}-${project.activeProfiles[0].id}.jar - - - classworlds:classworlds - junit:junit - jmock:* - *:xml-apis - org.apache.maven:lib:tests - - - - - *:* - - META-INF/*.SF - META-INF/*.DSA - META-INF/*.RSA - - - - - - org.apache.submarine.client.cli.Cli - - - - - - - - - - org.apache.maven.plugins - maven-checkstyle-plugin - - false - - - - - maven-enforcer-plugin - - - - - diff --git a/submarine-client/pom.xml b/submarine-client/pom.xml deleted file mode 100644 index ddc0fd8..0000000 --- a/submarine-client/pom.xml +++ /dev/null @@ -1,155 +0,0 @@ - - - - - - submarine - org.apache.submarine - 0.5.0 - - 4.0.0 - - submarine-client - 0.5.0 - Submarine: Client - - - - org.apache.submarine - submarine-commons-runtime - ${project.version} - - - com.google.protobuf - protobuf-java - - - - - org.yaml - snakeyaml - ${snakeyaml.version} - - - - junit - junit - ${junit.version} - test - - - org.mockito - mockito-core - ${mockito.version} - test - - - org.apache.submarine - submarine-commons-runtime - ${project.version} - test-jar - test - - - - - org.apache.hadoop - hadoop-common - ${hadoop.version} - provided - - - org.slf4j - slf4j-api - - - org.slf4j - slf4j-log4j12 - - - org.apache.commons - commons-lang3 - - - org.apache.httpcomponents - httpclient - - - org.apache.httpcomponents - httpcore - - - commons-lang - commons-lang - - - commons-collections - commons-collections - - - commons-logging - commons-logging - - - com.google.guava - guava - - - commons-codec - commons-codec - - - org.codehaus.jackson - jackson-core-asl - - - org.codehaus.jackson - jackson-mapper-asl - - - com.google.protobuf - protobuf-java - - - - - org.apache.submarine - submarine-commons-rpc - ${project.version} - - - com.google.code.findbugs - jsr305 - - - com.google.errorprone - error_prone_annotations - - - org.codehaus.mojo - animal-sniffer-annotations - - - - - - diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/AbstractCli.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/AbstractCli.java deleted file mode 100644 index 177bf16..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/AbstractCli.java +++ /dev/null @@ -1,52 +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. - */ - -package org.apache.submarine.client.cli; - -import org.apache.commons.cli.ParseException; -import org.apache.hadoop.conf.Configuration; -import org.apache.hadoop.util.Tool; -import org.apache.hadoop.yarn.exceptions.YarnException; -import org.apache.submarine.commons.runtime.ClientContext; -import org.apache.submarine.commons.runtime.exception.SubmarineException; - -import java.io.IOException; - -public abstract class AbstractCli implements Tool { - protected ClientContext clientContext; - - public AbstractCli(ClientContext cliContext) { - this.clientContext = cliContext; - } - - @Override - public abstract int run(String[] args) - throws ParseException, IOException, YarnException, InterruptedException, - SubmarineException; - - @Override - public void setConf(Configuration conf) { - clientContext.setYarnConfig(conf); - } - - @Override - public Configuration getConf() { - return clientContext.getYarnConfig(); - } -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/Cli.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/Cli.java deleted file mode 100644 index 4353e3d..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/Cli.java +++ /dev/null @@ -1,118 +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. - */ - -package org.apache.submarine.client.cli; - -import org.apache.hadoop.conf.Configuration; -import org.apache.submarine.client.cli.remote.RpcRuntimeFactory; -import org.apache.submarine.client.cli.runjob.RunJobCli; -import org.apache.hadoop.yarn.conf.YarnConfiguration; -import org.apache.submarine.commons.runtime.ClientContext; -import org.apache.submarine.commons.runtime.RuntimeFactory; -import org.apache.submarine.commons.utils.SubmarineConfVars; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.Arrays; - -public class Cli { - private static final Logger LOG = - LoggerFactory.getLogger(Cli.class); - - private static void printHelp() { - StringBuilder helpMsg = new StringBuilder(); - helpMsg.append("\n\nUsage: [] []\n"); - helpMsg.append(" Below are all objects / actions:\n"); - helpMsg.append(" job \n"); - helpMsg.append(" run : run a job, please see 'job run --help' for usage \n"); - helpMsg.append(" show : get status of job, please see 'job show --help' for usage \n"); - - System.out.println(helpMsg.toString()); - } - - private static ClientContext getClientContext() { - ClientContext clientContext = new ClientContext(); - RuntimeFactory runtimeFactory; - if (clientContext.getSubmarineConfig().getBoolean( - SubmarineConfVars.ConfVars. - SUBMARINE_SERVER_RPC_ENABLED)) { - runtimeFactory = new RpcRuntimeFactory(clientContext); - } else { - Configuration conf = new YarnConfiguration(); - clientContext.setYarnConfig(conf); - runtimeFactory = RuntimeFactory.getRuntimeFactory(clientContext, - Thread.currentThread().getContextClassLoader()); - } - clientContext.setRuntimeFactory(runtimeFactory); - return clientContext; - } - - public static void main(String[] args) throws Exception { - System.out.println(" _ _ \n" - + " | | (_) \n" - + " ___ _ _ | |__ _ __ ___ __ _ _ __ _ _ __ ___ \n" - + " / __|| | | || '_ \\ | '_ ` _ \\ / _` || '__|| || '_ \\ / _ \\\n" - + " \\__ \\| |_| || |_) || | | | | || (_| || | | || | | || __/\n" - + " |___/ \\__,_||_.__/ |_| |_| |_| \\__,_||_| |_||_| |_| \\___|\n" - + " \n" - + " ?\n" - + " ~~~~~~~~~~~~~~~~~~~~~~~~~~~|^\"~~~~~~~~~~~~~~~~~~~~~~~~~o~~~~~~~~~~~\n" - + " o | o __o\n" - + " o | o |X__>\n" - + " ___o | __o\n" - + " (X___>-- __|__ |X__> o\n" - + " | \\ __o\n" - + " | \\ |X__>\n" - + " _______________________|_______\\________________\n" - + " < \\____________ _\n" - + " \\ \\ (_)\n" - + " \\ O O O >=)\n" - + " \\__________________________________________________________/ (_)\n" - + "\n"); - - if (CliUtils.argsForHelp(args)) { - printHelp(); - System.exit(0); - } - - if (args.length < 2) { - LOG.error("Bad parameters specified."); - printHelp(); - System.exit(-1); - } - - String[] moduleArgs = Arrays.copyOfRange(args, 2, args.length); - ClientContext clientContext = getClientContext(); - - if (args[0].equals("job")) { - String subCmd = args[1]; - if (subCmd.equals(CliConstants.RUN)) { - new RunJobCli(clientContext).run(moduleArgs); - } else if (subCmd.equals(CliConstants.SHOW)) { - new ShowJobCli(clientContext).run(moduleArgs); - } else { - printHelp(); - throw new IllegalArgumentException("Unknown option for job"); - } - } else { - printHelp(); - throw new IllegalArgumentException("Bad parameters "); - } - } -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/CliConstants.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/CliConstants.java deleted file mode 100644 index e89ad1b..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/CliConstants.java +++ /dev/null @@ -1,73 +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. - */ - -package org.apache.submarine.client.cli; - -/* - * NOTE: use lowercase + "_" for the option name - */ -public class CliConstants { - public static final String RUN = "run"; - public static final String SERVE = "serve"; - public static final String LIST = "list"; - public static final String SHOW = "show"; - public static final String NAME = "name"; - public static final String INPUT_PATH = "input_path"; - public static final String CHECKPOINT_PATH = "checkpoint_path"; - public static final String SAVED_MODEL_PATH = "saved_model_path"; - public static final String N_WORKERS = "num_workers"; - public static final String N_SERVING_TASKS = "num_serving_tasks"; - public static final String N_PS = "num_ps"; - public static final String WORKER_RES = "worker_resources"; - public static final String SERVING_RES = "serving_resources"; - public static final String PS_RES = "ps_resources"; - public static final String SCHEDULER_RES = "scheduler_resources"; - public static final String N_SCHEDULERS = "num_schedulers"; - public static final String DOCKER_IMAGE = "docker_image"; - public static final String QUEUE = "queue"; - public static final String TENSORBOARD = "tensorboard"; - public static final String TENSORBOARD_RESOURCES = "tensorboard_resources"; - public static final String TENSORBOARD_DEFAULT_RESOURCES = - "memory=4G,vcores=1"; - public static final String ARG_CONF = "conf"; - - public static final String WORKER_LAUNCH_CMD = "worker_launch_cmd"; - public static final String SERVING_LAUNCH_CMD = "serving_launch_cmd"; - public static final String PS_LAUNCH_CMD = "ps_launch_cmd"; - public static final String SCHEDULER_LAUNCH_CMD = "scheduler_launch_cmd"; - public static final String ENV = "env"; - public static final String VERBOSE = "verbose"; - public static final String SERVING_FRAMEWORK = "serving_framework"; - public static final String STOP = "stop"; - public static final String WAIT_JOB_FINISH = "wait_job_finish"; - public static final String PS_DOCKER_IMAGE = "ps_docker_image"; - public static final String WORKER_DOCKER_IMAGE = "worker_docker_image"; - public static final String SCHEDULER_DOCKER_IMAGE = "scheduler_docker_image"; - public static final String QUICKLINK = "quicklink"; - public static final String TENSORBOARD_DOCKER_IMAGE = - "tensorboard_docker_image"; - public static final String LOCALIZATION = "localization"; - public static final String KEYTAB = "keytab"; - public static final String PRINCIPAL = "principal"; - public static final String DISTRIBUTE_KEYTAB = "distribute_keytab"; - public static final String YAML_CONFIG = "f"; - public static final String INSECURE_CLUSTER = "insecure"; - - public static final String FRAMEWORK = "framework"; -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/CliUtils.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/CliUtils.java deleted file mode 100644 index 222de1f..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/CliUtils.java +++ /dev/null @@ -1,158 +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. - */ - -package org.apache.submarine.client.cli; - -import org.apache.commons.lang3.StringUtils; -import org.apache.hadoop.security.UserGroupInformation; -import org.apache.hadoop.yarn.api.records.ApplicationId; -import org.apache.submarine.client.cli.param.runjob.RunJobParameters; -import org.apache.submarine.commons.runtime.exception.SubmarineRuntimeException; -import org.apache.submarine.commons.runtime.fs.RemoteDirectoryManager; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.File; -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; - -public class CliUtils { - private static final Logger LOG = - LoggerFactory.getLogger(CliUtils.class); - - /** - * Replace patterns inside cli - * - * @return launch command after pattern replace - */ - public static String replacePatternsInLaunchCommand(String specifiedCli, - RunJobParameters jobRunParameters, - RemoteDirectoryManager directoryManager) - throws IOException { - String input = jobRunParameters.getInputPath(); - String jobDir = jobRunParameters.getCheckpointPath(); - String savedModelDir = jobRunParameters.getSavedModelPath(); - - Map replacePattern = new HashMap<>(); - if (jobDir != null) { - replacePattern.put("%" + CliConstants.CHECKPOINT_PATH + "%", jobDir); - } - if (input != null) { - replacePattern.put("%" + CliConstants.INPUT_PATH + "%", input); - } - if (savedModelDir != null) { - replacePattern.put("%" + CliConstants.SAVED_MODEL_PATH + "%", - savedModelDir); - } - - String newCli = specifiedCli; - for (Map.Entry replace : replacePattern.entrySet()) { - newCli = newCli.replace(replace.getKey(), replace.getValue()); - } - - return newCli; - } - - // Is it for help? - public static boolean argsForHelp(String[] args) { - if (args == null || args.length == 0) - return true; - - if (args.length == 1) { - return args[0].equals("-h") || args[0].equals("--help"); - } - - return false; - } - - public static void doLoginIfSecure(String keytab, String principal) throws - IOException { - if (!UserGroupInformation.isSecurityEnabled()) { - return; - } - - if (StringUtils.isEmpty(keytab) || StringUtils.isEmpty(principal)) { - if (StringUtils.isNotEmpty(keytab)) { - SubmarineRuntimeException e = new SubmarineRuntimeException("The " + - "parameter of " + CliConstants.PRINCIPAL + " is missing."); - LOG.error(e.getMessage(), e); - throw e; - } - - if (StringUtils.isNotEmpty(principal)) { - SubmarineRuntimeException e = new SubmarineRuntimeException("The " + - "parameter of " + CliConstants.KEYTAB + " is missing."); - LOG.error(e.getMessage(), e); - throw e; - } - - UserGroupInformation user = UserGroupInformation.getCurrentUser(); - if (user == null || user.getAuthenticationMethod() == - UserGroupInformation.AuthenticationMethod.SIMPLE) { - SubmarineRuntimeException e = new SubmarineRuntimeException("Failed " + - "to authenticate in secure environment. Please run kinit " + - "command in advance or use " + "--" + CliConstants.KEYTAB + "/--" + CliConstants.PRINCIPAL + - " parameters"); - LOG.error(e.getMessage(), e); - throw e; - } - LOG.info("Submarine job is submitted by user: " + user.getUserName()); - return; - } - - File keytabFile = new File(keytab); - if (!keytabFile.exists()) { - SubmarineRuntimeException e = new SubmarineRuntimeException("No " + - "keytab localized at " + keytab); - LOG.error(e.getMessage(), e); - throw e; - } - UserGroupInformation.loginUserFromKeytab(principal, keytab); - } - - /** - * As hadoop-2.7 doesn't have this method, we add this method in submarine. - * @param appIdStr - * @return - */ - public static ApplicationId fromString(String appIdStr) { - String APPLICATION_ID_PREFIX = "application_"; - if (!appIdStr.startsWith(APPLICATION_ID_PREFIX)) { - throw new IllegalArgumentException("Invalid ApplicationId prefix: " - + appIdStr + ". The valid ApplicationId should start with prefix " - + "application"); - } - try { - int pos1 = APPLICATION_ID_PREFIX.length() - 1; - int pos2 = appIdStr.indexOf('_', pos1 + 1); - if (pos2 < 0) { - throw new IllegalArgumentException("Invalid ApplicationId: " - + appIdStr); - } - long rmId = Long.parseLong(appIdStr.substring(pos1 + 1, pos2)); - int appId = Integer.parseInt(appIdStr.substring(pos2 + 1)); - ApplicationId applicationId = ApplicationId.newInstance(rmId, appId); - return applicationId; - } catch (NumberFormatException n) { - throw new IllegalArgumentException("Invalid ApplicationId: " - + appIdStr, n); - } - } -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/Command.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/Command.java deleted file mode 100644 index f19cd54..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/Command.java +++ /dev/null @@ -1,27 +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. - */ - -package org.apache.submarine.client.cli; - -/** - * Represents a Submarine command. - */ -public enum Command { - RUN_JOB, SHOW_JOB -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/ShowJobCli.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/ShowJobCli.java deleted file mode 100644 index 651a542..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/ShowJobCli.java +++ /dev/null @@ -1,131 +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. - */ - -package org.apache.submarine.client.cli; - -import com.google.common.annotations.VisibleForTesting; -import org.apache.commons.cli.CommandLine; -import org.apache.commons.cli.GnuParser; -import org.apache.commons.cli.HelpFormatter; -import org.apache.commons.cli.Options; -import org.apache.commons.cli.ParseException; -import org.apache.hadoop.yarn.exceptions.YarnException; -import org.apache.submarine.client.cli.param.ParametersHolder; -import org.apache.submarine.client.cli.param.ShowJobParameters; -import org.apache.submarine.commons.runtime.ClientContext; -import org.apache.submarine.commons.runtime.exception.SubmarineException; -import org.apache.submarine.commons.runtime.fs.StorageKeyConstants; -import org.apache.submarine.commons.runtime.fs.SubmarineStorage; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.IOException; -import java.util.Map; - -public class ShowJobCli extends AbstractCli { - private static final Logger LOG = LoggerFactory.getLogger(ShowJobCli.class); - - private Options options; - private ParametersHolder parametersHolder; - - public ShowJobCli(ClientContext cliContext) { - super(cliContext); - options = generateOptions(); - } - - public void printUsages() { - new HelpFormatter().printHelp("job show", options); - } - - private Options generateOptions() { - Options options = new Options(); - options.addOption(CliConstants.NAME, true, "Name of the job"); - options.addOption("h", "help", false, "Print help"); - return options; - } - - private void parseCommandLineAndGetShowJobParameters(String[] args) - throws IOException, YarnException { - // Do parsing - GnuParser parser = new GnuParser(); - CommandLine cli; - try { - cli = parser.parse(options, args); - parametersHolder = ParametersHolder - .createWithCmdLine(cli, Command.SHOW_JOB); - parametersHolder.updateParameters(clientContext); - } catch (ParseException e) { - printUsages(); - } - } - - private void printIfNotNull(String keyForPrint, String keyInStorage, - Map jobInfo) { - if (jobInfo.containsKey(keyInStorage)) { - System.out.println("\t" + keyForPrint + ": " + jobInfo.get(keyInStorage)); - } - } - - private void printJobInfo(Map jobInfo) { - System.out.println("Job Meta Info:"); - printIfNotNull("Application Id", StorageKeyConstants.APPLICATION_ID, - jobInfo); - printIfNotNull("Input Path", StorageKeyConstants.INPUT_PATH, jobInfo); - printIfNotNull("Saved Model Path", StorageKeyConstants.SAVED_MODEL_PATH, - jobInfo); - printIfNotNull("Checkpoint Path", StorageKeyConstants.CHECKPOINT_PATH, - jobInfo); - printIfNotNull("Run Parameters", StorageKeyConstants.JOB_RUN_ARGS, - jobInfo); - } - - @VisibleForTesting - protected void getAndPrintJobInfo() throws IOException { - SubmarineStorage storage = - clientContext.getRuntimeFactory().getSubmarineStorage(); - - Map jobInfo = null; - try { - jobInfo = storage.getJobInfoByName(getParameters().getName()); - } catch (IOException e) { - LOG.error("Failed to retrieve job info", e); - throw e; - } - - printJobInfo(jobInfo); - } - - @VisibleForTesting - public ShowJobParameters getParameters() { - return (ShowJobParameters) parametersHolder.getParameters(); - } - - @Override - public int run(String[] args) - throws ParseException, IOException, YarnException, InterruptedException, - SubmarineException { - if (CliUtils.argsForHelp(args)) { - printUsages(); - return 0; - } - parseCommandLineAndGetShowJobParameters(args); - getAndPrintJobInfo(); - return 0; - } -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/param/ConfigType.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/param/ConfigType.java deleted file mode 100644 index e5996d1..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/param/ConfigType.java +++ /dev/null @@ -1,27 +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. - */ - -package org.apache.submarine.client.cli.param; - -/** - * Represents the source of configuration. - */ -public enum ConfigType { - YAML, CLI -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/param/Localization.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/param/Localization.java deleted file mode 100644 index 0377450..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/param/Localization.java +++ /dev/null @@ -1,137 +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. - */ - -package org.apache.submarine.client.cli.param; - -import org.apache.commons.cli.ParseException; - -import java.util.Arrays; -import java.util.List; - -/** - * Localization parameter. - * */ -public class Localization { - - private String mountPermissionPattern = "(wr|rw)$"; - /** - * Regex for directory/file path in container. - * YARN only support absolute path for mount, but we can - * support some relative path. - * For relative path, we only allow ".", "./","./name". - * relative path like "./a/b" is not allowed. - * "." and "./" means original dir/file name in container working directory - * "./name" means use same or new "name" in container working directory - * A absolute path means same path in container filesystem - */ - private String localPathPattern = "((^\\.$)|(^\\./$)|(^\\./[^/]+)|(^/.*))"; - private String remoteUri; - private String localPath; - - // Read write by default - private String mountPermission = "rw"; - - private static final List SUPPORTED_SCHEME = Arrays.asList( - "hdfs", "oss", "s3a", "s3n", "wasb", - "wasbs", "abfs", "abfss", "adl", "har", - "ftp", "http", "https", "viewfs", "swebhdfs", - "webhdfs", "swift"); - - public void parse(String arg) throws ParseException { - String[] tokens = arg.split(":"); - int minimum = "a:b".split(":").length; - int minimumWithPermission = "a:b:rw".split(":").length; - int minimumParts = minimum; - int miniPartsWithRemoteScheme = "scheme://a:b".split(":").length; - int maximumParts = "scheme://a:b:rw".split(":").length; - // If remote uri starts with a remote scheme - if (isSupportedScheme(tokens[0])) { - minimumParts = miniPartsWithRemoteScheme; - } - if (tokens.length < minimumParts - || tokens.length > maximumParts) { - throw new ParseException("Invalid parameter," - + "should be \"remoteUri:localPath[:rw|:wr]\" " - + "format for --localizations"); - } - - /** - * RemoteUri starts with remote scheme. - * Merge part 0 and 1 to build a hdfs path in token[0]. - * toke[1] will be localPath to ease following logic - * */ - if (minimumParts == miniPartsWithRemoteScheme) { - tokens[0] = tokens[0] + ":" + tokens[1]; - tokens[1] = tokens[2]; - if (tokens.length == maximumParts) { - // Has permission part - mountPermission = tokens[maximumParts - 1]; - } - } - // RemoteUri starts with linux file path - if (minimumParts == minimum - && tokens.length == minimumWithPermission) { - // Has permission part - mountPermission = tokens[minimumWithPermission - 1]; - } - remoteUri = tokens[0]; - localPath = tokens[1]; - if (!localPath.matches(localPathPattern)) { - throw new ParseException("Invalid local file path:" - + localPath - + ", it only support \".\", \"./\", \"./name\" and " - + "absolute path."); - } - if (!mountPermission.matches(mountPermissionPattern)) { - throw new ParseException("Invalid mount permission (ro is not " - + "supported yet), " + mountPermission); - } - } - - public String getRemoteUri() { - return remoteUri; - } - - public Localization setRemoteUri(String rUti) { - this.remoteUri = rUti; - return this; - } - - public String getLocalPath() { - return localPath; - } - - public Localization setLocalPath(String lPath) { - this.localPath = lPath; - return this; - } - - public String getMountPermission() { - return mountPermission; - } - - public Localization setMountPermission(String mPermission) { - this.mountPermission = mPermission; - return this; - } - - private boolean isSupportedScheme(String scheme) { - return SUPPORTED_SCHEME.contains(scheme); - } -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/param/ParametersHolder.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/param/ParametersHolder.java deleted file mode 100644 index 556dfe6..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/param/ParametersHolder.java +++ /dev/null @@ -1,524 +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. - */ - -package org.apache.submarine.client.cli.param; - -import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Lists; -import com.google.common.collect.Maps; -import org.apache.commons.cli.CommandLine; -import org.apache.commons.cli.ParseException; -import org.apache.hadoop.yarn.exceptions.YarnException; -import org.apache.submarine.client.cli.CliConstants; -import org.apache.submarine.client.cli.Command; -import org.apache.submarine.client.cli.param.runjob.MXNetRunJobParameters; -import org.apache.submarine.client.cli.param.runjob.PyTorchRunJobParameters; -import org.apache.submarine.client.cli.param.runjob.TensorFlowRunJobParameters; -import org.apache.submarine.client.cli.param.yaml.Configs; -import org.apache.submarine.client.cli.param.yaml.Role; -import org.apache.submarine.client.cli.param.yaml.Roles; -import org.apache.submarine.client.cli.param.yaml.Scheduling; -import org.apache.submarine.client.cli.param.yaml.Security; -import org.apache.submarine.client.cli.param.yaml.TensorBoard; -import org.apache.submarine.client.cli.param.yaml.YamlConfigFile; -import org.apache.submarine.client.cli.param.yaml.YamlParseException; -import org.apache.submarine.commons.runtime.param.BaseParameters; -import org.apache.submarine.commons.runtime.Framework; -import org.apache.submarine.commons.runtime.ClientContext; -import org.apache.submarine.commons.runtime.param.Parameter; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.IOException; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.stream.Collectors; - -import static org.apache.submarine.client.cli.runjob.RunJobCli.YAML_PARSE_FAILED; - -/** - * This class acts as a wrapper of {@code CommandLine} values along with - * YAML configuration values. - * YAML configuration is only stored if the -f <filename> - * option is specified along the CLI arguments. - * Using this wrapper class makes easy to deal with - * any form of configuration source potentially added into Submarine, - * in the future. - * If both YAML and CLI value is found for a config, this is an error case. - */ -public final class ParametersHolder implements Parameter { - private static final Logger LOG = - LoggerFactory.getLogger(ParametersHolder.class); - - public static final String SUPPORTED_FRAMEWORKS_MESSAGE = - "TensorFlow, PyTorch, MXNet are the only supported frameworks for now!"; - public static final String SUPPORTED_COMMANDS_MESSAGE = - "'Show job' and 'run job' are the only supported commands for now!"; - - - - private CommandLine parsedCommandLine; - private Map yamlStringConfigs; - private Map> yamlListConfigs; - private ConfigType configType; - private Command command; - private final Set onlyDefinedWithCliArgs = ImmutableSet.of( - CliConstants.VERBOSE); - private Framework framework; - private BaseParameters parameters; - - private ParametersHolder(CommandLine parsedCommandLine, - YamlConfigFile yamlConfig, ConfigType configType, Command command) - throws ParseException, YarnException { - this.parsedCommandLine = parsedCommandLine; - this.yamlStringConfigs = initStringConfigValues(yamlConfig); - this.yamlListConfigs = initListConfigValues(yamlConfig); - this.configType = configType; - this.command = command; - this.framework = determineFrameworkType(); - this.ensureOnlyValidSectionsAreDefined(yamlConfig); - this.parameters = createParameters(); - } - - private ParametersHolder(){ - super(); - } - - private BaseParameters createParameters() { - if (command == Command.RUN_JOB) { - if (framework == Framework.TENSORFLOW) { - return new TensorFlowRunJobParameters(); - } else if (framework == Framework.PYTORCH) { - return new PyTorchRunJobParameters(); - } else if (framework == Framework.MXNET) { - return new MXNetRunJobParameters(); - } else { - throw new UnsupportedOperationException(SUPPORTED_FRAMEWORKS_MESSAGE); - } - } else if (command == Command.SHOW_JOB) { - return new ShowJobParameters(); - } else { - throw new UnsupportedOperationException(SUPPORTED_COMMANDS_MESSAGE); - } - } - - private void ensureOnlyValidSectionsAreDefined(YamlConfigFile yamlConfig) { - if (isCommandRunJob() && isFrameworkPyTorch() && - isPsSectionDefined(yamlConfig)) { - throw new YamlParseException( - "PS section should not be defined when PyTorch " + - "is the selected framework!"); - } - - if (isCommandRunJob() && (isFrameworkPyTorch() || isFrameworkMXNet()) - && isTensorboardSectionDefined(yamlConfig)) { - throw new YamlParseException( - "TensorBoard section should not be defined when TensorFlow " + - "is not the selected framework!"); - } - - if (isCommandRunJob() && !isFrameworkMXNet() && - isSchedulerSectionDefined(yamlConfig)) { - throw new YamlParseException( - "Scheduler section should not be defined when MXNet " + - "is not the selected framework!"); - } - } - - private boolean isCommandRunJob() { - return command == Command.RUN_JOB; - } - - private boolean isFrameworkPyTorch() { - return framework == Framework.PYTORCH; - } - - private boolean isFrameworkMXNet() { - return framework == Framework.MXNET; - } - - private boolean isPsSectionDefined(YamlConfigFile yamlConfig) { - return yamlConfig != null && - yamlConfig.getRoles() != null && - yamlConfig.getRoles().getPs() != null; - } - - private boolean isTensorboardSectionDefined(YamlConfigFile yamlConfig) { - return yamlConfig != null && - yamlConfig.getTensorBoard() != null; - } - - private boolean isSchedulerSectionDefined(YamlConfigFile yamlConfig) { - return yamlConfig != null && - yamlConfig.getRoles() != null && - yamlConfig.getRoles().getScheduler() != null; - } - - private Framework determineFrameworkType() - throws ParseException, YarnException { - if (!isCommandRunJob()) { - return null; - } - String frameworkStr = getOptionValue(CliConstants.FRAMEWORK); - if (frameworkStr == null) { - LOG.info("Framework is not defined in config, falling back to " + - "TensorFlow as a default."); - return Framework.TENSORFLOW; - } - Framework framework = Framework.parseByValue(frameworkStr); - if (framework == null) { - if (getConfigType() == ConfigType.CLI) { - throw new ParseException("Failed to parse Framework type! " - + "Valid values are: " + Framework.getValues()); - } else { - throw new YamlParseException(YAML_PARSE_FAILED + - ", framework should is defined, but it has an invalid value! " + - "Valid values are: " + Framework.getValues()); - } - } - return framework; - } - - /** - * Maps every value coming from the passed yamlConfig to {@code CliConstants}. - * @param yamlConfig Parsed YAML config - * @return A map of config values, keys are {@code CliConstants} - * and values are Strings. - */ - private Map initStringConfigValues( - YamlConfigFile yamlConfig) { - if (yamlConfig == null) { - return Collections.emptyMap(); - } - Map yamlConfigValues = Maps.newHashMap(); - Roles roles = yamlConfig.getRoles(); - - initGenericConfigs(yamlConfig, yamlConfigValues); - initPs(yamlConfigValues, roles.getPs()); - initWorker(yamlConfigValues, roles.getWorker()); - initScheduler(yamlConfigValues, roles.getScheduler()); - initScheduling(yamlConfigValues, yamlConfig.getScheduling()); - initSecurity(yamlConfigValues, yamlConfig.getSecurity()); - initTensorBoard(yamlConfigValues, yamlConfig.getTensorBoard()); - - return yamlConfigValues; - } - - private Map> initListConfigValues( - YamlConfigFile yamlConfig) { - if (yamlConfig == null) { - return Collections.emptyMap(); - } - - Map> yamlConfigValues = Maps.newHashMap(); - Configs configs = yamlConfig.getConfigs(); - yamlConfigValues.put(CliConstants.LOCALIZATION, configs.getLocalizations()); - yamlConfigValues.put(CliConstants.ENV, - convertToEnvsList(configs.getEnvs())); - yamlConfigValues.put(CliConstants.QUICKLINK, configs.getQuicklinks()); - - return yamlConfigValues; - } - - private void initGenericConfigs(YamlConfigFile yamlConfig, - Map yamlConfigs) { - yamlConfigs.put(CliConstants.NAME, yamlConfig.getSpec().getName()); - yamlConfigs.put(CliConstants.FRAMEWORK, - yamlConfig.getSpec().getFramework()); - - Configs configs = yamlConfig.getConfigs(); - yamlConfigs.put(CliConstants.INPUT_PATH, configs.getInputPath()); - yamlConfigs.put(CliConstants.CHECKPOINT_PATH, configs.getCheckpointPath()); - yamlConfigs.put(CliConstants.SAVED_MODEL_PATH, configs.getSavedModelPath()); - yamlConfigs.put(CliConstants.DOCKER_IMAGE, configs.getDockerImage()); - yamlConfigs.put(CliConstants.WAIT_JOB_FINISH, configs.getWaitJobFinish()); - } - - private void initPs(Map yamlConfigs, Role ps) { - if (ps == null) { - return; - } - yamlConfigs.put(CliConstants.N_PS, String.valueOf(ps.getReplicas())); - yamlConfigs.put(CliConstants.PS_RES, ps.getResources()); - yamlConfigs.put(CliConstants.PS_DOCKER_IMAGE, ps.getDockerImage()); - yamlConfigs.put(CliConstants.PS_LAUNCH_CMD, ps.getLaunchCmd()); - } - - private void initWorker(Map yamlConfigs, Role worker) { - if (worker == null) { - return; - } - yamlConfigs.put(CliConstants.N_WORKERS, - String.valueOf(worker.getReplicas())); - yamlConfigs.put(CliConstants.WORKER_RES, worker.getResources()); - yamlConfigs.put(CliConstants.WORKER_DOCKER_IMAGE, worker.getDockerImage()); - yamlConfigs.put(CliConstants.WORKER_LAUNCH_CMD, worker.getLaunchCmd()); - } - - private void initScheduler(Map yamlConfigs, Role scheduler) { - if (scheduler == null) { - return; - } - yamlConfigs.put(CliConstants.N_SCHEDULERS, - String.valueOf(scheduler.getReplicas())); - yamlConfigs.put(CliConstants.SCHEDULER_RES, scheduler.getResources()); - yamlConfigs.put(CliConstants.SCHEDULER_DOCKER_IMAGE, scheduler.getDockerImage()); - yamlConfigs.put(CliConstants.SCHEDULER_LAUNCH_CMD, scheduler.getLaunchCmd()); - } - - private void initScheduling(Map yamlConfigValues, - Scheduling scheduling) { - if (scheduling == null) { - return; - } - yamlConfigValues.put(CliConstants.QUEUE, scheduling.getQueue()); - } - - private void initSecurity(Map yamlConfigValues, - Security security) { - if (security == null) { - return; - } - yamlConfigValues.put(CliConstants.KEYTAB, security.getKeytab()); - yamlConfigValues.put(CliConstants.PRINCIPAL, security.getPrincipal()); - yamlConfigValues.put(CliConstants.DISTRIBUTE_KEYTAB, - String.valueOf(security.isDistributeKeytab())); - } - - private void initTensorBoard(Map yamlConfigValues, - TensorBoard tensorBoard) { - if (tensorBoard == null) { - return; - } - yamlConfigValues.put(CliConstants.TENSORBOARD, Boolean.TRUE.toString()); - yamlConfigValues.put(CliConstants.TENSORBOARD_DOCKER_IMAGE, - tensorBoard.getDockerImage()); - yamlConfigValues.put(CliConstants.TENSORBOARD_RESOURCES, - tensorBoard.getResources()); - } - - private List convertToEnvsList(Map envs) { - if (envs == null) { - return Collections.emptyList(); - } - return envs.entrySet().stream() - .map(e -> String.format("%s=%s", e.getKey(), e.getValue())) - .collect(Collectors.toList()); - } - - public static ParametersHolder create() { - return new ParametersHolder(); - } - - public static ParametersHolder createWithCmdLine(CommandLine cli, - Command command) throws ParseException, YarnException { - return new ParametersHolder(cli, null, ConfigType.CLI, command); - } - - public static ParametersHolder createWithCmdLineAndYaml(CommandLine cli, - YamlConfigFile yamlConfig, Command command) throws ParseException, - YarnException { - return new ParametersHolder(cli, yamlConfig, ConfigType.YAML, command); - } - - /** - * Gets the option value, either from the CLI arguments or YAML config, - * if present. - * @param option Name of the config. - * @return The value of the config - */ - public String getOptionValue(String option) throws YarnException { - ensureConfigIsDefinedOnce(option, true); - if (onlyDefinedWithCliArgs.contains(option) || - parsedCommandLine.hasOption(option)) { - return getValueFromCLI(option); - } - return getValueFromYaml(option); - } - - /** - * Gets the option values, either from the CLI arguments or YAML config, - * if present. - * @param option Name of the config. - * @return The values of the config - */ - public List getOptionValues(String option) throws YarnException { - ensureConfigIsDefinedOnce(option, false); - if (onlyDefinedWithCliArgs.contains(option) || - parsedCommandLine.hasOption(option)) { - return getValuesFromCLI(option); - } - return getValuesFromYaml(option); - } - - private void ensureConfigIsDefinedOnce(String option, boolean stringValue) - throws YarnException { - boolean definedWithYaml; - if (stringValue) { - definedWithYaml = yamlStringConfigs.containsKey(option); - } else { - definedWithYaml = yamlListConfigs.containsKey(option); - } - - if (parsedCommandLine.hasOption(option) && definedWithYaml) { - throw new YarnException("Config '%s' is defined both with YAML config" + - " and with CLI argument, please only use either way!"); - } - } - - private String getValueFromCLI(String option) { - String value = parsedCommandLine.getOptionValue(option); - if (LOG.isDebugEnabled()) { - LOG.debug("Found config value {} for key {} " + - "from CLI configuration.", value, option); - } - return value; - } - - private List getValuesFromCLI(String option) { - String[] optionValues = parsedCommandLine.getOptionValues(option); - if (optionValues != null) { - List values = Arrays.asList(optionValues); - if (LOG.isDebugEnabled()) { - LOG.debug("Found config values {} for key {} " + - "from CLI configuration.", values, option); - } - return values; - } else { - if (LOG.isDebugEnabled()) { - LOG.debug("No config values found for key {} " + - "from CLI configuration.", option); - } - return Lists.newArrayList(); - } - } - - private String getValueFromYaml(String option) { - String value = yamlStringConfigs.get(option); - if (LOG.isDebugEnabled()) { - LOG.debug("Found config value {} for key {} " + - "from YAML configuration.", value, option); - } - return value; - } - - private List getValuesFromYaml(String option) { - List values = yamlListConfigs.get(option); - if (LOG.isDebugEnabled()) { - LOG.debug("Found config values {} for key {} " + - "from YAML configuration.", values, option); - } - return values; - } - - /** - * Returns the boolean value of option. - * First, we check if the CLI value is defined for the option. - * If not, then we check the YAML value. - * @param option name of the option - * @return true, if the option is found in the CLI args or in the YAML config, - * false otherwise. - */ - public boolean hasOption(String option) { - if (onlyDefinedWithCliArgs.contains(option)) { - boolean value = parsedCommandLine.hasOption(option); - if (LOG.isDebugEnabled()) { - LOG.debug("Found boolean config with value {} for key {} " + - "from CLI configuration.", value, option); - } - return value; - } - if (parsedCommandLine.hasOption(option)) { - if (LOG.isDebugEnabled()) { - LOG.debug("Found boolean config value for key {} " + - "from CLI configuration.", option); - } - return true; - } - return getBooleanValueFromYaml(option); - } - - private boolean getBooleanValueFromYaml(String option) { - String stringValue = yamlStringConfigs.get(option); - boolean result = stringValue != null - && Boolean.valueOf(stringValue).equals(Boolean.TRUE); - LOG.debug("Found config value {} for key {} " + - "from YAML configuration.", result, option); - return result; - } - - public ConfigType getConfigType() { - return configType; - } - - public Framework getFramework() { - return framework; - } - - @Override - public Parameter setFramework(Framework framework) { - this.framework = framework; - return this; - } - - public void updateParameters(ClientContext clientContext) - throws ParseException, YarnException, IOException { - parameters.updateParameters(this, clientContext); - } - - public BaseParameters getParameters() { - return parameters; - } - - public Parameter setParameters(BaseParameters parameters) { - this.parameters = parameters; - return this; - } - - public CommandLine getParsedCommandLine() { - return parsedCommandLine; - } - - public Parameter setParsedCommandLine(CommandLine parsedCommandLine) { - this.parsedCommandLine = parsedCommandLine; - return this; - } - - public Map getYamlStringConfigs() { - return yamlStringConfigs; - } - - public Parameter setYamlStringConfigs(Map yamlStringConfigs) { - this.yamlStringConfigs = yamlStringConfigs; - return this; - } - - public Map> getYamlListConfigs() { - return yamlListConfigs; - } - - public Parameter setYamlListConfigs( - Map> yamlListConfigs) { - this.yamlListConfigs = yamlListConfigs; - return this; - } -} diff --git a/submarine-client/src/main/java/org/apache/submarine/client/cli/param/Quicklink.java b/submarine-client/src/main/java/org/apache/submarine/client/cli/param/Quicklink.java deleted file mode 100644 index 4fe035c..0000000 --- a/submarine-client/src/main/java/org/apache/submarine/client/cli/param/Quicklink.java +++ /dev/null @@ -1,96 +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. - */ - -package org.apache.submarine.client.cli.param; - -import org.apache.commons.cli.ParseException; - -/** - * A class represents quick links to a web page. - */ -public class Quicklink { - private String label; - private String componentInstanceName; - private String protocol; - private int port; - - public void parse(String quicklinkStr) throws ParseException { - if (!quicklinkStr.contains("=")) { - throw new ParseException("Should be

      %<+Cfuibi2F!*dajK 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

      ){fcDGh3Cli zj)9T9xYA~2@^4}S5?;@E9m=GBz=Lu{J;@IX0`LwVC=-~82M;F>W$~UoNQXenY5>on zou~tK1Q($l`l?rWNBs!oOCTNT38d#dm;ei9q-i49XL=>8@r)mln`5DfGl?sOiSJ#4 zi8k-hwF?~9$XR|;u~qLU-!Cbmxz+0}v8vM2#!s?@R?xfUPc?S**d7}4vQoGQj(A;w znRW%w;5-QXf%d>(z;jfGh#sgLbs-*UL*1!sxDR;X-HrzGr=4k6+LLGUB~M@~FE4jx za!a(fqveJ8)So;tzka8L{wp9t7>b2>ke{zXl_C;-W7T?eJorr?k)%sRd8IxQB{m+t zAwv}{hAvHBG=8`gi|Io%ZRy5td$CprLWUiIzj_Pa`yd%m-ywE^& z5OYsR0mwIgqJ1a!=zCNHa1+wf@cdxJdCCUnl z3QPvVWpxBW7vT_wQ&C>w%o%|h#>}hgoIm2i61&4WrUlb$YDlaehnQIgz^1~Sp!pBr>ujzaF z>^JXWmf!i#cU&pKR|Xs~!_ELmz654-n3YGF09FK2Rs>M`=)jn(ec=mVaHoD4JkI^p z2ceu5fLm_4#p{bRJB)}`9t7`})@Yd>JW<}SfBkD$pzgWn9y|EpgPoZHBjF<-{;=_dD(}=K?3EpMJW-TA_gu1&DzV_@F`B z{afGqme-LPw=rX*tq3WPb|+65Bnl9?pd8xwiYu;g1%_wfVlV{1tin-G+T)-9{HH5u zC_zJHYJ<|p$_g~X3f#v({&AZ>f4(a%v>~fUC_|J>yFT~abB+`8XHbRapcC-HyZ^KR zuHOwI&?7?e<^dC*$WN=YvrCG{eRi*uj|)EjA<^rIsGo^H1g1})`sr0yh}T6cq~vw} z`RCY=et4D7&hNSBl%BpB%0#JVCK&qQ9eoX62MzO{nfO3Im>_^rcs3#6H{=xn@y{_H zPF&&;NE7ZU3-dF07cqys0w0q+j8@9-RWEJ^|Wo$-g@>1cFttajt@!VPQJ$=O(OhZSf{lMlq0 z604I5TcajXB&K;fU_dyeuD}-rVfY7QC4us&8$aFw6N+t^bp}6-E6@mv0kBXP@&-n( z&@n4R2=Re7yv-vpyc~^eJ>N(J4hV5x5Bd<%RP zUJD%qEA+*WIN)GVadapi))Mea@}M7qbLviA`H>bFDVKah8+biJTR_{Xd+I_Q0%h^z znf$>!FmTWAc1`k0Vw>l#+KrZ3DjLuslB?Hf1x*KBT7#VLwas!-h7P-Af}&MBfl8UE zl38`DHZ{PX2?eEH=f`Z^d%SfQP3C2lZPl;bpLPo z+b;zK!CEGuHlsAd9&Th72V2%2{OnLQK$ce6d}(;9^3&>_D>d7~3*!~)0DQbut04T? zmX}5gY1tV|lQwRu#V%N++1}udpNbsrL&L}O;9L0K)2OKkUR;X$NK3V!AmaH9m%vwT?*#t(Br@Mh;M1VM!77id55~uQOFZG=^((Is~I@zL>dMgmdNQu zbSU1#;0WXagWXWG!B=gLpLe_q!*n{}C5#+7%HuIu06(+t)ScOT>cz|&`4FFLw)PRH z3}B~xR*A6t4L982v*vU-6s8Fk6TBSiL>(@==ps)KtT1T=V8R6#T;R$cWl+b^ z<{5%N40OP<-+r^4X#g+V__DeHJoP&0sGuO<@#y5O4PylHsY{kpV%e^ehWVxPlDK7+;wt+L$ zfjr2I01nCf0j&_>D36I9G}7AA+M|RJpLf8|>J$nfI6y(fv<#g2fUAKX1sfcoKm*%l zTA^W}z?^{=PvIHm<>mez!5bWcH-u;UC4A58C6vQ2 z2=wjHFHtU;35Q1@2!j*KVVr`eQ%1aj= zO@%T%(l-8pTX00Vp}rwsuHXV53vQ_ofi#pyARTp~4*UYFz(pOnGOp6r+e-N;)^^k73-7S%uBR>*J*SMUIR(Z8U@(5BwU zwvgt{yrxdn7x}NJKCtSDh4!8Gw!ZgHwS)0@SOF2v1iSO$l!0K0Zv`+pZen@qv%?YM#~Czf1MVq@GTj$P zk@*I`k3IHSUlqc~1Oc2C237*V2aE(kfw%;&Ft7kK^|HA7-9f-qw0_lK- zv6k-$^xzDo5#B@nzz_EXR&V*XBLQWC@q|Em&@*KMFJ%T=3^YwVcqi!yakzP=9aw>Z zPm&j~(N6rxpSqDIo*!+>7>G7;ptQ`9`3%DH`RAYS3JAmmd@x}c z5oKc*gBccrG=Z6}5W*}S3J$@c@0E1>$9g`&RjgXAF601@$927*%g=Wo~)l)8U;(0&u#FL&s zGdM@iInv|PCd@jrB_h5yFiPqd2Eb5EQy6`RGV6HgK&YmW=^+X{qlF>spB-! zvWE-N_uc=XRf#W5*sa{NO|hj^8PNqi5x7Dxz`=baENen4)n}sEJLhjGD_%x`L4`*! zsQ$px&1{+8`S!c;QVEHj!c*G@nHOmiK3iMxcFF&vs}-78A6l;MSTl#%h)A4PULik+ zUGRtZTmwCZIN_OZ@E<1Z2&4_T332^HuRo+`!jE-;q?C?iyZjZ91~iL^GqdHQRz&5J zUmU)WFL?xW8}50}6&$ew4e?Eujuu(j6E9mq(=zKU*2+nvOw#hF zXe(+R>a1~Xi-OLOXH|ar;%!HWHCHbU|B%HVW5mB;BFU!fsgwU%cw+TV7_{tOd>~HY2Zzh923Z^q7P~&&N%q-5@ z2uAoMVB=n1UhaY^_Wua6_-@QOa*o|~_g(JjO?((WCRE2Ccf7cn+2~QDeMKV7mM{n) z7(XC$7Mz!1I50y969$8zhl4n)2RLbCBTooSo_mxVgh~dSFx!C{5@oZTj!6pv28;lR z6E`~xpLXAV}g< zz;~1)d@MMxq^PK{XU2zRf6Qw>c+Ll1cxN!hYz(s=oZtzp`otMDWy6peD5wjw>$FWl zVS$}6?*!kj_o7c+WMBCF7yKJD{~!PO1>TM*6)1YZhFK8!MOk47DR6<{iz3BNRDbyW zA9@7xpa1-4GTZuu4{+?jMSPY_nMFMNth3z#ob*Q=afCaeQzkokv0RKYLZA-7PP=1n zM}PtG4uK*r0CdZ?klmqBgqYo=p0q^>qycu?6D5Uszq{slcKZ8HciiKPgI@`XF>QxX zK>LC-@QIT@v>F`JfDO7LA83Gp&=SWx_b3FE%RmkO=mXT7Z@`Drf`dMaFA5%QL*4MX z!So6x2>Qg4oq)oNpAKoE6Z#WQ=qNAXj;*Tkw_&A)ItLttt7o#S{dogh+{sMsEy7nA zsF{VP?ZR`r=shbd(`qDO+;GE9zP&WF*3c!+>4zVFh@0*;Y6l#`WKF=F{ed&I8g{$A zy5v>STAOXqB*J;;eZct}bP)26SEc7&3V-1_ehv5WbZ_mw+K&Igq<#}lK+n)+>RPG)zK)JCuIjJC*>M53df-uEBe1pI>l*Kia7v7^3$N3p)$S0(M zmqL@k4^It~G2|2SBF)wUVZtQ*JkBQE6;xF_&E&^fXJCdVyZEp8^4C+B#+ zk$+DapfHv{c~CEY#EF;3w>J|)dxbpxIW%FQ4`zNbK}iJ%ja5-zdH>bD@U3dPPYC8$ z$xQ8lwz}5xpIc$cXFE5MI zQa3wNz*gdhvfkJ}(A!oLzKKtv&E7;7J2h#)6%e2ZNZLeZ5p3XYOYeGr3(s#6z9WG8 z`4_@~86m{86(|AU1eh!g94B4|T7)~c8^y++oq|w0D&<6kz>T0q9@xb0Ic-myJZZAe zz9WRftay(w%%H$5AP(7qNJ7~-0>hwibVk8gC&w*zk-~1CI8*kR;({GJ99?tGH9mvS zstHO5w)WUDvdarIcED|#^3n*H~b`a1XYB8;3Ck`F-4-T1ir_aH@LyH3%Hqe zLa;|5MVWY1yJewxAc!K+G8iG;f)f{dQ!^mEr(P&5)B_=Pn9cxUdquVvX2&FUa0$-c z4v78$8#Ae-1y=~W?6~yn-~8Hl0;s@QJaG)rm#Gv4!bkZL50qOxhFr8xCU_JR1ow|TE(2|d>u@Pfai3Z z8aM(?aXsL`XyPMeyU#u|rFc))BuKsYpHi8_(3j%rL)>@5HPrnLu*BO=v+($RV1nXX zk1BFPihO6a{4EM~(z8}T602oX-zgjIb~$1nzrPjDn50NDdsW(ChQvw+tGMv2^73-; zcYWan{PP~c4IY4S&7=}MgKzXhOy%G^@jzYZU;IKFhWasMyfr}#9zh!VD}novHeN=b z_uxu1=V|SlbyoT$LT9I7%-&o~AwPc9jr;?QTmxU=KH!9VcAmsM7d{maMg|m7r1MeVwc&GNpLt>J;?!EPc;Z`-(mj z;u%@2#C!TTu7vN5I&3Kq>PFZay>BUPf8K}kBI!9QyFdB7o6@9dMl_Jfy9w^M9ab0% zf-AG-Fjts3%m60NGaVhqg;OnpEHg?7R-}WuAw2P(4(j{Crx++iM_L4K1_)LrcqZRK zkT6wdu9@{mm}9_zLGs=Q5iu}krum_u02_=CQzl?0KJUpNczEVLd6Eb3_=ci`kjU&k z!a_(317zSLkQRnXoiMQ?J@2R=<-yE>35JS7!j`tIuHbV(I%dSVf-~v|oRm+!SgE00 zR)DAj-yu;nz;FiS_-yh9M?7x1v5YJ(0iYw?*Y(xW7jANkWZk1*;O^5x7Erz{ko3bW8it<_v1V z)PV1_DM|rt4ou*jdteLZ3FJ$;>@tR;2Hq%#b_FiVBR~&e4(*L-pJ$zv2&woIm&IH;&9-{Xt;U@l} z*FF6Mx&nW!cCzvYy^y|lp1qRp@MA)=yqHenXNCU~{gf32hgIcuYbT$ic5&*GSy4x} zRv8M5MdLbCKzsltWX*F=+4C38w!(^2ZRU4=U~P+@vX*=PPc}O;4p5TY{N%}1Oi7WZR zLqb1hB@})Z3BTLMA$)@VN}xZJFTn-5&70KU2l&~Bcg3Q`R@joX!K3BKFCo-gWcpgF zqX}h>6Az3Rzz7e3r-pWg4^c08R>&84Fo$NF^=Z?m`GgaAp*jk+(mYDd! z-1^Oi00R~Qz{wm5SAzz_X1nMT`k&u?diP!4cCz2Ip- zeI0XYopi_^3T>+-J_P%o6RY*r?sVp19B2Z@t_)a!1*cg|Aub%4Xa9 zM^{=)L6I#LesXG?tmLLwZSaI_D;U1YI@E5j+;fZN9{q9K?|-heDp?J*$Y-j&yke); zCytj;H)I9I$BK%I9@+{t7LWgC?n7COlgM^V0Mkz4{hP_VciNCAbcDPREK|b!-tphA z=gp@U-mX&Lh2_8q5aNSV5=@SF1c)Xuac0v4q4J&gJi~+$zzE^HPY38*LgqGXJqxpj z$&hzX9K}ZfLr7x~B|tRf4Z|cJ@nNJ0odGW1!w_Ju#OHlr)G%&*EMUsaLX-D(f4|P1 ziCHlL4g$;)_$dbglE5?h0VietfA-D;z_O~y`_;K8=fKPWGlUsHaz+$Jf}$&~f{I~v z%{i63i3+%uDiGLVH&SzZ{>3r)aBhSD&&PxF_2&rY z7o&_7GGvPMpe^umr93i7AWzUk8t|Z#er_huqj?Co^N0N zL*2(ypiK#Bx{2dQT=p7qQ6|a-90!(x7jcEI)nwP8xM;eV9oD$Yc82IH(B3VDs{0Sx ze7t;rYtW2v?`9b+CU>0Ki>yIke-^XEGvKaPzKG-f0Y1hU#xE~}NE8#}RD3UE93NZk(3sMu zRTLR+7;4$T`vMw)ou&zV{0PxD@SsU9Oso=wVMKb!A@?Yo9ICNesJ1-yxbbb-i zu+y|fJaDtL5C?1qFce5;);W$AC32%SfL{K?%jJ`Ow9^W``~qIoJw5nE94{QKcUEuS z{*JfX!3P~|x88QEz5o61cf$(!4Co9}$;XKL4TXX8jKRA1r=T%(Lf zfv=$ku)q`a=0%L;6FU2T(ZoZg0HsA@;l%MZZD^@X?&3<8y983i^9#RXWo89 zC~(h<7Md^&aEF73%t{eQT>>`OG(5@^7s>_qv`x?-|qh5j7Mr&Hj6fFFiNUu^#|CJ2Rp>_K7-j4{XSbz0aY>;eNk;=%w?ycuAyeI=C3F(}{4(Q{RmIu*$D@j=mVsG;OBuox*dZnjwrTcpmrF#Q$i(RWm@!XyyE1 zTBJO6<4LnCEL@#ND;!BMS*u~&PdekGHfzKvU>V@Ke z%{A9}{ZO_Gz4QiypQSg8kMh~LbQ$Py_q`x6cje_sIrf@x8WoBOFRDT`rr`w`;v(>( z#HdP#bUN{A7}2KLJW)QKH{!C_Y@H)LISs6jmNbr1;0By=d+n=wUlm3}k?6xdzU~U~ zuTnM0;TlNMbhSxtRO+m*m$}^M`d-J5orwW5Z-G`oq;zdwqkMA1)b~K@bR;h&ka_lf z;5vZ;!74lbFO_DxL*O|=7G@nr9icBv@?79A@R^i~@u@(T zeo=Y6Fp8OOS!`)E*>R~~;SwG=l9oC`4+aQV0w-fVvhI=mfhMd%vq~PT-{i^D#={T- zit9kKF&Iejr)kJO7cHM=V9`v&O9)z=p9xDHptl#c21ZjVKEVcI)JaLL`fijao9fga zQ#H5Rv{T3YFOckWl(Jl};avAR3=ka=NB>d2DpV^WGxK*iZI}TyrXEMTUNr+`jEF;e zkf{bqyuetM2$wNlP$<|8CgsvXe#-LVnLkf%U-J{UFJ63wX2`2izv1Fwpo1sj`bIr? zE|)jMrGxU|90+f?bU|aa!a(#?i-vs`Pv)iVvv0`2K3n0Dt=Le;u%S|bF6+wF-kMep zq%x366B@Ar-M@pN)NY+1*uHL!pYqhKBXN7Stk)s^Yo&25vnF?W8xX|Y5sKU{X5^PkbAEx(KuZbqgom1 zm4QAQA$ZwW*UC~6{h_j066nJUtc`eKCwwU7I(7_Uf8K4yIbV*K5v$v+{Ed97#|$WfLqX# zCCMHR#-maLE20=7S@)|_%MT?VI8iL4uBE{cpWvtb|NRDeXH~W&CKtvKMKOr@xdEa* z2W(8|pb?A@R`1zxj`0CsL*Xn8vAVI|_oEU*oqY~!(#8jI>AGWsH7=NLO$%n~h+cgVk`+OfYtlEqJRtKa zUL=u~|67dbmB+mAW2miw?E7t8u!b=}#kF9jG9&lJjyfLdQgRA!9tm)o5q;iEq9>y2Ul9-VX`@N8eR9=byl}WA0?co z6Z&M3uyDV z$gReYz%*$XAYF3#!RWxCF+Qrnn*rEXFeyz_$WAt6cK9DnBg$!1Gp1KS zkk+)s%H}YeBEv#5*~m)SX1)QW4>z{TXzh`koSwS1AC_!sKggl0LjP&l+Wb?AoQ1ne@#kl%FL_mgu9W$w`D!zT7Kvgi$c0P_&}Op`{h) z;<+*@!jpWg5&kKSeKVn54}pe&jsb%4h4I0PKPw>cpM4*(p+Ao&3XPE~e1taSAnwNq zX@$vXpb_;;Z5nsm5);H%0cBXWOtM~1d6QAzT&I&iAK{pP86#74yl}fdSD*r6fHXFZ zfCXBZ(g9=BMt(JAqnfw|WIz=XN2g`0P_Y_{8V70|sBvIl;y_hqH4{ytvTPd)j&jNj zRZ%SmM~*{9ixf&w97;{-(>*#RsB86uRzGKf)oV4R`{8>vYrMo7XV15mDHCmvzI(7o z%5og99gX73sB7mDlerecoypSgv5fpd`#|XX!H$O#aZtB9RzRW+aplQB1h6940dQb| zpuA&rV1RI_2hXg4a4mU;djK3osOpQ3I`zdAzRTc%KEgmWmOVCPa1DjW=dS`0|WVYg20nus{ZB@TS3t~$5 zP%8iWFc!W`kyJRt2*eHpN1B%dQZfu21Hw%wmW!jz{51n4&FtEJjRQ3f)HpCkIS?=V zijp@{FZqFp914zd%9QyM%#&IUj$EOqbaFXoVjJz`@E7MhI?JxL(0q6#KF_oezMcFi}H@&ESZB&ozvZEYwVqZ1UdE zWfu^LOd042+WN^R29w&X*N@@Np^olAhf%xMP1J`a_2a~>#x{NbX1ff+gD1=NP{;La z|AzormktT2)Bf`YeS~;KL#7_ZV8_7=#nK0iFA+x}7{Sv*Y5n4cfukRsfgZ}mQD**{ z0WuKtYiTtO)HqP%z$kMduk?*F9X0d?I1q|eHYpvSekpUGvsya0ZuW(Qrk-8az2X*a zyw!EeLDsrxzFdX6_4VuRuHfM!g!@oBl&qwr3yr{i7$PG8svrnty-r82;)dlX^tkbn zW?;c$gGQpbhx-{H8|2Uqo{K5;g90ouLqC3{WunCLWD7%yeJWWw$b-qrRQ|b2H(_|h z)mthI6L-N%DxHYE{yLpn0hz2L<7pFIRUR;_R5)6(m96L-LR;ml+-*c_bOR>1O{6eAgq3HByqT9l@6u+oFk!32JPh-Ow}?_ z3*qrNG)t_>oSepXD6MB`letdEoHpBfWqdSa1adIIU0ba2fLZ!FdW-e$-l2AHvhKDH zYnZ;j43LTCGkzSG=+_^{aXm^QefS25gpAV;`u!pghkO3msL>+x)UF~gFKWn}<;I1`_fx7jpUxjI@CawxsWl-=#KLyJLTz`CqBBn)% zjQc@x_s_sbW>~V5fYw5d12qoRI8ft2!hv|nyUtk~9tRbRYR(`QeO=K`ybk%L--)>b zC>iZLcU!Y2cPCA1wjQ}$b!?ert@GwsuiTC{%T1_9@57lhX8KG$P|~5Abp&tK@WC(X z6!lXkSfhB@FnPj=7zy+tRy+vsp66H*@yKfYsbJql(Jv~C6|5V4grEJCW(dIuaedA^ zfKz}BDYxWX>wV1=^l@_?3B611SDb*=pjE)B+JLUm+qT=?@VYy8%OIbr)v(xvUO@&r z=FFcQy8QT?Nv=H(p94cTKxiENQgv2yZ&znB#v*H38Hu<)Iovz1((0N-3h*>DG^F62 zfRcTPTyUz;E2Hy`grLUYI3ym_3e`C9DB*x!W7SiNs?F2P7@8jwGV#?WYrNpArflTf zrWkXg&9d(yy{|fUx7maxW)pBb>DKeZ6Kv}KbF5Pz0NJknA1KVzrcHBYIo>gWhC1%E zLA=2LY0@v)H=Mdg8#OmII~bl>{iwPDGMq{bQZ}o5R6{<(CW-XbO*3SGbaz^Br#@1soZUK(x2Z)gTKT?HWtmT- zbNUBqgb_;4w&e(c9g|>&W`L*zV=Q#8*zLpf)>BgdT2-ob$}jy^^{PFMvYDv8`B< zKF>?G58RtA7o(siO{YEeI#oZR55_<8^0Sr%j!=pN<)= zv-YhGI)-_2|oT7KuOigdh6Nsi26pe8!8DwRjeEcQ|OA- zHKA){|00v4)xSr!CWAvO-vD7ykh0&aBht2Aex2>Q_!qKXrPxEi%271T6mh(feV3@SWGnG&JeWLQkIIWymn?4USUU2-^5X zUnmTHvV2V)xdv|lk9BAs8PlQ-Ib zM2H+AAXHT%SwiTaiMn;~*=3Wp!cnjBtaGQ_Q4XBro&cM-Z1#5wr(f~)asqXy%)S^( zdB+W>-T^=4k#T*3zC7O~*B<1ml7TTc@aJ{$N+PTxZ0BcAtkbd?dp#tu{i(?vN8Q;n z(YkS~lA&!IH(BqVPOI1VKhW2D_h>S^M|(m{dXsFCCan&l%Z*CNkY6ntLQboNZ#40g zZGg}wEQ$39=*6L2u(P@iixwfM)_a9^jte61R$;lIVb8l&nH!f*q8_aNun7jT<*Q4$h6|hu1rI?sQtIe<9veFX}|T-~RTuwrJ5JJNDRP z{bfd4p)$qlR46{+b6U$UfB8$7os&*F$>EL!d~gB>ULw!PD9R4?4MndIT@e?CY8c)T zU#V;0L+;=^^#1O5zcYAp&_M@z9fr&EO3^+fxD1NpFd$QeLT!&D+0h4P*LQX9~o_HTI#^H{|b5`~$g1;(2#XHrfnjtNN z>3dwO{B z$7wyOzu>0@3-xX6TkMef=?YG;RXP)T>2uczP zHi7&+Z{NP%-t?w7*%!X>1y7?4Y5Wi}esND4O8RF%`&s+duYQ$>mCob9Q-4SU&x#c* z>_Z>=kUjRXkG01?{_*zaH^13#yX`g?;!u>o|NZaV6QB4*d)m{UX8-)p|7@3Eez_YX zF~fe-O*h%AU;P@T|Fb>mNl&u(zW2TM_rL$$2W(J+ivXQh|NLtE*vCF*ZJbh}=P-2A zv~o`xXRhCM*IjNP@k~7bqTcB;jzE9Xad98{sqbI^`d2&n;Dhb=zyE#ig_6LFJdPtr zZyILAlP{f@JfzX-X#?8p|Nig){F%6P-k^uN?Ao=MFSrtc%|p@$xFS;PQAUN@}YU@v^(3*DfGPeC7L_r)+CUPka9 zI{7`Y>Os5jz7_eVh_uzK*Vqq#c%}X5M?bM2|M)6fwekVapKiCvi{WwOjW^j9m;YG5 zAK6Ve-JCZx)A{pAM(IY?^-%D&-Mg%J+auP{$_ED32X?B@FPvr@^$mn= zTesPCO|HzIt*@{Z3He#|BI&j0J`Thf&IHSmM;_^uMevq!W8Vo(5LUM~>2WFDCw&50 z9fLg}yz3(%vvh-w3Dd2oK`S7dVCz}C!F9)`MLL4FRjVG_fR3A1kBk>z0hyvbP#WV$ zGoFSVV2ysOU$85oVHGC-k}u?+r$AN;^R_32N!g2dNTiNEvCJMH9?PqzQ}|Nfu- z+rRyr&6_vRKX61E${FRJ_q^xX>8GEbSME@lh)@3z@Obeun~vWvGy5or7v!D4&#{1s)K3l(jy_di4y6f!4FMhGT^{sE!%l}7y|AH61 zzzrwh-+AXeM8E?tQ2tpV`TqC5?=#Pn zCr|eHs7ugG9ib0CVI08&Xo;`+G7J?f6Lkbuz>B=#hmN^(=h|1l`c*sdzylpmpT-3&_bJ}Va7eQMn1~0O7tK9@gH{hVTXHtyLD!H8ZP(n1DKRuF23<%3mUmbdcXyD zx;=TOe58Z7HP_Bjo_ewZcG%&E`7xX!BfyS4z)9l`I)ncKpE7CuJQI*nR?5EmwXfPC zhaTcIK?^VgR$R#sKGJ{klb^WEK@-nW7xH97zzaHo$1etT%5tAh=bkuz$jl8l+~5W= z1{pLoXs=huQ1AnoX})IZ7+24kVQ?V+j)i(f8)7uv{+B!KwXgX%O@RExNsF|HAAVTl zJyVKS9&@@K$;Y#3Cv>%GqwV&M*4R49zZhND-D-P!yKKWA z9YLyox!->K`96i`aofMkc=QF>;cL3 zkDv_0qf0JWq}S=V-5#9;*Q+m~*Uy=1_1bXWOTUl<7Vp0vT(G8UPq5sr38N`_)#9hu zbDZ`uZ=^E+l@jJByZ`?C{m06}p@$yoium9D_BU68 z*Q{RS9cIp4`S9u=W$8dDMMoWVlwUy;o%O*7A9Tf>8C_gR4mjX|yz;~hJY{{wMK}qM zdCX&6=_U;Y9XQ}X`C@jMRg)_&zrt5z7-UhPPdn{2pEYK%Wp?{zFMF9i^O?_*Yt>AL z^~XQ{(Qdx^W;^@rvu*R{O-{!vU-?Q~wrrW>{KO|dVNZYh)9vkVf4jSDx%-QjLRl4I z_2h#e{Gj6}9^-=e-Me@Dixd99yZi3D&+fkaZg&l1wFtus*Dlf?($edS7596Yg$oz@ zEIj-|DW+by*}z|(froNKIgAcoA}5@1g5x5c_MzS=tM}e}uk$>eV|bijwDx1$o}_7P zG-+%%Zq(Rz(%5QjG-hMl6WjJgjcuRl|D5;zG;=+l=GuFnz1Ci9-M`!ZXtwAa4gc&H zAGYN*63Tir>mQK7K8VhHsOY>GnWcd;mUq@;J(ssW;wIMbRZO3H^DnCO66lnNuz}WKTx1GDT#uI)PTM}kZn?Zi%j!Ztc z>|M>G1ypz0Hw)EEfYWeKpjU3SQIECn{6h@iIqRd&xGQq{2(o@2v^xR%SPJt^Q&1Oc z3P=&82PWZ>wz$_e^YHJ7F|K=_RQ?>LEB@>w(P23^cAV{Xe#QAH(wPhUTu|N08rv)+ z5!zj=iMmRlM>*F0zR;LZpL{=VF4Xs@ta=XZR;w44omzosU%aw6`)sPE>=S)BRR8W=(>mH2eV$M5t=%#GER$p9=P;~k-SeJ~ycsU?Wv1T( zN&w4hyUw~8lLm9Pjqh@n9i<7@kGM`By27Un=^@~C{G? z+_yu!^b*v=bpM3$wU~(npXi0eFCK*t)E=I^`(_OIjNMz*U+kX83v=J^MaHDm_Nh&} z`6*$njvk7_fE+5estC>vVtEZSzZkq=3%|-G&(b=`KgXBGH4Hx<_B?)lf>^uIopRd^ z@*zC4USw#8VMhrRm4>OtFHOmBy-{>q%Z^<)nCpJA$*6l3$A2dC`J&1fkW3e*3H=Qn z&@$s2kRpb^GTtmG$Exs`;s3D!ECrh0u1{Rs0@by}%iYpH>Cm9=$NAvqyzbHXG(x~) z4G>fAT?6#&a=IKZM?!={J&d&LMzb$J>G5d$G?s zxLo*8K3moGeB3b`oG^*h4`!RFyzJn2TPXToC!+R2z~Xx5mP_6F_qaIR+hU;UIOX;U z(;4H2)EM@`xz!sL!TCLnJeS~(vdSJf4v`*=QjD?;BDsLMvdhVcIAS}9w4Er6(=lVX zFS?ueP0cH>Pd5TAqZH+I_TIb1K59Gt*oqDRzE+|9Gsn8~tYdc>p-LrSU<39%dR!+? zIg1^Q>A%JYkZqmXvNs+Af^tJqLWPLNk@sS=K`GW9o*{6 zpO1^pU8eKs-n4hLa|B4>4Dmx&%QL!}7><-Z(9oYPFg_?ix)rQvKDl3>1C;;XnrhLh z#l#YeT%cbCwQs#u>BkdBAzI}7ZtVCu%he0qUW(m=)`;Lu?^V~^vE5Ozb7RsvblQ?5}Gf2ZQhXCdmZ*U@PNe&-e1r+_3kUj`itkl;m@bC zx~y}b$v)o5FO8Vw7FKZ$_>qNj<;e*O5OVjQw8{eX56)VD4pUF)&%{zwW-J+K;Zw@0}cD z`2DnU?d1k*R}4(0Wbif4*t#>WhmG6$RMM?X8w=~Y7W;g**){f4*QdU*<5oJuX;B8P zyID-#C17G&P*To;P2oo>sf8+-dTZ--w7>Xs`}b;El^O==19j=SSVG%wNW^TP%2!#; zQMCFlS_9fG8{SarBrhE4>pX%P84Qvno+KZxZyYZ%>?4d9{{%Xtyhwac-ONR|T2r1W z4EwZJN%~Yp_*A!!v0j-M2L?GKU;vZth3`ZAhP$vOB>;)FMqqChvQ5lE3~{~7IgA)< zCO|+yiiX8cr<7Gz^S9woQn5&%&$Pkg-+SRLbUQs887?$*U6ZHcRE45Yl9m~&J7zr` zz(W5v_Lyp>Q0RT-bVuwyh~*BC`hO!W&HH1i?U2BzJGZVI(y2(S@GBTa&BoS$$VzqM zzWwIaQ`EQDT);p&hU2utngKs>jfQ_4v5L0dv%d^(5RQ|7mvG9V2w;l$97NNA&+vJk z)EJ@L;(&hz>=6g775;U5EV1-)C8L zk3+EsKY90;d_q5y;WK2cix?ndumDnJ368gILaR|x#Xz9Ank{@_!G7~SB+AvYONTmGW(w1wKAA`X_nfjw*OJTwGG?E zhM#B_NYu7TpdQ3y{ze@)jDI=%fF`v|&YXVa4t~*PQl~znJ`(Jg03N&+=C)>_0}oRP zE@$I0@t5Lz7XVV%I5p6zenGu!CJtnOwv)YbhBW-c_IrtF{Xi7x4=eYhDe?!g4Wf?m zDP59XAUdDLm#9mupFZzJOv%&VNVjJH8S#a&Cnck8|4Ge2&V=eD(a)q|OR)iW z5@cL<(ttn^rU(&x4T@?jvLrh8nWq{Zat0ylU;>`t+Eds=VZK#eLEG{Avhrtl2X_&$ z76=vrDYK%`bunqBVZJm2y-ZOjdg4?WIUid3(Xas7Oi<9ZOZ5l&Nvui7C!#u+zLa z0z<%tbRLI&tLjo|4!3zt#z&v6yLSaM+?RJuoUvPmRmuCu5(vGMgmGMxNY&|-mK|w~ z%+T>anI-;S8Ilh}8#&$F8Hg-8l)u$-2PP^ABWi;)w*#-4NIeq`9mfzZt)Hu6pmNgfZ(*OetFaos2`eI2Kp#>QX>PbVuX80A0=CA7xz+eyW%SwGy}QWdP?RyxnRP zZsLNqI`JSP92Nf`bfBDi8m+30K>>R0$1koz5^p0l=(K+Ue*+YZKiwl^7yJ*P7fl>x ztuuNEeam8k;0^q2P-D=5skvepVt#wI@X%(op~Of5wO3O;@{3~ISd4Eb)*tlJAI~lO3Fbf z`PL?SZRh`2l;RlI(o!c%1Z30^Fa$zMAKr?^FFo)Fi&Kkrc*S+*Bkv*c%O7vwIIDnj z)g4RqLZ~a=0npD+Y>Q&>HI^JZAajsxAIs02l-OGzUcX_umd8rn=0)m5AmpkIt4_!& zC2IS$&wL{19w`r`eN^%a`_XH>IxX|;?9wp2&1(1qp63*iyppVcrEQ<5Jf2+I!|gKf zUC8sM!pUZd%=83t<1+;rr>wbQ<|ZXeq+X|AIQfEgdS;4}znHwiRUC zg4Gh+zn&iTpQ|>9DfN{UP56p$_MYK6(U!?%r3A6wsS^^;0Q0DXJ)}e%0fMN2aJNDp z0uT|cIB_VySq>d>3js%(l9+woMqsxiDMDcZbK?u)j&7M4ij@n}?APRQTueA6vm50_3^Sq}Ko$-a z%0L`{l1RLm;Q?VP{dGt}qZEraOhPJ(XHtRcGg1l6C@tx&Cl`(m0OIq5vnqq>f#bRKf4`s7gm@ zyMm@A0euR*e^vadp^#W^BwQRhF4r>e3;GuM=X;bjSWq8?AX@Y{h3aCf*HOB1eib1d zr+ogYq$0g_RT}j;5G9N9v4a0WOZ^O+MupDNUBM*nN77nRb%TlG#SO=&|xlG11!4&XnE9yPZauV zUZPV7)K!B_qC!Ow%e1)fGb}SNFm&mJOv_yV<#=hm^5n7){o%e>8U}v#ga+` zQAVMOjK?8c>nGWiBZ-L#CN!F7ce1K$Oi!l^gq>1*&=}Q8!X7r&6CZfK`y3uwIRUZ9 zAD#Jwu44VyNe+rTV`GTWMhh(s{Ss2Vos`;f0|flc>nVcxwWLlO%*_YjB4=bd~# zX3A$MpHhlw8lM~{bTYp!1Q#OnVM{K*yn_Hx@eQ<)E_ZgReyy-47f!_3-*EG5$@k#c z?ZcYnKkBEH0p1BUrN9D zRC#r_Fcz9@bk}5Ci5<$^(E2F;;Jq!n+lVK-BgcFC3HC#t@y*UQ*7!)UJoMT!zxk6B zfOyJTQ=v`Xyskp?ag(jnRdlN*$0i+yU82c7m^wgV2S0@D&ZmhEZrcXe2Wl{{%KE%u;NE{Pvj>gR9cmB zL2P%)C)6V3kQm{2O^WSofQQ%!G}n}ex2GhUfzHXHETWUn|NHh!r-=*H5G$*AC~E6Sz_@*t9z^fKqTUc|rnmyMouTf*ny0SO;_{Yp-OO)KUf zrku^NPl-xJMwMdjj>uni`PriVjivd85vIy`51O0Vj_u@tlhpwU|23AsMdT7w6v~4Z z-ky?_5ERU*GnX6SViL6C4Pw0!c`spDDnVwY>pK;+Qw2N%;n$~)VX2}9%~00^Qo)F4 ztY5L-@nP1q+ z`}dm<9ZR|gto#n0eMKmbNxM?N%7qTm?{4{j5W;G7>BZ;$tfYs3-XkYmgW|CbetkVP z@2(;Cbt_oCmv9o%`8%Q)+MdbixW*gMhr8%p{bI@eAA2k?MDePwa8uS)#e7n@@pRPvRWv zn#;~qOq=Z{>;}Yd&Ypd@zvF~Yh=E4)Y}Ee9V%dllvT%c+9N6@3>`F{>KLR61xO^!I zOW=2XqCP;7fL&Bu^&{boD>9??Y8PQ@LIyE3hLBjn2@_h5$8X-G4#4-#*yf*0D?w>6 z`9aT3<2ek_US+OlKkU(Ml9nRWAy4+2be8@ovbsz*J%>+lnP0sxs#VKSS7stqja{VNo9sin-0i8D(9$3 z|2B`D`TM6%SK0>6+w)0Pb86?SX%{;rDheap8cJ5MwVzjI`+I-*_xTJ$-`DFEdvM8b z(DB|-n57&IGnWnoqVDmmT7nQsreprgGlH@WorG$3!$%7D=}JLXh8}>?~%-UuAVR2L+YgLY$Cg%J8dV8 zQ0%{xrJvOZG<`5=MTh$)sqO?WvbgEkZo9RXR}P#gq@G+_ZAi| zTel{K8QEVAJRS*}Ym)j@71j$clI44yPVL8MagnB3X!@3GcBr003)Y#j7-z|Y#Fmsk zs3eZ0mXByGd%{bc*)6dr(jYWV9Ul}T#9T^YeM&R;a5FZ{>oN!KoGeNFd$TaFs# z;d1CTT8eygf2<4K=WJSs_S6L(+RKFWsX1`6VgrkOg@$NfGkciK2JE(|=a9ty`CL5yT$V`B!*iA4XR;6T+2VfbgyZRun3 zfvaW-DkMdI)h2C7x`!pT6J=bspg&(cAL7RN9(v&UAC-F7xc&>|ZkX@}TgVReB%5BY%1swJuEVKc(B3^^ z&S1yDO|(-l16-)x!+jR7R)EY{soG^AFGS=5!TsU1-83ZHG0+!DA=oGsswit>`joWC zBG;BJ>9K`!*ivY;RwHzU>#!RXSX@5A;=td4=yF9NeV+nUT(1Q2wB#nTcz2)ZUN}Jq zqn1tM4ZS-(gGE}_D7mc1g0I`?FJ)M-2CDbQG4skra_FvF8(nnTKJ#@9-nBczz?f*KQSS(@YP9id`F$2&2E6xFWCkC2;-PjgWj} z{gdVs%nViTHB385Mx%|Hi|E~edG2|MPUwFztT6pe?@>X2yX_)G1+KML)q0iuC>l}T z>%PHqcAE$=_kNwqx1Z7?Q70#4of^>5Js4Er(zZg%8)wk?+!twcwFB*HwdHtBnYzl6 z{r)}7^=V(Iks~FiYWFv~OD;uNh*egK>MZ=Ic8NESBbIB=MYXWF$02zZ2>)$+l-_sg zXS6)iHAEa+?@Zyw@d+vvjt{RkJbc2lnCBO=L$eef2gpdrktYpZ zJZcu2ZS?d|)oM{wF+3UK1n;D;gPPU zVV=>jE}u{^PNqd9(_IcXZ)#jR>s@4ZS`ajfYxC{q8Qck$N*MMuKAkQM$=bwTTa+S9 zUrS5x+r_av$Q*l2YxhI!LIxQvxi)J}MO3PDtAe40?4p0=>#Ew9wAX~xwN7T_Dm>0n ztkah1dyZ?PHQpDwx}U?;-Hgu1Qo61K;*fGvHawS(3riC5mJ3y5zrjVi*sI{-3z;5R z|Mps}s;NqjUG5*Et4=xbf@Mg`>7=IFh8TCLkbyr`_7y74xGt9#`7!4Zh%u zU@6BZ`Hf^372N%PXGaIDzCt|&8eYP134sg@SPNndfl>&L3r2&0kPNEMGtWvAv5CBs4ohRn}sP=;KW@EwnH5@9QxNMM@FV6rSEK> ztR)J3cbsd57b!sa)qv>Pa*gVlgg2BAE`(9~(W5f8auPUZHK3qe1Vg!ScgNqFgFs>4vw|X|R?7H9C zO+l&C{&FzvJ@n9b{j?J5T2#HiOw{Zr#H`m1dM$Rs_;*u=1PN9z)AeU@xJFju8 zUGylY=ELRh2=p%D)7ct+4Yl-q{X_al{`q?1$N&gMLwwIRZ^?jS2)^>fyCi{RyIB*I z^V$8j+0Nl$1XsEBp!kbB2~?Nev!n6^j)QnRjOhW)XX<>G98K4pB{6g6mxe7`UF_`+ z+n)gXB_|@!TnJJZRoV}~9$K*#zAE^fC%v|CE3JJ(FXS*I54(jNH18GO=kLRKhrlM3 zT0F|xo(*!GX_td%D4Eo~_PI!glFa$!duCrR%>Y%=l`1Lsq0HDhF*#4wrh<9aWvVR3mm53f)+YjVx(SoLzvQZx?CT5-2XIi3^AB z8tL9mxGgjveQ#v?`@x0EL0K{H3P>;T)!3;R;{thb-#uBF@R4PIn*!Skw424|wP>@{ zx4IY6{nqTJ`4;mt<4Td{$6QqDVtw)4YLiU^>hq(SqEF&NwH6)ec`R3+Tf98qsYQmv zy2{CVXJ6Yz*9ehko6X!?v-X>DwgocaBY2%&I;$DqcDOwc;|*F>$CJLsW2&G#uO7Cl zB?Zm$G7~6{E|Ll&ja(7~A+C^;$XfFFuT{B?#*p%LcDfH?Kr+38c_h|dN^{o$Jh@pYCYJ$)fod_;`41OHhpXBCGygJovW@9h z55q*7Xm}O6pjmkyy+BZ?V3OQ*J>x2E<{mUz?_@5qU{i+yhWMeVhZ$U^IUI|Dl2l9t zEOUhOxQ!S*YaVj;WrC;{>`xSLU?>-yCmbD|z5!H@`3~W0co0p0A9s?r1w7iL67$w& zD0hp>q!r9#ZY0;QHZkNW5&TzjaXtua!Mf@oh4%@2-??Nb!4~%-l+M1!ww@?KS8^B< zkSe;n9FZ#sUeE#toikq(1BBhsgFl)8$M`5lIwF4bj6vjN8e>MVLtt%+b;_AuW-D+-! z9AZOw4HISa?y_m~gMSX*IBFXRkD|6$mQ)8>FmD~Ju6Kk@aQ^Mnr92t6th>flbWk=b zFJ^h90QvJ^*k50sjdF#zT^4|M*o2-})7^EiY=ytW=G}JzCAA0Y4*7GPh)O`xGwjH`lU5(0CJp&@^8O&wh zh_7|pMZ4-;Y5DZzExrG|!(F_t1~g)C<}Nrag}Ef8ZPIm6rYYt6CL<_w$2>_1fdhby zFC#q{HEMDUaKMD=9+7`56f*@LUo8?qz2l|Z^;Wxi>ES+kF>?1p5Y6v8PN)&Jp0mX&R0iGXIdZT z(MuLL+k`_;mWTv6+g?#M^D-i3s$qvM9~5h^;ef;SBeIP9agMj7D!r@*l?dVZFv(A> z2scrI1L&q1=5WmjdqvKy91dfZ&C8}+9pi#eTRASK;oeDNGNOi`S?kyG_NA3iYK*wx zzV2H%Y%5_15fEG(Q*UzPb~hHOznXpfSe#oIxN2EH2iV6PIl zfK?zw`(lLQo`q|IZz?odfPJ>%KUP5om+X77<__^Rq+z`h>zS?2nZEZp8?H-PWK#U5 z2-6CD+g5`Rk>f+}M2D!aJpdfE(Zs>n`+XM%_kk-q04s&mw(;AV=h~o1xoc{yL;OZ)A-Qqh6J25 zOm;)Y&81Qvjw9r78da<60aWWYgP+$M?n~+IeVWmrR5F{P!=R6Rwx6|&)qNU&EHf!q zz{#`L9&ir^3Zev*@@gDd=EzdT~aJgO_q|viF`?#6n@_2IWT7to6lIf0d zKB<|kN4KfJ1zk|Lo`{z8TCTIq4IPeD)q30<&V2e-ZYcW-!4hlATl*;;z;~XPGI8SMzvd;eY?ZQc6^g?9#=2N_|O`- z_Ed__)EVHw4R0y=e$TTb*QOq?(OQN>C8tY)Pk@j>ecInxB|jA4+|U@>$$YnKcU7$Q z7Tl$yGTg^R_i)LvZxY)jP|-vuE>qR%uUiT+@hZnKn%sM55lCDoye4tdT9R8{E1|k8 z7|?(gJ!K~Ve^cF$hks$co9Ogq-) z7WUg?joMFC7+O0P8Zats%oMiiE2TM9J?WLI0&TcGv2BSdU2qmVvfI%P_p)@>dYnsU z`mZEwb%#W2S9O53sy;tkrYXVI^pxW?zRCs{p^k;s>h__wDosOqmapSxAE4i>4PciD z=IBQ;3qt^q{f-Go%2g?QIm~gxzWV03y;-qxZhk!;gVajJwX_bMA$eL7K*5thPQ))I z+sP1r6i`DrtZB4Awr|-?V)n3YO@J5=_%X|my!t7Ioj{3z*k*8OB5K85{qr!kYk>}t z88G}&)Uw}nS1y_XR?s7#EM5rI2am$8Gpu>GO<2^e^ozZy(DX`~n)u-Iu;LlrZ;t=l zE;-ysydJUPCwFlX(7nY z@%MBde);DKANljON2~(yczRGLy;;jHs^Z72BAoTPpsRh3k$ENiZZPz)MK{n`P_{P; zf)Y3f$_6Yv)qi7^>maR%( z&WocJt6PEhnLdGM?|r(9?_=$iXE)8q(A;%pv1vvV=GM;lQ-tbZ z(dQDDr2LQ)zb3b2c2GOplBRSN@Q{h1Sz)B__BQ_OWYmB`V=BM@U9W4kqOk`hn6c zdxQ0~_L7xY4`v?uG>56m6+!Tvti&!eSK~mzNf#57J9QdKct=o|7EwM+Ata-7>$eGa zDumuB@x;r4Vr#pN&I+i(Y9t^bOtqfezy$nceGJR`Z-iB5Is!4%%&4?%ztft(AvfL- zKaYqj5Dy`ohRUohuXo*PMjOjcdTBoU2G<#-vDv2aEB97nGw($%7jy($p|0nF)Uk^- z8~~4E#CZk>$?5`>Kg4X?2^jety^Kx9dWh)x;aNxhX8Ct~D;BBLr3UGJ3f7~j@}w-w z8bp<`D0V-qetG&rUX>|02uki&(?45hf-W?!SBJ)Ly_y-Jpx$AE7fK?!SAUmf;%V>( zBha4FP+hukY8Y^@cNLK&1glh}r7-QNJY*V0$pXVVs#PmogP`y$zJ{jW_RDKCkUx)l zXf)sF9(w_Td3}COy+~(p`O>;T%K?e@^3!0*(bZbV0|*AGw3iJ1=}T!J1FNZU35I@; zatm|%%Zln;<#=v8k>-_OSXa!!o2EAe#uK!MSKKBJLVoQBRTz6}>vc{4;lIL3Rttui zu7<{;93hrzc&y7xxlI3id{RosBk|~Eyak6?+8`o~&PTXP#w5yVV}=XCI{WJE4if3Q zk7u3bFN4vx@-cYSsl2M;CsUu(jBElTSFa7qDqr=#sD)ly|HM z4LIReFFjY(XhS=Cd2by&nA4NB_KPpqEQ+|sOx02scIebNOz~2K&qj59=1LOeS`KAj zWSD~S8T40GtJTwloN1_wO3Z}B0z^??&<2-i>qrFz`;eJF!67g@Qi|*UUKEVds`hR} zL6~4fSFJUckT8!+w(;K6roJ??G1=gkj=c2_Se5@jeSRoUoX6IAkxrE1>=2Y?a%R!g zV(jl9dTeZR>GF!)Mcpw;dF^6Sm2Q=)t-B3S>>>bj>**$mH(7p2WReB-2qVePgh5>i z!{S^261k?z!5fZijJm@+>D%`RweTj{8@9cznYPs;p>x?}jMsg{zHyQt; z6W60d9|bIl2jkh_0-umFeWgp`S_xv!e({QkeHj8-J)F(#T}`846l+3-+IL2U@;=p| z5#@{Z|H|}{gkU3AfgZ?Zog?&iK?fZL|9{*-%vTKK-LIdXW@L|n)#aHHe}6x3$_qSp zwhz?_s;`yo_AYEDx>woDHAmz~jsW~~zW%*36ViaNpM2P1JUi0hX`C4zJLRVvdhk^%P^YSjrLI!wQ z&VfH`-sh_m(oR6sn7HVcn9qSd25LCwMdQ6Y$+EFB>tV77p>Zdn5q+p~0T(=uYvj%4 zaFyP-R*%%v`w7W8!uA{v+1ve%7d;$*%!^8cWZfQipR+2WwuURJ0Dk% zYs=yynq@R%sa^}!JLsg)+k08H3(Q#XL1gUD-#mFKXdfX0UR^$DHar_4!8AO2}T;wwvuPOR23bt4woxSM} zSStm^CY9~w$4-w<6k4B15|Y1I<7qOGUk4oQ+A#56(R4MdMnI_`=z}Wv8nN7=|5`L? zQ+cS_E*FsB+p(VND$4Ms7kMKW$ZOr5B$s~^uzSh$4}tAXiIw4nRG|6&>>JPQou7UX=YFTs6lyMGOsk172Gg6N*UD>mVff|?2NG5V0CC+Q=0mx)ch=eO(8FB)MB?do)Dewg~lDf$FC zwHT}v9<4&perO(BJ)Fcvt5Cy8MqllcI8Hzi9-wMccK@Tc+{>f&BXd{1m@zRZmDAH3 zK{NP-Oa86zoZcHvPGTYDUM-Pt+mKHL$H0?IsY?I74S9NCEG7h@tfr0>go&DnaPwSt zBC4Mx@}`EU!c*+=_wp<##r%q)q;PRvX3Yx!`H>ob&JVcM#|@A^@02akX1+JCRdYV)>GKSDA9@|QWde^Vt!*~Z$;*+$ zCFwqRZguh~b-w+T5i|5t#1*2`x5J%+8Bg(hAAN)u{u;6Mz|_c3gJH7`a^hi}7Rll? z1`7ui#XI>Co0uF`e)UE9T?#=;j*LE>d#!8b!0?Xh2l;~LdT~w| za(mJ>?m#NS4?2@5O|sMw61_cM`-c|=XDXM`UL}5JwHAXOU!9t-T#c#q#dmKaZk;Nk zn-HaQBB-NdbX}!?iP+MIpmQTeM+l6CZDCEKzDP%B{_pPt^2B+yF5UgL8${IBA&lQq zW^~{*U#+1{VlfEL*PN8|;9OQK5loBjfvsvVs#bt5OU3#lCJo+eYurK+8t4TrRpZ}Y z!jf{I>HWF4ntCcSg>iN)DYOU`bf{3vwx_?W*CkhIkTsc5oWC?Cug>V!w7KlU{ZbcZ z75-lON`^5Aj}muCaryxikP|2fWBJ3qcz|v?{0lau3@hJGP2`?dLWM(^tO!-V{O7;p zCkh+wyYNxD_(Z*=7@ia@oohOU#1RQl^6K`pqEQ9RDdTwHl-j&zK3Yf;ZhEx75r#<8 zG2?D|m(*z5y{`*5XWR2aN%Y~}bFRHsUWDtnIb7Sc7~*pu;J1l9bbOPZYY#E0Qb#}w zG9JP9@aWDl3r6yuDbdf%87!XZ?QYXk3gWIO=v?d#|%1No{uGc*i- z1zD@n7mE)MAl$k|u!{i0+E1`=n!L^%o5n}!-@q>@*_5=e`2`U4K2y#Js$AI(qIqF4 zr5IA|c%!P3<^Qo#(BVf(#Uz6`jvOz+-m~#BGuBdM9>Ix$2{C*UQ32c=F7*@H0%K@A zd!Ww2DgS!A4a)lip^f~xy!7u?o85){w$Cnn+rhgPYQ#;H;LcV4%6AQ083qOsY{wOM zdpS}GdU&^!*)sSJ%h}Z2Aa3QKHP(3N22a*UUe393Gc9gajyS5eweb4PEjl!KAx85L z4t>W;aPM-(Bh~(o%IySzoi3YmZ=Nma*{W0Uk+EWSH|Hq-E$Z4zgW(uwDR|JmOjjxa z+Ek%E>htjxEHcG6WTSOwZzDOm$d5x-OvSSnFw9hrx65H7adUk(9Y~*9jHmtYxQmrU zODfM*Pn3$XrFCxqc~(bk*D|Abb-lFK`LLexi9$KG*=EH`=xIdl=U+nnm49`rTch0_ z{SVLBO5K-Vq>laDO?$ZmKQAf5mfv4k>fkEzqS`@=sU;~2q3r5INWW0x>`*WyxGn2# zX|;_T?FLpYD`vHSRdqfqx!TT)evUTCbU{h|g9*b!KzqgFlF{J3M?-9c{_EcR(iU9@ z^@JxdRe)S`vkP8aU*JIRsMAJNBRjilLtV%)Umel<_{cz>b#u;|ft;#|oJEkAm^2(H zz!DAKxqkI3og%;|jPz&cl<#!v?VLa1R$)NNn$UV{LoAXF_5Vhb8iSzR`YmT<&KWoqqOl{oy@a zJx{0G?7u(X3QGexzDT$8?-Oa+G5RsS>pn<-+io3wNm}DGEIPm8 zsl&w-5qz92zQ=W4q_@{~Fk1i8M26#+3VUf3v?#PD0n4H!(N2Q>jk9ACrp3A16(VYd zg!t@lT;I#};&fS+h5`|j!%6O*)&Kl}&09o?3$!_kytOMrn_V0<=Sy6n*Gn4zApq8M z|GXN&UrW}|vjkhC)}Q%Yc;!r_vFWnxqUmF<)EbAqU0wrL#|b&kMihPPi0QVCa0jJb z^gw4T^+TIC*$>MU@BkzH?l+^U3l8{JwIsnZE4P2NrAv!lVcJ9E^39QQLb2W3ImLR* zxj(C&5APFTgXkA$6Y3-RRR^Ez0K4JxA_`#_=Vy+eFazMk&x%T$p z*mfApoa`_b9iNK2lcZvsOVr%kj*=6OQAM;h@07zuP>Ry<^`%moaL#MEoM@y1>~Uox zWIm<)NTBlIDQg}M(a7$H(;Y)&CME41dN9>z9(nNE%fYHz3HqU{lp`(BCABfWzH*%H zS1QvF6dfS1TV8r}6a~@om=keL(Edr$X{v~7?Mh?WbwUK-b`%^79{7fA?j~Z+nrcFd z6lvgJ&Q(8(da@)otpaA(maPQNbQkB@^Xy?^o?%&ZS(Hq2!ih_#(SKIyQNn`N%9Jd` z5h$6C(cYAfs5;610wm9p{SYhVDkIvT2!W#a$O9rC%z_&jeWlaVDMfmL;^r?4BC@Z zW1QMznCn~;}I1L&(jnA?(s?9mv7o# zuP6twAZTs}5cQ+ z>x_89G9TkUB$ueRvWA)Z2ZJc!e5#4boD`3SMIDvO-C1(v0CM929d;AyXDgjUcAa1)Sma6~ChfZIaR@v?ETC^>2dIAx`7 zF%Pxx3q{TL`#b*IuBCr0wa%sv=0XfzV9x_MWN<{>D(fyH;>PqJxvZ-vpq7goZ`Ufy zXL?Qli?kUF;V!|J5-k#Gaz@p`8nbUDF<`FoDiaub$KrEj{WDHo1nsMVUyhckvnR~p zclEdcNHX=L=CSBVN1~uVA`z8}XhoyqE1lIHEze5^7yL5cKv3|myQ9@|#+_YVW=+n; zu9n?W8K;$Kt$7XBSmjl6L@7~dTzQd%f>rf?)apaPlWqdOSEY!na@S%O<{ zKjQP_#_$cs@;qiy>^+nagMYGnY_SI-v%@D z`&@58`7qD0VfSW9^t;%_>uj}i>_t=EPOgu$WjqkMGsg3(K&Ve{2XVh?NZ19o%66?u zP5d3MS3qes4i$rbo}9wa0N^YAjewV0e}d#kQ2XI^F-u8M(ml};1D4x7x-leoIl4Cp z`X`tr@r=9^ZSP&sdG1>6Y`mv?;h9S6by^En01M9P-IZxPB|CLUV=(fLP5He$bF(tH zfS|Y;&$~Z-jlb;w^P{z0sT=r@px~T+Lt@*+->bo+dDjBAfIQ{Md5Zc^gQ`_;wgy&{ z5EZ=6m#XTz2TDG2e%FJIT5bH71`i^`!}*m)C#M&N8N%)R?&5^Maol<@uS;Je>SS=) zI_(Frz2${1N<(7nvI`S6S?9}~o1Zc9u1H-ZR)wjrHIP+ee3_VM>lp9l9+q4&M7Ly* z)Y|D0B_Kaps&>mhO9}|O)(D4Sb_>I1b`J~CpwnqUu31qHR~chj_5FN|cPaK%YzGpx zJpayDE0w20;UI63JXi^Vnv67$y#hkolx@OyU2d~2fB3RzveD-H<0&q$+qhX!blFn= zCd1}rP`=3(`-Lar{!D#?xQJWUz0x(zgQu-qr4dO%@x@*bkxGx$IvxCfBBg97Znfnpjx@2tE=0bpdwS-N$VV^FXf&U#DN>psgG*rHdx{j_fEbdv9)0gSF# zKto?gC|%Nkg2^TThkn)ti~la-m>}U9H?f&uOkv&x^5@v*mD)@<{pUCQT`eV`%#YKe z-C*>2-l5|MbNSTW-dTc*}Ikljf`U0Z3IFp{t@l~K<~ zmnfrBwfNb_s!74;rl7#J?u)g}R;N@syHn3`N;O}72T^}xzTni~vu1r6B<>6RBNm1B?4DjI*i*#vz!ps4ASD}P(m0tcjD^wm?ik0c+bRbdQoi2KnXqy{3w0UPOHit6j$OhfyQCX zjBj#@Mk(tUm#_gE>TKnHUCx$kWG4u{``jx7MS>h=3>AL@=IwU8czH#NBm*JUigmgD z6H%EK3o+E#rX|)RP&E#kEDtI=H(#1b2tVU4jNk zaBnoY1#8@cI|L8z8r-GP;O_43&h359Juf`*z_;jLbB?MSe-S;D?Zk?$LzYrETD%GH z-~Zc2_a4<-H@!KSXu?qyp5n7#J=_}?I3VQ*c|b`}0CH&`H$U0<{m-Zja-qC2RDR}H zczZ0tzvY6LMSO1IvUgJ6P8g;J&+(R1aOsn$u=n7srIaD#OYE+X5^5d|?+B%n!Y%KC{nXcDomIoB$qJ+5 z;|<1tk#7_tUi@nA`u+@BKm5ZsZIZ7;ullOh13JPd;X4&}{=Bst{!U{KqbQswdt~_N z5!?Mkd>1H6M^YYwB0S_%xDx5*)GU2FV6oODuPNBg?o&0>+M(L(;L079D0|hOAC@dn z#LlvMw0z<282o=M0G6k-{UHM)x{m9A-!yHe3+y6yg~&<>pbRwyn@QRcw~*hGQK?9j zM73ZRv^j(WbKc}m!^w6>jtAKod-$tbC&=^jVKH)eWazjO>X{CH`d`+4&Fd*he)&;sS8OL9)XJhBd} zTGlkq(ccZh3ye|)necS%F!;z~p-}AKD@+BULlNcyS7T+DV@bU#4-WMJA zW-NM*vnqb8){XmlVP`Wr?}1s~q%A|?F8UJgF{x@@ zk~P12P(8A<%fn8Pgyiib_(9P`=1Y6(5`FZdSs z>9!%;&I328-3!%*Ewi>yr`$`(1BL$7pWX?dy8A?^jt?+e#NsC?^2eQ&Em`8k4ES0u z61{h^6ehbKvk^X83kmW_;!`;#6pZ3BJjy56o4ehH9>0n?kt4~AyyW8s`i>;xi#@v+ zc!F1RczljL&S$KBjdJ~@JG=Y-lDEoeB*og``zE2a{@PO<92D`k=nmOB+zXo|xAuaz z$EG*l=C*g-Bvdq!hnN4B`$e*c5#j83$S%{)(8|)pOvQjUyOXO{ks@1%x<^mYBtdyf zNf9_5i;S#U){NqjNL;2I=)EI$UJL0&kb4<#ML4^)cHa5T^Y1rp=0}{wO?KCseb`@> z27Zx!Snp}I!IeO3?n)_ht4wF;-k4h4KpCBF|DbM6$i6y~Npc`gd6Dv9VCr9Xn2@=6 z#0u?TN7(jxq)K%5Yf2hI>aj%+1WdNoCVV!1t7_l5^1o4CE7m4=G_Yl>f^b#;|L(zu zK*)|{A0B0*4n);$e-w}Yj&i+Y+dp_0j1%)O)*Z`z)oE}UNS+81$Vy*xW;gxy@{Gi!U530!!uACS zm+wbQ=ggFA#0zR8m)sa0NdJ5;ig{Q)1;T$7ava>;;VJLZ-jOcdc)DOM9SjjH(1_3n z5v>l4SnRxrASk!k%rajVR{-#m0nEev0K28@t4uI~6VjNdp&Z_?J>}H${kIxaOr|-!gw)JZK87gx*Oi3N>jI%yPH zNH76lGs-^1Zf(HxVg4I(^sY%VG)%C#;p^*mLy&;WzJ~xG#oG0Op6$}KxnZbtMa3un z6sRRDj|q{7$0NN*B(6vto=<)iNXc5w_r?F+QDuW+-v5}@oO$O&A+E;5_X7GC2RmUU zpW!mVyzb|jAg`o!UcJt3j zL%R@IF;{u;dR5^y zi;>IRuPlnHv&VgbN8G3KcD7>g{2P;cG17i;6 z+!+f{>w6kkH)X9`LS!lZXgx?cm<@`%xuI4d!zsh+wMIqttZ8A7zTPxw4n*37)=;!_%pM{vV8+`9A;DobOQBw2~!^@^w{$rTv zEmaGWFxb9%3qDKDuj~RXqJFWIpPO0#jefglBGyuqX>s&F7R=B?=<4lYM#EFtk}rhi zy!0P0j*QbY>R{_o9vXfaax%)aJs+2!t-4J7^?O_JbJJo&rONqossF#HZcVkbzf<2} z+^VZmAznlLHnl4TE^?ve&bB}mu`~ko5<4q+)i)l`n=q4Y-STS3X2Q+ua7t@(uk_-A zew}0wp6=#88T0Hf`_<|C+w7>JR>riqTyan;n@Fl=gdZws1 zhB$i#z`O0h5U4-iGgs}P25ypTpafrD?}XaMRIgaV9EpwFVq0?9SH1rDnW9ETf%Ul= z^OwJn>Jo+x0c{@R$l%!ISiUEC-&3T6mGm%*y;A<_#|)p#1+7}wtzUxX$Y@91-M{P; zKl}Y#Yg*CKC|Z%B7o9J%s(&J{6y}IbA_JTJq=&9_T+Rzy8H^Q}>vVpo{5ftixR}s# zvj?WtDh^z1mzPwns%JIoT&?PQ_i`^cWrq(%@)m`RsJ3E)sRxLY3SoVYc{5iiRN%DD zjL*zkRkzKmpluxAKbpJVeI)A;sdgr#U3df4q|j`s&U_ivGPKqSEqA8-pUC~fhhRF! zP@XaXKUwFG%6+4qYm)Yzp~K^9&5M2G}_S!SbC~U$IBAf9?s}dCMzI&{QUecEA2*Vw00$ zJYzQ&cKWTCg&IeG#CIs-F-XIvtq`I)k$5Nuk^K)G;Wfo~{|q6^``lc9pZT+Ef%BZ0 zqx{`Z`F6Sk`v+FvzWC3nTwDKtx>Jj^P(r@@`rZcu2P>UrtCcBI-V7#N8s z3&(AM^@p^k*>Xajr4NVT>LaJ)=2Oj|R^rRGLe>uEz|AVWXk!8!Y2bp@>2GOZMVH!) zGPhd3HL1V2A+vOEvYeCn(Jt?)af?iqLpaW`fD zoak^Fw*zXe=s}`w3w5v~*xF$q{FF314o8g_PE%0F*Yi z@C8zrSGtoHVetyujr`_6#A<;HK9B`@6eN5RSM z{>L|V$*^lo&yF##r+}xQJS_T47HVCyFvm=m0cS=a$3g1U6C1SOZ1S6Xt)$usIELYS z`3GfrvsK-QCm`*cm{?w_i+PgxeQW$Lly`)^I~f|Vra6C;?)?WAAdo;rwmSc?o`@N0 zbNcOW!>_PUS6FH3q};P9#(d6xq+5k<0+P0B;nN+*(5` zryAD^N~`p!BS?#yF;KAB9vT14<{3|jGksL}9!qP&gpgn%L^*06F&9@>bslk)(<%zg z{%IM0(^GU^FH6pFr+HD8_L}E?*qyI#Av%t808F+ez8HK*Qv+Ch;gJ`yPd0{>9E{eGR#DUG(tHINIn-0?BZ;pNB&U~4KWlC|VZ^VyO!ZtNSOq&PoY zDjqg2RJ^%yqM&tXwk@&@`r;+ZV-}dmNd7omIxcBGLUXkVW}JD&IuSxyOrnW-&A-y% zcM6s?vo_z3^PwZ}v3_h`UZ>5c)ezVo2JWHBHok@w<)J_rjaA5n<+yuFoweJ4)GUsJ zBSV@oNkft%6ddB6N(i44jq zJmt?Dtn-8*Z3##s62yMxxu}5K3}5BP^{3{33xLU*HBobgJnma>Wp7V+MTyQR@^%9G zUHbUfn!=hrSEQ8N6KA*YLH$q>S2hPSdt~I(!EShR(w!M+{^2phq8JD85xx2}B<)B5 zst$AZA#3mR19Y;^{1vahAJI)B6fAAMPuf(!2>3K}#SYhQ!7q?KXM2u; zeH<<3IMn{Nw*wd2!@me0`FeDpsx8_kiDKUC$Rcu#2iOF29Q29X^yeWjXnafa_1(cB z%0pQ)wAke(dLCT_dHm}z`kR2}*yDA&-;10Y=KI*-RoofLILgr}nUgnzame8Yvo@K- z`ZWb~7_~uHm(0k6c98wkJX9~walXoVR{1&L*Poks)v#s#f{;yy0;O+)83EL*zT%b2 zOocjM$gr2H!T^*#hz^4>0(>j@k{YvIYBzoQ|NRW2{xO6iXPC|fw70k#^Y2K4b~K)m zLsq+a>DF*vRz*B_%WrAtCf=o4n*+({8(wD0mR*PpWQem7WWB|?qoIeh^_1ac)RZ;Z zXyNUk%4fGn%FHFTfPmNi@$AhFPsqJk@x>*8&-)YhIt6=zyx0T9e~fL6o{*m?#0U>$ zqdmc_x{b4y8}&^q7DHgc9n8}w<9%S^jJehyS7j?@SsDjnvnVgVX0(@E7rDE`o%Q!u zZcCC$yPMWjfjdn>A3lH&-vKkf#jqs5?WVCErfuAWIqJ136^86$!I#8U?g`=iE+ibf z5~|>-klIivaFL73$o8SWN~>#@>Dzm?7-xjNRDL-3)y* z%HHL=vrd+}nyJ$M!3`e~#OLDcaWB=%bu@iv$7mi+(AoZey_mYj@^p{Xj^$93$T7n+ zX{H;9&I|;2^1a7V!9%`2z5?gb=w=@8PX}#UhMqE`I-)@bMy$~`t((Ozv8yGC%vH_3 zYknVZ0c;-QnLQjHzMhIV)myIFTgmyq2V=-iid1u|s3lTj>wZqm`N{6T@~}l`@={$5 z8e16#0Bc@_eRW%3CnM0~!O1v_zHcW+ZLy-yC12iN9EUNoZub9atQj`i>L`djH3vE$ z9Z}~{RAdgggj7Y~(6`o4h^|1~+=J(+>?A22Xjb}wZyk3>U-Kuulk>{)2zAfAn|aU7 z;H9~mR8QfqM)zDMqU;24rJ(KPW75CZ5(bVSOT8RPQ^Y`6_ybU-7jbD&@!#13Dho^h zbT})AXD3r~jW8ZXC?9?oF(_n7UBL8WH>3TNnHC0%EjdAL$ymp;0>zniu(rBi*753y{K(N^dVf2Zd^`GjV0@8s5`67^0x*;xDhKi-COH}BZ5O+ za+}AsG{0eHoQmsaAb%E)WWF|amTz)JQ&zoMeA~+#|El{lhHD1KB8N$Vc{S=t#!XL? z*dzQ9#5h0t560fK_H(5)KLG0A7$Q0hJjvj-=-sS_eRapZv)}Vg&T0ijsgB$SZR}LF zojVJi)&%`G#dWn-HZG4u6LHJZLXlry@p>43gNP$xZKuEO9TKYI>Kk%B4Y zo<$*Jx0f`>ME?ynhAf{sYUn!6rjDRziQL;40aOv=UKEu;qF(r*S6#XQxt&5DK;A#A z-6ag+MDWmaiCX?DWFRD?QRKaZ`r`308VG~1wQN)E29SmoTMNTrPj^h5NNLmY9G$Rw zj%4pFxkCW)1ip4(!#GXuq(009$kp6_vivFr>c-ZIAr}z@AW2{AwDuHK%pq6^cr)meA^DQmMCR7g!hm$i&Ix-{1{ zou!pqIHlE=t^HZ^$J*_WZP*aMARFPs@00Iy19k#d;cd@_#j6#2if+|I&M5}ze@#Np ze%ngSg03Yr0%GHr^CU%Cng{03H^1zx6#{dd{En8_>^P0%^k}n$#^HOS@J3v*4vgb% z1-ovdYtQ%Di<;>%gxBwqMVQ>8+7Aw+{ew6~z3*+`1O+HyUf(YKE(C|;J0VuF%OJUT zg>Pvl(9P)+1f2d+65sOnbET~hLu{4IbyC7U6|2okwDae?-^YVrOm%Lerk>sjq#L5E zMUkyVnk)kf2EOEKq11(*-)@=b0fJ0!Mqz_UnJ4qg(XC}=OdZ>o;yALOM-6h}EVmBx zV}BCH!yur~dQ3l=oC3{Ot~p0AJ+5>FCkp!5J%{Uu=`u>7#tiWtO=o{Q*^SyV1m%4p zf_ByMoF4Pw*&%rB?$&vM{D~Fy;-n6!(ckN6FoeN5L{s`svvDvSsjLP?S%eR}aC}e# zju>{AG6Lty1cD<)d_fL%RA|IcRVaJk_oVOq?drtk{0CyMyJ^<4l|w+U1ym^4*D#{! zr<*-NYd_-gjyCrW7BDWqPz&EqN^vnX$j17r%xi?AbCL;Pl3;Z2EL~z@bj&8Ne`MfZxGN}&3_;m{BLOssniS?N~ zb<1>WrY6DRI~VvWiB77cn;s9#jIhxJLAJ=!?mJo}V9ba*inF z=>3kJ56=Un+`0K>K8>J>kpdeETIVfZ2&vTKnxMSIjPJtFaclW10A%1N)wU>mUq%_frxjiyeLq_!#Uu~7WAJ4fAZL?l@y9)~5 zFWD6@UgS*EJ`d1v+zKHm!}_vn5=OS~`?9j}gE(~WWGzI8mT&%|3==vxgDf>_p|@xkQd6Xf2f zThDiA#r3SJ!dJm7KUeJBEcX0i&>e-&8WM?pA@9-OeOD$t-jA1C_77|B?r+a`8cW8Y z7!v;R=oB^2OKxDFEev`Oh&<`q;dQ5;kDVupqe2)%0wwhlgdsX z=ax(D}mduR{x{{5bA+}s7RX3!Dh1;q){1_B?}JG^ZK%zB&!cmE~OUM7q`82KZ- zLR?J&6S?Uv_4&Ti1_FqQ6FhrR$lJ*6KbtUg^?c!MlIaC zTQG9hvu`OJF&m1b(nS~C%raMdb!1|V(V^Jov|kmn4?=@)^|@b?8>L=h)F?t!^=AIq z%pG@{%tav9K1LM1wd#h4Sv54;P&^q+ISzn%U$I3jYyMY9AOtK-GQ!uVxzbR^6R}K> zDAzkb7P^~sFykGBV$2FiAIZHFt6iW%gw|^;DJcn6htCP|I2jxK291v6TtER|Z}5HR z3$QW21Av=lCKLK<9?h-o5DQdhF6aWst$jUWw=b0-zdg%~!IFjTD7hVd)q)qyb! zBaPXbgt>)B18X}0pL8;^fGn<=DrQd`lv&fpV1Uqa!8TeDK3X9sfyXRtY>^kvlVW=I zwIibK&OhIrrnKkm>X7W5U3L8;+v9`PAmwf<>d5|d5N8c7KgW5a^F!19eej}n~Eial>#a=X`FttEj;-X2Qp^@M+s-|+}8`1ubdl8$$Wf@7AG<{2VeI-0VPS_6{~?@XdF!R>p&VFz?W1_#L>IaJ zI_R#r8K8rVs)lOP3po`kjtGoEwLkd?69BA97c4V{g!^L8Q?aW=mYI1f$c`Lbu>$*q zg-B_e0S@qPdR#pV!rsTgL0%PW#y9W{F=!QQ0 zwn-s@1vXuN0AbF=<0={Ct~0_c{8=x%x@DiZlG(#Do!F?^5+3yt5WLwp)eDsdfp`dJ z?^08~Krj~>=a904T0x>Qcrz+%2c(PFbC2y#8w zKf%;VuiDAn{`%))vcFC$)9tpStjtB79FX3C=88p6k}icYj&O(Iw`&59qzxDGzH^-r zev4Z1eL3S51N3oy4QTu;mWS?`wb>Hxrfs6Bf@QJ~om>?&%aIs3O>?`ZHSwvJ$w}M{ z3IF8Nq@{02@HCMOlDSfQ`^=RN;+tpkur0^#cVPp%BU1%ZVyu*^@tQp1D{xPZfX3~^ z&zxB_TtmqqP4YWsDIL`0pIqEiom_K0x#wS7(4A39o*d<;;jaIt zUa##f0J!5@o^mh0VJhl0CZnBe`QE^~pVCt_7t<*_`Vrj(d(g9RVwYUc-L9E=&U5nW zHJ>yR?uVi$MIT5q8_7(#-P)w7pmIiWN6}v5Xrs$^Bld+`C=0q?aT5>6#+yS?pP#v} z|J+$ek_}jT9Xq`7;`$StC@DyNxM1YhAxM@r;Gw79CT&TvD0TT?y#=Rtuhq4AszH$o zG`wg%Hp@b<)rLie-K>r&?h~YS!3h%kE$G~pjUvoL9~h?3sTj5B4xolnl5ODhAC8p3 zcylGp3=9bv=YC+RhPr@MJe0VKLONc4l$fDnvLy7l4#$xHK^`-(vpf$TuMh%5I_!xfkW<+Wq3rRU1HF`$EH zvzKx6=|7^q&}&WK+F~lW6%F1tHwFrx|Hb{sj~}zz7Wff;&>WyVm}SQ@6~QAK1Ez%Vv3wjJ-8_`WX%wAwN>(0;e2wUhLdd+#1^;n5Yqth@JCV;fM^_VH^UmiKq zEPGwQb>6rmVtT1@3KT*L5sZaz9E{*#tPW463Mq~&D`_|k`PQ@|`}bmOgii-Y7k(dY zf+}MLo30!}AsUD*yWQC0q&@$2EFHPh zzvQb7L+V^e;WOoqkrAQ-z4JZ9D8j!e)1H2|8^=-T>i?EVp%f{LFEBU zaHVqVD^~n0_qY~}<^$LXs8^F})g+st0dywj3WeAR=5 zKQQkNX`z0T{f$Iu3*aEsBn&0=jpC^X727Lkfr0w<{U^0@6fP_FO_glsEs#&%T<%|5 zS;9Y){!=3r$T4uTtg?JgIm&NJS59K?>-uZ;fiOMT%$KGB;34O;U0ybO67pNOK`kic z1u_d%Ld?%#I#T>|PDiolOKSK1bjvaqNm9izN3TU&)j=7bI1K8vy)V4HyvP}aQb0rE z9k%96Xg5*E{!lv+r6+S~GVL*V2uo5-k*&1%>i}oZCyOt{+|o%saR+js3(<~bKZ`0l zKPGM(dLLCXRx4wNzR~LTQ^Da*%uQ~ao*pO+vFn=YSn9zFl!k7h09t!M;_LkzxYPb{ zGEb13&!vdv3PsXpNN<+qY99YC@ z3HmZk%_IW%4&@9`G={iE$>AO9(p!OFPu?wEblMgmmp^*Blq?9olF5mKd6i%WcodOx z6M<}T-Xsuo&MjkbRTyGmo=Ox`tg+HqTOjV;n!rJ3K9{uIf554-m`#1|ot_Fz#Zkml z8{HODbL?u_Dn-9TNoh1?0-(9b>i5BbivQIsy{Q0oDM-)n(tAhP6`^=220jyLa~vos z#(N%cmLWL-JtgLU_7Uv<)5suEWE)pQ!1YKHk#hg`(OJ&eCNJ%0^bu(`>=tngnql8B z&z_#FLnRfj@lboAOhg_@dYx@xp}6_(wogBnKBzK8XaZ@qnGHhDq2dSUB6nd~p5Viw zN1`;;kugFp$?;ZNe^Gzl5b)|MQkPre2w!w?3I^=}!P5iw^V7NuGPq1@U%nk>$WkW* zU_nT4QE2=>U(m>^Mn+C$)k`xHaye5v6{4t&Z!hSKOfRNZm_C_gplw?B zDklaK`T*$3b~8O>Z;8~p_LpsDH>*lZr}l(Sf&S!Hn-B$EeUY0Ri@?A&K4!a~z+cS@ z8e}qtWs3o0-V;J?>O6;fJ(%4B4+z{-*eygAHU-otg<&~f_i($;RwDDYyQqqie!h3C zxeX`!G>X7xLFFG5G}$TTowY|rE|rvf2}|$T{SU)a1AeI!urI^!IbzlX(%Bp`H3o_U zjk#fn_!8yRoTU{uJ=buh?pLYR?ahGHP=z+jxsBkt=^Pix|?w*D>Br zPBI>SjD)G~Q8Jtv;$qjm8Jhh@Tj_hvu==~6$DBpJvmwc(?QM=4 zDFy|f4j=Pv9;K4a=6EyOB!)@S&H^<1oJNsK_9llB(eGtF!1oADu@A=9{rx5<6^t9 z>179W=-~CYW zD@Q^=z?F?F^#D-EqO?#OQZ?3Hw8|4!Jl`ZsM~gEzWO0I~_k2vR zm(;lq3z~9xeLU(Xs<=N3r2Fy2N-+_A^SQ^`aAh4< zVTkRHi=NmP{QH;66z(#L?JW7Pq21h zM&>4F88(fewEMM0lCrKA3mLU@ydl5L6Rm@n$&{(^7!c~l)NTL6#rE!WhHf&|wdWRm z9BzSy7#%xTDxPlG9C{Gb{V;DB$b^t=}{^@AsF^| zX#dn>$mH)xl^|>3!bEd6!lxqY##wusk{r-z(=tezC^Gh&w1wA}3DPkul`)pHRI%}l zzeVn=0G{>&yDbkgUqc|~h>E6lUZQZvdZSPCz6$^)%E=K1X zMH!Bj035DdOZKK=_#pj%{sC|w3>(!Mpv*6uc-S6amN3j8{N7P2Fc%s6LP_ioTOSUq zGMqSr!~4?cjFn74^`cq%9z;C@aT!dCM%rCn4?`Vuho+3k$G#B&KEp=YK+AH$H}c{d<2e3y6m{gWeL`Uu zzK^e2{iQrIhHKnhN3io zySv#eWotK4b)Hs|uyitV2V7ToknN*l>ApxG05cE{;OeUhq05KySY3&NAE#1`P1DJ< z|L^*lCet`8^Ktjw7Hxhs2~_7F>;6PRAJai@TY-SzzyULmz?i~RYx}DM@eBlKm67pn+- z$cbi8xvayGnKKf#a|DH+o6OdGk{E3Db7WFOKl^Kh;Q-#>uDt4SsWmpG!W^-i=@G4* z617$M-~t9<)~9`E2GZ0m5;${(4?#8xxu40QIC zAil!|55BcJVf_edyYb8xE{*#}Z$;l*xAf~5^A-n)vtUAeD=?KZsdHQ{`3xoM+oror zdTir^;>lW`GP;9NXB825`T-Otr?;i%XKB2w-_tv(Dzu=<^DPQF28CnmiNOg3z$DZR znmK-hA=)iQk66TQxbv!YtD!BNYlC+aH)9kXZPxw5;HhULQZZ-ytD)>V@c6fNw0 zk&Yf~#RC7`2Kh4F=@;j1KE#<8=Dd!^8q5wxVQ>EWKzlj8hx?iD3VR})jk@o2XVE8i zZLZn$hCP3xpw=XlR_(uI)BbwEzYoeoHwtWHo{k5`SAl)xtkDUZ02`qysUSj@s+o)% zoK%esL%JvjLSq60uv zAq1tbkm8O*z710s_nBz^7Ko&#{Qw<@0Hi=b^Stbv+@oRiFr$lDLNW7(lnqBpfKu32 zOoQ%N>jXe2l}+=?d(?6Jz+H5(xv zbOktZCp1p@PN<8yGFGfz*Aqwl3neO?Tq- zgKCxyO{G0BHiAOw8yUFt(|f^}94oSbuur~+bZ8>b@G5-haMqJC)Dn8eKhfoaMZ^I) zhk^)%HLu8ny{@U$WjffQop}!pi4eY}#ML%O2jE#|j&>R4u2Wa^o6M%K0a78y*e@!@ zTi65B**pGb)=+yYpEWAv`2`nvsH*nsA4>?XX=Csg34xlka*~^%_J{MA^LGUDcwwPZ zLy`B#ne%XJ44kZG!NRqIPc>ol*Ti2MNcI%Zb-+`Tl%uldM@Viz?1<`cbfSYYwaj#< zjSo$eDm(NPhP6ru2uU1fRioT?X0oh`zJTt1<-r+MG#29WmK5Rec+Cw?PV$R#74?C2 zNFC}bebB~1p#Ac!O#NZ4DLoAiaz%-m<>?IqDSS8~%255R(2|Z~Jo`PZB*-c?s&Gn@ zu@aYJ_aPaWRhAu|<7AuDRp2LHK2A{j5_-y)S_uM6X!@Y&rZH%ave9t<{C?^I4zLxF znl1km0Kr0k=@fdjnuBHow4+QW^B!s&2>)J`VON$9-UM&;Fof|%X`xE-snmxB#$Q6# z9MmlJZA($}Z=#IF9$sCJb8Beesc{ECy;d9zdYDOZL%rK2k+zx!LhcS;zX5$ z@uj6$2ol%o`03m`{#(DcP;$mnDE0XAb{b4RNx_7&YN?ogKA#!RDRY4VWm1zWWJYxQ zyp&EwVvU_5%JRkp{`*#=6-FIw=_{bowLOj~8bjfR0#e}z&Ib^&S!e(f(wHBI<<_*c zw3smfqLWcn=wh3I-A$?4PsJA&0%YS=LK&~w(iR_M%L!|${n zdh~%r_zYodP1xWmv|}U@GI}q;=YiBU`Wz)J1hbOkXc}w5JN}=i%+BIHB7wI4y7>3jb_Y+k&?!M^nd|wS#qtY&(Q29sI1vfCg0RUy|1x204;-` zVDO(j_xGX#*46HnPT6FMD>FQ}PyK;49IXs;zkBGS#fcxw zbq#aIApiwU{FV(DO8%$5>KG zOz|N5btuU7xM!L{QP8!AUu<)8)?{c$n`0*+Xz)mfFtGdcBS&t!a}qsSGnnGilP;R8 zAcK@ass@nVA~*4<@O0L+Q3V#TPrTZ>;eui>o?ugW%h-~m=+A2Rh&wi6R1Anx>c9JTGc^LVJxrZlz38x=6 zqMn@<8qFcjcsBE##5#_eL**MvPEY!6UOu?Vmr;Y zgcb(=y&S`M-V9-eN88xB4B9&QRl#`PsHP>#z=L+S-(mNN7Of zy!p=0w_=OKZ*xx?P0#LFi5maYVd0ZF5VTXjR%qC_r>;SggMFOQy)&Rnipm+rf53k$}AE65y@_e`EhVINCPwqa4s`AsAV>>Ts#WsElGy4l;Y9is?M zdRiJ;OwRnNs#idJIi{)w9>Qjc*&2{=poh`FPMP9k_JdxU83a}jp@yee;KE&R>E zMYcflkg7zR(HhHW*pr%YsX8=$Eaxo)$@Ze8cpC)e|gI!tVptCsKm zwE;LNilmao3Dc?$Om&a>7o{1cuiB7X>swIfwd1omOimIT>CR(dO@Mv98=duMlF|C+ zuaTrCiw6#Q357LMFfMCXQRITnRr0II_GHgR)cLzJu27Vi4`y~Y5>NgP?P!)x`4M0w~ zRS>pE5$eE!`*m9tx`JZPgQ6x21m8J@!a__9ZqfHX8XjL6C;`k z_w?#2*41-aokAeoy(vH%<$H}ey{Bf5aaCDE+m*~Ma%ue!F*cZwlxw*4Z;euyB@C&r z9NjWKOAwO+a{73LOcf z-(hgP9=2&7(qq!^M9rU-5Pg00tWfU%M*x5!!ky>LX-l0VDz`qzHUjxd6B$E|n?Kq4D4<#; z`M${4U%` zoKjl5Xxi|#-yMqo(QsTxYCQ|UNtvi>*_0BBP7%QX@J1!%pLWA$Z?wE{^l^*nV||j4Wf2{(2I^%sdZ@6u*ldoAQU*(qBx98((?WJxjyPa@cLlQ#sNJ zH%)+4wnE+1drx_K4S!t&-qb?FT$u-l9Z2tuTU9^$u#vX~&|+!Pod}ON2bZ?uVB6|~ zU3t$O3rT6z+qx^uj?a%4b`;%cxTzCOwo_}f?i*5Odl)d03QgNE#AUBQ&^oxR>u?y_+7jYu?2kO5 z=!dW{TILIIuW?&|&Y2b}T(kD#evOm0%IhWJ;hTn4V7-;4F8Li=?6-B?igfFX*tP0W zE4GAV+~#LBrhdPsvfPjz)?$0whavDm2&!wS20WwY!|C4=ksg|k+Vv=dYJ;}^P{4-W zB??@LDLLgi|>K5=#Jks36 zI<)=5OzS|dBhwb0FBLASFZlH2B*;wd_AAdae?V=MAYoz9NdCz=-3puGdxxyolC*JN zL}&1NZOVA^J)irzaEN^<75l&CW%Fy3k#Ta(^(ZLH&Y8X~63uMUaEc&G2x9AN)B8Bg z<#6t{6T3+&A#dCm`te4h^XwNTR`$9-6U(nqxYo)ed+JbKYipn*0FQEfav_f+9 zPbQ8i1)zC3fI-b2^NB4=t`F~^2V<55WE|e3;jl!~-Pr{QJR)`rHS8ZIxTTiMIX`j(8e0s>}jk@lJPQ8R6mJ+umVxNU{ZAYg z0dhuaEFSPph1GNI}AM!op-^o8I9z0+cv<`WxW12h(=y zze`=nmsz|BR<7Op+ii4qtk+7uVDZ|{GG8QEmFV!7gX9Ml;RdQK%T^GNHx#i$ zb?0*{8=1iSBhZZKK(o&8l-K>^4P&@=?4{)9`gUewSV_uTAjRG4Q{z+@Cl4bBXE)#s zBOh#m*v#HYnn$58ijFv)rE1E7HQ^iQ)l#k9E-s5`9;^|CCYHwX+U)uu$`-}x8w_}a zW~&SIy(IK|npSvX=y5D{A3h9=^2~!;FkR3j}4n`f7F~uZ__G^l`4)j2RIPp%a zcJ5AaA4*KOZFf<|$YGJCu)&R{#{aPZU_F9vdz^cdS!YnUpVEG~b4my9gbEEimqB!d zb&>nS#PebL?4Hngw~g|L;w3Sq5CMPdW>nEyxCS%yUwEo__aQfg?B?i7ZQ z5CtR!q+7bXhmw}=kZuG)N*d|zZUz`qasX-gw&$Gp*Y}&bX0BoFy=TS!+z&YF`t;Fd ztXX9X3sF@W*@N(=Z`BwR3oqg!otW?TqWMJGgf!F6O7nhzkq-xrID~#VT^}qdi!vC1Dv&g$P>Kx?ZKJbBr2sqsuox7?Y{u=hXZPQ)p(-N1bu*?1i)0{fM$e)bWfR$RA~ zNNGDom^fDyd*9r^3N62I#l4^EROv5n#g)7XA9ls zm~$bkZGXpK9J=lOH{jM~=2h*mMP9lie(t< zh6KxJrO9zD6buv?wYDeHs{0z|Z0pjDiPg0;lAC{E{T|i&H{i*P@o^}_XqMt?wPHUe z%4TDJxs3kI4h#*_^xx3&Yk)OOAvkdhr?~t@`)D+<40&rTa4=F0 z*PRdh)p(=X{OwEK?`A3L+l$Dx^5WlT`ZO2>^Y>!JcB2OyW|ieeIU2~%#ylkL{ES?M z-+Buh{-FHdy;6%p&iK(ooZNhB`J|S@57hX%oq;1A%USYJ_{*oQWfOOE?yQtKl8l`p z`6=B@mbs6$1k6<--^sY0|B`{nfi+&8$V>ZMUgk@C`FIfoY%6T_ znA-ehX^dZqsdjvYf7qj;E6%qyCo{1$GyZARGzWfrXk#iz$sDzzBndF#8xNsXGv z^U4K2@hJzt3Wce;357x`$V7DOZ8aNLExP#0{eze45m%~0J4v) zB;!V%B%&R}sIh))+c%XweZ=d1{$jY-G?{>ny4XsM*oBx4A)MrV`1PRynwjA`j&P<7 z^KjmUiL}bbX3o~FujFh#f#2RYx*R(s zG^0%fj4t;hLM)`S1Qz*~{`1opN&6w;K@D=I;L82}hirnGM*~r4xEPWIaWalOU*L0eqv?FnSSpvNjQ=t^T~crMHFB_ZNRY6p z{``eALJusN#IR)$$*BlA=`|NyY{V`7f`EK%&7c1yym%IoiFfD5lqk zR$nT9ekb=ck&d5OpLnn-$$8Gvp#9L~_NVKGBgD_u`dF>eYv^;Mi}_iKfw zr(|iGC&ceZm9j;;;NV3T;P+ja6)0IbIHM(9Qy@5DJ? zAh*LujZV+I75-k8oDpxmqPpX-ABbgX)(EPR3)J#ut*SFoMj(fE)m7|llkM4ceL;1& z+@EqdS#7?vyY1FG-034VaFihAF%Kxgq#fk?t-38Kjb2rb*s)WlG8H|FZ>*^!OBKNq&M0%%kDk5I~ z32q0P^CHw$y=zWAxF^*Cj}>~H%;5xSA5O#{;C?Gffd{fH+Z@!fnSZ~YLlJEXDh8)z z2Uk>{Tzkv(+Nb9l|Kyp25u>){uyLn*NOkLfx?s9FZ*hj^==o(3Y{3Scl1~l~LOk{C z9%hr~Qab8jYat@Klx1^>2^A+7P@Umf?rQ9;mqXl+;Lk~Qfp?7V>#kJhXuXsKLsC3V zUFru=;|=DvdpXE!^ur)}TJFHv=e8A=Hv+B`^;^Ix z<$ixO86nv0EzRwR@OeC{m*#CUSaxtpe4gf)vpPw>(POGY(JudvTlH!n@3HjZe7+`a z2;s&Hc+@da`~_lx-#|dXVZ-lQ;}&7S>grZK4{kYC@cv{ooMv8!V7d!eu_vvU(+uI8 z*xj_!WQt-Mh1HB(bE%k9`lHX~lq|8hH)b!h`Kxi#i3iACCN#|jDs&gk43~O#^uMC$ zdrxhQiRi;9;SAdz;IH%jmleAQBw+^Ou^`-_=#(abfIwO59!Gam9bCcl&PF#YnD=IP z=m`)xQ)6C+1xpJ$Z@mjupuEM2>*6$8K*gM7PnKSP*?DMRB;R4UWHw3|bzEZ)m3lzvM9zUUPbWfX}-y)a#6D&J>&SmGCdiKpJE5^aNlt$x#W482Pc4P%$&ewpEtndPk1x^6e zRQ>hQ+zobSP|%pqdqh!>qcX2FPQ8+mP#!ek0J;xeRZ-O$1{yZ;dg zUU>p$XXO!~c*t%hLWJkIibUf=azX?(?+?VNqnWF9eT5(i=x`GC(Q$;1AP>z9lEK2r)vw{sx{#VGRxzTF6Sp&TSzc%A zXS?_eZUqZFj-OBpS^7+%?$2Gt7e2g4{a=% zN>3oeDvu2Yb(|N)y~N1336e7F$S*N{T1E>zLB4Yo8Wq8TyrJ8jR^0M7-PfnMIL;tr zj@C>8>qPQiJ^KcYX-T1;X}D`&M9&MvlX~kJ{RJ+AH7H%Mu$RbY=6&1|l{F+caKK#Mfd2F%)}1P4O2RY_;Zu3*Vz^Kg|d-()wBOL@x?1*<$OT z=g5(Aq|$p)n9=(LT#2t@aRhz|!Y>VJX?x9}OK%$02kKdpSNJLtzgS+<>^g zuHwxM&WP;%sm_?%ow@<>^u%?2Jz?{OhGP<0hy4NFj9RFV^b=CR>fK*qt3IInF;M~(9E{-c!j z+)2^0(Xk5eppO$%qvC`40*dd}e~`qEf(UapZ2)CtlCsE$m}8G)Hg`;lpFns|EIXka zQ5XnOt^xkxqFQsN@b*`L0A8i{?6{zxzwkn#{)#5<>_mTTRYG{K+ zV$>}U9b7ppIz9y)njL$rds|))6{!%RL-OeLMTb;FIxQ}Q@fLs_cX5j{IbZ)0?>1u^ zUTI+~<-#x{^s4;h@JMyc3fKD|@nJ8yx)Loi8RZJv*qwOE%>oMb=+TQ7aUxC-F*V#s zDQ7hE~K2tV^Idc*{y|A+-6G=dcm=*0{;u6*gDxtr17QDReSPE({K(tX^J zuLLtkVokx>Uyi-!Z}=jC>CI-JW4B$xq5K&4?QhxHjGm@y9s?U%4_+aL=~(nrk=oa8 z=W2eMxjCE8#Ohxjk>7Ys3P2&)y-pLy*oe92EF5tr)>wF`O&A$$F?^F@FWy*9(q^Z0 zBJ>T8GJnj8IR>r7Njx>h9+`gRx9yR8gZ2!V3VzgKj>;K>x5X6GdAc5fVbCn32&Tv+ z<<_l~;YVXB+yvc3_wuU;oiCL-(g+>isU8Abt_rhx-+ZIBktmXWUu2)|;|v5MB41Ju z7~j_Je5H^kFGXAW`4BzjqK6eWYB`p(^DnH-G6pNx(n&xmxyMK1M73V4^GW}xMUv6pt49*7QZ!1p&J>8vS;T=N$hYp!(RSybPIcw z11E!h_SyK_fr;H(%>Z@9NM{FdN49!y_${Z~u&t4HJKg~d&e%xNs=7R^YVb)!yB-8I^ie|6r*7ltK82^TL zH&9>?g~Ob&h@Q7*fr!Jaj&G%2ZX6Vx0gd$kMOh#p7_`vOcd)J=Q$F@vA$;Tzm(NL* zw(PB;3bAf3ADFY$*qM(6t2Z7?Kvxvn97L>JlvMmW1cho6#c$^$1e0ht&|g&wPa zP+~+Le3xp@0@4Rrd{0*MG}#Nzz>jvzLc}pk9fDy&zo%?_0NE+)@lZDV*zThl<6kKH z&|WX0W&V^#x4%io`-Yxt?jmd*JCmGi=L0mkVuB=wo4IeWkAm_j!z5(R?oWT8=0M;d zic^--p8i~UvTIgN(uecLl5xrkMmylIeYR4Y3X&3&VY&vZa*(}}z(WjU9%;iE3@X+` zvCx4g)q=%AT}*m#r7QwFn|>W6!B~{5z?m;oIFCnrH&55UtHVSU{37UozKgyS2oFjK zIQv-?5m?tb&1z-Zk0Kl({^)vLlcg30c&4VIp^Um5e%)slm$( z0{3lxZY{@kw`vcj)Dwpu(!?hnq)^wPBaD9XvjoCA4vt{cUm>E$qt{P-1MrRbyYZ;T|xJDq!XGUS>@9&fWM_V>J$qOhsmv+)zS22$Ed^|JKC=wsS!uz2UXH=w=l`KL$NT8*TtO$CH27 zh(aUEABESW9zQ(;^ZE-bFG2;gD5K#UMwh;?JC;hjSVR>Dcog$dEl~?eeRx=SnY#M+ z{Se}RvD)NX<@F|zN)vk%9u{SxwxZ)7Od_{+YU5JAI}BF!!!gD2P@t!l4Mcc^b`Dlo zRcUH>niO?Mn~fAIr@>0a5Er40R62FA@9G-NDMD^i67`62?PQaIrdAI;^zV!%(A`4{ zr6tjzyOz#inWNKuj`Lrnp_cw&e6W>F9TL`~4rgIv*f$7@(fV08H)Zt;@{Bfx;gtb= zrOB?i!Z08QuD{0IohSzPV+m&ooH%oe1Kf`V*V3AkVZribFeI`3PyYE~i*m}h4)&>% z`v#>lx%)E0FlNNmj5K*&H~ddZB9LBG`YxBGRpbIam!!wGdHdz*+jHGo{m82RQ<|tS zQI57V*C_(bJOVoyjU$3Tl67=h_gZj!pGt)Z40-Z*4H1wgas27FMTE7Q4`|^ z;RcJByD=bpf9WCHDi9&p->(T2GoA92h8py^A22pFuXIz!$Afs@ksVtk36(OMc$uX0 z*N)#oaBl3z!!;|7R*)ntL&HT92|ifUXeETZMHr`4CSNlyuP2P%yl0)n5DVI)Wh1bI3hpi;yT~a zy$c=Ag%)vBg5XF|WPyMnAWioG@!YOFzC_tyrYFd~cBH_t7smm)kHtUz^5B%J zG6likV&Aex*@3-dbg(Ui7bki+$Q9m0ZRzLH0mm22!Gm2eyi}!}w?b1@sYTB zTOA1?Eg^D=>F%aFka1oBj0t zta97~7(6-LK8LF1W$6lmchqLz+Z|f!4vfH1c;LY_-ft=1aE#N`Nsh)&;enNK_mV{z zX+0@FU6S7&z*aEzZ?2G?e>uz_Zm4i?r2RWCJYa}FddXjab4MJziK}RLXOHuvcOi#A zm7O{HEmHHJYNAg>h~aIfKQTFOu1T~iZMhZ~$sg!HIo%*lyw!cfPut5lh!X1`ufD|) z754RSa~}Gw{O!U%C*!y~s@8Y+8JsHKVV(#cJWP-wsP>p~nY%mkD&Ve6qO@$uah_ zn+)6S6vM_pP2}$G!EGF5j`{dKnN!{r!~^>yX1y=)#oo!r8bVsmMfOfy|?uk17IQC*Gd7LgPlvae|+8{Bc;b?JDukaRfw0O0w&NQQVoP zP=0AtF{CCB>YBQoz`h(Jnf;8%K$2L}la=af5mH#63GXUs3bZ!aS+35ZWcq{N5co;jyC3T^BS@l_ON+SGK zU9@ynWL1-L<++*6x?+6A@Q}o zWIu_lO%A7~M1jtITG;RRr^L;Q{^u$WRylH)akIZ3igAM=22M+8%*vxBHSyt!h{(7)niw|sQb`M@@h*Gf5oECJQ;vi$7 zZ&!YE`T>W#S&%t-S&<*&VUKs5F&uU!_K;PspM2wFFxA*kwgsi*Y!`Otu`mBZ@7HnE zp_=+x$b=o^@@op1>Xm5*qMHv5fi9gw^-z2zemS~L!Iz$h!~{fdGzl-8$lnE5jLD88 z7kVOOq+^Iuw{Fj0aE_oMJRjbeO8gr>XNd-NwBhyUi+&dHu8m}xMu zuu4dPN!g6@e$FbF94xa|-PQ}-i=!Lp2B?KYW=wJM!eLtI@2YU&Pd3_&r^`j#oIbtn zf@t>C^3=bQ-j&3Y?{YHM#D`NtLZsM?UJi*$oD#f1clt37-)%&o)MfSN&wm$MLGODI zAwWEanD0W6CyWH9137>OK#S3m7j`L2A=nrbFNr!>gu+M*cPsM;CVMbYtH}CI2tZ!R z=C|XO)fVMlgE`nZ6A&bGUIN|+VU0+a-Y#bFadS(H?(ZyIMVuZVXTF;b6d4}G7FJ6c z`g(r)np6M#!*J{beEN++^t-{h1bpfxxrbxRakq&YD{srEs^>Q(7vUCmH!1JQocTaeu$!gkh7RbEh_skDed za8%3&w6Dt~5`>4{ghS&}{=)K$+>#>ezFN#unynh7dVXn z=4`@_01x%@3>gj2B|Djsn?~Gh2oz+Q#Q{%W4QhV&zpsb|off4@uOuUcQTu(r%3v)2 zqgJN=p94h=PT=Yo(^|G-dY4EWd8eHEVj~PoN11)XOeN<_N_knIWr#i5w0>b~WV}Rq z@QdN1e4d;#F)R6LBNkL|C<~EWtv(`nvg@cNJ;d-viP|my4+rLgXVL06WHs(njW?(j z*mz;Em!HeA9|`Clv&7VYsVPH?f}Cjd27}`)wz&{wC;0<~C%U~YY=Lb?=XawUcIXVN zd8!Q2>^R&My#0Z_UbUpwB0(XWA-O+rzK-F@0giI z(?Pw#ke=yddGTn;%WmcJX*3z+f*plU+InAm`ROk_9to(3BJ~N85T1G7%-aa)n9xQg zKRd^e3E|(z>y2tOU>-o3EJPU=4u+c`5IS9I|Lx_gnX47r0k)E67&SoG(RW%}=%ukmc6_r>>OIh8wd#;nn1GF%mFJj!u!7+$fpaLq2p}nV-x|)3`9N#+`9sODdp6Pgc?x@VLp)zRqjrw> zO?{uR*hbfJv68KG#P|n6r+@VX@cI-Uzg|3r+9kH4~cQpR` zN<2h+6+zLL86_T>^6xko*RQ~Ew__o^b(C-4GluXD`8MgqsSH$a@YDAEhD2keUavdD zv0RDW;Z@tY`fD~Hi1gl*aE&NN9I+qMZh&nE-o!S8sTCvY)4Y(}xg~4{tX>;7Ew}H+ zY{miXIz(5$W|GmQrzk|`CM$%@2NOjH>&do>z}6NEKpn_K=Lbog1>eTd_4~~l1B%Lg z43de6*Vm&AP$-Y|RD~zELC#zBVBTSIR6*%FKm#7E>c;=1R1UdWIvJA#V6O&3Y#b#8 z^+kaWly=zOdd^a^VY_OBe|lWZ@X-=T*rka4=jeWXT>sJbPk3joBxNn5BRcQs?HLXI zUyjD^bc_CAGSFX2T72weZ1gC8YIv8ud7%0A!SJ3u{_v|@neUzWMzah5q%LBhY8d=r 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

  • 8A-?8%G?DSTrXo|z(nGjvo{g*V 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 F{C@~QOG*F$ diff --git a/docs/assets/apache_incubator.png b/docs/assets/apache_incubator.png deleted file mode 100644 index 987c79e3ad3130904ea4ea5e3062d59d2bae805b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8249 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∋cRvxE@Y9J1I1kD#l<^ZV3BwB2H@SQwaVZ z%?>GG#&415H{3%o+ms$G4Gs4Q8^6KPbw4;OgYsWmye3&UyuH~t9!7i+lnX92a*f+td{-<-Np#`B_LFJr zb3L$Vt||FZS4snaWUGH!@txI#pgusj=Cv`m!ix5o+rzbsFq*^7>CRcX^TsYNDKtD@ zFNtV>a9;en)Kd!v!w1Wj?wmpbyntR=pylpnga*%iMr7OSAegmjbHaHh%w0`w`e2_od=vU&A;_$0xI@i*DGXrqWUayRIF(P^*`zbyb3+ZgYAQtY8W@)f?_rOOrQfE{LWI zic2`HOKJ%kofyfbTSauIqc)#Z=BX0PmvP>l;dgHKW38s#6IuxH%dR`;&BhbwS+5E> zSVpfqRe$c)?&*ntFzD!R!#x@)BtucKKITaU-EUi-rJ5;nz&v36qIrLLDdDBpowM3k z+l1*I-1FRN(+j+(ns?T7t7@!qZ>5gv@10)TaUah02(+_aT#x=cF!tTw}#Ji z)lW}W6g;fnGcZ70cd%p)I@rY)cYt(3(YQ$l>iOWxHe=4!WusGT!`7KF7qE;0+NN0R zPY}`Tu(^+iXcQQ@GFj_fyJ%gkc8`agq%$F4Gy$`!Y2tiImO7a}IT}sX3R59IV1ekW z=bHOW$u)K<0)hR+P(5?M#9^dnkpV!*=l%OOHpP8(!aT#_GC98yZ7lkT>)hW!Gkks# zRmLiGw7* zsCpthfx;70YI#a4Rw2f*-EI**2dA)vaBIdc=1ByDpJ${Hycr*=9NI z9OWPB&QCA!#a7L)zp+#aNWDk*J16^|lPt|X2b2CGVe%E>kBQk=4aE&GM@ghmjx#VP z>ib{*$HBeZxU|si+`V z$=}U3=?`3d4X|;R@&_*dz{P*?u>W6y3$J0sjsC}=-A~^5DH$2YDUl36h6kt4p~djj z^L4U)P4OuOZoI;$%JgjuJ7Vf{(wkbD$m)mup>h*cA~+DQ0eaV97CQL zKb@?skE2oHxwR>da2#nI$On=|vg+lV^56R*k@UC27u6pwG-9(Jt)4$;9FtlO3k6FP z8oDOjiJk6xHvexv`3vv3M|@ZA&B6YRFnr?Ni=TFv|0u2x;Oa1a@gL^mJBA-0h#ca$ z(IoVe*fBx)Zq5JU;7u@&bonQ7ihhT`|9L zHt;P4`#**EN5tQy_(#OYR`o}VkD=oaP#ojUAE5XH6vz1R$K4&{!*}2M2Ppmk#ZOG{ z52H9nj6aOx7%~3;2ozBei*u+l>pCp1xBpK{{vZCbZ0>bh^dn}L78s{KhLZn%9nERugWbWpE9bdsl&WdIBk}(@uz`ty!QlN_31QzOd=d@Q W0&nrl%YWhiNr}ln&VQu;?Ee5woX;5m diff --git a/docs/assets/asf_feather.png b/docs/assets/asf_feather.png deleted file mode 100644 index c0ebf11a6478c337f6897cd2ab8a221bd0fccd3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1209 zcmV;q1V;ObP)d>vFD`j1DecaD#j#%b0Y#fA8UHTmu!h7hD)(03A$P% z5N9BOuveZce;oC|HfC>dWA^RYXa zlyrtK3ZW!~q7q87y?)2>QdOVazHr_uErxq70*&}c1IvR4Nx&jOoc&SG#5(|n1rJZZ zXJYYOY2BC`W0OS6)bOwQFkT{%NYKPgoouLo?|7*yFiw?UCg$$=qWd8lZ$~YJM=OvZ zkp*-5!mLjYecJc_kl;@3(01#>+1pdkq6BeCvajP1iPD*)%qvHSDtwgZAeqYXw7 zLlOMPW~>wff+1!I^oYvS^G_W(eRbP@Gi86n;!J{D;fY9a1WO-Da5s4z9!EfZKrhBY zP7M^MU&355UW&MkVF>aIV)p}7(gqB5N;o~gm>uuxoVd3tQ1UiE!KD=;L3c-l)p7-A z1kmvO!+hwg0z*hIKoSf^v2z|jPU!7T41?XRCq5fA9bDCiUG9d-9)~x#KSo>o`Yx%Q zzjK9T?NHcdaBKah#w=OQx!Of}sXgR1^?4v_NpN@~^XSgAR=4cFzrV;;1;&xjryKHZ zUfj$J(S&j^nc{I>9`}BMu@7`aw{%`gTk~+(W$?xJ?VSnIm57ds#kHTTncCWszIk$I zdfMVM>B;-NIREUiH@>VI%#zjE(tA9PSfZn4QuSUOUNlZ{+hXy%hJ*Sl0w^~!SB*^x zdMXIbm0i&=)1pc^u=%&w`_0+GN}igVolp~Nt5|4u!D<3BRU{ljIFhc_Z?ZpU^VMQd zS>6D6rty`9DGh}XY{F~pFIClFL)OOTS2t8vJF9y0AE39i3=+g)aI zU^LMGYE|>rVW(8Jr2wase+FGWMhwoGy>{Lix_`Z1APo(Vuj7j0Gul#+E_%1_>rwv! X^q%MfV+z}e00000NkvXXu0mjf=4CS~ diff --git a/docs/assets/color_logo_with_text.png b/docs/assets/color_logo_with_text.png deleted file mode 100644 index 88b28f8a1bec05d2f764ab24a1666905ef71b3c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14817 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®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