From af878a96cfca897906a57363c0754efe117dbeea Mon Sep 17 00:00:00 2001 From: Xinwei Xiong <3293172751NSS@gmail.com> Date: Fri, 2 Feb 2024 19:47:16 +0800 Subject: [PATCH] feat: add architecture layers (#1860) * feat: add architecture layers * feat: add architecture layers * feat: add architecture layers * feat: add .gitignore file * feat: add .gitignore file * feat: fix openim logs and ci * feat: fix openim logs and ci * feat: support openim readme docs Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com> * Update main.go --------- Signed-off-by: Xinwei Xiong (cubxxw) <3293172751nss@gmail.com> --- CONTRIBUTING-zh_CN.md | 33 ++++ CONTRIBUTING.md | 211 +++++++++++++++++----- README-zh_CN.md | 58 ++++-- README.md | 39 +++- docs/README.md | 1 - docs/README_ar.md | 67 ------- docs/README_cs.md | 67 ------- docs/README_da.md | 67 ------- docs/README_de.md | 66 ------- docs/README_el.md | 67 ------- docs/README_eo.md | 67 ------- docs/README_es.md | 67 ------- docs/README_fa.md | 67 ------- docs/README_fi.md | 67 ------- docs/README_fr.md | 66 ------- docs/README_hu.md | 67 ------- docs/README_id.md | 67 ------- docs/README_it.md | 67 ------- docs/README_ja.md | 67 ------- docs/README_ko.md | 67 ------- docs/README_ml.md | 67 ------- docs/README_nl.md | 67 ------- docs/README_pl.md | 67 ------- docs/README_pt_BR.md | 67 ------- docs/README_ru.md | 67 ------- docs/README_tr.md | 67 ------- docs/README_ua.md | 67 ------- docs/README_vi.md | 67 ------- docs/README_zh_CN.md | 67 ------- docs/README_zh_TW.md | 67 ------- docs/contributing/CONTRIBUTING-JP.md | 33 ++++ docs/contributing/CONTRIBUTING-PL.md | 33 ++++ docs/images/Open-IM-Servers-on-System.png | Bin 21614 -> 0 bytes docs/images/Open-IM-Servers-on-docker.png | Bin 10172 -> 0 bytes docs/images/architecture-layers.png | Bin 0 -> 293222 bytes docs/images/build.png | Bin 62555 -> 0 bytes docs/images/docker_build.png | Bin 58699 -> 0 bytes docs/readme/README-UA.md | 7 + 38 files changed, 346 insertions(+), 1742 deletions(-) create mode 100644 CONTRIBUTING-zh_CN.md delete mode 100644 docs/README_ar.md delete mode 100644 docs/README_cs.md delete mode 100644 docs/README_da.md delete mode 100644 docs/README_de.md delete mode 100644 docs/README_el.md delete mode 100644 docs/README_eo.md delete mode 100644 docs/README_es.md delete mode 100644 docs/README_fa.md delete mode 100644 docs/README_fi.md delete mode 100644 docs/README_fr.md delete mode 100644 docs/README_hu.md delete mode 100644 docs/README_id.md delete mode 100644 docs/README_it.md delete mode 100644 docs/README_ja.md delete mode 100644 docs/README_ko.md delete mode 100644 docs/README_ml.md delete mode 100644 docs/README_nl.md delete mode 100644 docs/README_pl.md delete mode 100644 docs/README_pt_BR.md delete mode 100644 docs/README_ru.md delete mode 100644 docs/README_tr.md delete mode 100644 docs/README_ua.md delete mode 100644 docs/README_vi.md delete mode 100644 docs/README_zh_CN.md delete mode 100644 docs/README_zh_TW.md create mode 100644 docs/contributing/CONTRIBUTING-JP.md create mode 100644 docs/contributing/CONTRIBUTING-PL.md delete mode 100644 docs/images/Open-IM-Servers-on-System.png delete mode 100644 docs/images/Open-IM-Servers-on-docker.png create mode 100644 docs/images/architecture-layers.png delete mode 100644 docs/images/build.png delete mode 100644 docs/images/docker_build.png create mode 100644 docs/readme/README-UA.md diff --git a/CONTRIBUTING-zh_CN.md b/CONTRIBUTING-zh_CN.md new file mode 100644 index 0000000000..ee3c0b8f85 --- /dev/null +++ b/CONTRIBUTING-zh_CN.md @@ -0,0 +1,33 @@ +# How do I contribute code to OpenIM + +

+ Englist · + 中文 · + Українська · + Česky · + Magyar · + Español · + فارسی · + Français · + Deutsch · + Polski · + Indonesian · + Suomi · + മലയാളം · + 日本語 · + Nederlands · + Italiano · + Русский · + Português (Brasil) · + Esperanto · + 한국어 · + العربي · + Tiếng Việt · + Dansk · + Ελληνικά · + Türkçe +

+ + + +

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ee275e7ada..f7d2c07492 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,6 +1,38 @@ -# Contributing to Open-IM-Server - -So, you want to hack on Open-IM-Server? Yay! +# How do I contribute code to OpenIM + +

+ Englist · + 中文 · + Українська · + Česky · + Magyar · + Español · + فارسی · + Français · + Deutsch · + Polski · + Indonesian · + Suomi · + മലയാളം · + 日本語 · + Nederlands · + Italiano · + Русский · + Português (Brasil) · + Esperanto · + 한국어 · + العربي · + Tiếng Việt · + Dansk · + Ελληνικά · + Türkçe +

+ + + +

+ +So, you want to hack on open-im-server? Yay! First of all, thank you for considering contributing to our project! We appreciate your time and effort, and we value any contribution, whether it's reporting a bug, suggesting a new feature, or submitting a pull request. @@ -12,7 +44,7 @@ This document provides guidelines and best practices to help you contribute effe ## 📇Topics -- [Contributing to Open-IM-Server](#contributing-to-open-im-server) +- [How do I contribute code to OpenIM](#how-do-i-contribute-code-to-openim) - [📇Topics](#topics) - [What we expect of you](#what-we-expect-of-you) - [Code of ConductCode of Conduct](#code-of-conductcode-of-conduct) @@ -32,13 +64,13 @@ This document provides guidelines and best practices to help you contribute effe ## What we expect of you -We hope that anyone can join Open-IM-Server , even if you are a student, writer, translator +We hope that anyone can join open-im-server , even if you are a student, writer, translator -Please meet the minimum version of the Go language published in [go.mod](./go.mod). If you want to manage the Go language version, we provide tools to install [gvm](https://github.com/moovweb/gvm) in our [Makefile](./Makefile) +Please meet the minimum version of the Go language published in [go.mod](./go.mod). If you want to manage the Go language version, we provide tools tHow do I contribute code to OpenIMo install [gvm](https://github.com/moovweb/gvm) in our [Makefile](./Makefile) -You'd better use Linux OR WSL as the development environment, Linux with [Makefile](./Makefile) can help you quickly build and test Open-IM-Server project. +You'd better use Linux OR WSL as the development environment, Linux with [Makefile](./Makefile) can help you quickly build and test open-im-server project. -If you are familiar with [Makefile](./Makefile) , you can easily see the clever design of the Open-IM-Server Makefile. Storing the necessary tools such as golangci in the `/tools` directory can avoid some tool version issues. +If you are familiar with [Makefile](./Makefile) , you can easily see the clever design of the open-im-server Makefile. Storing the necessary tools such as golangci in the `/tools` directory can avoid some tool version issues. The [Makefile](./Makefile) is for every developer, even if you don't know how to use the Makefile tool, don't worry, we provide two great commands to get you up to speed with the Makefile architecture, `make help` and `make help-all`, it can reduce problems of the developing environment. @@ -52,7 +84,7 @@ In accordance with the naming conventions adopted by OpenIM and drawing referenc #### Code and doc contribution -Every action to make project Open-IM-Server better is encouraged. On GitHub, every improvement for Open-IM-Server could be via a [PR](https://github.com/openimsdk/open-im-server/pulls) (short for pull request). +Every action to make project open-im-server better is encouraged. On GitHub, every improvement for open-im-server could be via a [PR](https://github.com/openimsdk/open-im-server/pulls) (short for pull request). + If you find a typo, try to fix it! + If you find a bug, try to fix it! @@ -67,8 +99,8 @@ Every action to make project Open-IM-Server better is encouraged. On GitHub, eve #### Where should I start? -+ If you are new to the project, don't know how to contribute Open-IM-Server, please check out the [good first issue](https://github.com/openimsdk/open-im-server/issues?q=is%3Aopen+label%3A"good+first+issue"+sort%3Aupdated-desc) label. -+ You should be good at filtering the Open-IM-Server issue tags and finding the ones you like, such as [RFC](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+RFC+label%3ARFC) for big initiatives, features for [feature](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+label%3Afeature) proposals, and [bug](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+label%3Abug+) fixes. ++ If you are new to the project, don't know how to contribute open-im-server, please check out the [good first issue](https://github.com/openimsdk/open-im-server/issues?q=is%3Aopen+label%3A"good+first+issue"+sort%3Aupdated-desc) label. ++ You should be good at filtering the open-im-server issue tags and finding the ones you like, such as [RFC](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+RFC+label%3ARFC) for big initiatives, features for [feature](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+label%3Afeature) proposals, and [bug](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+label%3Abug+) fixes. + If you are looking for something to work on, check out our [open issues](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc). + If you have an idea for a new feature, please [open an issue](https://github.com/openimsdk/open-im-server/issues/new/choose), and we can discuss it. @@ -85,7 +117,7 @@ When documenting a new design, we recommend a 2-step approach: 1. Use the short-form RFC template to outline your ideas and get early feedback. 2. Once you have received sufficient feedback and consensus, you may use the longer-form design doc template to specify and discuss your design in more details. -In order to contribute a feature to Open-IM-Server you'll need to go through the following steps: +In order to contribute a feature to open-im-server you'll need to go through the following steps: + Discuss your idea with the appropriate [working groups](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q) on the working group's Slack channel. + Once there is general agreement that the feature is useful, create a GitHub issue to track the discussion. The issue should include information about the requirements and use cases that it is trying to address. @@ -95,13 +127,27 @@ But keep in mind that there is no guarantee of it being accepted and so it is us ## Getting Started -To propose PR for the Open-IM-Server item, we assume you have registered a GitHub ID. Then you could finish the preparation in the following steps: +To propose PR for the open-im-server item, we assume you have registered a GitHub ID. Then you could finish the preparation in the following steps: + +1. Fork the repository(open-im-server) + +2. **CLONE** your own repository to main locally. Use `git clone https://github.com//open-im-server.git` to clone repository to your local machine. Then you can create new branches to finish the change you wish to make. + +3. **Initialize Git Hooks with `make init-githooks`** + + After cloning the repository, it's recommended to set up Git hooks to streamline your workflow and ensure your contributions adhere to OpenIM's community standards. Git hooks are scripts that run automatically every time a particular event occurs in a Git repository, such as before a commit or push. To initialize Git hooks for the OpenIM server repository, use the `make init-githooks` command. -1. Fork the repository(Open-IM-Server) + - **Enabling Git Hooks Mode**: By running `make init-githooks` and entering `1` when prompted, you enable Git hooks mode. This action will generate a series of hooks within the `.git/hooks/` directory. These hooks impose certain checks on your commits and pushes, ensuring they meet the quality and standards expected by the OpenIM community. For instance, commit hooks might enforce a specific commit message format, while push hooks could check for code style or linting issues. -2. **CLONE** your own repository to main locally. Use `git clone https://github.com//Open-IM-Server.git` to clone repository to your local machine. Then you can create new branches to finish the change you wish to make. + - **Benefits for First-Time Contributors**: This setup is especially beneficial for new contributors. It guides you to make professional, community-standard-compliant Pull Requests (PRs) and PR descriptions right from your first contribution. By automating checks and balances, it reduces the chances of common mistakes and speeds up the review process. -3. **Set Remote** upstream to be `https://github.com/openimsdk/open-im-server.git` using the following two commands: + - **Disabling Git Hooks**: If for any reason you wish to remove the Git hooks, simply run `make init-githooks` again and enter `2` when prompted. This will delete the existing Git hooks, removing the automatic checks and constraints from your Git operations. However, keep in mind that manually ensuring your contributions adhere to community standards without the aid of Git hooks requires diligence. + + > [!NOTE] Utilizing Git hooks through the `make init-githooks` command is a straightforward yet powerful way to ensure your contributions are consistent and high-quality. It's a step towards fostering a professional and efficient development environment in the OpenIM project. + + + +4. **Set Remote** upstream to be `https://github.com/openimsdk/open-im-server.git` using the following two commands: ```bash ❯ git remote add upstream https://github.com/openimsdk/open-im-server.git @@ -112,18 +158,18 @@ To propose PR for the Open-IM-Server item, we assume you have registered a GitHu ```bash ❯ git remote -v - origin https://github.com//Open-IM-Server.git (fetch) - origin https://github.com//Open-IM-Server.git (push) + origin https://github.com//open-im-server.git (fetch) + origin https://github.com//open-im-server.git (push) upstream https://github.com/openimsdk/open-im-server.git (fetch) upstream no-pushing (push) ``` Adding this, we can easily synchronize local branches with upstream branches. -4. Create a new branch for your changes (use a descriptive name, such as `fix-bug-123` or `add-new-feature`). +5. Create a new branch for your changes (use a descriptive name, such as `fix-bug-123` or `add-new-feature`). ```bash - ❯ cd Open-IM-Server + ❯ cd open-im-server ❯ git fetch upstream ❯ git checkout upstream/main ``` @@ -136,7 +182,8 @@ To propose PR for the Open-IM-Server item, we assume you have registered a GitHu Make any change on the `new-branch` then use [Makefile](./Makefile) build and test your codes. -5. **Commit your changes** to your local branch, lint before committing and commit with sign-off + +6. **Commit your changes** to your local branch, lint before committing and commit with sign-off ```bash ❯ git rebase upstream/main @@ -145,7 +192,7 @@ To propose PR for the Open-IM-Server item, we assume you have registered a GitHu ❯ git commit -a -s -m "message for your changes" # -s adds a Signed-off-by trailer ``` -6. **Push your branch** to your forked repository, it is recommended to have only one commit for a PR. +7. **Push your branch** to your forked repository, it is recommended to have only one commit for a PR. ```bash # sync up with upstream @@ -177,12 +224,78 @@ To propose PR for the Open-IM-Server item, we assume you have registered a GitHu ❯ git rebase upstream/main # rebase the current branch to upstream/main branch ❯ git add -A ❯ git commit -m -s "feat: feature two" - # then create pull request, and merge ``` -7. **Open a pull request** to `openimsdk/open-im-server:main` + **Verifying Your Pull Request with `make all` Command** + + Before verifying, you may need to complete the basic deployment of OpenIM to get familiar with the deployment status of OpenIM. Please read [this deployment document](https://docs.openim.io/zh-Hans/guides/gettingStarted/imSourceCodeDeployment), which will tell you how to deploy OpenIM middleware and OpenIM services in detail + + Before submitting your Pull Request (PR), it's crucial to ensure that it passes all the necessary checks and verifications to maintain the quality and integrity of the OpenIM server project. To facilitate this process, we have encapsulated a series of validation steps into the `make all` command. + + - **Purpose of `make all` Command**: The `make all` command serves as a comprehensive pre-PR verification tool. It sequentially executes a variety of tasks designed to scrutinize your changes from multiple angles, ensuring they are ready for submission. + + - **Included Commands**: + - `tidy`: Cleans up the module by removing unused dependencies. + - `gen`: Generates necessary files from templates or specifications, ensuring that your codebase is up-to-date with its dependencies. + - `add-copyright`: Checks for and adds copyright notices to files, ensuring compliance with legal requirements. + - `verify`: Verifies the integrity and consistency of the code, dependencies, and various checks. + - `test-api`: Runs API tests to ensure that your changes do not break any existing functionality and adhere to the expected behaviors. + - `lint`: Analyzes the code for potential stylistic or programming errors, enforcing the project's coding standards. + - `cover`: Measures the code coverage of tests, helping you understand how much of the code is being tested. + - `restart`: (Optionally) restarts services or applications to ensure that changes are correctly applied and functioning in a live environment. + + - **Executing the Command**: To run the `make all` command, simply navigate to the root directory of your cloned repository in your terminal and execute: + ```bash + make all + ``` + This command will sequentially perform all the listed actions, outputting any warnings or errors encountered during the process. It's a vital step to catch any issues early and ensure your contribution meets the quality standards set by the OpenIM community. + + - **Benefits**: By using `make all` for pre-PR verification, you significantly increase the likelihood of your PR being accepted on the first review. It not only demonstrates your commitment to quality but also streamlines the review process by minimizing back-and-forth due to common issues that can be caught automatically. + + + **Troubleshooting Git Push Failures** + + When working with Git, encountering errors during push operations is not uncommon. Two primary reasons you might face push failures are due to firewall restrictions or authentication issues. Here’s how you can troubleshoot and resolve these problems. + + **Firewall Errors** + + If you're behind a corporate firewall or your network restricts certain types of traffic, you might encounter issues when trying to push your changes via HTTPS. This is because firewalls can block the ports used by the HTTPS protocol. To resolve this issue, you can configure Git to use a proxy. + + If you have a local proxy server set up, you can direct Git to use it by setting the `https_proxy` and `http_proxy` environment variables. Open your terminal or command prompt and run the following commands: + + ```bash + export https_proxy="http://127.0.0.1:7890" + export http_proxy="http://127.0.0.1:7890" + ``` + + Replace `127.0.0.1:7890` with the address and port of your proxy server. These commands set the proxy for the current session. If you want to make these changes permanent, add them to your `.bashrc`, `.bash_profile`, or equivalent shell configuration file. + + **Using SSH Instead of HTTPS** + + An alternative to using HTTPS is to set up an SSH connection for Git operations. SSH connections are often not blocked by firewalls and do not require proxy settings. Additionally, SSH provides a secure channel and can simplify the authentication process since it relies on SSH keys rather than username and password credentials. + + To use SSH with Git, you first need to generate an SSH key pair and add the public key to your GitHub account (or another Git hosting service). + + 1. **Generate SSH Key Pair**: Open your terminal and run `ssh-keygen -t rsa -b 4096 -C "your_email@example.com"`, replacing `your_email@example.com` with your email. Press enter to accept the default file location and passphrase prompts. + + 2. **Add SSH Key to SSH-Agent**: Ensure the ssh-agent is running with `eval "$(ssh-agent -s)"` and then add your SSH private key to the ssh-agent using `ssh-add ~/.ssh/id_rsa`. + + 3. **Add SSH Key to GitHub**: Copy your SSH public key to your clipboard with `cat ~/.ssh/id_rsa.pub | clip` (Windows) or `pbcopy < ~/.ssh/id_rsa.pub` (Mac). Go to GitHub, navigate to Settings > SSH and GPG keys, and add a new SSH key, pasting your key into the field provided. + + 4. **Switch to SSH in Your Repository**: Change your repository's remote URL from HTTPS to SSH. You can find the SSH URL in your repository settings on GitHub and use `git remote set-url origin git@github.com:username/repository.git` to switch. + + **Authentication Errors** + + If you're experiencing authentication errors, it might be due to missing or incorrect credentials. Ensure you have added your SSH key to your Git hosting service. You can test your SSH connection with `ssh -T git@github.com` (replace `github.com` with your Git hosting service's domain). If successful, you'll receive a welcome message. + + For HTTPS users, check that your username and password (or personal access token for services like GitHub that no longer accept password authentication for Git operations) are correct. + +8. **Open a pull request** to `openimsdk/open-im-server:main` It is recommended to review your changes before filing a pull request. Check if your code doesn't conflict with the main branch and no redundant code is included. + + > [!TIP] There is a [good blog post documenting](https://nsddd.top/posts/participating-in-this-project/) the entire push contribution process. + ## Style and Specification @@ -190,15 +303,15 @@ We divide the problem into security and general problems: #### Reporting security issues -Security issues are always treated seriously. As our usual principle, we discourage anyone to spread security issues. If you find a security issue of Open-IM-Server, please do not discuss it in public and even do not open a public issue. +Security issues are always treated seriously. As our usual principle, we discourage anyone to spread security issues. If you find a security issue of open-im-server, please do not discuss it in public and even do not open a public issue. Instead we encourage you to send us a private email to info@openim.io to report this. #### Reporting general issues -To be honest, we regard every user of Open-IM-Serveras a very kind contributor. After experiencing Open-IM-Server, you may have some feedback for the project. Then feel free to open an issue via [NEW ISSUE](https://github.com/openimsdk/open-im-server/issues/new/choose). +To be honest, we regard every user of open-im-serveras a very kind contributor. After experiencing open-im-server, you may have some feedback for the project. Then feel free to open an issue via [NEW ISSUE](https://github.com/openimsdk/open-im-server/issues/new/choose). -Since we collaborate project Open-IM-Server in a distributed way, we appreciate **WELL-WRITTEN**, **DETAILED**, **EXPLICIT** issue reports. To make the communication more efficient, we wish everyone could search if your issue is an existing one in the searching list. If you find it existing, please add your details in comments under the existing issue instead of opening a brand new one. +Since we collaborate project open-im-server in a distributed way, we appreciate **WELL-WRITTEN**, **DETAILED**, **EXPLICIT** issue reports. To make the communication more efficient, we wish everyone could search if your issue is an existing one in the searching list. If you find it existing, please add your details in comments under the existing issue instead of opening a brand new one. To make the issue details as standard as possible, we setup an [ISSUE TEMPLATE](https://github.com/OpenIMSDK/.github/tree/main/.github/ISSUE_TEMPLATE) for issue reporters. You can find three kinds of issue templates there: question, bug report and feature request. Please **BE SURE** to follow the instructions to fill fields in template. @@ -206,20 +319,20 @@ To make the issue details as standard as possible, we setup an [ISSUE TEMPLATE]( + bug report + feature request -+ Open-IM-Server performance issues ++ open-im-server performance issues + feature proposal + feature design + help wanted + doc incomplete + test improvement -+ any questions on Open-IM-Server project ++ any questions on open-im-server project + and so on -Also, we must be reminded when submitting a new question about Open-IM-Server, please remember to remove the sensitive data from your post. Sensitive data could be password, secret key, network locations, private business data and so on. +Also, we must be reminded when submitting a new question about open-im-server, please remember to remove the sensitive data from your post. Sensitive data could be password, secret key, network locations, private business data and so on. #### Commit Rules -Actually in Open-IM-Server, we take two rules serious when committing: +Actually in open-im-server, we take two rules serious when committing: **🥇 Commit Message:** @@ -262,7 +375,7 @@ An example for this could be: #### PR Description -PR is the only way to make change to Open-IM-Server project files. To help reviewers better get your purpose, PR description could not be too detailed. We encourage contributors to follow the [PR template](https://github.com/OpenIMSDK/.github/tree/main/.github/PULL_REQUEST_TEMPLATE.md) to finish the pull request. +PR is the only way to make change to open-im-server project files. To help reviewers better get your purpose, PR description could not be too detailed. We encourage contributors to follow the [PR template](https://github.com/OpenIMSDK/.github/tree/main/.github/PULL_REQUEST_TEMPLATE.md) to finish the pull request. You can find some very formal PR in [RFC](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+RFC+label%3ARFC) issues and learn about them. @@ -311,11 +424,11 @@ git() { #### Docs Contribution -The documentation for Open-IM-Server includes: +The documentation for open-im-server includes: -+ [README.md](https://github.com/openimsdk/open-im-server/blob/main/README.md): This file includes the basic information and instructions for getting started with Open-IM-Server. -+ [CONTRIBUTING.md](https://github.com/openimsdk/open-im-server/blob/main/CONTRIBUTING.md): This file contains guidelines for contributing to Open-IM-Server's codebase, such as how to submit issues, pull requests, and code reviews. -+ [Official Documentation](https://doc.rentsoft.cn/): This is the official documentation for Open-IM-Server, which includes comprehensive information on all of its features, configuration options, and troubleshooting tips. ++ [README.md](https://github.com/openimsdk/open-im-server/blob/main/README.md): This file includes the basic information and instructions for getting started with open-im-server. ++ [CONTRIBUTING.md](https://github.com/openimsdk/open-im-server/blob/main/CONTRIBUTING.md): This file contains guidelines for contributing to open-im-server's codebase, such as how to submit issues, pull requests, and code reviews. ++ [Official Documentation](https://doc.rentsoft.cn/): This is the official documentation for open-im-server, which includes comprehensive information on all of its features, configuration options, and troubleshooting tips. Please obey the following rules to better format the docs, which would greatly improve the reading experience. @@ -328,20 +441,20 @@ Please obey the following rules to better format the docs, which would greatly i ## Engage to help anything -We choose GitHub as the primary place for Open-IM-Server to collaborate. So the latest updates of Open-IM-Server are always here. Although contributions via PR is an explicit way to help, we still call for any other ways. +We choose GitHub as the primary place for open-im-server to collaborate. So the latest updates of open-im-server are always here. Although contributions via PR is an explicit way to help, we still call for any other ways. + reply to other's [issues](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc) if you could; + help solve other user's problems; + help review other's [PR](https://github.com/openimsdk/open-im-server/pulls?q=is%3Apr+is%3Aopen+sort%3Aupdated-desc) design; -+ discuss about Open-IM-Server to make things clearer; -+ advocate [Open-IM-Server](https://google.com/search?q=Open-IM-Server) technology beyond GitHub; -+ write blogs on Open-IM-Server and so on. ++ discuss about open-im-server to make things clearer; ++ advocate [open-im-server](https://google.com/search?q=open-im-server) technology beyond GitHub; ++ write blogs on open-im-server and so on. In a word, **ANY HELP IS CONTRIBUTION.** ## Release version -Releases of Open-IM-Server are done using [Release Please](https://github.com/googleapis/release-please) and [GoReleaser](https://goreleaser.com/). The workflow looks like this: +Releases of open-im-server are done using [Release Please](https://github.com/googleapis/release-please) and [GoReleaser](https://goreleaser.com/). The workflow looks like this: 🎯 A PR is merged to the `main` branch: @@ -366,17 +479,23 @@ Such a commit can get produced as follows: ❯ git commit --allow-empty -m "chore: release 0.0.3" -m "Release-As: 0.0.3 ```` +For the complex release process, in fact, and encapsulation as CICD, you only need to tag locally, and then publish the tag to OpenIM github to complete the entire OpenIM release process. + +In addition to CICD, we also do a complex release command locally, which can help you complete the full platform compilation, testing, and release to Minio, just by using the `make release` command. +Please [read the detailed documents](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/release.md) + + ## Contact Us -We value close connections with our users, developers, and contributors here at Open-IM-Server. With a large community and maintainer team, we're always here to help and support you. Whether you're looking to join our community or have any questions or suggestions, we welcome you to get in touch with us. +We value close connections with our users, developers, and contributors here at open-im-server. With a large community and maintainer team, we're always here to help and support you. Whether you're looking to join our community or have any questions or suggestions, we welcome you to get in touch with us. -Our most recommended way to get in touch is through [Slack](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q). Even if you're in China, Slack is usually not blocked by firewalls, making it an easy way to connect with us. Our Slack community is the ideal place to discuss and share ideas and suggestions with other users and developers of Open-IM-Server. You can ask technical questions, seek help, or share your experiences with other users of Open-IM-Server. +Our most recommended way to get in touch is through [Slack](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q). Even if you're in China, Slack is usually not blocked by firewalls, making it an easy way to connect with us. Our Slack community is the ideal place to discuss and share ideas and suggestions with other users and developers of open-im-server. You can ask technical questions, seek help, or share your experiences with other users of open-im-server. In addition to Slack, we also offer the following ways to get in touch: -+ : We also have Slack channels for you to communicate and discuss. To join, visit https://slack.com/ and join our [👀 Open-IM-Server slack](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q) team channel. ++ : We also have Slack channels for you to communicate and discuss. To join, visit https://slack.com/ and join our [👀 open-im-server slack](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q) team channel. + : Get in touch with us on [Gmail](info@openim.io). If you have any questions or issues that need resolving, or any suggestions and feedback for our open source projects, please feel free to contact us via email. -+ : Read our [blog](https://doc.rentsoft.cn/). Our blog is a great place to stay up-to-date with Open-IM-Server projects and trends. On the blog, we share our latest developments, tech trends, and other interesting information. -+ : Add [Wechat](https://github.com/OpenIMSDK/OpenIM-Docs/blob/main/docs/images/WechatIMG20.jpeg) and indicate that you are a user or developer of Open-IM-Server. We will process your request as soon as possible. ++ : Read our [blog](https://doc.rentsoft.cn/). Our blog is a great place to stay up-to-date with open-im-server projects and trends. On the blog, we share our latest developments, tech trends, and other interesting information. ++ : Add [Wechat](https://github.com/OpenIMSDK/OpenIM-Docs/blob/main/docs/images/WechatIMG20.jpeg) and indicate that you are a user or developer of open-im-server. We will process your request as soon as possible. Whether you're looking to join our community or have any questions or suggestions, we welcome you to get in touch with us. diff --git a/README-zh_CN.md b/README-zh_CN.md index 12a56d4f67..e337688812 100644 --- a/README-zh_CN.md +++ b/README-zh_CN.md @@ -4,29 +4,51 @@

-

- ⭐️ Open source Instant Messaging Server ⭐️
-

- - -

-A+ -good first - - - - -

+
+ +[![Stars](https://img.shields.io/github/stars/openimsdk/open-im-server?style=for-the-badge&logo=github&colorB=ff69b4)](https://github.com/openimsdk/open-im-server/stargazers) +[![Forks](https://img.shields.io/github/forks/openimsdk/open-im-server?style=for-the-badge&logo=github&colorB=blue)](https://github.com/openimsdk/open-im-server/network/members) +[![Codecov](https://img.shields.io/codecov/c/github/openimsdk/open-im-server?style=for-the-badge&logo=codecov&colorB=orange)](https://app.codecov.io/gh/openimsdk/open-im-server) +[![Go Report Card](https://goreportcard.com/badge/github.com/openimsdk/open-im-server?style=for-the-badge)](https://goreportcard.com/report/github.com/openimsdk/open-im-server) +[![Go Reference](https://img.shields.io/badge/Go%20Reference-blue.svg?style=for-the-badge&logo=go&logoColor=white)](https://pkg.go.dev/github.com/openimsdk/open-im-server/v3) +[![License](https://img.shields.io/badge/license-Apache--2.0-green?style=for-the-badge)](https://github.com/openimsdk/open-im-server/blob/main/LICENSE) +[![Slack](https://img.shields.io/badge/Slack-500%2B-blueviolet?style=for-the-badge&logo=slack&logoColor=white)](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q) +[![Best Practices](https://img.shields.io/badge/Best%20Practices-purple?style=for-the-badge)](https://www.bestpractices.dev/projects/8045) +[![Good First Issues](https://img.shields.io/github/issues/openimsdk/open-im-server/good%20first%20issue?style=for-the-badge&logo=github)](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22) +[![Language](https://img.shields.io/badge/Language-Go-blue.svg?style=for-the-badge&logo=go&logoColor=white)](https://golang.org/) -

- English • - 简体中文 • - Docs + Englist · + 中文 · + Українська · + Česky · + Magyar · + Español · + فارسی · + Français · + Deutsch · + Polski · + Indonesian · + Suomi · + മലയാളം · + 日本語 · + Nederlands · + Italiano · + Русский · + Português (Brasil) · + Esperanto · + 한국어 · + العربي · + Tiếng Việt · + Dansk · + Ελληνικά · + Türkçe

+
+

## 🟢 扫描微信进群交流 @@ -39,8 +61,6 @@ OpenIM 是一个专门设计用于在应用程序中集成聊天、音视频通 - - ![App-OpenIM 关系](./docs/images/oepnim-design.png) ## 🚀 关于 OpenIMSDK diff --git a/README.md b/README.md index 3876fcd7ad..8721bf2cee 100644 --- a/README.md +++ b/README.md @@ -17,9 +17,35 @@ [![Good First Issues](https://img.shields.io/github/issues/openimsdk/open-im-server/good%20first%20issue?style=for-the-badge&logo=github)](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22) [![Language](https://img.shields.io/badge/Language-Go-blue.svg?style=for-the-badge&logo=go&logoColor=white)](https://golang.org/) -[**English**](./README.md) • -[**简体中文**](./README-zh_CN.md) • -[**Docs**](https://openim.io/en) + +

+ Englist · + 中文 · + Українська · + Česky · + Magyar · + Español · + فارسی · + Français · + Deutsch · + Polski · + Indonesian · + Suomi · + മലയാളം · + 日本語 · + Nederlands · + Italiano · + Русский · + Português (Brasil) · + Esperanto · + 한국어 · + العربي · + Tiếng Việt · + Dansk · + Ελληνικά · + Türkçe +

+ @@ -68,6 +94,13 @@ It is built using Golang and supports cross-platform deployment, ensuring a cons 👉 **[Learn more](https://docs.openim.io/guides/introduction/product)** +## :building_construction: Overall Architecture + +Delve into the heart of Open-IM-Server's functionality with our architecture diagram. + +![Overall Architecture](./docs/images/architecture-layers.png) + + ## :rocket: Quick Start We support many platforms. Here are the addresses for quick experience on the web side: diff --git a/docs/README.md b/docs/README.md index 32fc8d015e..92ba2c6201 100644 --- a/docs/README.md +++ b/docs/README.md @@ -7,7 +7,6 @@ Welcome to the OpenIM Documentation hub! This center provides a comprehensive ra 1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Guidance on contributing and configurations for developers 2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Coding conventions, logging policies, and other transformation tools ------- ## Contrib diff --git a/docs/README_ar.md b/docs/README_ar.md deleted file mode 100644 index bdd616e6a6..0000000000 --- a/docs/README_ar.md +++ /dev/null @@ -1,67 +0,0 @@ -# وثائق OpenIM Server - -مرحبًا بكم في مركز وثائق OpenIM! يوفر هذا المركز مجموعة شاملة من الأدلة والكتيبات التي صُممت لمساعدتك في الاستفادة القصوى من تجربة OpenIM الخاصة بك. - -## جدول المحتويات - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - إرشادات حول المساهمة والتكوينات للمطورين -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - اتفاقيات الكود، سياسات التسجيل، وأدوات التحويل الأخرى - ------- - -## مساهمة - -هذا القسم يقدم للمطورين دليلاً مفصلاً حول كيفية المساهمة في الكود، إعداد بيئتهم، واتباع العمليات المرتبطة. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - قواعد واتفاقيات لكتابة الكود في OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - دليل حول كيفية القيام بالتطوير داخل OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - إرشادات حول عمليات اختيار الجيت. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - سير عمل الجيت في OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - إرشادات حول إعداد وتهيئة OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - كيفية تثبيت الدوكر على جهازك. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - دليل لإعداد بيئة التطوير على لينكس. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - إرشادات حول كيفية القيام ببعض الأعمال الشائعة محليًا. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - طرق توظيف OpenIM دون اتصال. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - دليل حول استخدام أدوات بروتوك. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - أدوات ومكتبات في OpenIM للغة Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - أفضل الممارسات والأدوات لملفات الصيانة. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - أفضل الممارسات والأدوات للسكربتات. - -## التحويلات - -يقدم هذا القسم مختلف الاتفاقيات والسياسات داخل OpenIM، التي تشمل الكود، السجلات، الإصدارات، والمزيد. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - إرشادات وطرق لتحويلات API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - سياسات واتفاقيات التسجيل في OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - إجراءات واتفاقيات لـ CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - اتفاقيات لالتزامات الكود في OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - هيكل الدليل واتفاقياته داخل OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - قائمة وأوصاف رموز الخطأ. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - اتفاقيات وتحويلات لكود Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - استراتيجيات إدارة صور الدوكر في OpenIM، تشمل عدة معماريات ومستودعات الصور. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - اتفاقيات أكثر تفصيلاً حول التسجيل. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - استراتيجيات التسمية والإدارة لإصدارات OpenIM. - - -## للمطورين والمساهمين ومشرفي المجتمع - -### المطورون والمساهمون - -إذا كنت مطورًا أو شخصًا حريصًا على المساهمة: - -- تعرف على [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) و[Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) لضمان سلاسة المساهمات. -- اغمر نفسك في [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) للتعرف على ممارسات التطوير في OpenIM. - -### مشرفو المجتمع - -كمشرف على المجتمع: - -- تأكد من أن المساهمات تتوافق مع المعايير الموضحة في وثائقنا. -- راجع بانتظام [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) و[Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) للبقاء على اطلاع. - -## للمستخدمين - -يجب أن يولي المستخدمون اهتمامًا خاصًا لـ: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - ضروري إذا كنت تخطط لاستخدام صور الدوكر لـ OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - لفهم الصور المختلفة المتاحة وكيفية اختيار ال diff --git a/docs/README_cs.md b/docs/README_cs.md deleted file mode 100644 index 0c40b63b11..0000000000 --- a/docs/README_cs.md +++ /dev/null @@ -1,67 +0,0 @@ -# Dokumenty serveru OpenIM - -Vítejte v centru dokumentace OpenIM! Toto centrum poskytuje komplexní řadu průvodců a manuálů navržených tak, aby vám pomohly co nejlépe využít vaše zkušenosti s OpenIM. - -## Obsah - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Pokyny pro přispívání a konfigurace pro vývojáře -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Konvence kódování, zásady protokolování a další transformační nástroje - ------- - -## Contrib - -Tato část nabízí vývojářům podrobný návod, jak přispívat kódem, nastavovat prostředí a sledovat související procesy. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Pravidla a konvence pro psaní kódu v OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Návod, jak provádět vývoj v rámci OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Pokyny pro operace sběru třešní. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Pracovní postup git v OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Pokyny k nastavení a inicializaci OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Jak nainstalovat Docker na váš počítač. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Průvodce nastavením vývojového prostředí na Linuxu. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Pokyny k provádění určitých společných akcí na místní úrovni. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Metody nasazení OpenIM offline. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Průvodce používáním protokolových nástrojů. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Nástroje a knihovny v OpenIM for Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Osvědčené postupy a nástroje pro Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Doporučené postupy a nástroje pro skripty. - -## Konverze - -Tato část představuje různé konvence a zásady v rámci OpenIM, zahrnující kód, protokoly, verze a další. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Pokyny a metody pro konverze API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Zásady a konvence protokolování v OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Postupy a konvence pro CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Konvence pro odevzdání kódu v OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Struktura adresářů a konvence v rámci OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Seznam a popisy chybových kódů. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Konvence a převody pro kód Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Strategie správy pro obrazy OpenIM Docker, zahrnující různé architektury a úložiště obrazů. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Další podrobné konvence o protokolování. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Strategie pojmenování a správy verzí OpenIM. - - -## Pro vývojáře, přispěvatele a správce komunity - -### Vývojáři a přispěvatelé - -Pokud jste vývojář nebo někdo, kdo má zájem přispívat: - -- Seznamte se s našimi [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) a [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md), abyste zajistili hladké příspěvky. -- Ponořte se do [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md), abyste se seznámili s vývojovými postupy v OpenIM. - -### Správci komunity - -Jako správce komunity: - -- Zajistěte, aby příspěvky odpovídaly standardům uvedeným v naší dokumentaci. -- Pravidelně kontrolujte [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) a [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) , abyste zůstali aktuální. - -## Pro uživatele - -Uživatelé by měli věnovat zvláštní pozornost: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Nezbytné, pokud plánujete používat obrazy OpenIM Docker. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Chcete-li porozumět různým dostupným obrázkům a jak vybrat ten správný pro vaši architekturu. \ No newline at end of file diff --git a/docs/README_da.md b/docs/README_da.md deleted file mode 100644 index d14c6adb5d..0000000000 --- a/docs/README_da.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM Server Dokumentation - -Velkommen til OpenIM Dokumentationscentret! Dette center indeholder en omfattende række vejledninger og manualer, der er designet til at hjælpe dig med at få mest muligt ud af din OpenIM-oplevelse. - -## Indholdsfortegnelse - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Vejledning om bidrag og konfigurationer for udviklere -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Kodningskonventioner, logningspolitikker og andre transformationsværktøjer - ------- - -## Bidrag - -Denne sektion tilbyder udviklere en detaljeret vejledning om, hvordan de kan bidrage med kode, konfigurere deres miljø og følge de tilknyttede processer. - -- [Kodekonventioner](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Regler og konventioner for at skrive kode i OpenIM. -- [Udviklingsguide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - En guide om, hvordan man udfører udvikling inden for OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Retningslinjer for cherry-picking-operationer. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Git-workflowen i OpenIM. -- [Initialiseringskonfigurationer](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Vejledning om opsætning og initialisering af OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Sådan installeres Docker på din maskine. -- [Linux Udviklingsmiljø](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Guide til opsætning af udviklingsmiljøet på Linux. -- [Lokale handlinger](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Retningslinjer for, hvordan man udfører visse almindelige handlinger lokalt. -- [Offline-deploering](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Metoder til at udrulle OpenIM offline. -- [Protoc-værktøjer](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Guide til brug af protoc-værktøjer. -- [Go-værktøjer](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Værktøjer og biblioteker i OpenIM til Go. -- [Makefile-værktøjer](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Bedste praksis og værktøjer til Makefile. -- [Scriptværktøjer](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Bedste praksis og værktøjer til scripts. - -## Konverteringer - -Denne sektion introducerer forskellige konventioner og politikker inden for OpenIM, herunder kode, logfiler, versioner og meget mere. - -- [API-konverteringer](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Retningslinjer og metoder til API-konverteringer. -- [Logningspolitik](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Politikker og konventioner for logning i OpenIM. -- [CI/CD-handlinger](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Procedurer og konventioner for CI/CD. -- [Commit-konventioner](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Konventioner for kodeforpligtelser i OpenIM. -- [Mappekonventioner](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Mappens struktur og konventioner inden for OpenIM. -- [Fejlkoder](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Liste og beskrivelser af fejlkoder. -- [Go-kodekonverteringer](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Konventioner og konverteringer for Go-kode. -- [Docker Image-strategi](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Styringsstrategier for OpenIM Docker-billeder, der dækker flere arkitekturer og billedarkiver. -- [Logningskonventioner](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Yderligere detaljerede konventioner om logning. -- [Versionkonventioner](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Navngivnings- og styringsstrategier for OpenIM-versioner. - - -## For udviklere, bidragsydere og samfundsvedligeholdere - -### Udviklere og bidragsydere - -Hvis du er en udvikler eller nogen, der gerne vil bidrage: - -- Gør dig fortrolig med vores [Kodekonventioner](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) og [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) for at sikre en problemfri bidragelse. -- Dyk ned i [Udviklingsguiden](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) for at få en idé om udviklingspraksis i OpenIM. - -### Samfundsvedligeholdere - -Som samfundsvedligeholder: - -- Sørg for, at bidrag stemmer overens med standarderne beskrevet i vores dokumentation. -- Gennemgå regelmæssigt [Logningspolitikken](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) og [Fejlkoderne](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) for at holde dig opdateret. - -## For brugere - -Brugere bør være opmærksomme på følgende: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Nødvendigt, hvis du planlægger at bruge Docker-billeder af OpenIM. -- [Docker Image-strategi](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - For at forstå de forskellige tilgængelige billeder og hvordan man vælger det rigtige for din arkitektur. diff --git a/docs/README_de.md b/docs/README_de.md deleted file mode 100644 index 101eba41b3..0000000000 --- a/docs/README_de.md +++ /dev/null @@ -1,66 +0,0 @@ -# OpenIM-Serverdokumente - -Willkommen im OpenIM-Dokumentationshub! Dieses Zentrum bietet eine umfassende Auswahl an Leitfäden und Handbüchern, die Ihnen dabei helfen sollen, das Beste aus Ihrem OpenIM-Erlebnis herauszuholen. - -## Inhaltsverzeichnis - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Anleitung zu Beiträgen und Konfigurationen für Entwickler -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Codierungskonventionen, Protokollierungsrichtlinien und andere Transformationstools - ------- - -## Beitrag - -Dieser Abschnitt bietet Entwicklern eine detaillierte Anleitung zum Beitragen von Code, zum Einrichten ihrer Umgebung und zum Befolgen der zugehörigen Prozesse. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Regeln und Konventionen zum Schreiben von Code in OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Eine Anleitung zur Durchführung der Entwicklung innerhalb von OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Richtlinien zur Rosinenpickerei. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Der Git-Workflow in OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Anleitung zum Einrichten und Initialisieren von OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - So installieren Sie Docker auf Ihrem Computer. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Anleitung zum Einrichten der Entwicklungsumgebung unter Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Richtlinien zur Durchführung bestimmter allgemeiner Aktionen vor Ort. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Methoden zur Offline-Bereitstellung von OpenIM. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Anleitung zur Verwendung von Protokolltools. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Tools und Bibliotheken in OpenIM für Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Best Practices und Tools für Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Best Practices und Tools für Skripte. - -## Konvertierungen - -In diesem Abschnitt werden verschiedene Konventionen und Richtlinien innerhalb von OpenIM vorgestellt, die Code, Protokolle, Versionen und mehr umfassen. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Richtlinien und Methoden für API-Konvertierungen. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Protokollierungsrichtlinien und -konventionen in OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Verfahren und Konventionen für CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Konventionen für Code-Commits in OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Verzeichnisstruktur und Konventionen innerhalb von OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Liste und Beschreibungen der Fehlercodes. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Konventionen und Konvertierungen für Go-Code. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Verwaltungsstrategien für OpenIM-Docker-Images, die mehrere Architekturen und Image-Repositorys umfassen. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Weitere detaillierte Konventionen zur Protokollierung. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Benennungs- und Verwaltungsstrategien für OpenIM-Versionen. - - -## Für Entwickler, Mitwirkende und Community-Betreuer - -### Entwickler und Mitwirkende - -Wenn Sie Entwickler sind oder gerne einen Beitrag leisten möchten: -- Machen Sie sich mit unseren [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) und unserem [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) vertraut, um reibungslose Beiträge zu gewährleisten. -- Tauchen Sie ein in den [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md), um sich mit den Entwicklungspraktiken in OpenIM vertraut zu machen. - -### Community-Betreuer - -Als Community-Betreuer: - -- Stellen Sie sicher, dass die Beiträge den in unserer Dokumentation dargelegten Standards entsprechen. -- Überprüfen Sie regelmäßig die [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) und die [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md), um auf dem Laufenden zu bleiben. - -## Für Benutzer - -Benutzer sollten besonders auf Folgendes achten: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Erforderlich, wenn Sie Docker-Images von OpenIM verwenden möchten. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Um die verschiedenen verfügbaren Bilder zu verstehen und wie Sie das richtige für Ihre Architektur auswählen. \ No newline at end of file diff --git a/docs/README_el.md b/docs/README_el.md deleted file mode 100644 index 68438628fd..0000000000 --- a/docs/README_el.md +++ /dev/null @@ -1,67 +0,0 @@ -# Έγγραφα διακομιστή OpenIM - -Καλώς ήρθατε στο κέντρο τεκμηρίωσης OpenIM! Αυτό το κέντρο παρέχει μια ολοκληρωμένη σειρά οδηγών και εγχειριδίων που έχουν σχεδιαστεί για να σας βοηθήσουν να αξιοποιήσετε στο έπακρο την εμπειρία σας στο OpenIM. - -## Πίνακας περιεχομένων - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Οδηγίες για τη συνεισφορά και τις διαμορφώσεις για προγραμματιστές -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Συμβάσεις κωδικοποίησης, πολιτικές καταγραφής και άλλα εργαλεία μετασχηματισμού - ------- - -## Συνεισφορά - -Αυτή η ενότητα προσφέρει στους προγραμματιστές έναν λεπτομερή οδηγό για το πώς να συνεισφέρουν κώδικα, να ρυθμίσουν το περιβάλλον τους και να ακολουθήσουν τις σχετικές διαδικασίες. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Κανόνες και συμβάσεις για τη σύνταξη κώδικα στο OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Ένας οδηγός για το πώς να πραγματοποιήσετε ανάπτυξη στο OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Οδηγίες για τις εργασίες συλλογής κερασιών. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Η ροή εργασίας git στο OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Οδηγίες για τη ρύθμιση και την προετοιμασία του OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Πώς να εγκαταστήσετε το Docker στο μηχάνημά σας. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Οδηγός για τη ρύθμιση του περιβάλλοντος ανάπτυξης στο Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Οδηγίες για τον τρόπο εκτέλεσης ορισμένων κοινών ενεργειών σε τοπικό επίπεδο. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Μέθοδοι ανάπτυξης OpenIM εκτός σύνδεσης. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Οδηγός χρήσης εργαλείων πρωτοκόλλου. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Εργαλεία και βιβλιοθήκες στο OpenIM for Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Βέλτιστες πρακτικές και εργαλεία για το Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Βέλτιστες πρακτικές και εργαλεία για σενάρια. - -## Μετατροπές - -Αυτή η ενότητα εισάγει διάφορες συμβάσεις και πολιτικές στο OpenIM, που περιλαμβάνουν κώδικα, αρχεία καταγραφής, εκδόσεις και άλλα. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Οδηγίες και μέθοδοι για μετατροπές API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Πολιτικές και συμβάσεις καταγραφής στο OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Διαδικασίες και συμβάσεις για CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Συμβάσεις για δεσμεύσεις κώδικα στο OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Δομή καταλόγου και συμβάσεις στο OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Λίστα και περιγραφές κωδικών σφαλμάτων. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Συμβάσεις και μετατροπές για τον κώδικα Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Στρατηγικές διαχείρισης για εικόνες OpenIM Docker, που εκτείνονται σε πολλαπλές αρχιτεκτονικές και αποθετήρια εικόνων. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Περαιτέρω λεπτομερείς συμβάσεις για την υλοτομία. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Στρατηγικές ονομασίας και διαχείρισης για εκδόσεις OpenIM. - - -## Για προγραμματιστές, συνεισφέροντες και συντηρητές κοινότητας - -### Προγραμματιστές & Συνεισφέροντες - -Εάν είστε προγραμματιστής ή κάποιος που επιθυμεί να συνεισφέρει: - -- Εξοικειωθείτε με τις [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) και [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) για να εξασφαλίσετε ομαλή συνεισφορά. -- Βουτήξτε στον [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) για να δείτε τις πρακτικές ανάπτυξης στο OpenIM. - -### Συντηρητές της Κοινότητας - -Ως συντηρητής κοινότητας: - -- Βεβαιωθείτε ότι οι συνεισφορές ευθυγραμμίζονται με τα πρότυπα που περιγράφονται στην τεκμηρίωσή μας. -- Να ελέγχετε τακτικά την [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) και τους [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) για να ενημερώνεστε. - -## Για Χρήστες - -Οι χρήστες θα πρέπει να δώσουν ιδιαίτερη προσοχή: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Απαραίτητο εάν σκοπεύετε να χρησιμοποιήσετε εικόνες Docker του OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Για να κατανοήσετε τις διάφορες διαθέσιμες εικόνες και πώς να επιλέξετε τη σωστή για την αρχιτεκτονική σας. \ No newline at end of file diff --git a/docs/README_eo.md b/docs/README_eo.md deleted file mode 100644 index d7ae8c08cb..0000000000 --- a/docs/README_eo.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM Server Docs - -Bonvenon al la OpenIM Dokumenta nabo! Ĉi tiu centro disponigas ampleksan gamon da gvidiloj kaj manlibroj desegnitaj por helpi vin eltiri la plej grandan parton de via OpenIM-sperto. - -## Enhavtabelo - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Gvidilo pri kontribuado kaj agordoj por programistoj -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Kodigaj konvencioj, registradaj politikoj kaj aliaj transformaj iloj - ------- - -## Kontribui - -Ĉi tiu sekcio ofertas al programistoj detalan gvidilon pri kiel kontribui kodon, agordi sian medion kaj sekvi la rilatajn procezojn. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Reguloj kaj konvencioj por skribi kodon en OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Gvidilo pri kiel efektivigi disvolviĝon ene de OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Gvidlinioj pri ĉeriz-plukaj operacioj. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - La git-laborfluo en OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Gvidilo pri agordo kaj pravalorigo de OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Kiel instali Docker sur via maŝino. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Gvidilo por agordi la evolumedion en Linukso. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Gvidlinioj pri kiel efektivigi certajn komunajn agojn loke. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Metodoj por disfaldi OpenIM eksterrete. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Gvidilo pri uzado de protokaj iloj. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Iloj kaj bibliotekoj en OpenIM for Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Plej bonaj praktikoj kaj iloj por Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Plej bonaj praktikoj kaj iloj por skriptoj. - -## Konvertiĝoj - -Ĉi tiu sekcio enkondukas diversajn konvenciojn kaj politikojn ene de OpenIM, ampleksante kodon, protokolojn, versiojn kaj pli. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Gvidlinioj kaj metodoj por API-konvertoj. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Registrado de politikoj kaj konvencioj en OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Proceduroj kaj konvencioj por CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Konvencioj por kodoj en OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Dosierujo-strukturo kaj konvencioj ene de OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Listo kaj priskriboj de erarkodoj. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Konvencioj kaj konvertiĝoj por Go-kodo. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Administradstrategioj por OpenIM Docker-bildoj, ampleksante plurajn arkitekturojn kaj bilddeponejojn. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Pliaj detalaj konvencioj pri arbohakado. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Strategioj pri nomado kaj administrado por OpenIM-versioj. - - -## Por Programistoj, Kontribuantoj kaj Komunumaj Prizorgantoj - -### Programistoj kaj Kontribuantoj - -Se vi estas programisto aŭ iu fervora kontribui: - -- Familiariĝu kun niaj [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) por certigi glatajn kontribuojn. -- Plonĝu en la[Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) por ekkompreni la evolupraktikojn en OpenIM. - -### Komunumaj Prizorgantoj - -Kiel komunuma prizorganto: - -- Certigu, ke kontribuoj kongruas kun la normoj skizitaj en nia dokumentaro. -- Regule reviziu la [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) kaj [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) por resti ĝisdatigita. - -## Por Uzantoj - -Uzantoj devas aparte atenti: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Necesas se vi planas uzi Docker-bildojn de OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Por kompreni la malsamajn bildojn disponeblajn kaj kiel elekti la ĝustan por via arkitekturo. \ No newline at end of file diff --git a/docs/README_es.md b/docs/README_es.md deleted file mode 100644 index 96523120ab..0000000000 --- a/docs/README_es.md +++ /dev/null @@ -1,67 +0,0 @@ -# Documentos del servidor OpenIM - -¡Bienvenido al centro de documentación de OpenIM! Este centro proporciona una amplia gama de guías y manuales diseñados para ayudarle a aprovechar al máximo su experiencia OpenIM. - -## Tabla de contenido - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Orientación sobre contribuciones y configuraciones para desarrolladores -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Convenciones de codificación, políticas de registro y otras herramientas de transformación - ------- - -## Contribuir - -Esta sección ofrece a los desarrolladores una guía detallada sobre cómo contribuir con código, configurar su entorno y seguir los procesos asociados. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Reglas y convenciones para escribir código en OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Una guía sobre cómo realizar el desarrollo dentro de OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Directrices sobre operaciones de selección selectiva. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - El flujo de trabajo de git en OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Orientación sobre la configuración e inicialización de OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Cómo instalar Docker en su máquina. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Guía para configurar el entorno de desarrollo en Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Lineamientos sobre cómo llevar a cabo determinadas acciones comunes a nivel local. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Métodos de implementación de OpenIM sin conexión. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Guía sobre el uso de herramientas de protocolo. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Herramientas y bibliotecas en OpenIM for Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Mejores prácticas y herramientas para Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Mejores prácticas y herramientas para scripts. - -## Conversiones - -Esta sección presenta varias convenciones y políticas dentro de OpenIM, que abarcan código, registros, versiones y más. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Directrices y métodos para conversiones de API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Políticas y convenciones de registro en OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Procedimientos y convenciones para CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Convenciones para confirmaciones de código en OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Estructura de directorios y convenciones dentro de OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Lista y descripciones de códigos de error. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Convenciones y conversiones para código Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Estrategias de gestión para imágenes OpenIM Docker, que abarcan múltiples arquitecturas y repositorios de imágenes. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Convenciones más detalladas sobre el registro. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Estrategias de nomenclatura y gestión de versiones OpenIM. - - -## Para desarrolladores, contribuyentes y mantenedores de la comunidad - -### Desarrolladores y colaboradores - -Si eres desarrollador o alguien interesado en contribuir: - -- Familiarícese con nuestras [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) y [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) to ensure smooth contributions. -- Sumérgete en la [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) para familiarizarte con las prácticas de desarrollo en OpenIM. - -### Mantenedores de la comunidad - -Como mantenedor de la comunidad: - -- Asegúrese de que las contribuciones se alineen con los estándares descritos en nuestra documentación. -- Revise periódicamente la [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) y los [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) para mantenerse actualizado. - -## Para usuarios - -Los usuarios deben prestar especial atención a: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Necesario si planea utilizar imágenes Docker de OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Comprender las diferentes imágenes disponibles y cómo elegir la adecuada para su arquitectura. \ No newline at end of file diff --git a/docs/README_fa.md b/docs/README_fa.md deleted file mode 100644 index 43056647a7..0000000000 --- a/docs/README_fa.md +++ /dev/null @@ -1,67 +0,0 @@ -# اسناد سرور OpenIM - -به مرکز اسناد OpenIM خوش آمدید! این مرکز طیف گسترده ای از راهنماها و راهنماها را ارائه می دهد که به شما کمک می کند تا از تجربه OpenIM خود بیشترین بهره را ببرید. - -## فهرست مطالب - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - راهنمایی در مورد مشارکت و تنظیمات برای توسعه دهندگان -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - کنوانسیون های کدگذاری، سیاست های ورود به سیستم و سایر ابزارهای تبدیل - ------- - -## مشارکت - -این بخش به توسعه دهندگان راهنمای دقیقی در مورد نحوه مشارکت کد، تنظیم محیط خود و پیروی از فرآیندهای مرتبط ارائه می دهد. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - قوانین و مقررات برای نوشتن کد در OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - راهنمای نحوه انجام توسعه در OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - دستورالعمل عملیات چیدن گیلاس -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - گردش کار git در OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - راهنمایی در مورد راه اندازی و مقداردهی اولیه OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - چگونه داکر را روی دستگاه خود نصب کنیم. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - راهنمای راه اندازی محیط توسعه در لینوکس. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - رهنمودهایی در مورد نحوه انجام برخی از اقدامات مشترک به صورت محلی. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - روش های استقرار OpenIM به صورت آفلاین -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - راهنمای استفاده از ابزار پروتک -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - ابزارها و کتابخانه ها در OpenIM for Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - بهترین روش ها و ابزارها برای Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - بهترین روش ها و ابزارها برای اسکریپت ها. - -## تبدیل ها - -این بخش قراردادها و سیاست‌های مختلفی را در OpenIM معرفی می‌کند که شامل کد، گزارش‌ها، نسخه‌ها و موارد دیگر می‌شود. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - دستورالعمل ها و روش های تبدیل API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - سیاست‌های ورود به سیستم و قراردادها در OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - رویه ها و قراردادها برای CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - کنوانسیون‌ها برای تعهدات کد در OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - ساختار دایرکتوری و قراردادها در OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - لیست و توضیحات کدهای خطا -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - کنوانسیون ها و تبدیل ها برای کد Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - استراتژی های مدیریتی برای تصاویر OpenIM Docker، شامل چندین معماری و مخازن تصویر. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - کنوانسیون های دقیق تر در مورد ورود به سیستم. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - استراتژی های نامگذاری و مدیریت برای نسخه های OpenIM. - - -## برای توسعه‌دهندگان، مشارکت‌کنندگان و نگهبانان انجمن - -### توسعه دهندگان و مشارکت کنندگان - -اگر توسعه‌دهنده هستید یا کسی که مشتاق مشارکت است: - -- - برای اطمینان از مشارکت های روان، با [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) و [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) ما آشنا شوید. -- - در [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) شیرجه بزنید تا از شیوه های توسعه در OpenIM مطلع شوید. - -### نگهبانان جامعه - -به عنوان یک نگهدارنده جامعه: - -- اطمینان حاصل کنید که مشارکت ها با استانداردهای ذکر شده در اسناد ما مطابقت دارند. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) و [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) را به‌طور مرتب مرور کنید تا به‌روز بمانید. - -## برای کاربران - -کاربران باید توجه ویژه ای به موارد زیر داشته باشند: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - اگر قصد دارید از تصاویر Docker OpenIM استفاده کنید، ضروری است. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - برای درک تصاویر مختلف موجود و نحوه انتخاب تصویر مناسب برای معماری خود. \ No newline at end of file diff --git a/docs/README_fi.md b/docs/README_fi.md deleted file mode 100644 index 9678763d97..0000000000 --- a/docs/README_fi.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM Server Docs - -Tervetuloa OpenIM-dokumentaatiokeskukseen! Tämä keskus tarjoaa kattavan valikoiman oppaita ja oppaita, jotka on suunniteltu auttamaan sinua saamaan kaiken irti OpenIM-kokemuksestasi. - -## Sisällysluettelo - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Ohjeita kehittäjille osallistumiseen ja määrityksiin -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Koodauskäytännöt, lokikäytännöt ja muut muunnostyökalut - ------- - -## Contrib - -Tämä osio tarjoaa kehittäjille yksityiskohtaisen oppaan koodin lisäämisestä, ympäristön määrittämisestä ja siihen liittyvien prosessien seuraamisesta. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Säännöt ja käytännöt koodin kirjoittamiselle OpenIM:ssä. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Opas kehitystyön toteuttamiseen OpenIM:ssä. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Kirsikoiden poimimista koskevat ohjeet. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Git-työnkulku OpenIM:ssä. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Ohjeita OpenIM:n käyttöönottoon ja alustamiseen. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Kuinka asentaa Docker koneellesi. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Ohje kehitysympäristön määrittämiseen Linuxissa. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Ohjeita tiettyjen yhteisten toimien toteuttamiseen paikallisesti. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - OpenIM:n offline-käyttöönottomenetelmät. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Opas protokollatyökalujen käyttöön. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - OpenIM for Go -työkalut ja kirjastot. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Makefilen parhaat käytännöt ja työkalut. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Skriptien parhaat käytännöt ja työkalut. - -## Tulokset - -Tässä osiossa esitellään erilaisia OpenIM:n käytäntöjä ja käytäntöjä, jotka kattavat koodin, lokit, versiot ja paljon muuta. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Ohjeita ja menetelmiä API-muunnoksille. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Kirjauskäytännöt ja käytännöt OpenIM:ssä. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - CI/CD:n menettelyt ja käytännöt. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - OpenIM:n koodisitoumusten käytännöt. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Hakemistorakenne ja käytännöt OpenIM:ssä. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Luettelo ja kuvaukset virhekoodeista. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Go-koodin sopimukset ja muunnokset. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Hallintastrategiat OpenIM Docker -kuville, jotka kattavat useita arkkitehtuureja ja kuvavarastoja. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Tarkemmat hakkuiden käytännöt. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Nimeämis- ja hallintastrategiat OpenIM-versioille. - - -## Kehittäjille, avustajille ja yhteisön ylläpitäjille - -### Kehittäjät ja avustajat - -Jos olet kehittäjä tai joku, joka haluaa osallistua: - -- Tutustu [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md)- ja [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) -käytäntöihimme varmistaaksesi sujuvan osallistumisen. -- Sukella [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) saadaksesi tietoa OpenIM:n kehityskäytännöistä. - -### Yhteisön ylläpitäjät - -Yhteisön ylläpitäjänä: - -- Varmista, että osallistumiset ovat asiakirjoissamme esitettyjen standardien mukaisia. -- Tarkista säännöllisesti [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) ja [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) pysyäksesi ajan tasalla. - -## Käyttäjille - -Käyttäjien tulee kiinnittää erityistä huomiota: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Välttämätön, jos aiot käyttää OpenIM:n Docker-kuvia. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Ymmärtääksesi saatavilla olevat erilaiset kuvat ja kuinka valita oikea arkkitehtuuriisi. \ No newline at end of file diff --git a/docs/README_fr.md b/docs/README_fr.md deleted file mode 100644 index 747ef5349b..0000000000 --- a/docs/README_fr.md +++ /dev/null @@ -1,66 +0,0 @@ -# Documentation du serveur OpenIM - -Bienvenue dans le hub de documentation OpenIM ! Ce centre propose une gamme complète de guides et de manuels conçus pour vous aider à tirer le meilleur parti de votre expérience OpenIM. - -## Table des matières - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Conseils sur la contribution et les configurations pour les développeurs -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Conventions de codage, politiques de journalisation et autres outils de transformation - ------- - -## Contribuer - -Cette section propose aux développeurs un guide détaillé sur la façon de contribuer au code, de configurer leur environnement et de suivre les processus associés. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Règles et conventions pour écrire du code dans OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Un guide sur la façon de réaliser du développement au sein d'OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Lignes directrices sur les opérations de triage. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Le flux de travail git dans OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Conseils sur la configuration et l’initialisation d’OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Comment installer Docker sur votre machine. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Guide pour configurer l'environnement de développement sous Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Des lignes directrices pour mener localement certaines actions communes. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Méthodes de déploiement d'OpenIM hors ligne. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Guide sur l'utilisation des outils de protocole. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Outils et bibliothèques dans OpenIM for Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Meilleures pratiques et outils pour Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Meilleures pratiques et outils pour les scripts. - -## Conversions - -Cette section présente diverses conventions et politiques au sein d'OpenIM, englobant le code, les journaux, les versions, etc. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Lignes directrices et méthodes pour les conversions API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Politiques et conventions de journalisation dans OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Politiques et conventions de journalisation dans OpenIM. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Politiques et conventions de journalisation dans OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Structure de répertoire et conventions au sein d'OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Liste et descriptions des codes d'erreur. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Conventions et conversions pour le code Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Stratégies de gestion des images OpenIM Docker, couvrant plusieurs architectures et référentiels d'images. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Conventions plus détaillées sur la journalisation. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Stratégies de nommage et de gestion pour les versions OpenIM. - - -## Pour les développeurs, les contributeurs et les responsables de la communauté - -### Développeurs et contributeurs - -Si vous êtes un développeur ou quelqu'un désireux de contribuer : -- Familiarisez-vous avec nos [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) et notre [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) pour garantir des contributions fluides. -- Plongez dans le [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) pour vous familiariser avec les pratiques de développement dans OpenIM. - -### Responsables de la communauté - -En tant que responsable de la communauté : - -- EAssurez-vous que les contributions sont conformes aux normes décrites dans notre documentation. -- onsultez régulièrement la [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) et les [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) pour rester à jour. - -## Pour les utilisateurs - -Les utilisateurs doivent prêter une attention particulière à : - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Nécessaire si vous prévoyez d'utiliser des images Docker d'OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Pour comprendre les différentes images disponibles et comment choisir celle qui convient à votre architecture. \ No newline at end of file diff --git a/docs/README_hu.md b/docs/README_hu.md deleted file mode 100644 index 62cb54bb23..0000000000 --- a/docs/README_hu.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM Server Docs - -Üdvözöljük az OpenIM dokumentációs központjában! Ez a központ útmutatók és kézikönyvek átfogó választékát kínálja, amelyek célja, hogy a legtöbbet hozza ki az OpenIM-élményből. - -## Tartalomjegyzék - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Útmutató a fejlesztőknek a hozzájáruláshoz és a konfigurációkhoz -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Kódolási konvenciók, naplózási szabályzatok és egyéb átalakítási eszközök - ------- - -## Contrib - -Ez a rész részletes útmutatót nyújt a fejlesztőknek a kód hozzáadásával, a környezet beállításával és a kapcsolódó folyamatok követésével kapcsolatban. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Az OpenIM kódírásának szabályai és konvenciói. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Útmutató az OpenIM-en belüli fejlesztés végrehajtásához. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Útmutató a cseresznyeszedési műveletekhez. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - A git munkafolyamat az OpenIM-ben. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Útmutató az OpenIM beállításához és inicializálásához. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - A Docker telepítése a gépére. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Guide to set up the development environment on Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Útmutató a fejlesztői környezet beállításához Linuxon. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Az OpenIM offline üzembe helyezésének módszerei. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Útmutató a protokolleszközök használatához. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Eszközök és könyvtárak az OpenIM for Go-ban. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - A Makefile legjobb gyakorlatai és eszközei. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Bevált módszerek és eszközök a szkriptekhez. - -## Conversions - -Ez a rész az OpenIM különféle konvencióit és szabályzatait mutatja be, beleértve a kódot, a naplókat, a verziókat és egyebeket. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Irányelvek és módszerek az API-konverziókhoz. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Naplózási szabályzatok és konvenciók az OpenIM-ben. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - CI/CD eljárások és konvenciók. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - A kód véglegesítésének konvenciói az OpenIM-ben. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Címtárszerkezet és konvenciók az OpenIM-en belül. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - A hibakódok listája és leírása. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Konvenciók és átalakítások a Go kódhoz. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Kezelési stratégiák az OpenIM Docker-képekhez, amelyek több architektúrára és képtárra is kiterjednek. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - További részletes egyezmények a fakitermelésről. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Elnevezési és kezelési stratégiák az OpenIM verziókhoz. - - -## Fejlesztőknek, közreműködőknek és közösségi fenntartóknak - -### Fejlesztők és közreműködők - -Ha Ön fejlesztő vagy valaki, aki szeretne hozzájárulni: - -- A zökkenőmentes hozzájárulás érdekében ismerkedjen meg [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) és [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md)-val. -- Merüljön el a [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md), hogy megismerje az OpenIM fejlesztési gyakorlatát. - -### Közösségfenntartók - -Közösségfenntartóként: - -- Győződjön meg arról, hogy a hozzájárulások megfelelnek a dokumentációnkban felvázolt szabványoknak. -- Rendszeresen tekintse át a [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) és a [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md), hogy naprakész maradjon. - -## Felhasználóknak - -A felhasználóknak különös figyelmet kell fordítaniuk a következőkre: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Szükséges, ha az OpenIM Docker-képeit szeretné használni. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Hogy megértse a rendelkezésre álló különböző képeket, és hogyan válassza ki a megfelelőt az építészetéhez. \ No newline at end of file diff --git a/docs/README_id.md b/docs/README_id.md deleted file mode 100644 index 988e25efe9..0000000000 --- a/docs/README_id.md +++ /dev/null @@ -1,67 +0,0 @@ -# Dokumen Server OpenIM - -Selamat datang di pusat Dokumentasi OpenIM! Pusat ini menyediakan berbagai panduan dan manual yang komprehensif untuk membantu Anda memaksimalkan pengalaman Anda dengan OpenIM. - -## Daftar Isi - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Panduan tentang kontribusi dan konfigurasi untuk pengembang -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Konvensi pengkodean, kebijakan logging, dan alat transformasi lainnya - ------- - -## Contrib - -Bagian ini menawarkan panduan rinci bagi pengembang tentang cara berkontribusi kode, menyiapkan lingkungan mereka, dan mengikuti proses yang terkait. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Aturan dan konvensi untuk menulis kode di OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Panduan tentang cara melakukan pengembangan di dalam OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Pedoman tentang operasi cherry-picking. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Alur kerja git di OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Panduan untuk mengatur dan menginisialisasi OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Cara memasang Docker di mesin Anda. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Panduan untuk menyiapkan lingkungan pengembangan di Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Pedoman tentang cara melakukan beberapa tindakan umum secara lokal. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Metode penyebaran OpenIM secara offline. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Panduan tentang menggunakan alat protoc. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Alat dan perpustakaan di OpenIM untuk Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Praktik terbaik dan alat untuk Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Praktik terbaik dan alat untuk skrip. - -## Conversions - -Bagian ini memperkenalkan berbagai konvensi dan kebijakan dalam OpenIM, meliputi kode, log, versi, dan lainnya. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Pedoman dan metode untuk konversi API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Kebijakan dan konvensi logging di OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Prosedur dan konvensi untuk CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Konvensi untuk commit kode di OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Struktur direktori dan konvensi dalam OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Daftar dan deskripsi kode kesalahan. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Konvensi dan konversi untuk kode Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Strategi manajemen gambar Docker OpenIM, mencakup berbagai arsitektur dan repositori gambar. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Konvensi logging yang lebih detail. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Strategi penamaan dan manajemen versi OpenIM. - - -## Untuk Pengembang, Kontributor, dan Pemelihara Komunitas - -### Pengembang & Kontributor - -Jika Anda seorang pengembang atau seseorang yang ingin berkontribusi: - -- Kenali [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) dan [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) kami untuk memastikan kontribusi yang lancar. -- Pelajari [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) untuk memahami praktik pengembangan di OpenIM. - -### Pemelihara Komunitas - -Sebagai pemelihara komunitas: - -- Pastikan kontribusi sesuai dengan standar yang diuraikan dalam dokumentasi kami. -- Tinjau secara teratur [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) dan [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) untuk tetap terupdate. - -## Untuk Pengguna - -Pengguna harus memberikan perhatian khusus kepada: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Diperlukan jika Anda berencana menggunakan gambar Docker dari OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Untuk memahami gambar yang tersedia dan bagaimana memilih yang tepat untuk arsitektur Anda. diff --git a/docs/README_it.md b/docs/README_it.md deleted file mode 100644 index 76e41b5e7b..0000000000 --- a/docs/README_it.md +++ /dev/null @@ -1,67 +0,0 @@ -# Documentazione del Server OpenIM - -Benvenuti al centro documentazione di OpenIM! Questo centro offre una gamma completa di guide e manuali progettati per aiutarvi a ottenere il massimo dalla vostra esperienza con OpenIM. - -## Indice dei Contenuti - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Guida al contributo e alle configurazioni per gli sviluppatori -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Convenzioni di codifica, politiche di registrazione e altri strumenti di trasformazione - ------- - -## Contrib - -Questa sezione offre agli sviluppatori una guida dettagliata su come contribuire al codice, configurare il loro ambiente e seguire i processi associati. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Regole e convenzioni per scrivere codice in OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Una guida su come svolgere lo sviluppo all'interno di OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Linee guida sulle operazioni di cherry-picking. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Il flusso di lavoro git in OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Guida per configurare e inizializzare OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Come installare Docker sul tuo dispositivo. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Guida per configurare l'ambiente di sviluppo su Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Linee guida su come eseguire determinate azioni comuni localmente. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Metodi per distribuire OpenIM offline. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Guida all'uso degli strumenti protoc. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Strumenti e librerie in OpenIM per Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Migliori pratiche e strumenti per Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Migliori pratiche e strumenti per gli script. - -## Conversions - -Questa sezione introduce varie convenzioni e politiche all'interno di OpenIM, che comprendono codice, registrazioni, versioni e altro. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Linee guida e metodi per le conversioni API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Politiche e convenzioni di registrazione in OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Procedure e convenzioni per CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Convenzioni per i commit di codice in OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Struttura delle directory e convenzioni all'interno di OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Elenco e descrizioni dei codici di errore. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Convenzioni e conversioni per il codice Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Strategie di gestione delle immagini Docker di OpenIM, che coprono più architetture e repository di immagini. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Ulteriori dettagliate convenzioni sulla registrazione. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Strategie di denominazione e gestione delle versioni di OpenIM. - - -## Per Sviluppatori, Contributori e Manutentori della Comunità - -### Sviluppatori & Contributori - -Se sei uno sviluppatore o qualcuno interessato a contribuire: - -- Familiarizza con le nostre [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) e [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) per garantire contributi fluidi. -- Approfondisci la [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) per ottenere una conoscenza delle pratiche di sviluppo in OpenIM. - -### Manutentori della Comunità - -Come manutentore della comunità: - -- Assicurati che i contributi siano in linea con gli standard delineati nella nostra documentazione. -- Rivedi regolarmente la [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) e [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) per rimanere aggiornato. - -## Per gli Utenti - -Gli utenti dovrebbero prestare particolare attenzione a: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Necessario se si prevede di utilizzare le immagini Docker di OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Per comprendere le diverse immagini disponibili e come scegliere quella giusta per la propria architettura. diff --git a/docs/README_ja.md b/docs/README_ja.md deleted file mode 100644 index 3971037fb6..0000000000 --- a/docs/README_ja.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIMサーバードキュメンテーション - -OpenIMドキュメンテーションハブへようこそ!このセンターでは、OpenIM体験を最大限に活用するための包括的なガイドとマニュアルを提供しています。 - -## 目次 - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - 開発者向けの貢献と設定に関するガイダンス -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - コーディング規約、ログポリシー、その他の変換ツール - ------- - -## 投稿 - -このセクションでは、開発者がコードを貢献し、環境を設定し、関連するプロセスに従う方法についての詳細なガイドを提供します。 - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - OpenIMでのコード記述のルールと規約。 -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - OpenIM内での開発を行うためのガイド。 -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - チェリーピッキング操作のガイドライン。 -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - OpenIMにおけるGitのワークフロー。 -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - OpenIMの設定と初期化に関するガイダンス。 -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - マシンにDockerをインストールする方法。 -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Linux上での開発環境の設定ガイド。 -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - ローカルで一般的なアクションを実行する方法に関するガイドライン。 -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - OpenIMをオフラインでデプロイする方法。 -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - protocツールの使用ガイド。 -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - GoのためのOpenIM内のツールとライブラリ。 -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Makefileのベストプラクティスとツール。 -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - スクリプトのベストプラクティスとツール。 - -## Conversions - -このセクションでは、OpenIM内のさまざまな規約とポリシーを紹介します。これには、コード、ログ、バージョンなどが含まれます。 - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - API変換のためのガイドラインと方法。 -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - OpenIMにおけるログポリシーと規約。 -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - CI/CDの手順と規約。 -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - OpenIMでのコードコミットのための規約。 -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - OpenIM内のディレクトリ構造と規約。 -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - エラーコードのリストと説明。 -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Goコードのための規約と変換。 -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - 複数のアーキテクチャとイメージリポジトリにまたがるOpenIM Dockerイメージの管理戦略。 -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - ロギングに関するさらに詳細な規約。 -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - OpenIMバージョンの命名と管理戦略。 - - -## 開発者、コントリビューター、コミュニティメンテナー向け - -### 開発者およびコントリビューター - -開発者または貢献に熱心な方へ: - -- スムーズな貢献を確実にするために、私たちの[Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md)と[Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md)に慣れ親しみましょう。 -- OpenIMの開発実践に慣れるために、[Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md)をご覧ください。 - -### コミュニティメンテナー - -コミュニティメンテナーとして: - -- 貢献が私たちのドキュメンテーションで概説された基準に沿っていることを確認してください。 -- 最新の情報を得るために、定期的に[Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md)と[Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md)をレビューしてください。 - -## ユーザー向け - -ユーザーは特に以下の点に注意してください: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - OpenIMのDockerイメージを使用する予定の場合に必要です。 -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - 利用可能なさまざまなイメージを理解し、アーキテクチャに適したものを選択する方法。 diff --git a/docs/README_ko.md b/docs/README_ko.md deleted file mode 100644 index 9cd728c5d9..0000000000 --- a/docs/README_ko.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM 서버 문서 - -OpenIM 문서 허브에 오신 것을 환영합니다! 이 센터는 OpenIM 경험을 최대한 활용하는 데 도움이 되도록 다양한 가이드와 매뉴얼을 제공합니다. - -## 목차 - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - 개발자를 위한 기여 및 구성에 대한 안내 -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - 코딩 규칙, 로깅 정책 및 기타 변환 도구 - ------- - -## 기여 - -이 섹션은 개발자들에게 코드를 기여하는 방법, 환경을 설정하는 방법 및 관련 프로세스를 따르는 방법에 대한 자세한 가이드를 제공합니다. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - OpenIM에서 코드를 작성하기 위한 규칙 및 규약. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - OpenIM 내에서 개발을 수행하는 방법에 대한 가이드. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - 체리피킹 작업에 대한 지침. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - OpenIM에서의 깃 워크플로우. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - OpenIM 설정 및 초기화에 대한 안내. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - 컴퓨터에 도커를 설치하는 방법. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - 리눅스에서 개발 환경을 설정하는 가이드. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - 일부 일반적인 작업을 로컬에서 수행하는 방법에 대한 지침. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - 오프라인에서 OpenIM을 배포하는 방법. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - 프로토콜 도구 사용에 대한 가이드. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Go용 OpenIM 도구 및 라이브러리. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - 메이크파일을 위한 모범 사례 및 도구. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - 스크립트를 위한 모범 사례 및 도구. - -## 전환 - -이 섹션에서는 코드, 로그, 버전 등을 포함하는 OpenIM 내의 다양한 규칙과 정책을 소개합니다. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - API 변환을 위한 지침 및 방법. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - OpenIM의 로깅 정책 및 관습. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - CI/CD 절차 및 관습. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - OpenIM에서 코드 커밋을 위한 관습. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - OpenIM 내의 디렉토리 구조 및 관습. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - 오류 코드 목록 및 설명. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Go 코드를 위한 관습 및 변환. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - 다양한 아키텍처 및 이미지 저장소를 아우르는 OpenIM Docker 이미지 관리 전략. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - 로깅에 대한 추가적인 상세한 관습. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - OpenIM 버전의 명명 및 관리 전략. - - -## 개발자, 기여자 및 커뮤니티 관리자를 위한 정보 - -### 개발자 및 기여자 - -개발자이거나 기여에 관심이 있다면: - -- 원활한 기여를 위해 [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) 및 [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md)에 익숙해지십시오. -- OpenIM에서의 개발 관행을 파악하려면 [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md)를 참조하십시오. - -### 커뮤니티 관리자 - -커뮤니티 관리자로서: - -- 기여가 우리 문서에 명시된 표준에 부합하는지 확인하십시오. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) 및 [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md)를 정기적으로 검토하여 최신 정보를 유지하십시오. - -## 사용자를 위한 정보 - -사용자는 특히 다음 사항에 주의를 기울여야 합니다: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - OpenIM의 Docker 이미지를 사용할 계획이라면 필요합니다. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - 사용 가능한 다양한 이미지를 이해하고 아키텍처에 적합한 이미지를 선택하는 방법. diff --git a/docs/README_ml.md b/docs/README_ml.md deleted file mode 100644 index 7f3aa8c0df..0000000000 --- a/docs/README_ml.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM സെർവർ ഡോക്യുമെന്റേഷൻ - -OpenIM ഡോക്യുമെന്റേഷൻ ഹബ്ബിലേക്ക് സ്വാഗതം! ഈ കേന്ദ്രം OpenIM അനുഭവത്തിൽ നിന്ന് പരമാവധി ഉപയോഗം നേടാൻ സഹായിക്കുന്ന വ്യാപകമായ നിർദേശങ്ങളുടെയും മാനുവലുകളുടെയും ശ്രേണി നൽകുന്നു. - -## ഉള്ളടക്കം - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - ഡെവലപ്പർമാർക്കുള്ള സംഭാവനകൾ നൽകുന്നതിനും കോൺഫിഗറേഷനുകൾക്കുള്ള നിർദേശങ്ങൾ -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - കോഡിംഗ് കൺവെൻഷനുകൾ, ലോഗ്ഗിംഗ് നയങ്ങൾ, മറ്റ് പരിവർത്തന ഉപകരണങ്ങൾ - ------- - -## Contrib - -ഈ ഭാഗം ഡെവലപ്പർമാർക്ക് കോഡ് സംഭാവന നൽകുന്നതിന്റെയും അവരുടെ പരിസ്ഥിതി സജ്ജമാക്കുന്നതിന്റെയും ബന്ധപ്പെട്ട പ്രക്രിയകൾ പിന്തുടരുന്നതിന്റെയും വിശദമായ ഗൈഡ് നൽകുന്നു. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - OpenIM-ൽ കോഡ് എഴുതുന്നതിന്റെ നിയമങ്ങൾ കൺവെൻഷനുകൾ. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - OpenIM-ൽ വികസനം നടത്തുന്നതിന്റെ ഗൈഡ്. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - ചെറി-പിക്കിംഗ് ഓപ്പറേഷനുകൾക്കുള്ള മാർഗ്ഗനിർദേശങ്ങൾ. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - OpenIM-ൽ ഗിറ്റിന്റെ വർക്ക്ഫ്ലോ. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - OpenIM സജ്ജമാക്കുന്നതിനും ആരംഭിക്കുന്നതിനും നിർദേശങ്ങൾ. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - നിങ്ങളുടെ യന്ത്രത്തിൽ ഡോക്കർ ഇൻസ്റ്റാൾ ചെയ്യുന്ന രീതി. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - ലിനക്സിൽ വികസന പരിസ്ഥിതി സജ്ജമാക്കുന്നതിന്റെ ഗൈഡ്. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - ചില പൊതുവായ നടപടികൾ പ്രദേശികമായി നടത്തുന്നതിന്റെ മാർഗ്ഗനിർദേശങ്ങൾ. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - OpenIM ഓഫ്‌ലൈൻ ഡിപ്ലോയ് ചെയ്യുന്ന രീതികൾ. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - പ്രോട്ടോക് ഉപകരണങ്ങൾ ഉപയോഗിക്കുന്ന ഗൈഡ്. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Go വേണ്ടി OpenIM-ൽ ഉള്ള ഉപകരണങ്ങളും ലൈബ്രറികളും. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Makefile ഉപകരണങ്ങളുടെയും മികച്ച പ്രാക്ടീസുകളുടെയും ഗൈഡ്. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - സ്ക്രിപ്റ്റുകൾക്കുള്ള മികച്ച പ്രാക്ടീസുകളും ഉപകരണങ്ങളും. - -## Conversions - -ഈ ഭാഗം OpenIM-ൽ ഉള്ള വിവിധ കൺവെൻഷനുകളെയും നയങ്ങളെയും ആവിഷ്കരിക്കുന്നു, ഇതിൽ കോഡ്, ലോഗുകൾ, പതിപ്പുകൾ എന്നിവ ഉൾപ്പെടുന്നു. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - API കൺവെർഷനുകൾക്കുള്ള നിർദേശങ്ങൾ രീതികൾ. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - OpenIM-ൽ ലോഗ്ഗിംഗ് നയങ്ങൾ കൺവെൻഷനുകൾ. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - CI/CD പ്രക്രിയകൾ കൺവെൻഷനുകൾ. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - OpenIM-ൽ കോഡ് കമ്മിറ്റുകൾക്കുള്ള കൺവെൻഷനുകൾ. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - OpenIM-ൽ ഡയറക്ടറി ഘടന കൺവെൻഷനുകൾ. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - പിശക് കോഡുകളുടെ പട്ടിക വിവരണങ്ങൾ. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Go കോഡിനുള്ള കൺവെൻഷനുകൾ പരിവർത്തനങ്ങൾ. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - വിവിധ ആർക്കിടെക്ചറുകൾ ഇമേജ് റെപ്പോസിറ്ററികൾ ഉൾപ്പെടുന്ന OpenIM Docker ഇമേജുകളുടെ മാനേജ്മെന്റ് സ്ട്രാറ്റജീസ്. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - ലോഗ്ഗിംഗിന്റെ കൂടുതൽ വിശദമായ കൺവെൻഷനുകൾ. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - OpenIM പതിപ്പുകൾക്കുള്ള നാമകരണ മാനേജ്മെന്റ് സ്ട്രാറ്റജീസ്. - - -## ഡെവലപ്പർമാർക്കും, സംഭാവനകൾ നൽകുന്നവർക്കും, കമ്മ്യൂണിറ്റി മെയിന്റെയിനർമാർക്കും - -### ഡെവലപ്പർമാർ & സംഭാവനകൾ നൽകുന്നവർ - -നിങ്ങൾ ഒരു ഡെവലപ്പർ അല്ലെങ്കിൽ സംഭാവനകൾ നൽകാൻ ആഗ്രഹിക്കുന്ന ആളാണെങ്കിൽ: - -- നിരവധി സംഭാവനകൾ ഉറപ്പാക്കാൻ ഞങ്ങളുടെ [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) എന്നിവയുമായി പരിചിതരാകുക. -- OpenIM-ൽ വികസന പ്രാക്ടീസുകൾ ലഭ്യമാക്കാൻ [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) അന്വേഷിക്കുക. - -### കമ്മ്യൂണിറ്റി മെയിന്റെയിനർമാർ - -ഒരു കമ്മ്യൂണിറ്റി മെയിന്റെയിനറായി: - -- സംഭാവനകൾ ഞങ്ങളുടെ ഡോക്യുമെന്റേഷനിൽ വിവരിച്ച മാനദണ്ഡങ്ങൾക്ക് അനുസൃതമാണെന്ന് ഉറപ്പാക്കുക. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) എന്നിവ പുതുക്കി വായിക്കുക. - -## ഉപയോക്താക്കൾക്ക് - -ഉപയോക്താക്കൾ പ്രത്യേകം ശ്രദ്ധിക്കേണ്ട കാര്യങ്ങൾ: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - OpenIM-ന്റെ ഡോക്കർ ഇമേജുകൾ ഉപയോഗിക്കാൻ പദ്ധതിയിടുന്നെങ്കിൽ ആവശ്യമാണ്. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - ലഭ്യമായ വിവിധ ഇമേജുകൾ മനസ്സിലാക്കുകയും നിങ്ങളുടെ ആർക്കിടെക്ചറിന് അനുയോജ്യമായത് എങ്ങനെ തിരഞ്ഞെടുക്കണം എന്ന് അറിയുക. diff --git a/docs/README_nl.md b/docs/README_nl.md deleted file mode 100644 index 755145e6f4..0000000000 --- a/docs/README_nl.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM Server-documenten - -Welkom bij de OpenIM-documentatiehub! Dit centrum biedt een uitgebreide reeks handleidingen en handleidingen die zijn ontworpen om u te helpen het meeste uit uw OpenIM-ervaring te halen. - -## Inhoudsopgave - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Richtlijnen voor bijdragen en configuraties voor ontwikkelaars -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Codeerconventies, logboekbeleid en andere transformatietools - ------- - -## Draag bij - -Deze sectie biedt ontwikkelaars een gedetailleerde handleiding over hoe ze code kunnen bijdragen, hun omgeving kunnen instellen en de bijbehorende processen kunnen volgen. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Regels en conventies voor het schrijven van code in OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Een handleiding voor het uitvoeren van ontwikkelingen binnen OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Richtlijnen voor kersenplukoperaties. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - De git-workflow in OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Begeleiding bij het instellen en initialiseren van OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Hoe Docker op uw machine te installeren. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Handleiding voor het opzetten van de ontwikkelomgeving op Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Richtlijnen voor het lokaal uitvoeren van bepaalde gemeenschappelijke acties. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Methoden voor het offline inzetten van OpenIM. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Handleiding voor het gebruik van protocoltools. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Tools en bibliotheken in OpenIM for Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Best practices en tools voor Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Best practices en tools voor scripts. - -## Conversies - -In deze sectie worden verschillende conventies en beleidsregels binnen OpenIM geïntroduceerd, waaronder code, logs, versies en meer. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Richtlijnen en methoden voor API-conversies. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Logboekbeleid en -conventies in OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Procedures en conventies voor CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Conventies voor code-commits in OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Directorystructuur en conventies binnen OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Lijst en beschrijvingen van foutcodes. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Conventies en conversies voor Go-code. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Beheerstrategieën voor OpenIM Docker-images, verspreid over meerdere architecturen en image-opslagplaatsen. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Verdere gedetailleerde conventies over houtkap. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Naamgevings- en beheerstrategieën voor OpenIM-versies. - - -## Voor ontwikkelaars, bijdragers en communitybeheerders - -### Ontwikkelaars en bijdragers - -Als u een ontwikkelaar bent of iemand die graag een bijdrage wil leveren: - -- Maak uzelf vertrouwd met onze [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) en [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) om soepele bijdragen te garanderen. -- Duik in de [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) om de ontwikkelpraktijken in OpenIM onder de knie te krijgen. - -### Gemeenschapsbeheerders - -Als gemeenschapsbeheerder: - -- Zorg ervoor dat bijdragen in overeenstemming zijn met de normen die in onze documentatie worden beschreven. -- Controleer regelmatig het [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) en de [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) om op de hoogte te blijven. - -## Voor gebruikers - -Gebruikers moeten bijzondere aandacht besteden aan: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Noodzakelijk als u van plan bent Docker-images van OpenIM te gebruiken. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Om de verschillende beschikbare afbeeldingen te begrijpen en hoe u de juiste voor uw architectuur kiest. \ No newline at end of file diff --git a/docs/README_pl.md b/docs/README_pl.md deleted file mode 100644 index 9e89c9dae3..0000000000 --- a/docs/README_pl.md +++ /dev/null @@ -1,67 +0,0 @@ -# Dokumentacja serwera OpenIM - -Witamy w centrum dokumentacji OpenIM! Centrum to zapewnia kompleksową gamę przewodników i podręczników zaprojektowanych, aby pomóc Ci w pełni wykorzystać możliwości OpenIM. - -## Spis treści - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Wskazówki dotyczące współtworzenia i konfiguracji dla programistów -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Konwencje kodowania, zasady rejestrowania i inne narzędzia do transformacji - ------- - -## Wkład - -W tej sekcji deweloperzy mogą znaleźć szczegółowy przewodnik dotyczący udostępniania kodu, konfigurowania środowiska i wykonywania powiązanych procesów. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Zasady i konwencje pisania kodu w OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Poradnik dotyczący programowania w OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Wytyczne dotyczące operacji zbierania wiśni. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Przepływ pracy git w OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Wskazówki dotyczące konfigurowania i inicjowania OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Jak zainstalować Docker na swoim komputerze. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Przewodnik po konfigurowaniu środowiska programistycznego w systemie Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Wytyczne dotyczące sposobu przeprowadzania niektórych typowych działań lokalnie. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Metody wdrażania OpenIM offline. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Przewodnik dotyczący korzystania z narzędzi protoc. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Narzędzia i biblioteki w OpenIM for Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Najlepsze praktyki i narzędzia dla Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Najlepsze praktyki i narzędzia dotyczące skryptów. - -## Konwersje - -W tej sekcji przedstawiono różne konwencje i zasady w OpenIM, obejmujące kod, dzienniki, wersje i nie tylko. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Wytyczne i metody konwersji API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Zasady i konwencje rejestrowania w OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Procedury i konwencje dotyczące CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Konwencje dotyczące zatwierdzania kodu w OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Struktura katalogów i konwencje w OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Lista i opisy kodów błędów. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Konwencje i konwersje dla kodu Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Strategie zarządzania obrazami Dockera OpenIM obejmujące wiele architektur i repozytoriów obrazów. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Dalsze szczegółowe konwencje dotyczące pozyskiwania drewna. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Strategie nazewnictwa i zarządzania wersjami OpenIM. - - -## Dla programistów, współpracowników i opiekunów społeczności - -### Programiści i współpracownicy - -Jeśli jesteś programistą lub osobą, która chce wnieść swój wkład: - -- Zapoznaj się z naszymi [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) i [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md), aby zapewnić płynną współpracę. -- Zajrzyj do [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md), aby zapoznać się z praktykami programistycznymi w OpenIM. - -### Opiekunowie społeczności - -Jako opiekun społeczności: - -- Upewnij się, że wkład jest zgodny ze standardami określonymi w naszej dokumentacji. -- Regularnie przeglądaj [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) i [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md), aby być na bieżąco. - -## Dla Użytkowników - -Użytkownicy powinni zwrócić szczególną uwagę na: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Niezbędne, jeśli planujesz używać obrazów Dockera OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Aby zrozumieć różne dostępne obrazy i dowiedzieć się, jak wybrać odpowiedni dla swojej architektury. \ No newline at end of file diff --git a/docs/README_pt_BR.md b/docs/README_pt_BR.md deleted file mode 100644 index e28db74a61..0000000000 --- a/docs/README_pt_BR.md +++ /dev/null @@ -1,67 +0,0 @@ -# Documentação do Servidor OpenIM - -Bem-vindo ao centro de documentação do OpenIM! Este centro oferece uma ampla gama de guias e manuais projetados para ajudá-lo a aproveitar ao máximo sua experiência com o OpenIM. - -## Índice de Conteúdos - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Orientações sobre contribuições e configurações para desenvolvedores -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Convenções de codificação, políticas de registro e outras ferramentas de transformação - ------- - -## Contrib - -Esta seção oferece aos desenvolvedores um guia detalhado sobre como contribuir com código, configurar seu ambiente e seguir os processos associados. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Regras e convenções para escrever código no OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Um guia sobre como realizar o desenvolvimento dentro do OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Diretrizes sobre operações de cherry-picking. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - O fluxo de trabalho git no OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Orientações sobre configuração e inicialização do OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Como instalar o Docker em sua máquina. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Guia para configurar o ambiente de desenvolvimento no Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Diretrizes sobre como realizar certas ações comuns localmente. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Métodos para implantar o OpenIM offline. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Guia sobre o uso de ferramentas protoc. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Ferramentas e bibliotecas no OpenIM para Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Melhores práticas e ferramentas para Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Melhores práticas e ferramentas para scripts. - -## Conversions - -Esta seção apresenta várias convenções e políticas dentro do OpenIM, abrangendo código, logs, versões e mais. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Diretrizes e métodos para conversões de API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Políticas e convenções de registro no OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Procedimentos e convenções para CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Convenções para commits de código no OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Estrutura de diretórios e convenções dentro do OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Lista e descrições de códigos de erro. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Convenções e conversões para código Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Estratégias de gerenciamento para imagens Docker do OpenIM, abrangendo várias arquiteturas e repositórios de imagens. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Convenções mais detalhadas sobre registro. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Estratégias de nomeação e gerenciamento para versões do OpenIM. - - -## Para Desenvolvedores, Contribuidores e Mantenedores da Comunidade - -### Desenvolvedores & Contribuidores - -Se você é um desenvolvedor ou alguém interessado em contribuir: - -- Familiarize-se com nossas [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) e [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) para garantir contribuições suaves. -- Mergulhe no [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) para se familiarizar com as práticas de desenvolvimento no OpenIM. - -### Mantenedores da Comunidade - -Como mantenedor da comunidade: - -- Garanta que as contribuições estejam alinhadas com os padrões descritos em nossa documentação. -- Reveja regularmente a [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) e [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) para se manter atualizado. - -## Para Usuários - -Os usuários devem prestar atenção especial a: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Necessário se você planeja usar imagens Docker do OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Para entender as diferentes imagens disponíveis e como escolher a certa para a sua arquitetura. diff --git a/docs/README_ru.md b/docs/README_ru.md deleted file mode 100644 index 0e89df7c77..0000000000 --- a/docs/README_ru.md +++ /dev/null @@ -1,67 +0,0 @@ -# Документация по серверу OpenIM - -Добро пожаловать в центр документации OpenIM! Этот центр предоставляет широкий спектр руководств и руководств, призванных помочь вам максимально эффективно использовать возможности OpenIM. - -## Оглавление - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Руководство по участию и настройке для разработчиков -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Соглашения по кодированию, политики ведения журналов и другие инструменты преобразования. - ------- - -## Вклад - -В этом разделе разработчикам предлагается подробное руководство о том, как добавлять код, настраивать среду и следовать соответствующим процессам. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Правила и соглашения по написанию кода в OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Руководство о том, как вести разработку в OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Руководство по сбору урожая. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Рабочий процесс git в OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Руководство по настройке и инициализации OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Как установить Docker на свой компьютер. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Руководство по настройке среды разработки в Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Рекомендации о том, как выполнять определенные общие действия на местном уровне. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Способы развертывания OpenIM в автономном режиме. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Руководство по использованию инструментов протокола. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Инструменты и библиотеки в OpenIM для Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Лучшие практики и инструменты для Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Лучшие практики и инструменты для сценариев. - -## Конверсии - -В этом разделе представлены различные соглашения и политики OpenIM, включая код, журналы, версии и многое другое. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Рекомендации и методы преобразования API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Политики и соглашения ведения журналов в OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Процедуры и соглашения для CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Соглашения о фиксации кода в OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Структура каталогов и соглашения в OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Список и описание кодов ошибок. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Соглашения и преобразования для кода Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Стратегии управления образами OpenIM Docker, охватывающими несколько архитектур и репозиториев изображений. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Дальнейшие подробные соглашения о ведении журнала. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Стратегии именования и управления версиями OpenIM. - - -## Для разработчиков, участников и сопровождающих сообщества - -### Разработчики и участники - -Если вы разработчик или кто-то хочет внести свой вклад: - -- Ознакомьтесь с нашими [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) и [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md), чтобы обеспечить бесперебойную работу. -- Погрузитесь в [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md), чтобы ознакомиться с методами разработки в OpenIM. - -### Сопровождающие сообщества - -Как администратор сообщества: - -- Убедитесь, что вклады соответствуют стандартам, изложенным в нашей документации. -- Регулярно просматривайте [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) и [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md), чтобы оставаться в курсе событий. - -## Для пользователей - -Пользователям следует обратить особое внимание на: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Необходимо, если вы планируете использовать Docker-образы OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Чтобы понять различные доступные изображения и как выбрать подходящее для вашей архитектуры. \ No newline at end of file diff --git a/docs/README_tr.md b/docs/README_tr.md deleted file mode 100644 index d2bd119e4e..0000000000 --- a/docs/README_tr.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM Sunucu Belgeleri - -OpenIM Belgeleri merkezine hoş geldiniz! Bu merkez, OpenIM deneyiminizden en iyi şekilde faydalanmanıza yardımcı olmak için tasarlanmış kapsamlı bir rehber ve kılavuzlar koleksiyonu sunar. - -## İçindekiler - -1. [Katılım](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Geliştiriciler için katkıda bulunma ve yapılandırma rehberi -2. [Dönüşümler](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Kodlama kuralları, günlükleme politikaları ve diğer dönüşüm araçları - ------- - -## Katılım - -Bu bölüm, geliştiricilere kod katkısında bulunma, çevrelerini kurma ve ilişkilendirilmiş süreçleri takip etme konusunda detaylı bir rehber sunar. - -- [Kod Kuralları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - OpenIM'de kod yazma kuralları ve gelenekleri. -- [Geliştirme Rehberi](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - OpenIM içinde geliştirme nasıl yapılır konusunda bir rehber. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Cherry-pick işlemleri için yönergeler. -- [Git Çalışma Akışı](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - OpenIM'deki git çalışma akışı. -- [Başlangıç Yapılandırmaları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - OpenIM'i kurma ve başlatma konusunda rehberlik. -- [Docker Kurulumu](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Makinenize Docker nasıl kurulur. -- [Linux Geliştirme Ortamı](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Linux üzerinde geliştirme ortamını kurma kılavuzu. -- [Yerel İşlemler](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Yerelde belirli yaygın işlemleri nasıl gerçekleştireceğiniz hakkında yönergeler. -- [Çevrimdışı Dağıtım](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - OpenIM'in çevrimdışı nasıl dağıtılacağı yöntemleri. -- [Protoc Araçları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Protoc araçlarını kullanma rehberi. -- [Go Araçları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Go için OpenIM'deki araçlar ve kütüphaneler. -- [Makefile Araçları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Makefile için en iyi uygulamalar ve araçlar. -- [Betik Araçları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Betikler için en iyi uygulamalar ve araçlar. - -## Dönüşümler - -Bu bölüm, kod, günlükler, sürümler ve daha fazlasını içeren çeşitli OpenIM içindeki kuralları ve politikaları tanıtır. - -- [API Dönüşümleri](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - API dönüşümleri için yönergeler ve yöntemler. -- [Günlükleme Politikası](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - OpenIM'deki günlükleme politikaları ve gelenekleri. -- [CI/CD İşlemleri](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - CI/CD için prosedürler ve gelenekler. -- [Taahhüt Kuralları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - OpenIM'deki kod taahhütleri için kurallar. -- [Dizin Kuralları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - OpenIM içindeki dizin yapısı ve kurallar. -- [Hata Kodları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Hata kodlarının listesi ve açıklamaları. -- [Go Kod Dönüşümleri](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Go kodu için kurallar ve dönüşümler. -- [Docker İmaj Stratejisi](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - OpenIM Docker imajlarının yönetim stratejileri, birden fazla mimariyi ve imaj depolarını kapsar. -- [Günlükleme Kuralları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Günlükleme hakkında daha fazla ayrıntılı kurallar. -- [Sürüm Kuralları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - OpenIM sürümleri için adlandırma ve yönetim stratejileri. - - -## Geliştiriciler, Katkıda Bulunanlar ve Topluluk Bakımı - -### Geliştiriciler & Katkıda Bulunanlar - -Eğer bir geliştirici veya katkıda bulunmaya hevesli biriyseniz: - -- Katkılarınızı düzgün bir şekilde yapmak için [Kod Kuralları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) ve [Git Çalışma Akışı](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) ile tanışın. -- OpenIM'deki geliştirme uygulamalarını anlamak için [Geliştirme Rehberi'ne](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) göz atın. - -### Topluluk Bakımı - -Topluluk bakımı olarak: - -- Katkıların belirtilen standartlarla uyumlu olduğundan emin olun. -- [Günlükleme Politikası](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) ve [Hata Kodları](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) sık sık gözden geçirerek güncel kalın. - -## Kullanıcılar İçin - -Kullanıcılar, özellikle dikkat etmelidir: - -- [Docker Kurulumu](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - OpenIM Docker imajlarını kullanmayı planlıyorsanız gereklidir. -- [Docker İmaj Stratejisi](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Mevcut farklı imajları anlamak ve mimarinize uygun olanı nasıl seçeceğinizi öğrenmek için. diff --git a/docs/README_ua.md b/docs/README_ua.md deleted file mode 100644 index 1eaf6b5d1b..0000000000 --- a/docs/README_ua.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM Server документ - -Ласкаво просимо до Центру документації OpenIM! Цей центр надає вичерпні посібники та посібники, розроблені, щоб допомогти вам отримати максимальну віддачу від роботи з OpenIM. - -## Зміст - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Посібник із внесків і налаштування для розробників -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Інструкції з кодування, політики журналювання та інші інструменти перетворення - ------- - -## Посібник із внесків - -Цей розділ надає розробникам докладні вказівки щодо того, як додати код, налаштувати своє середовище та дотримуватися пов’язаних процесів. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Правила та умовності для написання коду в OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Посібник з розробки в OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Ретельно підібрані інструкції. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - робочий процес git у OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Посібник із налаштування та ініціалізації OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Як встановити Docker на вашу машину. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Посібник із налаштування середовища розробки в Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Посібник із виконання деяких типових операцій локально. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Як розгорнути OpenIM офлайн. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Посібник із використання інструменту protoc. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Інструменти та бібліотеки для Go в OpenIM. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Найкращі практики та інструменти для Makefiles. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Найкращі практики та інструменти для створення сценаріїв. - -## Методи внеску - -У цьому розділі описано різні практики та політики в OpenIM, зокрема код, журнали, версії тощо. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Рекомендації та методи перетворення API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Політика та практика журналювання в OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Процедури та практики CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Конвенції для подання коду в OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Конвенції для подання коду в OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Перелік і опис кодів помилок. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Конвенції та перетворення коду Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Стратегія керування зображеннями OpenIM Docker, що охоплює кілька архітектур і сховищ зображень. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Більш детальні умови для журналювання. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Стратегії іменування та керування для версій OpenIM. - - -## Для розробників, співавторів і супроводжувачів спільноти - -### Розробники та учасники - -Якщо ви розробник або бажаєте зробити внесок: - -- знайомі з нами [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) і [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md), щоб забезпечити плавний внесок. -- зрозуміти глибше [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md), освоїти практики розробки OpenIM. - -### супроводжувач спільноти - -Як супроводжувач спільноти: - -- Переконайтеся, що внески відповідають стандартам, викладеним у нашій документації. -- Регулярно перевіряйте [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) i [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md), щоб бути в курсі подій. - -## Для користувачів - -Користувачам слід звернути особливу увагу на: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Це буде необхідно, якщо ви плануєте використовувати образ Docker OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Дізнайтеся про доступні зображення та про те, як вибрати правильний для вашої архітектури. diff --git a/docs/README_vi.md b/docs/README_vi.md deleted file mode 100644 index 55a99b8e5a..0000000000 --- a/docs/README_vi.md +++ /dev/null @@ -1,67 +0,0 @@ -# Tài liệu Máy chủ OpenIM - -Chào mừng bạn đến với trung tâm tài liệu OpenIM! Trung tâm này cung cấp một loạt các hướng dẫn và hướng dẫn chi tiết được thiết kế để giúp bạn tận dụng tối đa trải nghiệm OpenIM của mình. - -## Mục lục - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Hướng dẫn về đóng góp và cấu hình cho các nhà phát triển -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - Quy ước mã hóa, chính sách ghi nhật ký và các công cụ chuyển đổi khác - ------- - -## Đóng góp - -Phần này cung cấp cho các nhà phát triển một hướng dẫn chi tiết về cách đóng góp mã, thiết lập môi trường của họ và tuân theo các quy trình liên quan. - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - Quy tắc và quy ước viết mã trong OpenIM. -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - Hướng dẫn về cách thực hiện phát triển trong OpenIM. -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - Hướng dẫn về các hoạt động chọn lọc. -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - Quy trình làm việc git trong OpenIM. -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - Hướng dẫn về thiết lập và khởi tạo OpenIM. -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Cách cài đặt Docker trên máy của bạn. -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Hướng dẫn thiết lập môi trường phát triển trên Linux. -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - Hướng dẫn về cách thực hiện một số hành động phổ biến ở cấp địa phương. -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - Các phương pháp triển khai OpenIM ngoại tuyến. -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - Hướng dẫn sử dụng công cụ protoc. -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - Công cụ và thư viện trong OpenIM cho Go. -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Thực hành tốt nhất và công cụ cho Makefile. -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - Thực hành tốt nhất và công cụ cho kịch bản. - -## Chuyển đổi - -Phần này giới thiệu các quy ước và chính sách khác nhau trong OpenIM, bao gồm mã, nhật ký, phiên bản và hơn thế nữa. - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - Hướng dẫn và phương pháp chuyển đổi API. -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - Chính sách và quy ước ghi nhật ký trong OpenIM. -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - Quy trình và quy ước cho CI/CD. -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - Quy ước cho các cam kết mã trong OpenIM. -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - Cấu trúc thư mục và quy ước trong OpenIM. -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - Danh sách và mô tả các mã lỗi. -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Quy ước và chuyển đổi cho mã Go. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Chiến lược quản lý hình ảnh Docker của OpenIM, bao gồm nhiều kiến trúc và kho lưu trữ hình ảnh. -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - Quy ước chi tiết hơn về ghi nhật ký. -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - Chiến lược đặt tên và quản lý phiên bản OpenIM. - - -## Dành cho Nhà phát triển, Người đóng góp và Người duy trì Cộng đồng - -### Nhà phát triển & Người đóng góp - -Nếu bạn là nhà phát triển hoặc ai đó muốn đóng góp: - -- Làm quen với [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) và [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) của chúng tôi để đảm bảo đóng góp trôi chảy. -- Tìm hiểu [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) để nắm bắt các thực hành phát triển trong OpenIM. - -### Người duy trì Cộng đồng - -Là người duy trì cộng đồng: - -- Đảm bảo rằng các đóng góp phù hợp với các tiêu chuẩn được nêu trong tài liệu của chúng tôi. -- Thường xuyên xem lại [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) và [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) để cập nhật thông tin. - -## Dành cho Người dùng - -Người dùng nên chú ý đặc biệt đến: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - Cần thiết nếu bạn dự định sử dụng hình ảnh Docker của OpenIM. -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - Để hiểu các hình ảnh khác nhau có sẵn và cách chọn hình ảnh phù hợp cho kiến trúc của bạn. diff --git a/docs/README_zh_CN.md b/docs/README_zh_CN.md deleted file mode 100644 index 413d5dfa18..0000000000 --- a/docs/README_zh_CN.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM Server 文档 - -欢迎来到 OpenIM 文档中心!本中心提供全面的指南和手册,旨在帮助您最大限度地利用 OpenIM 体验。 - -## 目录 - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - 为开发者提供的贡献指南和配置 -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - 编码规范、日志策略和其他转换工具 - ------- - -## 贡献指南 - -本节为开发人员提供了如何贡献代码、设置环境以及遵循相关流程的详细指南。 - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - OpenIM 中编写代码的规则和惯例。 -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - 关于如何在 OpenIM 内进行开发的指南。 -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - 精挑细选的操作指南。 -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - OpenIM 中的 git 工作流程。 -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - 设置和初始化 OpenIM 的指南。 -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - 如何在您的机器上安装 Docker。 -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - 在 Linux 上设置开发环境的指南。 -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - 关于如何在本地执行某些常见操作的指南。 -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - 离线部署 OpenIM 的方法。 -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - 使用 protoc 工具的指南。 -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - OpenIM 中 Go 的工具和库。 -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Makefile 的最佳实践和工具。 -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - 脚本的最佳实践和工具。 - -## 贡献方法 - -本节介绍 OpenIM 内的各种惯例和政策,包括代码、日志、版本等。 - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - API 转换的指南和方法。 -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - OpenIM 中的日志策略和惯例。 -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - CI/CD 的程序和惯例。 -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - OpenIM 中代码提交的惯例。 -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - OpenIM 内的目录结构和惯例。 -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - 错误代码的列表和描述。 -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Go 代码的惯例和转换。 -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - OpenIM Docker 镜像的管理策略,涵盖多个架构和镜像仓库。 -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - 有关日志的更详细的惯例。 -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - OpenIM 版本的命名和管理策略。 - - -## 对于开发者、贡献者和社区维护者 - -### 开发者和贡献者 - -如果您是一名开发者或热衷于贡献: - -- 熟悉我们的 [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) 和 [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md),以确保顺利贡献。 -- 深入了解 [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md),掌握 OpenIM 的开发实践。 - -### 社区维护者 - -作为社区维护者: - -- 确保贡献符合我们文档中概述的标准。 -- 定期查看 [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) 和 [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md),以保持最新状态。 - -## 对于用户 - -用户应特别注意: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - 如果您计划使用 OpenIM 的 Docker 镜像,那么这个将会是必须的。 -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - 了解可用的镜像以及如何为您的架构选择正确的镜像。 diff --git a/docs/README_zh_TW.md b/docs/README_zh_TW.md deleted file mode 100644 index 8ca00ba17d..0000000000 --- a/docs/README_zh_TW.md +++ /dev/null @@ -1,67 +0,0 @@ -# OpenIM 伺服器文檔 - -歡迎來到 OpenIM 文件中心! 該中心提供全面的指南和手冊,旨在幫助您充分利用 OpenIM 體驗。 - -## 目錄 - -1. [Contrib](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - 開發人員貢獻和配置指南 -2. [Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib) - 編碼約定、日誌記錄策略和其他轉換工具 - ------- - -## 貢獻 - -本節為開發人員提供了有關如何貢獻程式碼、設定環境以及遵循相關流程的詳細指南。 - -- [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) - 在 OpenIM 中編寫程式碼的規則和約定。 -- [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) - 有關如何在 OpenIM 中進行開發的指南。 -- [Git Cherry Pick](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/gitcherry-pick.md) - 精挑細選操作指南。 -- [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) - OpenIM 中的 git 工作流程。 -- [Initialization Configurations](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/init-config.md) - 設定和初始化 OpenIM 的指南。 -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - 如何在您的電腦上安裝 Docker。 -- [Linux Development Environment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/linux-development.md) - Linux 上的開發環境設定指南。 -- [Local Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/local-actions.md) - 關於如何在當地進行某些共同行動的指南。 -- [Offline Deployment](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/offline-deployment.md) - 離線部署OpenIM的方法。 -- [Protoc Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/protoc-tools.md) - 協議工具使用指南。 -- [Go Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-go.md) - OpenIM 在 Go 中的工具和函式庫。 -- [Makefile Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-makefile.md) - Makefile 的最佳實務和工具。 -- [Script Tools](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/util-scripts.md) - 腳本的最佳實踐和工具。 - -## 轉換 - -本節介紹 OpenIM 中的各種約定和策略,包括程式碼、日誌、版本等。 - -- [API Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/api.md) - API 轉換的指南和方法。 -- [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) - OpenIM 中的日誌記錄策略和約定。 -- [CI/CD Actions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/cicd-actions.md) - CI/CD 的程序和約定。 -- [Commit Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/commit.md) - OpenIM 中程式碼提交的約定。 -- [Directory Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/directory.md) - OpenIM 中的目錄結構和約定。 -- [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) - 錯誤代碼的清單和描述。 -- [Go Code Conversions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/go-code.md) - Go 程式碼的約定和轉換。 -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - OpenIM Docker 映像的管理策略,跨越多種架構和映像儲存庫。 -- [Logging Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/logging.md) - 有關日誌記錄的更詳細約定。 -- [Version Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/version.md) - OpenIM 版本的命名與管理策略。 - - -## 對於開發者、貢獻者和社區維護者 - -### 開發者和貢獻者 - -如果您是開發人員或熱衷於做出貢獻的人: - -- 熟悉我們的 [Code Conventions](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/code-conventions.md) 和 [Git Workflow](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/git-workflow.md) 以確保順利貢獻。 -- 深入閱讀 [Development Guide](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/development.md) ,掌握 OpenIM 的開發實務。 - -### 社區維護者 - -作為社區維護者: - -- 確保貢獻符合我們文件中概述的標準。 -- 定期查看 [Logging Policy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/bash-log.md) 和 [Error Codes](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/error-code.md) 以保持更新。 - -## 對於用戶 - -使用者應特別注意: - -- [Docker Installation](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/install-docker.md) - 如果您打算使用 OpenIM 的 Docker 映像,則這是必要的。 -- [Docker Image Strategy](https://github.com/openimsdk/open-im-server/blob/main/docs/contrib/images.md) - 了解可用的不同影像以及如何為您的架構選擇正確的影像。 \ No newline at end of file diff --git a/docs/contributing/CONTRIBUTING-JP.md b/docs/contributing/CONTRIBUTING-JP.md new file mode 100644 index 0000000000..86bbfefcd7 --- /dev/null +++ b/docs/contributing/CONTRIBUTING-JP.md @@ -0,0 +1,33 @@ +# How do I contribute code to OpenIM + +

+ Englist · + 中文 · + Українська · + Česky · + Magyar · + Español · + فارسی · + Français · + Deutsch · + Polski · + Indonesian · + Suomi · + മലയാളം · + 日本語 · + Nederlands · + Italiano · + Русский · + Português (Brasil) · + Esperanto · + 한국어 · + العربي · + Tiếng Việt · + Dansk · + Ελληνικά · + Türkçe +

+ + + +

\ No newline at end of file diff --git a/docs/contributing/CONTRIBUTING-PL.md b/docs/contributing/CONTRIBUTING-PL.md new file mode 100644 index 0000000000..86bbfefcd7 --- /dev/null +++ b/docs/contributing/CONTRIBUTING-PL.md @@ -0,0 +1,33 @@ +# How do I contribute code to OpenIM + +

+ Englist · + 中文 · + Українська · + Česky · + Magyar · + Español · + فارسی · + Français · + Deutsch · + Polski · + Indonesian · + Suomi · + മലയാളം · + 日本語 · + Nederlands · + Italiano · + Русский · + Português (Brasil) · + Esperanto · + 한국어 · + العربي · + Tiếng Việt · + Dansk · + Ελληνικά · + Türkçe +

+ + + +

\ No newline at end of file diff --git a/docs/images/Open-IM-Servers-on-System.png b/docs/images/Open-IM-Servers-on-System.png deleted file mode 100644 index 3c8a1020214a2cfcb9e5cc6c5beb339b7e2be67d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21614 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 Z7iVs2wPSi}fqg{rG*ony3lwkr{y(Ud)0qGO diff --git a/docs/images/Open-IM-Servers-on-docker.png b/docs/images/Open-IM-Servers-on-docker.png deleted file mode 100644 index c66f7fb095e862e64eaab2a9dbc1ac1c3c73977b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10172 zcmcJVc{r4B-~Y!FLbl41G?rAdmJniyQmK&a%T#14ritt^!?#35D4{G9h3rZ8Wt3$^ zmTXhR2xGF0VHjqg=Tdj~dfdnJ9LMkYU4J-cxSZEq=lOY^@Av0D*8|)0R@;Pk34=hO zZKqFJUI2l3JAv0vg#6bW97g+W ze4-Zn9KW{x$Y~9|$nlHm@p)A(Tj0)k{W1DxJxa>F6vWgk^4mtWC;2wW* zR>u(f5hc?Qsrf|nmg)1(=`Ip$m)v1@?Nk+hqL(x_z~|QC58ldeMZJzSVyZHs8qt3A zl`lTP%*BK_cOC7OX=!lS36A*eqrGC65;S<$%7J_(o?&DvsEPl{)@@tNN+e*t;Kd}G zH&_JhXfX>l6)j_ROLV$J$CaiWL^UjjIa4a0 zz2~XoUx0ftra(XT9rgxApwNUnxm2sb+)RPa%Z(onj==m4sOG8u0-Z^oz13|>Q4%X7 zi!O0T#VU3Xoi&DI&sVoxnNw->`#g2Dr#>dmiJbJ{w#H#Ylit4&+58pD*3 zth)rXHFMXrI+J*T{ow!@9`wjN=GG~-@_6q}fKGt&&4a|kt-_y$xW zi&6C$*H)470<-$M(-o*rMC;cAPX;Y~_RaqtHsVskf>I3t*=zA zJHh*1YTSahORxAieBMJ@eWa7^Kv;pb->6h`bmb7};lofTx*r`uQ0=bqKzU#cHu_56 zmjy2v#d@)_%57p9x8e9D+Ag*|H|rsu&dv)%#!?#K3WS4rG|Q#JwMQ5de^sMr<3aDa zW>3fB+VmJC(YMFk+h8KYB(lZouX&pZA8j1Gd_pmAYOrg1*BH#=_(k#S`#{ zOs9S16pJ_FpWT@DgwMsEXgml-Wn8gmCIuJcmo{K-+}%njuO?Sd44jDg=H81pF`Hno z7Cf}Ovu$yqwW*SGKcd-n-f7roceyCqMTMH!TVI6@siicu;VV&z3`W%&YGI)m%iPc+ zfJy9)TVrqaIyu&~BpL0+lqIBc<66#$&(+RM98K+V{BVOGvuj$zLfTW=GR_*p_tBch zQ9X{4tc0{4T=$REvgNKHX+7?)BH|Cq2FxpU!iWiO7c|$kDS+^Djo^ZPKqg> zSKbQ?n7dCl80lqb|7gV;vyT^e%DmK2>Mc(;aew_SIC@r=-QD(tOHoNh##uu>S}Iv_ z6X(7UL$c`UJ;ya<;8^ksb?$p}KF!Z>WvmyW4rL#2N>ij;H%XZqmPb=U! z4ELR8a{%{h%Iv9Sk=8TsnYz}j;o_V`SC zXn0RIWfaDYBfrWDjSf81@P&6S_MJsu;&s;IPiUAJjD#|obML|EOR+fBISaTSM0AXIj}wy3bS zg*Wbzg6Vq&D7s^sL>g0oPP0l;r$#5B0&C?KtFXiC^IPJ+<#8DD1rg)y+nFrmF&u;8 zKmz0N7Fc-mI0OZ1*@&bX20oCmUR;-M2KIC|^}02l!3rwG=SA5v9S7HR1aScu{yL9Uwi2|4-%gL%b7dJmkvg>-cYw^6Q~At)Z~Z#LTJYu4+2|WZnBA8& zWomnmhsA_eU(~H4N=&(rrxr690jh}YFPjhALZf4J8&`R_S)8^yMi&1&jXSki)x(C0 zs9I<#O3gSGnRjivXuxk}zt%Km!9EO|Fnh_>bnlhRa{SvW?nzkF#Qm=!{DDggftPw7 z`f4`&MYp5VhKI+BB73R4KR3c1oB|fKQ*_F>JQX{rZsVHmhWtfLc1KzZHrA;wkNs|o z^qZ-tKN3yucxj=ZQsiTsyVZ9y3Z6k)HHOHq2NDMt1_L5On4{ChS*XezhFmG!^Lai6 zvUbO+_yvr}>2K#7G+VDFYrdt0J~&!7;da~|=ZSii($^0WBqDA=V{zmQnHJu|S-YmJ z*JSyfCm=I&@ob_}Z*?D-7CHx`ltngU&`fYcqbaL4oO|=TaywxaSB1RlNxlJnO5WI< zbkgReC;M_I#ujiBTsQ%|1Md}K3VzXjB3y91D`w5uU8y@^%pM<%F`MO|(sfVyNIF{m zY6-Q!AN9DNQ|r&{sF_9$1y;Av>FBs=*$ijS)ie(@x!E!4XW;=DdY=`;_2@e7nrt;$ zrv#GwDwxIRZKhcsdSUy9W$RUuOdBzUdmk#WR;_O%W5WihGRpenB$b8^y0Z+E)Lw|S z@uDqpIL);U4Xxf3Z)lapU;o z{#uz<0v!2`qX~MQmMd%hl7LtLV(^!>MyFO>R8Zj0106WWG7nhMD?LS;gAnjH`xc(V zn|40A<8st)(5GF_<%IAbGChIfaZ=BkZ$6Lo&6giRKeX)qIlOPmk8aUBapL%++uM%X z@QzODW@6ke6jUitr6FXIXm%3h(HkrFkpVu^*C1a09+xw*j5!C654{V&MS=Ks7+uPB z=FhLcYrz(s971m1#f&rhwM?mqWi;!Xi16M8-Um7bBIViHalF|Kl%g>IJj`Z?^Zvu< z_HKF78G#HPqo*-Tp7KT$*8)>Yy&9$}pOwpTjfx&iW}gXpgYI23dnV#QSE*3Ilp_5I zH40!$hi@HkFqXAgr<=-OrZfy<8HeC-!a(2j05aT=Ib>{b^LwrTbO-60LAPiCh~H46 zfPx8gW&52G*P5SOmF*lZACT>@1kHS2aS%I8oLyBx%#_zX=eyp_zLQ1?>VT=EAF2s1 zs|r%8SB-}f523_ECEvIN?ex_}rZEmZL;YNdTtHmRXUN?xjqDm{teb51NshA(&Y{}N zI-u`X_20KHU+Da>WBx9T9COxYgla*N_xkEa-#=P9b2Hy8Gf@`Plf<&W6t0q{>3$*r zpAn|Q;i2kwtuV_V+pXDOXABoNWWU2$z(fYdf99KEiGcKsaYlwlIvz{>pNUa2pQ=g* zuU8>BTg-$r^C1+$_Uas*l=4y`F*!H)mf zk2IRN|2Qu0=cl(C6{n(y`0mx~d=e=_pPQS5o0v!qTY4ytYQMB54mVe^?lNNRqOY~- z+|x95qq`p+vT>@1sW0?1{EszfULSwqH(tT%xKav!6aa#HekB&7eY;h6kD+VARFsv& z4=;vPq}vb{m%=sCQK|W3bG9MIr<4^D5$z^u-n!uZcSZcl&C3Wu4&ZA)>1kN}vHb%B_6vA zCOv+>!KKe{I%71X485E(u2mAm4UJ{CYW4;(r%T+v{S$3P`HN=<{aDV2=1+T9QX~of#mGV-ZnYZyjdzY7WrmQnRsq2il%p%^~-`R zw?;YV^%1;csO3*y@h@Mv6uxhx?gVqvVXs+IcR}i$4P|&0l5vv=73QrIqn^#eQXh0w z)BFg0GhqltaBM`dz-yjcc1znq6Qy-XqgC;!PQKZL)s=>~`~ecJ+3D$1HK`Dg*3IHo zB9G#G;rJ()+1Py!VfgnZoNqZCfy(#Vz+7bQ?gkkq-5qgG&|iJe_?EKAeQ1#AulMuZ zH0eX}siD#;bF4&Qc8ourxQO0B|`4l~vHUJJGQ`L#6|S^HFIQVyUB# zH|DMPhofS~k9wlV!!vIqfmOW(g!S9gRbY2msGPup!0 zEr;r*^PZJ>0aGn2N;MF+V9tli8v#}G^s>v9WZpujQZ?$X1?z@^!Lji0y+tB5ykD9H z46~e=BNXxZ%H02?PGz{SmjE6`3A`IYpD>Kl)?Qp4>Z^Kw6-x`tF!(ht<`kk#i{)BQ z7#AD}G*-y1ziVzPIMtY)?Hls3)@)--;Hp|wF~jV5ALbZmgerVYaC4z6&qT96xtR{zV>Ho=&FY-QA$IR}3(BrlB{krTwVtV6-bR_B!fkJs1P&e1-W*)=H-zGMx6#h>tXa7cJ za&>Cp{~1c^d(Y>4c$DYuAPH+`#=%+FHg+u8L9$NNv?adG(;6OJ=)${9`>ufxP3>Br zrH^&pOhAAN)>VNIWbXx5w3=V3gTW|sFmo@EgevIDGt;!hog+} z&Dx%E7U+!L{l4SI`{xD2efevXx!Ig4JR>nj>LAK-@1dQmb zr5!jj4R(b{(>0R>=No%?>Z~Iy77#+#5&Gxvj#{K90!6a^AtIxOB{JjGc@4}jdM?eF z=QedXFa`8CNj!+zg?G_Pvw6QSK@yW-pus(sYP}s)m#r^lb`19z7+e2_nTA%Bc6O%f zuvb-w!F!It;r9Q8R8UAyeQwL<^u(4=I&5M}{@*ZdUMM)$qdDpEY4zvTkcWLksFVOj zlXWV5gr>1)>OxklJp|{Is=yRPteyl){_vvAT+eU}bfKz|Y4+k~fyFpm(N4y@J2dV1IepHbOe=H9pE;*+ZzXSxQLoF(h9F!hbK{O~ELFVk%_4Vc68y&)SL8|~xc z3j3aZ%JB*d@7mu+3fkJHBDr<4JwVae@^2WwEBK`?Yf%78g3*~d3Xwi9fPeoT%`kesSz;XNp;K2^9Nf5 z;i9b!z%m4M0NlUN00h<0)=$p0oP-prjom5%y+TI$9dyB<{XuHk;9Y85C?WL z$$G$9=x3bcc^Ua=WJ|6YXK~AxCqdDc>4Py&Ha3<#Hf)H*7G7%Qe&Les&-XpyJ?(7@ zX(X|_BS%h0w=8JI7DjjgtA~q6DL7z-Z1RkUY+&IpyJCu1$zLDi9U;{e`EHyFXO^CU zZS`Hmdu{);?qAKQnKiz^e!+lhN(V(aaYwDV`om~z`Z+fVhoFhzJ!zalSDRl(H(~7Z zAE#Tq-*VnsmSM>GO)%?N-i1&{`?5-jh}Zc1s2ZwX8wmJNa)rnS2EMc!6T%aEJ%qcf3DuzU3?*94aagKO zdG)<+!J*G{K=nd-`U2 zL+AQn{8&=ymaoNRdCw{qP?SxqjlS!8X^`Nv{F zEWxvCIC&yKb2iYGl!4+&;)V4*Czu9Y3Li;6a+0M#@s_nJn_lG7r1-?w?zb)WKZw@k zm{j*2(4dnmkvw4$yFPvJpB%y}|`p z+}}KHdxa&*0V4V?3q$PF@380|BAL&P`?AJngwUS z`fiy^u)irrxIMm}jFNDGj{*#@4=)rV8g5N@B*+6@tJpgipCmrT&gi4hxIKgOF#GUZ zb~b3NSsC(KM^yF}McCu=fJ>thd*LdmnFN-e!EME!8Wj0Lb1&fL><fi}72hD?d`pB_XtMi)(cc_%i_2}Fy2Rb-*+F~%=(0fmjS=0r8P^}7WeSk@NKrp} zq8%ikl5iPM&lq*Wj`aiOl_lCO^=QW_6SFri7TRx+`gsL4)U{I=WhS=dvU%$RJxOle zkT-p<0=bf{5}Tg(_77W#$6R)4$>vbNq_=)_ZH~S_3+3?G{%%usyC1Xf{%TW==3E-Q#hc+ra$C0dwpP;Q6IOICnm~H*XWJmr}qf zuzzV#|5#z5K`jLu)Z#x4s$<5_cbg5W^uIQ!Uhw;_AD@MMhs{@7Kwa7b6)&+0y}s@TLan7_L-)+W{J_x#poLJk#fCtLP$g>YkxT zD0R(p$MO)D&rZ=6awoUNDEYdwT9W1LYU@}p<~uBFhfw2EKzbK$Cy){J&~SD^@yi$M zE!ctif<^9cy1)-eG&ps-{=w^s>N3)TE2QClxmpu~z4VIvGic*hcEIgxkU?on2lNeN zU_+)JUK-WjOotNWYY={wpA`kolKA`&ax?y6g`?fs2NQTqM9g|MJP9rD>75fNIi2!! z-cpC|u~5r_8CczhnR#6hx9UuOnm&ywwL z)*=9|_$M11Q^@X^wB?#v;r9aDoc@2LMWX+i7QKtkP?PxZdNCFR5)9dV7J#VIfzaK{ z-H|@gS;4u=X3Zaw92%E@BGf4lRq87+D;wWB&8u*?;&6E}L$GesIK!O;jNi5ck)DI_j115- zbwLt&+%I00`Ra)^evNDtp~sr9o)=*p?aGVvSb(LiSEZI)u^&&M8jJAmVXh`ccVrsg zqmx~8m82}#u3a|3R@W4{`6cZ4@$t)tpYJwGEx>L!n^IU;=M*fumE#djo3Y)UkN=xm z?h;Gdbj@)`{vi2xS&cdi3}E^C2k3Vs)%rI*ywB&oDZBs3uKr&K*wkyM7BGaT4||lU zJ4wVx)%10A#&@i2}WYLNH@&qh-vALM%r|bLo<_qC5;zoOS7xwh4-l#S))nqIl4p00;*dNHdD%vXfW< zjwVAIQhKvdF#6EIUo72a#?IwArxs?cJDU9i+9KGwW`p4^A12=+h)>ehC-LNBJv^Kc zP>Of#i>g63QwSb6-LZf+5OgjbEnT$j15_U6@-Z0?N1@nG@ zxW(Dm_nq-8%eejLtM`R+>Suw+=#a(Lj8sHok1VjACD6FEa~)hp)2LOR+X6O; z(~1~dX}sBiCxWPJSUB_HcOx;wy z@%kzG6mD@*Uv)M%hZ{Vs`#S;;?#c*y(2j@lfRT2(CsCi!@VP#ygRUzIwIza9@j{Zr zkfZgd|2PPH3}K1Typ15$tJ;z5AY-V^uOKk09K{3WI^`2JiEl>|Rk=8>OlVn8{Cv=i zE5yT;eLOe{2Uj~Wr{Fu`Vjf#TOx%gpo2z2 z@rA0wJ~P{92O#k)&wqI=@fr@7Dl>^z$p&oJ&!iG-4J21Xd+H!27s>3%=1_0z=~9`n zFiF?2m7!Iq;VqZ-(1i9A2s{qc%w|{aZhMBg!vP-YXyeKJmA^X!sW|(&M)CE!R$1z* zZEEWJmSr6Y)*ZKoy4N9LuPKoX@nsg6;&#upTfJ*_j9~?f5F^NYU*q%y-`S_F5AT(2 zSVK+BCT#M#;Gtp47COc~ZMq_68&VNEdx?f0hzKRe#(kCa%!&iUL#j)0eMmKS~$?UuDvDOFD|2Q1?UgMsMid sg`CV5BktBj=BfmzkinLL0~`p(0;wZp(^3aKl?OU~;=EB1F!~jy#QqoFFcMm0SeVe+wK6gw! z6CR6^gv@h1{Fm}h-^2a!pZ$ieGYD>_Vlyo$3<;Xo-E$|KC(}otp}nZBek1bJ5$Wkk z!oLo-oW&Q$R>t$4l{GIX@}2D-O`)5wHmMyq`p6v5cGNvy<;uyU=j>Y|Ug^v48KSQf z1>6r(FLw${JJ2`2XcdFVE94RyRa@tEgP&qe04bfvlBVR5z9yXI2dLaXQ zdV3!tM|r)_TjJ>Q)9|4+Bs0SI?raLlK))<*aQX|f@&~&=a#$XQvS78~jn))F{l;C= zfg!pTWP3JG5o7)}oCdyLV^tn;WKrU#?e4Nv$jbmR+mEnq#v8aeT2HUR<&~Y=S3Qfv z-%_v}ICv~dv(ff?tH&@3k-^v>!mNniQ&!IPCE{cr6Aw-#c2`2vXv>N`-Kzat$0>*o zpP~^R+l2GWJ5qz10RkUKSE3#<{IOd@n&X7T%w?P*^tsNt#*KA~#4{{mIbQ7w9${wFjmyhv`&~S7N-s(`SN!WdG3! zdZ-GRX@I{{+J_nh_v~z#l53qhl^g!2(Q<{&E_+iG5mWn~cEkXUD-U-?dcuwbw=})=f3zSk@`EMaB@);*&WyADu z(Y|0x!yvmUbb5cLg$lr|#;3=9S82d;UYP4!qrh}pi^z~N%WO2hHcwNt)8oB6A=DN~ zdv1cZ0njkp3hMC#A_I&{4in$#{!ZOsJnR8-fa1WnNx)3u{A8f9sbCVOphAA7VhBo% z{aX;b$2vkOlXi!hP0?QfsUKz>I#1!A_0y%vs2Pr!;U&yE#fKhzLu9yqtaltdh4Y)P zxFm$%RRSGSt2P`K00Kn*+x%Sn)LQGmC!bc@3!qR8qz22j_F<~f4=U^^%ix7gOEZO zY6c*nJnK|v2cW@iqXcwobJYm{zmOpTbd8O2j#jYM4EiWaoL9nyS)ErRoQ?T!!I;hk z>Ns-Z!4$_Uc05ERjLx*zU-yA|IiW~JY@ww-ZuIEnSzj#LUF-xe-!e5ev zx(Z@T9r|AG%Lj;zt)VHQ26Rhu;j}uEhwn$yEb~Z&c4tsAG{j;QR5k&#KC%f9Rek`C z!GD(xeC5DTg&Pu6Pvrgf+#aX(emtS3BDyFs?5+TjvH$4)9meiHByIogo;jX+N)hcP zMXqe#J1s7Uy__oMtU*A_tpmFnf|Q_z-4HCZO;Pu;DY>kg$ljp>DnY`LYZBN-L1B;fqI}p1* z2NBBD6q=B|^y{S2&pM`0(D67f;k>O~?yUv*m$=p5J>|1$YjB`F)y(7eyo7Mrzyl0YNY1rKWIw*&CaVc#m4S zYZtq__bS=d*WP{i;TzjND96&NrlI%q621CIFOAP;Z46x~*soqo^ovQvxrUunGI-tH zyRPzJ?2f$XJW2Py+0QOsVpd5bw-s`$L8%Kn_4~F+N>#hmU!sD&u|!VThw1X~bhCNX z(((gsrmLPyXpTlNB~xEJZ?dcPVy7v1o@eP^OLoN3e=;8+TG3{g+RvESJ@(o?r^T

Ul4l+_q-iF9P^FloHd81J@_?< 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

m+-H`IeBmCUU{1v4gb(;8fSe)oiB@Myr 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�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.|E?p#$-*f^W>vqcD{I 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

U_`CNd-;Rgi&+Oro2Ad=H=dfwCM>!olW1u_ zpnKI;iIInm7O|1TM||V;mN%zGB@n}~&#Wee!Od@gW|cy(#KV9vKxdQ~B z7Pt--NWR7K@v*nH<83H2s_M^&nN*`yQpJ)&l} zauABN4UUrs@=sA+vV1w z;SH=FTyNJ=M?bPznf;m>xYl$jq-#iIpM(UL@w5D4Fu>5npK3g6_Z|{}qa8zJNj@32 zFII11(uX1Og&Rd zpD@x()cYj+4Q){4%vn92o$m|?c*aafNBwvMzHMhb7lX0YzSeL|N)B!`xjc_sf~$>J|>8h9jB00&?yO(sGc5<)2jG+flt%dpkXmhCU-M z^$ivD<^?ZP4rRd4`i4TdbCp7kXqcC6Bq`x9=qliBtBMBJ5YD1++ZP8G_}0k0@sq}^ zGx+s4kMBrU^7e+0i1`eljBG+~2MyjBRfqFk!Lg&?e;Od05O&U-bpHgxAkD> zIA;2mq?}3b{61E-?XcNW_>&1)pM&im8Wd$^VM*#N9~89kU2QkAq@8%WGQfnH`)#xSwM>%VI0k3e)(lZ4lB? zm@8O)wuG3-5ghyNc}Zy6U=_x*v+P=lmM zO9~?0Ae{;*DBT?*(jeU}NFyx`(%lV1cXton-F*-G{D1dz?>pWxXP>jzUi(`MnCzS2 zi)!lHfID+@zO!u}!dQn4^fMI&sBosI4qa;VZ1bu*0cC1nZWDY)5XauM;a&hT`rDb# z&K-&|&BH^#!kY@~ph+|QJbRLQtOukSI-U41^UlP->m;P}nE6q+)hn24b9|p_Yh|K_ zVfQOOsE_Rali(CTQdzmSO?tpJ-GX8WW&_5gP)DgsQ8+7pUed^j zP&u>SsFYw`(+Bw(tzcqMdaaEG#L5U zp)z!$DBko>=WD5hkKL7~NNg+YI}XnckbZt|&^(hEP2#I?e{`P|O28ma#lAe8Yd|}r zTpaQkBIUK8JJ~w=i$9hQtaL}<#kYuvD5jY(-qe1h{k@`B(^x_|F)<3Lm$CQg&ci(J z+76D8tl9|y!vF}3r#joYvk82c?IbxS<2icI$1C2|+xISU?(uf?<;iCT{#q;(L-pCL zG41rVHo)a!MLx;>lko)=knl+4*O7;pAR8Vr-Q8cuH&eR@J-sK#EN|Ew&Lx{rk%tCi zC;P^0q3oLqg{fq-%eG{%CFDXk>qCVD2q# z%jfbnNkplnx#P&Kj#&?*T&8MFnLq592XPao7V zKXK=+Sx!{j`mFu7Xcl=usRO-y1r2%??TV785?XCoi>!R> z@px|;3MDcE1Eb%zA_%?A3(Y;SU^tBGQL|OX=2mEAyuP#+E)M&{K_B4>$^r07^e%Q$ zz=g)<^}|Czsm0e%=fm~>g~eC_+)xknfn?Ssbq>qHlS{{1KknpWm13s3G&)KfB zX25N~Gn6#5+BCY-;GN*1vxfx3?${T@dG(71Gl|04&v1za@QDC;HyUK8=JO_tJY>f9 z(c6~#>+2*ZtG3v6ZKa%`OE9dL6>z(Wvf_6>3m_GA{SZbb z^tIWEchE;7SP#+Tyv=egXD%QJkJ}Tk1T`X`u zE>|JCG=}q1jE5_7M{aV~+m}Ee8U(pD6p(h5^R)%+iTNF*nRQBo`->`nlaH4Jrlz85 z-S$U!CY`#($*UWA#Vc^ErmR827f@g#Z(<7^#C$A6LnYz78QH4+TA{&WJ|{vx`K4#T z_d93c3LMCf6AOTM1UM^~6PqZwz3kTleAU%QRz&XQe}$AOIG zGyQ!DH6-e#&(V9mhyUq@s1`Tl}c=D6^XN%8=f4DIfKW~@VTf#>}l z&}YaP$|vs%URJA>$K8&vRGQ{)^f3xzxpE&J>21{cnnRtOl3Xs|EG6+7M>Gp5~g~ZPL0WXnU@7N+j=jpQ%KU=5CMFf>oQVqZzZ(eAE@}AIK>KW zUk6kL#MApI>c3HJ;EXqtT#B>pum#Ji<`e z7&00H)mbBgw&gbM=5EzAkY=$DW4^6h7y_8hPM9pP>zF+gElM4G?eNFYcP1tf7G2MZ zJ>&*tSd?@oHo2nq(a=YKYw3WI!(1G=Z#CKm61{0%xXq0@q7(4}N;g z8KjsHu(6kcTD`H*A^;WeLTkxJlDeC9t6)EAbM%=6%r*4tT-QC*i-jFvT}wt>3Fw+; zY&t+Kp)^kWg*hbCcRCP6zpZBLgaqJ@R+_aIca0SV{*5P-l0piA<*M-(t){Qh<#MYt zga{1=8vfF0X!VF&bmevR=g%Km6B9a_(K|DGPn*3-#ymM{%9?a%IiDq9DN0saY^E_3 zN$?@8CLpw{L8Y3ZKHvH6tHq#I}~qVM@S_V&9-yW zvBbsq_bln61BYIqW+$o-C)q7OqBAO$`3``QQ+orcg5vd)2=L#Ty1C_i+Lrenh-K36 zUF^puL%=u{F8EaK9Rv-ivo9vOz4)pk86D>3J<5T*z@g`j{@ z=rp8nerf(zFQZWpfUp=ZaSXbZ3ei|3?IaCZ{GfbW#$^ejFD3*<>b$gOi zMRCN&(GM`eBj&c=H&b4Z-QZ-4?*K_5xu870!V8-@tsdH0H$F&WY;-tiQL3|ZXU*(V zp7P-WaaRuwPByqo?V9h~0Nn!xv@{nLSLH5|5SBUy5ZN?00a%oz$TS59nl^acC5s@0 zt8xPgpUv@WD4Q?5k9kA{(uo!R$|Vn!kj;Wv>Rkh#o%@QV%@NXfD`U~c0LHe3+V)K> zBL7(QX&;yPMj~<)52P4jM{$HVHC=_8Rss&^CXEiTYa5>KK*$hLD#XcQYf+07`URw0?dgPT#m0w;?vL)&)67<{_b=glMGb)D~J9eU==K}))<01$GReE zC>VT|i#5fNP4*bh2TcT|aF{I=u8wE2Q+}mfn)ulBI&;UED?D7xS#EnJ7Jw1~vMprM zX_MsTcr%#|I@^UsM<8D5wo3pM0_%3W&Xb!AP@or+c4C zubjQ*6Y+h}TA2RrGpjNrE2epVX&HN!GJ@o|ieT1l$#bd&fJDzG%VfDLDlQ&)&#ibJV~aVeolSl zH$t)`?_2ou$%}mNeMg^oyqXhN&Cg?_l6vgkWhlb-gvsQeh0@Z%UA*~pT|`74R*z)= zT=pHNCLdZJR+3|f_M0RA@HeFMcIc(91&luL$XPw4ihOPzZ-rV=r~H21nsn4m#<2gYnj z?`Mjz&$op>402&0TMl2ofNd4ue=Zzg))9xnMC}11D{#|umGDTJ>$MH1kG+`7as_rm zC+mVoXM(ee)EM(Tk2LMaMjC;tGOu-XhcwBsLP`9CK?Tt3uVC;LK(1kQ=`C|Vaj zNI{8C{TK-loN`mMlXd_S{}z$Vvf&sBmsvSjnMp%*1#eJuTZ92;Z*i>PqXC^t7TT)- zwr1+&WfX-%NyDAFdVCvy))@RzJjcN_fLorhB|7UwCz2I4s~B+(w2PT4;)8TIMZ1}% zuv&S)Skccs5AkUw3I_lE!i$p5GJ$LM3@!|`^2hSpk4Xn369TDIHFs+(^n^*;Z8N{K z#5A>yl&Z$wK8}ca(-Hz_rB63D(TpyjUO+o1mpt)zmEk?vzmL8~Oh3}Cb|nvae$bLG zVJjnQrKRdvFk9x=0tTVi+=2qhwGe1grwZhHp>7yfpw~x45X|ttK0)W*n4UN;%^xXX zen-L2>XqqnQn9K@Rvr$Ti7$kZ>J^V2h&MK}_%qzA4Z&cPJ7|$q12M*@_iL6Xy)L7PG4hecYFZbuj^RXg?i`p88(CiGO=WDR`Yq-`e< zC-6qa?yOQzSal(%VZb57+JS_}%sc*Y*OtP?%^a=E7Ath?*Wm?Po#tshY208M@vxc@lN- zSh?SO`51oS?~q-7`7k+_$uRN}wqkcJjw2ws7f0JLB9eGwdujH=G|tfQYv#}%b4Ij# zOa^H4B)XaASoH-TlU7r!-TVBZDir--@N0D#`NOk$=U|d_zy8tlU0gA;7GDj!En$(L zKlgl~2h#kGOypn&8QzP%T!^ynx>srg4H?*p=R?b&lvO>JgY3#BH&i4MZx7~smh6MH z?dD4{-{J;BFq>l}y%Pw>tYY81HlVjry(9lTukN}xo-0X+T)+VL`~sL1D7)|jJ=*oi zV%k2zBT-Wuojr?LEu9};g{`|wyEYv`RJ>6)Vk}dJOq7A}PJ9tCX0Cyao|}Gfg|v5w zlo&Qua(lnC;bP=(+ign`VOb9qaNdg6Xtp+}TCc4%%vmD5R&)OLq`wdc^h55)`R8zB zxYhOo$&S8AXZ!CS?>2=vy~vSSf<4QuFiXT9$;oOyDHSU#McxD+QOhLrSJ*DYC5+GE z9WtF--SdcFSRd>e)OeGI^87IdS@Tqxu~z{dn5%&M#sgy=5qrNqNG#xE+pCaTo1Okk z8uNqO_f4JEq+FK;xh?=8C8Hu!SgMM@%-gS{ayhc*~#k(DKNFmcg15uXhg1sXw(h@J$s zT#^2IZ#$r=9^mw6NJlFIOO(uEkvWzOgN0@Lay@K3ffSj0?^`O#=+U`kb#$w7Cm0tT z$7vb()A->l!7+zv7Q`<{M*U415fmIla~eHlLsq)!KM1EYQ9uFBkR7;dt>jiG*V_MRJp8%mo%tgq6_!mCu`VoaN6= zuGa+9Wm!!pGxMy}-R?2>X8Q!wbx!OP1xsGwvEP6f-wpd1rmHb*L4r`m?akUL;W5 z^I#YJK*G0})O54VMW>L9)X~-1UEAfQ)dTDgVwf%@FPl$t4ktOTEEsD{$8p`@Xye$I z-*>g=5C7ZB)>n^kwn7aFa#~%97T-6PN$RYvIWs#Z``nrLpP^I;3=OZeyvm5C?6CZxj9WI zLYp3r9q2S_k*KIit!u^X0kz4_Xf7o#gQ_t5hm&3A=HZ?7zF;Kow-d3`;JhzCSAHYW zA$5Bp%1`u0Pruzlt}@FLWD{_3yDe)r^e`1b0tnF2E!I`z$pRh(2fD(($ZHM3EUKqx z)ogev1#t9Vbv##NQ{*=rhM?#WZtiSpk1*}4>A~p0JJiw2$VFS;APtuk7poA9B%Ke& z)}7VQHd_MO`IhQx`q!(lr=CvCE-^5MX5MoNB*=VdO*-??2DRZctMP8}$Lb1bsjCRk z`F;$`9m^G85C^23c(K~L29O-yO4E@!%jV3V8WZ`&O}+N9yiN>2_OWP$TA7ug+e6CZ zH>9ZNAVNN)mYq)XdDZfB>lkag-R&Ejh&_X;9Rro%;*C55ML6QqIyl>0fWoh0ZfL<< z=@U$)jy!n@A{I{M7`ikw`FZ-fgiWjA>wLM$I2H4}z`IN7S~=%WVnGa+?{jP(*9hRy zUYt5ym_D;QJO5DLY_=`Bz6UQcDRlZ#)r|6)RlmFXYjCJ3V@?R8U|4%6a5T2niuWwl zSTLUNErz&1?yKCaMS9Hf4_kMjtUsIN1dRU{hwv@8ITF=HXB!EYvp9>;-Zx7Svf(Km zH!(j{+;oin*|Hkm4f{6vsm~Ag_m)~0rF#a2U7#w|rCPW8iW+NO2U-IIVYtM8JBZ7n zFd}NgxY{A1A6I|0i9V@wRlEJM6(FbJ0)#V?Mu!PVbod9a$9&dAlzoUWtVyXWGEN-^ z0fo3Wu7LxfItx;V1;~nO8wp~azWoL2x+{2+EvO%*2-$gydVAB*QOtt`2{g`lOkWo0 zf)rpE92RFZCKKt16NL&1d5U@M^S>o=n5ESOU`UxUVw#C!r<+*w)x+W?y)(6T?C69X z!@|n<@)?oXlr7epG7W^>yRCeq_?#jb z*{f3cd3E82Tti){-*zE6ZO|+d$c~b^<&du5!Y}fTW z2U|2%TCeYt6wX+3sRe>^b=f^5Nwp%F7I`Vap-xHwt!_=;yW3BlKR+z~0+<)h35WsR zGvQ0%K;U|kWfuG(-N!`%#cDa5JmqX~$9u6lj&>~kNeRp@c}>OFVt)Q|jz{hZB=aZ` zb5a+U*00y;p%6@8z@bCq9UW3w#g0GsUYqZ+n)z1tB2A!6cs`BBWTZ|2RZ}xv6PNb| zH9Y=Y`F$a+)YCgluPAJuL5m6y2@KI{J{pjb5eTlA&K1EZur;f#yjm5g+}gX(hg1BR zhUy?QnvtPphGbELh%v~;bd6$YxQH2Alwh(hYPWrYo42$l19)1PH~~eI{t5;Wjnz^30<5XjSH)3ZUHxU|e_)6FV0wOJ#)0Vi7W})(p(?UVSgFA?jUY<< zaQ4bVKx1}N+SCB(Y@BdGG?xkRlX8co3(qEBKHhFi+#FsmDRf=ze=97;RCpLl{-8`g zu)X?`!=;M)e#x?9>sBZ5SN10VdNL>KyX%6}&{s1KWru47;Reuo0_f87^~3Jm)e4tQ zX_JX8%Ke#2sfT+j3NAWe`|RQw9WGT6HGqddo^qgR79er09G+bt&Q-WO=!*mQNEh2T z>rD4{oB_$i#<|ac8d~e2@2jw_6Tcn!A2TiGNx4vGSp#mGDYt*s&BZox;Uy?vP*x_RT*`Kx% zUI%iUASb7x>&~D(_8Frmk+*IS0XGhz2)%N_pM8z$ufmD3Oc^NS))WDHABk#u*?|uV z!X3-(KZ6raP+qreJQU+0EHiJX@gpd_bDnc8g|SkLKM}Zfj83qdZqFKeI6MEz{d$B1 zqUJ0rlG;uLp5rw%qNFoZkl4tVHD-K9`$_FLSYF~!G%!EI9$)$Si43nlY~u9fnpS=Z zvDbIrEv%-|X>wI8_=a_o$Qk)U=XX6dRXcku{Q}$_0!d&%YF6Q_eBWD=Zws?_D0?DK zi`t88tNZVeHGA;Ojz|2zB|WO!GxN#|#bCsSh5Z~15Br&QZaT$!{Vwl{QIj<5n*Y&v zngB($I=M%}k4$#dI;F2m+)y~Ty+##9wK!79k-R_0)%J_;FARsg5HOgbxEnrAvM#P! z^`P{Md$vLkJ~9j$l{NhG;v%iPB-r&ii}P4#$R|O5j_H5~Ez_bG zgS%av6jYDgsmN-~&1VWC@yFym&TwaGzUYKgU{==^CUBLX4d35J*>>Mv-;|!+yIj(3 zTXnUC8t%A~A2xTUWI_;;=uW2Vh*3z_e0MzqBBYRrRmX+XSwiS#-c+!kxjt)~u34 zJ?d1y%+L!tn9X%5*5W(I(OAUTl93}l47-yH-NNWvLS2=LS|X}R=s5(8CPP#&CNaB> z+HTIBPefd7Pr45k&9kMDn8XOKi--YowqIp@E@-8P-N+U?0m2@k#Gd$rg4 z!`kPJ)7{T3Jih^X7Xxqdo*x*k_(((P# z-LV#76VogNt>+jdy@Ot9w$0QVFXMLqt!Jwl6lCKONuA3ja8oqM~O6SU)wS34p ziIX62)^h_M~u3`SzT|`}4ikJ?rB>?Zg3Ud-g zV3EUusJ`5=>pr@O7xH*@uUUaJkuw+f0@J7gm~cKsXcL=J4ag5Sz=H$rY8PN`!Rzg9 zjxn#G0ntQSr|oM=qRzINQ+fcX8^Kw$QpuC5#;6ZwGGYFwbkf|&C`It)-ev!{ZTAof zq8ce#M=Gp}sOQ`Q;9t6H*P1~tJVN28_A+*Plfn;m3~q?WcCTAc zAk*rh0rAPUuzi~nGz{1Uw&!UpKC&q^xHHNBa=*<$6Ny+uRiqgJY=K#T|0I2aUWIm=-FWaPQj6_;(oeB;;ddG(*NE@as zU;$*k&Q&m?*{*qXIW9Ys8W~*^v@ZLF;W$xdF7Zal=|mB5x_0y`>fdvJ-9w-fVB!S= zuMYdy78ck~yj#rqghd*x|_DB3f zQ35ZZEp4jK>%Y&>)<#0Z563IBlUqaG#hhn)InUN4!bpZjkKHNENZ1EMGGl2})MVWE z935g7v)qgVdE&54O;`TVGBnEeeE-inTeA^xWV=&A$b0?b<|OhB;Mo0II4k%58xnt# zfKid0ldF(pap!=>Zp$ztD&EWJ6hQ+#Da+wMREQ8m=rAz8xH*bBU*%D)e52&74m}|P znX9p(A-K2A4fi}(srhFz{jbO0oD3vOrQDXx{`52Te-iI z7(h$QMix@uN+7jk{!j6t>ALJu=mWr&JqH$MQ?ESnH{LdG@tnHK*9H-Ad+1VnHLjJD^s-5y+%2q7%~^NtjS?&fKhucY&LeK@;= z$)L?61P*v$es$nyq+fu-89Zg0aGzlk)U4umYen@=V0lu#d}pjA0#6Xad-8% z3{$Q|rw8uKgJO7EHwc^ghhUHn zuDP7SK}Xc$Qr(7`9Cd;ni|s$aYR8W&lsQLFZ@P?Kp*+bD}lsn$KUhoAIY0Y||si*Pu8(*9h^W$_{%m3pp6{p4mWo9+eX2a9hZpY;(|)1T&YQO zRkWA7YJRqrccNG@v!0T-ZJPb-tPhTa026QM6jdxAq=tBGdx!2hflp2+6KT|?$^K=M z8R)yjiq5FIS~{T+;j6m1c)!4xvB=+G!*4p+3Tyaw=cBfL73H+6ScBGugN`B zkzph?zXCZxk^34os7gO7;SP@7F>&CM^@A;!Oy>OpFEet+DXuOC_j#S(0p8GNm|$-k zSQe_40}E^)v)|cS3OWb4~R^ zjXr49{g_7m2#lB7|K8E3R4;2COJCuW6K8`@cjgoK*dze_?i$&&$E(KF*dnEe2UDQ! zSuK)x6dIwTi>n99jAo8@mI3k4UXO06DQZs??Kgw-ekl9F#{-AfQ`BT+mQ*1Djx>?b3wxNiO0w{`e^WWX5V}w8_21 znd_tF*`BOgJ$z!t^p5SpqFC&(#Qu}L32?Ycxv~tR=ra^n|5b4k8_D6-xDnZXoBJX7 zaAk0_DfDQJ18un3$v4Z+m22~7MSXdPnd|(@pWw}OQl4FY%vmRqCBc9{JV|?x2z1pV ziBIlBxI6y~yQY)s)nMEi{4(aJ%b0K|m6T6l^*Rq>grWO$ zhb^2A2TiE?a|2ew4?{rIV)?h*HX>EnpDx9$=Ar|;XKsr0_j@aueTwBG3Uq2|yb~tV zi5MO2ge=6hsL{T>OvhMiC=!XwJpW0Yqz9QmdWEHciO6IrD@4td2t%{|^!Bh(Lg?|( zL$UrVx_X@z_?ArRF09~iCz_+j9IkwjR-=vsUi6MQf9%xp&7;7RtD`r zDT&wpRvXE?>qfEkNwfM6^||>?aIyqWb^Qc-m`4VmO6uGuevR)zZnV4o#hnwKW*M9t zARbbzu%$vl4O7fFn>D9AsMUQoVKJRZGG;WyNi#j_tC!JLj^8Skwwx#ej(x{?Kq2YaJy^Ol~JJWHtv+&twlAE_|F&1te&@yzX{r}z--7~wxay6vWoyQ>;Q*+z7O&lSUyu)x>e<~@+aqg^&-dF);09-6);|h42g{zQ zRsJe5tj$GC`!p0^N;#)hRsZBrd|C=&`@aie_v?0fA>aj z5c@jblluX2yQ8XjTP?IL;X4|szz5P#fHA?^SxXx5AOL>ewI1yM`FZ(HIot(3mfRFcEX z&5z2XB=>Fwg((2Qa6=gd>S_uSHq#Sux#7suF3d|dM1wGT;LuANh=-=0o4Ohw7LnkP zHl%nFYC^7VON~qw^Th-7+EQ8wn-@AmI6XybAXn_)r)BYWe{^+037Hhe1hQnGa7`v< zefN@aFH@yearB-c4Ug>HJ%*Q=1#VrjW|lLH|NBUGSOMvswZKll58v50op%GU5Jous z1bBX#H|v>zV~s`qag(np(gGCtyu9eZ@N9ie+F*I%bq<@*99IOs{OFg0c!8tD-(5-oC!? z3T2grS7mqWd9eVd2mKLIO3|cjQYZACNByZwpo$UtdjYx&8BDHJdX-C_M$&9x z8Wa+@m&+w#3Eoj`0+%HnNa71~R*}wfpw2%8ishtjtU?g@Xk1rD;E2~0le0h=J7ZNg zMo3mB6ZxBGWbVpyDo>AJ`1kS2=hL}0S?xQkmesVP3RTPEo|kv33Ob!`7=nYVEf?Q+ zdK2gOL7C(p1Q+{Xbj3+cBv>}}Q~~-De(5pJSfEPZ{l z&W_>}4*0q+h$wdie>EG<_5G`F-_cb0o=SI-gcjer)DV2rI0Ed?;K<^QxG%495b!uq zvTd~}1GPmfPoL8T1?=s;wgl+p|f=$P;QZ!9Rc&y29l2t9q$1 z_CDJ$AsZB(GoSbajaV32H8|%u=& ztF7JZ1|>}%9LnsA(z`5e!x`-d6VDgR=Dvs|V{>m1(dL&?;Whnl8ES!L@Mn3FI|N0Z zw%i^n0NCD)*Dk-)35zKK>ma%Z(q{FNd(gw>n9O*EH6>tHt4t2U)juE~W`)TB;75Ex zDL22q`<*&mVj>Z{I=yzu){8LquE=ToGwz`6JN4b0?mL^W1;-ETMm!kbv&a(d?oO@S zhQ8l%FJ47}x}L)lovacL#4)RD&j(PKTzz4!>2|>}Q!@OE*=GWN+cRlp80eND>rwsu zF+aY+{f}vXnRcVO&;<^?6UE;w#&qWMWuFV_)$jPY>SaUXd6mGgC|H)K2IeZ{$OpY5 zsd0x}4udu+!~(->+ORz#F!WI|o?~FzCj(*}^uH^=vtl@R?mpiG@)CE0_fm)$y-I*lQV;bO;8?z${s5^r**+VH6AXD%S344b z)t2kg>^`0$0ptW_bD@*4`E~}AepYz%IemuR=vPWL{{C!JNbOOFxR|`WXoH%A5aW{A zhWT||)GG9(DsojC|AWpT zhj7iqK{oSM-ttsFRYpLo@c(0BbECCX?n#~#7eHTlVncC2_%&D)1sbsn`I?0<5lIF6 zHUIpsGRf@bGF|vxD|5ZS`1$?^rpl;P6vM|6eCD#Z{O*Uz`c6Jc$v>pypeJ2SvL#S( zH#o}64sF)4b2L*@(5Ew4505Jcvp}Dm>&ra1H$C1Lb95_!dmZR~k}KDyKRz`kWNAQ^ z(Fjlj9w8fvNtrZqe&%8&%RXP7+p=gT?roNENUm-B?6Wzt*U{&Z7ew?`ia0V5! zl_pe9pW^$4KNo8^=19dd%?Q@n?TW+STxORVbPgw~VQjwQ`#&u}IRS#`b2DME#-!SY z;ce-gF0cJL4z3Ud9`{5SAT`qfnDRdVAq((yn4wrD7x#C~$5&L;EISD$U1DV(GVUn? zK>6k%Em!vB>R&0D^(*|mDy=$}Z{Qm5D-MdBz-If9to{@k3CkUC5%Zv6MHq^`xoF}` zxkZB(xb=tkGBWmk z`g4^t*^;<_>&hxy$ZIE_YsnBx{i$?s;xOBig>#jANAw4skUy?7j7Tc-P2E_qv4ZhM zK|F_PCmNE={K6X+`a~~yBm(}R2ItFzj^xO>{>}M@U(uzsU0w#4GRikB)P`$U)(=2D zZ0IX!ts`d)K<>2zGBiI+cgciPQUUwEjM`hpoz}4JnTK>~2q1$6n34lvZpA+vHG)-5 z{b&ja-&fvgJl3}hQ{cdI8^=lTovXwDQeGGkv{(}xvOcQZzBS-cm94c_0Q+( zO(7G-8nGRvrHJ1|NK3lo0pA3pPD4ORq>?f$mYL@8189C~=4PtM9*-0VqgTlO_U)^x!8NDToGDm~ zBr(Za*fe*zT9b8#d@`@qNyP3Hu2k~kJ6qNe;Mf~+Mh0wtL^V5={}!Y9xm0ja+C*P0 z>xUCSz^aa}2{I^oH^HUjVIF-x@YIopm`r@@80`R(ilpU^^x|9KUz--vbl;it32r(K zj`%P%I$yk2?JH2N^X({}X{HVb#0tYBSKN}){GtIi;151ml2!@u1s?-KvbsxTXDiL= zudf~1@$(}9bI>}fLtc1lV{cr<{kJ*yiYkG1ZmWWak}9G7`vzj6K_MVK7^vd_vpkCi z`@=l`v~E3za=#y|&lu99#@dKH6a9O5hcJxBm;b9gp6vR7>dzY#9H8-|c(E?pD^f|L ziY3*0s}-?h{aFl4y@3JlFqX?Y%Bvh!2=^VK6gZT35q)JpDqq%XeW^@~PnoH})6vPQ zl=tp(iGidH*}nhKsYrWZbO4+PXp#aOULx_VcBMrBuUlZXBiC&&QQO>XtGXY&Y=OK5 z^K3Afep>M1QwHP&#>d`HIQY26slG#r8zLh04ln=AY5WXdH}u%c!(}Fg&o-SZ8n1V- z^u`_7lA|=9pJrWqtH(bVf>LVrrmh}qW$6=vQ1Sv1t1H3z;Zhh7reguJa7+fI$ju&m zoLRtP%{P@!5tL*R1Et#IU#TADdi;XzdFqN=g+4WCx6?C@N#l0Qe8!L$ECmI$zvDG^ zwg)YoVlo4P+G{jyfaVKuUOtEZtaVibQ-Vlw^A*!V1zhBPvOeRcdc|?fWu#9_u()@k zQIV7y!|42kyVLuyM;$#^0kaK%msVxoRMF>YLX>0czeX)S-Eo?AAKzVE2&Z9hbOxY~ zqp3G~)hL=N8Fj^mT+ZXUDrkh!2RZC@82%oG3C#Kfv~qu2&(hx$`H`$#*sA;pSGTMI z`Y2`Jq8}z=bzXqbcT%-sWP#km0(Ev&d&y5(5Ftc%&0jXF)sI^zVZ=46Hb~vzd8||5 z{$Sk|Knw|;7QBcaY>uy{>jBH9w3@zzs%VRu$nEi zhG$F^O7S94okk=3dgtkfVV`|+uKpRI7!>41`F-3(R7GZf>N8h<_zNr*_}HdR~%u}trKlIs96tITxf*%u|>l45~?waTU+ zOF+mHvO)zZPS%P4Emnc4?zViMt+DsH)MErCEzPTzEtn2IPJ4lt?lPS0=pQBe6U|D= zAw*O|#-npXVWfJ6pG+zZq*fiR0!^s6qu_7ipAtXVz2wl15hyvx)oK<*x3S3x7|TZA ziL~9s_^i z53||6zaGKfmfyYcM?V0Y)^J zrS{GKlukDw%7T|7K*0DBjo?i}DLC*X<^th9xY`d+tK}*9UsRaR;YsqQm#4x4!S=7c z*JZBD40{Mz03DLMf$!zd!a{{@!p7rLb`VQ#D3R3p>6li#I6~`8k#; zf}?OA zK-;yrKT^tMyL>>HJ+=#2h5sV3V{XL64bXI>n_pCW(*$@M6^AWL)O<#N6ZWPp^#F8( z!t)vc=?LC?ar&yKby^4m2@X`MLtmx}QBDFH%K?}Zo{D6BZ>BbBXFSgs4s1TV zkZCSUcY`@Q(?lS?X7Y1rjYhS_-y6tG1_XeO!o<E%*f(LAyP@4}$=Q^XGNSuAu#kPI*9{qOzl z0qSj5R7sF6ol=1?5Dr73%9~@brb}BIq&knIL668LwBMDiehgR8qP)@x3VzugcQfEnvNKbjP1+s- zlDK`SI7|4~&5R0GZrc3U%}~R`66{+QN;{zOV_6>_BZughV#=WPy44FRm%%rSTSJ1ZR{1It>m`2?= zJrG@k-Y^~|W~el&;sd~0se!RZJ}xr?h4$v5L|-h^tN8>r;};<$>_5aqh(A(Fpk=4M z^B+zXfj1t8dij#%iw6@(XNZUDvW;aqvs}`vZka7UCpUm`|GdTN3t`(Hj;IwDvnx24)?Qj=?7hd;3Oz_p5-}p3|4t{M z1Yq*ZZ8)=~E||d8JjovEAk%cpl7NMnuw7M@B>M(93xqU9v;kyIfCyNYB|o*j7UbW2 zE^ly|6uS%f#sO`mBmg>P09FdaBBh-g&g@^I@?TVuKPRxon@kn7cvDn=n~Z8uX2_1~ zwt^2L?8YD+PTBW9pVZh`-6m%m3eF{EKpNU!Gw9ExXJr!iCZ?93u9eSLZYV*;ZFT_S zg;BMGRi&mENey1}zm99YfRs{FaKurxiOw``bt6mi6X$akeR*zhJ4n*7#K6;M4dZt+ z{P<{cAN=1}-2>uA*1ZFKrg%V<&SDk1=G_+)LCLwJcSXKjARgL}Zd-TvebSkcKpt3< zfJZV)Y=N-O{SguF|4hOFb%TrJdW}ICSxR5!2lS=RZ-L|79hDvWylGfmlc?sM+jR&2 zQ=nBsg|C-bztF=m=GTaFI|I*_K{_Pvo}~42oi`glyC6|b>(tJ8N^hs&635%lw_201U%;Nr0hw&TxD(?UI%azW zf0DlvZqm2T{FL&k^0H=Ha(c0cQLMGSRgUeQJe_d!k1vizK6+$%f(vtZrkDiG&hLsNiZ*uup`Rnh71Ff&tPy@!R&Qow|+!D0s zNyc%FOOAlE*nPEKv042WX~|?tyDDdZ4*QoQT{u^@T35pT`6@rP>2~7a)ajfL3vX9| zvj*tjhh~wEuqJuJyQaMn2^buJ9&@B5?Va%mT$`#?%(#kR#sGKZs&In+0OP9CfBn;z zZ7@6SC9R={LJ(}=FMSIrJNa9jJ=UR?;-VHK@fKp?qoqX zNlY@qFGk5(f^+IKQ6P!dka;A#C-i73>j}|_b2~ks8ZVZy+(@Qix=TZY983=u=m28e zsZUz@g7<6K-u2^o>r&_ihOiwDqYbpG)2LF$7O~v~kH=esm?0p8l-GW(2ONA{13albV|Jl@OWbZx(lcRBbZ`7S>b@``Feh*c1No>fMi$Y3_jN zw%zB%75@9Gew%6XZ)Rqn3Z|bm`n_)WIcZMqe!KSxi2hK8`H}|c&Wn9v*xuf@ zJzNy1bHC@!%*-U5$2Yt_r*{N(?ax(jZww^ZZVr-MBxDB}RsQ<6Z}|+!Pyk-)Y;pJ1 zDUg_AsfUD0)Sd$VV@)O$s>T|C>b!^H2kM~wfsyv;dJ(VI7tgim=!1gC0IdS~8x93# z1{seZ=`no8fQHoWcgkU^P86JoqMkAZok^D^gECpxkP}~lHHMUQk9!iPdbW9s3-q>l6CnJWeCfM{J-Ane#v8h29`(gc$5vS3g@-YapJN z`tT`hy&hvMP|Mo(?AtGjp_ItYL^8hb#A~i(+@}uYU16rdfHcO|c|2O`meyP&%?v(q zGarz3V;5F5wMZ*S31yt!i%~T=J+svPd3yB?^2|!{pRJtUsu*lk>vG9tzyf1o$-$Zl z%H35d(yA9%69~=^jLH6+H3|f(dI)VK14Na35PM}1j_{!C&`iIUSfk;U7tC$E+=a{e zu(1I_l~R3B^?OKax2FVhasyzk5fCH7;{tKz^o0rCrHH6KEphO)}tK88>0WOCyc6EF~)4-6AERgecOTQcJ^9OG~SSASDgbjpQOF-CYYS-QDos=<~eK z`u2|XPfV;Og0|Q)LUnzHPCfh0($aoDy=!h*#@$E%*R^TN5G5=_z;e#kSj3*{Tk?x z%6;d$9gTdbS63aGyJEKfvowG#A85p}HjM_vB^w)KXGLzQO1h^k5)sS*xB~$!(TFMQ z$i>yy6wGC-6$XZSHHO541Us=vr?1pP_S~xZKnJa?v+<%;vcydU=)m*v&x0jt;JPJi zP;&faLW#ad4_b#SX19^|_w75-Qtmn4NSVHnTkbE;=O4_CuU21=C>ombWD-$7@HR3`x^0_?+pZc?620B7(NZfA)PG?6J9uN-e4ppnv_+<*`5_ zjXWJ8c6Q7q)(8{YnHt|9x2Vr!?b5xtpcFUUHtkzxtd$JCxEN?6R3+C&%Kne= zP;->NCm67{Pyhm^D7c6|4F(|Y0BxgoYPmAAa#AKw3#<4l&2T0H5W-E@CAj^k)r54 zQ3mM4!H#KvxHjk@sA_9ove2nll-^jgNZC_Vd`9yso7|ajC=cyy9nlYa{zFh8s3wTE z+%x5omOX>vpSx~ltsp1$+va@PCY}`SrWK#rXa*4i+u5|AcHTYz_oabOuk|E+yt<&Z zi%sw2u{Nj4f_wD9-%<+D`*RJWao8VT=`V_j09{+i;N@F_%iT;WZ`2^zV$o0OYLhxy z{_XD6w)05u%fD}1@3v`09tVQ|=}!hYE$tesjMjvu?gt0xlRs2wfFbZgoiKdWt81w{ z<8qhGUu}3MJLgv(8u3c;iC*M-h39;o1LKA7asc#D5GmH`HjHHw{iaRC_;}-a>I#05 z39DDo(CQGQ%Vm%t5`6L4FD~#9^8FgKQfA|MRgkbq#(A&f_kOLxu;#un-j#F5et-!b zU=#&f4dw(@^@zd``c*fu^|mdhOEgq-y`NieHRk~^5h(hk+M<4*I(FXaa=OHk2NOPp zWU%VgKLjd2UnTO#1GLqLVpw{m(Y#Bn?M&X4^#YDM;n8-R>Hu%`%o|_t-akGYuFwEy&mz&>Cao6 zvZDlA9w%VX$UWc22r_8&Pn->-<GKqQAsfX38$uhb3IDleOlwT?%{<-O6j298SV=1*4jMaMi z(w}GV+Z;?$y5VSO250VNr=Az|I(cim<4AIeQkI%+`QP~tar6&%VPJk=9dsV{x^`oq zql&t*EKy2dC=YhAcujOE%?#=~!4-rKyX=gqcgyEkK;N`R-JZ`m4`!$oe^W{**#8vh z*0~?>v+_W5rxMfu6Ld>5JKI z9#~{`#4bjav$}0ZyvQ*|5#({`!JiH`qQD|uJv!I>MI8X{Y&QlPeaC!B6n^Ff38Ss^ zr9J!ODYNJ{Ot&{lha&6_*>%D$J6~}@OTo(GC9bPmbgq-Smhz}#Y=I@az^Gl7$Fn{; z)j@qfD@+AgOk1KtTtdoV6uR7>s64?ylkF90g<;EOf-xIOx?r~GR3!mh@E9O)*8Ozs}<<#+Oy%n zzFw8%-F#k25fyXV0|SYNFlQ`^0efYkMo;mbMXEv3@jb&jsik+~GYr7H0jGEVS$22ub;k78R)tt3-6ct|z>kRqe|vk@vJxfk_S^3`nHGY*KU%S}HQ zG)uPnK&y%kbM9L_@zhe3dH*+hbcB|Tzx*c>a2>8hy<2N9SJNM&iXpzx?<>J;=?del z@vR(h`4gieV?GWAh6@btFmo`d8DP?F^-|?Mn-~;%bDFWOB>IiCsnvt{hEA$L+k`nc{>lzkCJeyOceK>mWxWB?T*0hUpfE{_Z=Y zlUY4zfX>;l{icEb0{%u6QwfA6Z2fKWItMt_?7dh)aG zr_#BP>|WE9t>4B5%-Q&f(DE=4zx!vkp@gcTqQGfKg%mYtG5)qb?H#0lYph4jVKwY$ zIlX)UR*Oz-+_~`6AJH-;BW(xv1IG>xo7`4` z57(zgrC(XhI!vH50N@q4+pR_VKlS|C<}S0bgf15&t&f1bLZ*@bwZ~ej`w06Tz^Q$= z-_g-(_Fyo{GSiJ9i>e_}$ck?c3&ZOwUuULPW&8EH`0BB`+kOeD@S%J|aX!B|QO1(` z$7tb5#-&jB_wli(3I;j@z7CR1oT5tBLg|BUWfJir67vbti5hMYPz}1mRD1hUQ&+Ss z>zNwU#qEH7I@1IblpgwttcmP~_-1%B29zS^(Rdikk20{wXV~5(O|{>=amOW|cv6%7 zU=X!Vonf$Ts1&lX{O#3rSyFX1uXDQgX%YyGB21-uD{vJP2+!VspLK9)*))RTP!}J* zz)QCIS~|-uV%YrLA~La-qEax(bY;PGiqu!9Td?}7{i$u3ctj2gPh#CRXy({3G<;E| zE!prq?-E=SXr5He%7@lBy2oP^Km;?jgJp5nS)rF2HYpwaUeaWisOw(e`)Y8>wK-WF zn1j2<$jdH^XNKGPGmJng=zFSIneD-2JUT(r+a@pLxx`^3R*!dFbrNA^s{+Y!^U^)1 z+4we--*qQB*B6SZfsSDTNuznj^PBP5vn_-C%r6)}pOorXKjh1O-GPusi(jjxp`Iwx zoavZ)^x=bZP4do~SN@)h(Vl%IofszYA58!3FKIQK@dUWp1JEwvASY|xe_dMhSpQhz zxa*~#Hw_}?WnSJ-*fjdylS@>EMj&TLF(es12%9AeLnO(kK z$p+}oqx#d$2%v{CTT){TZNzA@?fK2w;^$AFV1@5Xmxr?y+$N(`#Iw@8fx#7DVq*^w zt!O82d(@LTlq%HBB|OTeiA>z*o>pyEVopa8w%VlU63#VVDyjl*iC3O$CiJ^0Mf{Ft zXz9X>SKg@0Ut%?ATp9<8)v*Q*yS~6F$E*bjiw1`iSUcybnygw>JKKRhcu7@sclB61 zzX;!DeH;$|73F6YinvnymFnQ)w>R z6Iw%&`VYWqM*1S>hXa)T(hlqasw(Wgfv?DT(Yra#jyQxI4%x57&y3zZpo!i-65l=i zxg3w#e1wd|>A_wxoZ4Pt+3S@K-8WQeY?<|LC&d1!-5UjhP~)X*PbK~SZvx6FkBdry zs*gmV!LEj@@#Pqc)%cJ2e&=&NC_#U!1g?7Muedeh*j44#XiKwKzzaQ1tN-M z37=u$X1`w8nQdT1Fuib_4_G8To8z)TgvItUnob{@#e`*aZV>0?`eEqE+>4rpd&hGD=&kMVa zIbIQB?sWwGbRK$voPNQ)%pOB-@AZZOHwIngXsr)3ed}eZiK&U2r5=&wX2omI(0(sF zv_~YzWj@}1(53v7!8DP!Exzn9TJdpn!wED6Q>NmhOsPyM>y3}Vi4vPF%*BDwzJ6(l zSiWMs3sjgrdQj)cTc<7o@eucOjbS;><+IhCSYo|;1&RiN&FO8UL^85y(ns%FGHf@2!P;dmd%##IsV0eR$%wH?wqtSsH)&n9VLs;$av|?6X`rP5`dG zr^)ssXd0M61cb?_iFTFtQ6l_zzEwL__5&%mCphY%ZAA4_lnpfw?@SO?)}zmI>`{r+ z29>=I!=O4aWVnw;dy|vBS*+tv(Wml=XEc>wyacZ>i?BX27I+ zogJLjq6o(ku4GRvMJWuU4F?vjSFgvctLj`LXF*Ij*Tj2X*nGMAvH}?;3dn2`kUI4G8Yebef(iY@HP^ z?7zvtHtliQngBZP9e1sNW{f)*M1OK*G5G73r*pZ>@C$YWZo>m;l7MM_g+#bNjH)ql zHhQL}8bjzqQ{j7d=WyRL+G>@Z&+w0fmSR)1_Om8e>#1$074x=Ii-CJ>brQfrFa>f^ zcZ?j!!LoYZ9wQXlnS0tOj_E6%Yx)>@W3qF^n(-hi^P&-pUz-5^&~4%!oj7H@8)6xY z#E@i=I<_@xGdLDJ+VkIKki>ydatogylU40jlB4sm#tqXM-u|XcTD`8Rd< zM>9nzokP~D{9~%m)?1SCA;*InvwdzAO}0X_>7NC!0+u+T`=n#*t}kzPaG{^3e*(>4 zkC`~;56ofC2Yt`3%eP<4z+x>B%f5q4t;e zbN^%R+h|()rsPV(XB<*MaAYNGxs(C|4+`9l>Xdc6{@u>ZH9P>VnwqbFYPDJ{NqyKA zvLA?$!L`MfKEHYZw$1=O#AMr@$-$M6G7{aD3#W+u06MZFhiBCGZ<6)$7|&_B0KJ96 z!m>cgrKZXk} zg_^kSpzF)~9RMRA-3DT{X&n3yEV&c^wE~SEo}uPD5|y9c-4XQI?QkOd(|m<`LG!%N*VX3A=}Xs+ME=h3?_55}L^F(cC-HUV`;LP~q4v;HZZNF#(AEckh)4PgWu* zGW3%d%ZzqylR5ZpG}*g=R=RcrIeC&SNN^JmZ)1(!LgEPB+(Qat@=SDrRnN{&?FuWD z)xMMrTREMdwk(1rx`Fz$HLN^lW0CJZ+z}Pk;UMw{{~TDE)s4{BMC_P~{d5iAvADXR z^`^tLiN=;le25G^J8X2rO)NzP52G!PqU})j{B}=LFr!seHuR=KJlVCzVZSV;fqU{_ zEY{6V3ZM2j`41vn0|*a<>*|1Wgo0>K2U}=+4YFVL6@x4%8iTE_m6cccTsv)>iW4^$ z^`WQgA4v;HF}{9V+UlLeHrW(Rj}fZ8nnfWZYaVLI@$F@54U2j9B=`51jgDHmR1Ny> zWJBQvr<{o+0Gq0W4@FG47WQs7*z5@b zOG)?wMRqk(%G!hIwL_9g1ZBL)>!Y0?Zj ziypj?!p1;|>!0V;oOf?lcS>D%*z!aqdRGWl7#*FAO;h&5X(g^t zI(j$$Xm#V`!oEpg;zY4-hDM&s`fyXjmp5JjkkKl4d4T=8#(wU*88mYZN5g(^t{x*< zsHp2wpfC>98v86#;m+45-tHBRXjN_Zsx1ARj9&J}88_uz$vv03aHTf1@++e!6D2xH zs9IWFv-8b9V&+%ml~#^yWN74-`nGhl-GDLgd)sk_xY}=`>`R>Oplnav>yP_0lPKAY z4Ur}E)*$2+o9q#PeDqSM9$5%l>pRh!o7Gz&K!{VCrwCpzlu;a5=@W=cswp9&k`eeQ z18rrckX21U6(>=-%~y*GZgN~NT116_1Bp8`rvb)Du9?;bTLRl*odfyai+5sMDs8uw z$cGK3&0D~*Q@T}8smp9f)tc<9{)FfH$BaUvf zW0zI?A#2{mi2bG$C$$x1BoOIrb=I-1Y9uLa2U2cz#c=g87HoVgMNPrAtVJ%(Gzx-3 z{Uf4ALKdknAJf|XW^Y1kC?N;C3-rsPjz|O+^jyF0TkN<_`&kIAT-!ybLT-X z0lj5`aR@vR@>I7K#cJLXKOkDaZ|wOLu@Aw#f`iPh6C;hJOtA3r6wBp_)^TbbNrS3h z&)Cs&_$Q6PaxIiXLz~m)i>Q+*YCfE-5W=<|bLBWtc{FGs*VU%XapyzZCBXc_3SytJ4yN+B;+*b1 z;APK~d>>6U$ z#NwpZ_P%Oh+#YfH)^v;;cYFj!+5XhhPArz371A)#)6^Ab_l~tlapz@B$`7dlROFG> zmg3gc4}>WyWX4tL!QAT`p)J)KHS@W36`Kq*7YPAaTUGZlygXlCd;8=3rWuX{Z0l4Sw_>$lfjS=dEv zG_t_9$d{`MU`NaDVL-2?ZAT6}B1H%*=VoG2QGXry(oneh*|WXb&&LsPLW_V=09cMN zU95&2P>R%Q^T#V0e*cK1XWpH<9;9k75m6lo{3gh*9Dn;Xbts>iRIa(9D6+l~r1E@- zR&3yKe@SMp*@yalsX<4ULdYFzYACi#7?`?{lP}0%GPzyOMFEn`} zWKvF;Kx-^;5to&OFDyO8!Wn11LQ?%GwUQz->NMj#MmnJIw~q?jCmqMgcP@4rYnf3# zn%YbCd#~i%1GILWtxaEjXAB5@)uH_XmyFH8866TWFaKS$-+@%?MGRH-&N1BTQiEj0 zyKS$zVW zMz_MWbMgr{F2G_B!}MosSr<3~L0oykSKWeuK-AQcP^`eSnGP!|K{M>t{-ok{yd_iU zOfRpu)I_bt3eHN?#qErpVNtBpp@lw)1d+t=aG)IL<85}16yUq=gN{G?u5a#%&u_&V zfMIA$a!|}=!404mAOO5nPo0Z(Y(Y&CqZohnQ3*)+A|k#6AfI-$aH;yDsD(&jM*zXp zu*DiPOq+h6h&~4@=c7>_J=7)gXxI7-KUx&eW|_~bBue;YRGvqfz<+eI1K`Z4>Ee-w zl{;l4v4gjL%IXz>b%q)zKWvLRkGoLuAjbw0kJh<8&<-!6xQ`Qo;yM9Il{=P(vb*i- zx3jh0?nTBv>7GJ&^WMgDrzl?>ssH9|G|O!ZC8vthQ} zUtbMb%Yq<5owYh?@F1cbm7N*4&MgGWO}x!*6Ert&ZGtu7?#By^c3DZqlcEW-hm8~+ z;ba;mc^Hs7iHMUSzOLCQi+7T{lDw{`-~G{sGCiHC0f87^=V#-PT*=#8C6O16JX!L_ zW50>%`Kg4zw|wDjwE4>Erk$sSg&g3P8T%rK`{uZVYOjw&z3A&nq20TfNaxWUXUm-b zVhbQp{JPinO4nQJL~`fzq0uX_;dK391~%T2<&yC-_S^0GW4MSj$0NeY6~K`1RiGRgc8vZH5UK`VLU<9L85b-WKbT{+4u?^aY`g$ z>J_i&?4C;YO)i$%>3lkJbMxb-5k?|~XBGrZ=Z)K-PG6~_SG-I(1U^-=N-3Nr3rMeH zWq`nwsNi43J9#?QKeT`p>vHjTeeZ$=A!Ujg>Uk946uXXq>QmnSqwCMu8!4FFGT|$>A*kFxTBI{ zKD6LQ9+-BSTqV5DJ$|}nek0-K@;-q0=x0GSTd|F|LjYZmzkyj?1lLC5dTXrhi{=un zq;XGx!lF~CM@E3wwpX~X%m2LNh8)~vsMe^=Q(roW>wSAI?jR0YAX3ul8CP85kJMapUz-0!dIIb6~J1qUw3$w|+;_JvX!oq}7X= z*;p`2U{RXXw@*RuuA(z+ce*_QS}+78kL#59?YbALQO0=LI1kVM8eLO#nMze6NGoag zUb4`xcKPN$`&Z5Z=!Y@uvgBf+1}E^1;bJyQA`hdMW@i2Rs^yK$dC{B%uC=wi=W#&% z(XRUX(X6+x)p3(kl=;}9SM~-6}QS zH^l4*66cb~eM!Q;VDf?F2z;COfqVVM{&9h&n<@WT#rOAH!gvEvB+duhEii>bsr&3}`&Fk5Xkh+hh%kxY$Q!qRDF&fHa?3UtqYw$VnZ+lDA^Ir~rckN+ z=s6RrmFRj;T}8BkvDL_~tX~ug3N!ZZBKR{^MSSbNY@W%8L^3d>09G^T78!;+MxJZSX?7Bx8z zzjK6tob!xeBrT8lJSg7?>ww2@Q#qqJMVuih9B(t`z62EP)#LKzF%lngd=-$t*0Vh=coakEe z3TPng6`0nAd@X`8=Yd_PUaNNCaofqzJ5^WpFDd0g3=eDc#YM}*3Yd+K1Ys{JbTLr# z#s8SK1(omo)_!WB3Si^WmCqXa%aj<`+fvSC)xJqK=gk7i1FcJiwd?|)`oCoTMQKM- z_E{Z?#Bk%E7|xb#MjfTL+D{|mprxDsZJ=M9KgXhvR~f9PtL-9;FMwfkme`1WZGNH$ z37eCJg@D+Jv|ehe>~?JC+2mZ7^JDkV4ePMK56BfxfueFaFykS-gfT~V#!G8A$h6;y zwgiMj)y_x%t{4FIAHv!=6d6}{I)KDDC1xNL%h6oL0nCfzf~j)Nux#PFqGN=*~h z&UvK5nYn1`qShuoKgY}Oh-% zV$#Cqq&3t-82MU!LHju(D)bjMYD#wEDJtaFvQZHaOb8QCCP-Cs z1&V>vEp$hYIhX(*dMpu>X+|ao&yiO!4*CU8VJjt_29pHEl$Atc)v67e$Cs4 zaD+c^H&d2E8wLQ6Ar27-4XnpY-(4XtY|e#S%GdDGsNP%iw=qh~->0j2orMnLfYy>^ z^%IN=SAem?_CKyToLB@5Re>iW?zVz=#(n!S9f_G*iMJ;PjQ=vDJj2_@TSMcgLB(5^ zs;wdIi}MSK2e0~y)W&VR12Go`W#^&zY8k)YD@~Jg_$e0@+FhwI8)ODKHNX6vnXg?) zuqkv-K*r`%49hq))Kn`u5SfwGY>kGN$Q24Qt9=JGm*~m;yqn!?R*3&G9tZ2RRoGgb znVu_MU{atG`tNRKqD_pUl54B7LndkWjMLZY?x@E#wkhExy&4AVDbEdy#Fw zkmtj>WukooPETSxi>>%TBVMr((_Gf{zDXgv=7#=|$nzt?zenpGmNyClLi4&b%6U?T zm~N8rjPVgd{iTS%2rbBYO7-m5)?=O;HctJ8a1zCdaG%Y;bgZ0l)TYRTAbz0{``1g z(i1s-{@CF&DcZshTmnOTij1Bv!#}OSr&B@H%Jd0EwYMg$H&)aMnZ@OVY#YRwqwLlm z2=jj?O8@skD2ncTrv0K6vCsT$mssGec>*6UsZEEaaL){DGh``mHBk;v;&1NanXZ(DRTb#f+g0T(uMZtzh== zi~aW}B1e?l_mCelzg8rr3KIU&@Ay~*#nQfGsprDHj(YrUqa!=26K(K015XJSu(|=G z2TUAfd-CHnJL(`6ObbHQZ}e5EMK`prNI}#XeK^b-h53zRq>Ne?D(=p~$sjai@sGX% zJ~wl^;LRjeXQ$^y)~=EuTd{c4O@kQIM?AdOEUXWS9(+WXMSYC&8TRt|6GY&{eZ4Do zs;``O?M=Vw(Erpu_#=*YgLBY@wRF5QDx9`0GVoxxYOo!xOO94}ZnNsH?_Eb*w%ne; zZ$sZF*o;+>XT^J^elxfn(9+Wn9x{|9P6wE*W62+wsqJYZ!c_O6R8|>rVoca{dV#;$ zBL4S}>4EQI_8c`07qZJN*wLMBQ|DwYu`4Uo)h09kbiF)@n<*QQHt1dF{O@OVj&7I( z?OmSP`fDopxh`Cg3ZMpwG^irHcRCauA(R1ORS5jj_xVB?(p_Ah*F5TERo_goPlZ74tiF-wn^}DL$1D#q~t@n!NhO-T}}cy9J6kqk^@C|gP0KO82le< z(Ia(Z)nlkR#xAOU)A!9mrq}|=3uCjhOyl<~DSstjugG7b!$*2MiXQy37yLx>pKZ8b zjla9%kEaCJ1r5Xsc<`=&c0QFyw@(2_V1?QMfQsE8;8&;@h$aX6+NYC03n#gZXSGIs z$O9l{s<_Xii|_>XFFpTd|FeeqVWVv=Qj*>8fF@T;-$birkY8e@OOp!<+x9(&TSK^C z;9447)HOWZ3s%_iJP{l8TXf?g&@b1#QO&66u|ZYz;O5FJbqtiWtcLLs$=Z?bFg= zp~mqTf6R#faMuu-;z=l??1~)NjhNB_)Z9-pM392K@lMF=9;R(bUF9m4$1n8qgZ&Mc zoOWL+cSF)*aq`!qKo7nUKD2loyD9}}nk}}(#t9+-l6zWuglGPosK)AjKFGt zuimp!x%$|$b@_|@HJ@Verec9wPH|@G|I9hnC`!p$r%K8XLmZ3CTBa#Wd7JIX6fqJ% zu+YG(RsbA&kY2{a!Dxv`%vIoBg|W6B(gTYD7q7a~*4n?dAi0aI+HnL`fruihvT zyeMBP8>t>!cnlE(Wt`-)ymjOc>0b!Eu`Fc}_d5o1KmdJk`8%Oi;C@7WFIVd8*_e><_^XFfHxqi2kI{xv{@;gd81R;Fr=EbA zj$li&PLEXgwp7g{+>kq(g+&>;wP?8%3BC6%d7X zCpPgs9>>$@`!QCu#wu$NQ>$*DOW`o|A%o%AQ^=C8Xo|!}!{FT`2Qf}u(M=*>A5AkN zw+@5-2O^Xwh1w*tA3%BLYc+KqLMs3NUkn{#MmtAYJQ}m8_-mSa>1Fr^tc$_i8}$!2 z{&`ev7DRLj9L+S!(Auy(OL>g9dBW z@y!q|KyWo<2YR<*F}J=B=lxScLApAsPj}8Z83kv%`>7Yin)ZzDqXGp`{BzO&ccm7G zQBZ_y4MKa3Hu(f1crwGSXMDJ1$I>7KvJpnRbzF^UrAIf z3PI&-{3NQNm_tGcHeJtH3U;TP$hUp7hB$+;pLQ>Cfys4q;nl+Qn2z16D*TtHb;z^J zp;!VGt@0jZ+1@c3itrt7Q7@&M#SNf5{fHI4$G&Q|#OcHFe~%i1S`_eS-VK|wZ^SwE z#9+xxT?qR>F|-7ZN=V=K+K*C_YTeIVS(m=3&YJ0nO(Q`A$gY^y!JDhI&nYQI;Bn_o z$3=f4cCALzhy+fB{o6p5N|9pHb`M2_x*3;bI}x0y{q42eqZ-*X*ZlQl#sT41d?iHAK8)DDNU}V?*}>IslVyO?Y+iR0srA+1{PKCFu}TaPxz-MO)Z5a+AERLGA<_Woy^77Ec&A$nMlw34$}2=4}FiJo56 zRj7^jEF)7k|1S7~>}!eb`T9O~c>!iEo{2^wdBRCZrWF zYbfC;^z{o#6T03Nu_BVc&e4T>CtiY z>~Mx7NUtusDUXwp{uH%FF14+*Ohc>kPB>vFT5ctT4{tB;{opRi!d_<0&2JIXAKWt; zc$9R^O@Y6Yd;f+?2MZYA*qd`4{Z<5bBKn;ftO67cDAwxQ@sAp4FIozNk__V-`w=0Mf+E?dd~RNY9^kLmIyx*QO0irB0yL{x#4Yo z14Co}tatMyVOp88(1A@%yvI&#nj5c&fG#0KcRYjbR61Rsr(9=;>Yg^?VWSnU7#ig| z{!_ai^q=4p2tm)*VL$=`4Ln1Y_mFG(umk_4@C5D|;iL<0yC>zPz{4!Rwv)=rICdST zFC>i%w=TI+mVY-0Bm9cNO0{gktZlF5E;=X(y#sCSKRUZ}ak%xIV*!nengm4h_begZ z>XrlcvoT(4nl)RTvrQDzfV&H#D8)no`0h>_&7R|D z{$csyFc7?fR7CZ^^Jaqm%PICh2zr%%uKNB;z62}1d3${S@t#v*!IQ&vqp|i*4_R6tT$_hP|hgbo9?!TELGnh>NkoA;BD1w3UQ>Xg0kksDJIO6dpRNQyhBE>bFm*u8k zHprlUW1ROlvn}tvXcO6l%U?;p$Yd{z80wb5##s!o!48V)bW4S#S ztRj;HNoAOhyWqo3@r-^);-!_~-XqC{L8unpmOx?uo6_~4|95}kBs4^@SOH*4jLmsp zoD_-QrXtSa{@yEfX}DG(?)8FXiU#bXTWAXUtun#(d+v1g~!Z-$lz{F@`!vTE^iycPAIxry_cS( znDS4T{u!g#SK8~?iFsmMFLEP-$!LhuuWD-n2jA~U3{HG6gG1}w`SFqMIRbgMzkB6? z+;LxQr*>$Ho?P%CD{Z{wHGp2UcpOOGb>iOnqTE4mMa0ia{a6)lS3M0ZMH1G08q-h8 zBqw?SmQ6C|UZzb@6S^}}`wpP;|95)KUIFG*iw=>0`fFOZybkKd`6arly=^Fb15+gC z#Wh4IlVLfAusx?&7s5JxMS{%dbzT8ZPvk}`K-CAa@L8Dd26PDfEoCm4#Zn4WZLAOD zo-OTc--aOMFa$Oa;$yt%-xnC?&)d>Mqvu05wg`-GYna&yKDIX6spnreIb!~JGtT6} z0Y^0OeXL|<-1&R}>Ex6Ib#`^XOh132{TGGO^FVlOun*hikilYI5J3h^CI|WDsqr@K z=mq}=l?s`|gNw^Y;PmC`7Rd<9G|x^ay1!DAX@kGw+I^pMgS08S5sN)K=aH_Fu6x_7 zIRc#6G&IOt>a|zb5A>SrXu}l5vL84CAxYbK<&op5#S@ih-O-ruLM*`g=II+d0=EhD zomBfH)(c+v1{YJp&T%-5>(cjP8Cz_z;C$*@Vw!Z=l-V|+H=igHNWvbuJoP=spWniecC7JWKyo$_8KubuzMQEl?Vw)?{UVUGbYt{{_ zPv$#=3mZOrRAqg6y?K42R-RE|h18t}63($515rOyKb9+>X1!=Cz;VeRvBJDmnJe&^ zZGS37qh-y4;xAt)X#?<9Y;-4ZfUj))K(C_bMl_9s&+on1=*w8P3U@4pE>>MiWlaKg z1*qIjxbS_xR!Z?2LZx`N=-LHOlEIdJ@mpZ3m{<1K*B{`|s%^X%{eWpn4^2azzKb(| zJ?>HK>GlB3$lqsQ^WL8LdU0fJxxW8uxyt%pN+a#;tslS;J%D#VhO5U5-uqbjRJr{P zHX|d06K`ltV-IcQ^8w<64mH_Q0 zz_&TH_DpeE+AEkE_Ni3uOg!XjIsBpuR7X6IK7F+E;zCU&?rVGBfw=yerm50`vWxmX zn->pw#*H1H1W^h`K=>^~ze0 zT%~w#W#`vp;JG)kLYsi|T!i6TPm?=IY(b3@d``RQ{1B~ySap7P{!V6albdvO9ygM) zX;NQIxfVdYB1DN5%F@dxTKBlL%M?Baio3PQeB;pU#5iQyC-^kcNq(zG$rJjN13wZa zy%aiY71KBL?r802611zRs#jxA00;(E0lk{IX*pC-A!0XRcYOS5nOLlK+s5Bk)YB zHwv}mhNy~3%b`M%oYkF$4>{)zM9YxSP>M4< zF63kYso!!85wDR?llxh(u|1Q~%w&q~i2IE%Z3WjAs7qS6L<4M4`A0BsGo9q^vCQ?( zo*zkRvWv&OaDYx6-O5YPdZz>S!NW+$XE#r7p4^9nQTHhQr+g#V6vJV3r>JRy&#ES@ z(&R+PWn(F3K;pXGV;blGD{5QoRuZtYqg?16?;>&mz}ut303;D0vWleX980Qtj6RL? z2n**H&`5smwzll^1bn{jxeB^)&WBe-9sq&Bb#H&^Nnxft9h*xUUg}x)Wd4HMFu`ae zm2sVTB5;$;^Juf;hcu9K0&okhe<}ktLaI*ek)S=SVx{N1QAR+%UiHIE{H@@5V%=8W zhqXO3caolr>-!V#4`HUZkzN%NEOzdy>HkQ9^(Yz3o6~175|VTnW-$42q|p>ZWrv~S_&7dn(>JxOLX zCtAkaFR6>fx`qpLT|-wxhU5vI4*&EA&Yajh-ru*NO6C=m!>Y&!LW&eixL0x$!(J@U z{6ENr0`!s$_77Q9!B{?5owH6X@jeUd%|GAam$5oLQ~<=d^DIU^&U{!;Y8^PHe9@o& zh!V05C12PV>-{!O>rgZcNbo?>u2Iy*OB+&E)VH^OeiSeyD(q-*?UwEmZ;KQ21vx%? z@okU$V4|hoyecCTzWhLn$S4Nn?RSmNQhtI?%%1bO0~XOw822`khjE^I2gj3XZ5{SE z#3e)#&Y*BW=wj&>U`qg6?dQKcwgeH3$IGrj8X3djDm#xscuC@@R?Z*RQRENZzji%N zZ^ZqnL?~n%NV~9q7G#d~+9pPOZ(|qwuk3BHEL^yO@ZLJYsVU&pT$MQLVz|K{Bt1)1T*|yLLqG z9D1F3k*dS~ukLNy8s*+@4gQ~t-93fBc#swqLYeQOac&(~WWU{U2oP?Sm*mYBHy3Hq28r#a zB(F?QT%EnSeB$Ht7}WKR8{Xsgv8rFo5+Jzda3IfA(}P79Z}PnXYA^F|w4RJYfc5*_ z9P2=TEBO3J>s$VfM!kdVVS<$LtL1%r733H)NMZ-GL?purkYn(yoWV=|6T#am) zEE38qSB*9xkST^PPJzJo8IO2#)933hg@X zG|?a+@Q!EC82|ioUCF0`QNK{lc$rfkVidF>iY^5dUpa}wA2hg-_%Q9rhW$X2mC|Pw ztBao*lt`ZcoK-5qiIzEF?W8J@=bBqPKD9Rg6SWB3ljA_3s=At7TkjYXJcFKFr&)XY zo9C$D*C?AVZH5K=mPhTGKz>k z)E(ZPtnOwmr`o8Xn$4BE2#nxJdvq#YUT!s7&DL{%kztha;=Eo*056RjWwP=G! zfgI3lb0}L5x4pfqp~F|Z)`9L2XxDK_C1M()JF^sZ`c8AP8;DW~A*cbT%yV+)?BbH% z=R~y*i=E?z?+@0885_1{DmKq7cjtbh`2tmIpA!@F?};dN8$2Air>M4>rgp$GXC^du zng9i-^0}S33r=KS?6l?jo+)HyIN~%z2dS;3N27oUS*s*_^s$vMfXMCQ*=cHX09QCZ z5Blrgvv$#9pUYF|mIL4f0p+$KWm5T+Er8F(uZo_h9HS-{#a(SJ-i9yM^HT(>H9E** zy_!G?__`=s{nDR@6<852t{L|$d<9N$)mGq9cR8haE?qbo*N?d_yLTF^Q61AklnoUY zeI0M|EU%MUZsMR)58$3AvBlWf&p&6%X}~{{f5A% z%K%n~1Kw>|#9p&Al>?!OFVDwY?Tn%Z-g_V6KksU%eR9Re{(G>=>x`5zrNMoVwPpNB z+--9~R~*7iSv2uEKu#~FOI1IC8kP7LiM_Q>*$#H}Tw|1+SXTL3`%~HZI($sAftTd0 z&|BF>CAh!yWITPhh!TP8`75$jfcu3GbH5G~lU3;b)*=wCRX$Jr3QC4e;lwqJfb3=x>>tI(2sNhcqf?}2aS5z|-(hO8Ls?Ds zIeYOT&pQxqOWtrP5e-770Fsy1b2nx>Tn=10RS49rjgK~K_)2@nqhT*@oi9>k=55ii z;1x(gYgNNu#nDsGmRymB4EE2c1OgX7BioV(qM z@TEZtQcMyn?k`Qf#Bmb-oLa}Y34j3^X$Ud#-aRePf=JRs5|%WQ3}-*-++;0`y(%j=31Ul(yuAY!T}PupSwk2kJ}vR)hqnUALso4 zNUXy%G%|}XI+|kN^+F7-e9dQ}>im7o9b36KtN}4j^3h^V02aJGkwxYiO{QUuWgeVu zpL9(5)`t&4j0eIqM_F1V>LnS7Gx~X=ztzC7oab}YIES8s-;HOU{#Z6-7^vH3i*HB! zq%8m-eCt($zdb6H8(et52z4j}BGCyQa$YN?(pxy*?~Z6o&UQhK>)tAxnO2| zGcoIs9e)=eD0@!90qg}(eC{YtB?R+}XP!t}Y@4{!URThazF-|l{g z%L6uYfQ-;j{dGMb;E+Sv|HUKksQG{#hFqr;llg`3N060yj>Ibc-QeqEh})J4)V8ASze?ut z`T$%F(dzWTezEL2n19vo?%ip&hpAerHH*6WXF3=%{JMs=50Mu)R6^K0L`JQnr(-|E z#q{cS$nNq%!NkgY@qxX|XeEuZ{|88)dx=R^pwOqO{fEm?Ff_dK_&Fd+c2c%Z!I&;s z)YT!t54DAc`}H-E{)0{hG2!zQ2d?c}y0U(~6<0_w{f^~KMWnLn$gd|2gKVYg0(@>) zTbW&k`ZA9h==2Sh!mr~?^>;gs>t|{^BOmk{7%k^YLws^2^4&0tZ~6G9roT-lF@0O> z5TsWtFR9D-DA(Q>`i9;hDgJA`alN38Y}rzEA_=g*Yqm3(DN>QNfELlL|H(Popu^3$ zTHSj_Y9naf>koL4m8j6FR_K!eF3ZZ>gIr7tb;Ez8KY4cIbO6Qq^l1v%Zc)@!q%z%a z0r{?F~VUm=F!EktP(`dyd~>+Tw%) zsj}F>t;*Lesgm=ne7wSR{4b%7xla)dy2Py>_@%Cl4e`zRG;>5`Q?zUIv@qQf`d~u0T1l; znew#5=j)DFQi{FtML`{dWPaa&u!pgTX0ApX;6alOFv)+(Ly`3GE6skt(0X##-v;Zo zgt_bFvKq=j`24McF||^FYS-6)`QV+&TWMmfxM?Kgl^!L=<)8U+G$4vEqP#a@*Qmvf z3uq(-Xw>K9rEz>AfEF53lwdq=y?=21uWi!&UHL)_gdn_&JZBX%Mc>8mOU2@)s zkPYxQje-2T96??XmSdOtXo^Sd?_i`C~Y6x8gD7CyW@v|K@itcgCb zNBLZ8$qrTsWet{xpyiqrD<6~ukVnI~AD@E`Oh9haKXl)nQu`j0 zs7Icjpk!ud3joWN8g{9B8%$W(ut%Yy3*L>aI^ZcaZ@d#Tyi$630UUAY^UIXdcG8Vc z|7%EP??7kwJa78GrTcVr?`yO>6~>c>9)I{sk11rm&<@4K|K!i&=o9>gmHR$Eu6tqb zK0Uv_M9r^z$;CqNh%_q-6<_1+eBo7D1IPoZdTYz;AHC~jr5pIBmKW{}ga=2+6cHilImIq zj?aG03=WV?oSK`luUlyovhf;;JL0GRf&5lPpQ_2b9*eFWa9ZKOCQAvLH`10B!Ca46Z9HWkhCu;y|t? z$9P;OndS;R_)(06vej1ZeA$`nqy6nuI~Dl#@V(iFG41xHT@Rp6NzmjtboOU>-RQL$ zIn&bia{`YMq#Z?EJ8ch4|LsZWZo588bmJPk!YOta%9^$Te@c5qjMU6@DOrkIw3_qF zlqwNuQe*hQ#kJF-J&q))@#bvAh-Cj2D-LK)FWQPw$+{AM6d}Tf*s=^-#dRJ>2cwU@ z%c_Nk`Go8$!LVFkw{c}5iv8}cM0BasTMo- zSMz_h3XYKJN#75r81ZIkWD?IZT2;DF`{DMQdwcfRAnW?uuil$WKwAAQait1@2l_oZ zntkBUwIsBF)r@00k}Ny?m(%+^@ZGSMPO?|y8c&?i`ClOlLlSfoa+P#+tREj=z`x}y*9D5(S!iCK>7;Rr21nH`>A>BlYHri1&rfhH%WhfiA7LEKSrgI#6|L~SIDC>c^Fs_)L za@V!K{bDipcON2f=au%*41rSruK7B8DE1NAv^7y}Yp+Ug1$E%R&UU*ieF9#|uFpWa z24i|?KD9EbRl!en98)t#j?Xmjz-D+sI@#AttZ!<$dw&I3A7kQ!MtPHTy zzYEf@GCUvTw@(Nh0U*uGFBkTG2@`r+%r6+6Ie!G(v`rVP+-NR)`=H8B`RWYdVpf#$ z4t|j$&+*n@K3Pqy38aOgIpp-mdu~6p>%prhjs`9Q_K4Hm_6nc9n?f2U?GGXeh+=$m#qEN$0k8Hp-p8x67glB}VTu^&ji--n@1IEj_V3 z=7}4gf>*(ta)S#n*=g^e-*(Sc`Q?vrII7 z2h*f-IxoNSmY5GT-ogIZR%X3O<+jnWy-ckiTk8E_NIvjn6!K__}5)^K!Gp1wy^;%TL>q?7r z$+242#$m43&Eo&Jx8EcFciYEJF^LF~Fvr9Mg>{hFF=_fD)?44YekjZ5?&g--F}Jmc zKPtg~dE&F@2tv=)uo(msa&{T-O92db9cab`12inYK7*R~o4(`v$BT4j`WQXXxR6a2 z03gLy5j?$3MEu4nB)WMpQ-b_c{L$LOtxIVdf3@u|Nz)vi#O30o7U)O!@@ZeVn zdb`?yELn+P5@fCigM%xAKHtrg93*Q*Z|@}x8{^D-`)R;SX))yz`jq*Ve| zH_A@IZHv;*$W{?u4HH#vP2$B|ny^5=0)nl&wU%Gj&*#v%e3?9x%qdUsnfJbpO08`q zwqI|#>iV-L8HV{y*m)-E)~d>P(ItyDF8~a@hmg$T{c+<*`jf{WOJXk^n<43|uoepV zY<1UeA*RAweT*x=0CNJVE89F;i%VVokn^9EkJtV1;|&RdlF*<+=FIYs)R*H(2-*t| z0qtw8fN11*ic|KT@x5d|&NRkA4gci>qfx}6bA09&AUic&T4McDC&&OjO@I3)+I#C( zy2O=D)r&yQ;_0I3qWES=oWi~4L6Se3s0e|$wQ6#swdO^(BkCs(@M9MJuLOMEE=R%K zqY`VsJ+{`8AE+<>`h2vz438t#O=C_6+Nj4+u6-0f@()n4{vg<8q|P9Dg9uG&1yWqLT}`N2 z5zSxCQ7iTF4sk{oun@EcBv6O71XU^3ZYkd3r0gr&{p7!w_AWj5I=mCj%NJ`0fqVBl zPZF20mWqDF$a5ADkpVXZz%S);qh?$$6G5UTMzPuAvzYz4`t&XXC$Jp%LVp+m2neOa zucPuiQQg~-6Cd9o3~5N7IgV`!dC~;>u1Sx`v&S^MP7tb~_SUDr%vwWhkt*At+!dKU zwDND#z+=e~-`q8hBE9WSum+lW9XH4e#)!g!`mYAWrX6YwWB(x;w$wc5TQwyYV7gK* zK48rk;c7R>;NE!k8wfnQ(DvV=_XF@1^xGED#nG!+Bb#GUa^ZObDVN@oK$x z9WU4Ck0xfb?%fzoKK3WK$^rzv|NICU(bos)Ws(wIwwd@T^+DgG7l&ACfAgTcp3?i(y#Ylx<60yzU&B@X@e_ zTbYS6gy(?X1LUY^8W+2@d0pGCt$s3N;ofk)N5b(KT5UOZtR0MN<68~Ms%@X^;|gP+ zWS3cKU9UWP&f|1WO;8JEFAhJI4X{3dkgRD|3YI`%3fXLCER}pr(I(BiP#y%%cf39f zKB$R=K%EY?+B#uP`Jej7b+*n#P?mw z0)9HCw#}o`W4jqh;_0fS1P7^Vl`!lrc8v1>+f4xJtaSh#ttU16xVsbGLIt=Kq_nYr z9G$3{`c6tQS*Gw-hhv;zSaSC@_Z!ZmnF)+xC# z7(!XZR?<|V$6sTN8{&^mTNiyg;MZwuGr3B1XQ*~$-94B5b(f9^j2Gu0!xnQKcgHNC z^$~0xcgBMbIZKx^fK3$~O;)s$8zhu=Tao0z0P(-!t{x&}8MLpL3yW3kO~&d{7AcrW z*yW&#)+j=-$oB4oHH;$hZ0{wI6f?3Zf#i!5=k<+c(^2427wUo_vrH1#Eq28tqvwR$LQk4|KI)j;#S?I}QQPJ2Gl(q1qh4wAgw@$?eM2xIVe>7N z2T}o{9ERgR5!n~1-o3m=xp79x<~b`>sOACXJ@_l2ODX z_ayN13>PPho#7}6Y*0M!eA)n@FM(cVs=&H--A7_9U-5vO_9m?~+h1V9`3T^BUC*8s zgh76wEJqxA{EB{p@Xt)Wxh`L(&WcrRDr^M37OGI6Ju=rmWIS8}{rHI=v@m@Pe2T4w z3E6B2MOk!N%f!~Bj8qB?N8;YgtPnS3T&q6s6215NU9tbIm+$Hr>{0^MVBo?eCZ(6s z%1>_MEZL~-9-yvJKS^)bIU85suax*O&1!}6NZ$Z|J-+@HV9pYP2L@YO;)~F+U4zj{ zi!*@twPRieFL%*)CPT|aT$_>avLp7 zbZE0=W#hGkN)Cc>mwxhHmz<$>SbhEfp%n*#(rt`UJs{T=+&bWVe!;-f4C}~)m7-b9 zJQDAi@5M3A;uu{&7@WEf14_weojvH)G-ke8sU4T@?<}mK1QR4NBux2e83^04g zukl9)`LX>!tw$=H{mFVK+8b-<@OWdhQ_tT!5sdQ6#*f^OyMWrpvXrUOi=!UDC`(&h+jP;8mmv5%q}T3u0NDgaTTz7@Jvnp@5Y05?dw8 zZmFGp_CcJiEE{bKZSDvjlIN?2Nk2`jXVzgfaJ+EAf1u5$lWc-l-m?J#hC7;6kiD(K zoO9yoJR-VKuUEU{d$Y`K6iSt zFV}*Q@vXRj%e&?Z<9zzhd|&T`vjTY&v{EnLj4U?#U^7Cs~~&O*^(I$xt33 z7jn1sLykb#GWiS-NEYfK3O_jr!JFWU|fU`};d=SKIv!k!F>PL_Z=~cMXL-EE4vZ9ke}yZgA9bv=b`WX{H%k=3Sb+;FAAho~mN5FfP3=di|ky zK>v~1Xwz8UB(ui}u^>QUA$4J-jm;m^o40oY)$3~Otvxw4w&%_9ASi})-TsYEiTi=Nqf#;Se;3aXI1s@I_GZZ3xD{_F%qulLRbZJ~R!QL9ME zE`+V(3pyhletd$vN8anF&GIgTKpqIb2RQei7sMI^1;hKbZ`RDef&d5IGw*@l#8JJ4 z9LZt97kRpL2K9nZ$0*3o?(j#E7IuHJ3ZU(l+N$L|>_k%xw7II&DiPFf2mkg2YUQ4( z)RHMxDT;)EX@Kx`w^10JBH;Q?bj#mF7O4&6Kh@W{PpgQv*!)#BU?|z%KCpgOg5gK? zNuq&IOB4Q|(P(vMHMh;=9d^;Drn61om&m2{*{+8!Qyvmu>gn)Bj>g>T*L~(PfCw-) zehczT-@kmxglaxBYPdb08hv%vDRC^g+x;ifcCc6w`rjN*(hTM6NVH>~0G$TT z+8K|-c#-UU+TzWS_Z*S$6s^TAqTutu1Tmt=@Hav8!;eKlp&XCa1Cwi1%Wp6SD}+PG z)4lbG)u~!%IWVfss*IhR&!SBiZ^HG+M*TsC%8s&6G5;_ev0#YcRjKUB9!_dOZ+)6~_5My{$=Z zIa6W=Z9H<9II!DZn&`I?$N~!C-kP72I~Mq^s@O{f)Ht2@8OxP=-xQ)p|`Xi)Zj zYeQv%l(&nAQUBu(+BZD_?cDWGzI?>=r)ftT&3n?*$&k`&;`k)Q3sn z2RvQ)E*~_DrsO=Qw-F#7@AX9@6pKmo|Z*l*Z2t0)-x(;aZ-Mug`ymZyihSM z7LH2!_~)a$*)_?w&rzg`!AZQWH{X&Up2yr3$r9EZkCs}PqO40sB#CU9qMyE8N%%T7 zR6q*Jle5<$P%-A^`qnVk^a(Lm(hPXWH{u2D;~Gb)s$zL(N)B%P;?I#!RfI$K9x@L<$5PF#wJz`AbX^5^+ikF^E`= ztGl{>AuvB~bQNWsM8_0Er`LeZcWoU47kNklkRM$0Gmg!Udr&H%N3@d)7`CWZmj%|y zCO2?XgRtq-U2q#L*e%+dydl%`aq8dm0WlD?1>yt$lMG+u+Qsih%42bTqv#v0Y=h~n zl*x5EZIGEO0q>ItAyT6DodCnPYq9^`y6W;4-pTkpb418rb+s#jQE+x<@ZTKwh9leV zFP1ViHh=-p&a6NLC*~nEg#H;h6$)G)`dOnqS5HD1ep~vv2EW2@ht?S%|E@hhhK36G zR{^tr*(lg1qc)__jnO{to1S@2fE5%B-r$=z@$H;Wip^3hyBJsm7He#-Pm`nha_7@C znWgdewg~wQtCMFOKi-WOi`gQj+kJ(!;QKQ+4mDG**0}*e25(HS=2|pBo|fjTe1tX7 zG#t+z{nnUGG|-Sui&`tqHrtfT2ds?xEB~P+uidi`w%?Wxm$=8@cXaW*8Gs`5|4(16 zv@}LnKJ?q!5h#-XGv91H`zo74=v-=ov{}R&BI1F_jxXEvt+;2OJEyQFA8>EvtL6R6{_vriKKzQ9&TeEC=ahV+YAq#RNV-)4zp>=YDe6$_v|Bj#2FlhN z>$2)z=5dw9M9Ih6UBoVFos*n2N-Fa=v}wM4y_wykQT zOZE2hyVvE%@o%L+to2@3T~#`7Z3%DN`A?2LTkYUmy~|PJoZ`rlFcW@}D^VlJBv4B! z%6>rj@B;w}3M!7;e3m!rJ1W&u zbMk2w1wRTw!&ylnl>q|eouQMF?u%!MBi<_#;eB6Cc*OLpkEqpHSS~g)fnFb^(mNl> zeDi%g_k2s?iDs4B;apTse*?_5w|1v%>XL_B17?8zp4yIxs9~G9P5MwFxg3$o zqkKvp0y~1$oem>^u@i?d9wC-44gO=7W0y!sG9&{<%Sam!BX5}ymB{U6|E?5tHm`)q zb6~MxhvY2l1K+_HO3EE0xB-x5Sz*@+(Y^~VWoHGG1A{s6Wgu;wdUyge9bf$ye3A3(%I z0lGtjo@YX`k3Ik1?fznqbN03ij|bY0kM}?ePm}pTi8P#E29jwH8^6*?MzY zPMdD(`n?$%=N7-~P#AfS1g0a+n`CIj^s(yKgVKCgt)QJOoC5^nPN$R-PvBk3$E>ZD z4TOw1(O>wap=iBPxMRoz^bbpY&V_w3_+pKyBv_dcRT5s#vtC4=A6Z`Io_B9M)jMCe z>}K^`Uqvcwfiay~YQ>JXhjiLFrHLwPR_e;LRvMG$E5?Voz}p;MkdsV_p>B&XZ`1NW z4=3G9GRq_rw-9EJoc%)>~B>v#cl>%eSxz~{Hke*Q6JH}g+ z4<|f0qKyhuf#PAu`5AN%8FUMb2-TrQplCTzxMe?EPFAFn)+?)0sk6rxv0c7fVLgQB zfl}aOO9j4#ZIFR&tAed+ybx(67m3tyg$uPkQYWL9uOpTdCeIZE`)@Rv`KREWtk^CJ zP%j40|2_P?8-GHhO8ezxT8T{Lk3-+r-q+30bp8`5d}uK2iXWMM9#(wwwV$cRooUD< zS7BwoPcj!KPmn=UnQ(I$FCsDU1!Y1_v^#n(CVnIUK;&WFQiE~fQj2#XpU-CAy2d-N z2~PWkGZSrC1+LDwk1R992`pJkZ5O|4*k>Zz>Ku1SaG@%0Z6pJ z_OM=lSR_efvrb8RH%TOj>3^AY=9aJMb>4o(@pm-Rk!SC}mtzY{vK4%M@b2%rEzpH9 zXGnlfW-eAI;oCQ;><%b*h_Sr}L6@jRlUiOp-H-Ed-5;D;ugnyeh&9?C{;9X(JLMVW z9=%UI-zs0fzTX)wvDq8PI1h;=G>z0rS#P<0a-S_Qmb~uvhvj22E|fjL;4$t;vU*YM zxM;tet85%NSg9?Hntm9jo$Wxz!(N-dY~EAl^KzoR3!eRS$3OwxVeB>jgzYJtte%T6 zwGtQqs|8Sn)25A8)QNy!Q{)PSbXl&-FylQr6jw?=Om) zfWh|{CaDg{mxOt$=bQbr4^)!h_1Cia=STNAo*yN5>=b-DT5i`o+j*cRB0_)Eo}3x6 zJaxmNe7|e0HFKX(KVBzGEMV>Ajdcy0{S?zRjB3o7q!ejWy;qh}5Zu9~$m!iyy*BWe z^>R;E8$1SS5pYVURFL9PcTHv4mnJsT<6Ju%`?N}I;Y9U#&7X9_!B{(z1tV{khu+urNcUvhJ4pwb|Lp@l$zj84@##C;Kc+I3sDT&qeVs4ztns?RECTMvDpy+&4s=LH;>*sd@!u*uIHDW7HG>x2@WP9K@dtPu1*=IR0 z<8u9%J;YqwZGMLVR~b@nVnIR-F8e+NmUj-UgywtAP8bd?HwRn&vBg>iPqIy@r66)p zd@CFW?wO$Tjvt?kQS@4v#cOK0W&a%PVSS^%q77ezBIlv1T4(De_hIGhZe_TMAW0kE zsiaU0**5aMm{7G7_C@5A6UFAr?1r^diQ}`U6u63c&x7Pc*(ohZ42l-ZD@%6B`0WZ# z=Ybjj%V~u@r`7!dB`wD=Zy?Y8awc%GcJ@Nhv&`Y^@PhkISyHqs<9fSJVOEWO_U+$V zu@Fj=AB=tQ*+!#S68U~b`1fm`7#lPol@3u@J4>ZR%UQ|-rQf>sBUB${DF;7;Kb@pI zAI-FKnA1mS_7Jl3P(`15JvoSzQg^nFXQ-&)v8bn%1lEN`I6_XURy&#oU5AUKj<>_1 zTwEOa8uZf0wXssTpXqZ57W|}mr&8OH#hcr!ezLrm*xkU=84(&?2Vbc>c|Y)2z@%3) zKgMQ?d*iH$0)t3QI2MK<;VEyY96mRpekxCt3)i`#AUIiHZ#h%eQSxkvqE_tT9`xD& zwB-@)r~Uo!Q{Qr*>$KMyexc_Jjo0jnra>ok_Rx?!sgSD}X!jW8dpESTWT_7PkcTfM zL!>0YM-nt0_DEebm4*s|kvDo|TYTuKdaC_{kPZMk^iQ@cP1(Q<$AXCq+41%V!NQlL zanGyDDm*s%?8^ueOEju zbd4R>Nul9ACaNnUw)-W(h7Nm{x2t>oA}fwNqYN>kO>j!or-SaV{oy6+XB#Er!*LiE zCF+$G1Kw9k;<_9pQWQgnubbgY4r^H)gYiM^vEN%SE(GFaIw1FaSlYn-kRmijyQ(dd z@wA>3c(#k1{UO#dDxwckOMqle62mMmx`!v^?J|+Jqhg4UFpLQ7MpeKkfrc_W+TgV8 zeZhH%@Dz~bksMRpW0$T>o$r~}00LnM=QUqrH4U&k3t7FAb=@R2UlxQTFSOEhvCftOlj@pUvaDx`znRbzgXP+ihZvyl5qE$w?&! z?m9h>4yH3@(HSsbCga|(T>{LK`#c&a(09bvxv`in*1pFK1-~8H{Gle*RTpnoTl!zR z@7fqvh+JSwxBoo-t?jgi=Q*})ao`ne%{&J z^Mr{Kh<5IPhB|))21?Z#rthSthdaWI4cKv#19Bz`6EhJv0MJ= zP^!E^g@O#wyEyX?90WLlb^|k`zfV;Ht_DJQq z)9rQot72K$uZzB?vLji6rT8N3-S;;_>UCv}dOk7)E}BRY#*@d=sbU6St5HWg!YNg4 zEU=wsU}}utG5;MfSte|An#jx)Knr3i+b2o$i|BA&^s4evN+VfUF0iS{p?=piGJ zlX1*^^Qx6ChMob*{sGOe`$(@k&+B1yCQG2~cxZALb*BF6Oicjtl~hUWP=!7xk3>DA zd-Ki0)V(a92Wca0)B;6Ny7ab`ClqZeCoty;HcB9r*!MGmkVoC#c7WR_H$^CT3$`T* zDd=>z9|N!Q&4W;FBy5Q;R2Rk>%drPDvjEIZ#PV89va0o z8prpEWauMF7v#uFo5-pxF?WgqHMnw&cr-r5Jwl+8Z1NB%(5vN=(!$J>?OPlmG zia@bqydBvGzY%Dz*;`=xc%$$2I=9JHGjJojy(tS75^O?)Z#G7CodCRqlm>}rlS{+T zS}*M}3|ye%Q?bdi&Ohncv)!Sz=OWR}7fQLVSX*S)>rA}=Dk!S~gkr1%fm0@xs z-~C{sBDEa_IOgXd?YVx%r;5JMlgXj7A1mfw*d-K4x(KwXsFrJrL1nl(i5x18SP^Mr zya+$K6}qRUBsDR5CJej}L%3YlgF&5pjTIOopmK_t`wTW*B?w!t(c`bbWtmQ6P24}| z@NQ?NuqXe5fEz=*@GN}+w^?v{w((O+yUn}xmUtt&-XeFtCbp@19RD+wJNpE_JJmtU z)gcZJd~T9UCO;61b&0f$J!u>rfQVLCy% zd{RHvOjjh79_2WKb0&ZM4nZAOhsY91nq;5G>edIrvU*UO<$2IRrneWFr`LR~a@s8C zI(Mp9@l)ugD!!{&>v1lN(=Ni7w}3d!T4+>A&omXcOja5klgIi@qz^wIQiYI?MXOMZ zG<#Ik`XgB_(Q;1hh}$;m>*pFDBplqX{w0>()8}TVdaI~ zT;bAPgOnX>+HKgtgbyc4bFjCeva+5S`wmp+X5@c<(et&*Br@;J_G*18=ySIJbTQM> zS&(eDRzlz~UF8*C;T0xW&GL=}Vwm#z!&1VtdBcDWUIU4KX`#oLmiXjbPm8GSQ)Oq; zqH-WNthh;E+7@i|MlMjcS?KJM27fz|z0wJv%s;=C_*vg!N7x*g^U;yk!`1M&*^pa8u@)*7?E zCI_WfhHIY}cZGqNSSmq+l+3_uOX>*@^|C)k3#mv{YM|BzFjjM{Y` z2cql;g4i0zVxJSafi&Q5i{@96ohWv>&I^;Zfzr1h*>U zRAh_vR)F0Cx{5W6{VlJgppRuYvi@rFaM>-2$LB`Zw{Y$NAY?aNbP!8#s5#A{A36`y zl0eCFh$UwUy^~DBYZ_}09QBzP$`Q~yWc!?rLj&6K6+YFPD1r_<0HPEawe?e;I zaGCeF6*B4;k$iCym#6VnSa3%Ja83>B6Vb$!^Y{~q zoQN)h=abTwOu8a1^(&}&rRScTBXJ_V=FF1b%qN+G&eSsN& z3CFwsfc5$OdWcoGM?IgYW+;6k0RU{s>i&DjEf0{2(_n7S8PJSGCu$hJdX70ha zkt1kxo83@FFU4`1Ro|xu8*z>8F7|ts4#4TN#X6&-@omtKaGeWTQOl8k|5$ZKoeQlv z;y}TN=dfrBs?4+KJd5%EI+-g`QEB8Rw=oqI5C%~>FEjGTFc#Iabg+qIF=I*|I@IFI zeGIcI=-wPbfVZ#`8hm^}JtUY7CbwPnxOD=#G{9m!d_9zB){6(gN)`N$FU)OJjIR+e zQFhB`x{5SD#y6Z}|7wvQXTKjKpPS6JGMNO%>_P$ZGSf6k zXWdr>Vuvbv^^&3idE(-^6YU(w3I?onq8;cwXq+X5gxnTIW=yFi(`|PT zmzhrRoBdds`|SCox$T8F`-i3M+hwWia#5#Ukxr$un|YCnzCyY*l% zWiu!!shFX77H2b6%ME}vg@i#J29pW@A=8*VTAbJP8bn1^ga|+~Z2JAZC3PCicv67X zMcHEm2CIKC)?z)+NgXb=(MIX?|IqC%Hab&8hkbo0#u&jymdCiuTM1i9nZ= zZMXH-b)OrGGp0_yA1~60CebC&cYhCRGR3u}w*N7(IH5*Hlh(=qwh2(*Fz5e+uSfS~ zW~AQ2h{bKPZ+`W1!Vr&xMOKMwbI!{K;e-uLRGHPeDq8C_w6atIi;*{SEDMlkY2Ld{ zhAd55PH#A{2yJ#(_uh0-_6qp2KI)O!V)E4ZL}v-GPlru&Ij$g->T)nw*47GD=>{a0 zW_5}1gZjfn_D>!i!!@#4wc(ucjw1{sJ)e+7!2Q|wl%^zHz$(G+Wv9w>lkL%o}q`>$`lzl0L$6eq^i=5*&&Y#Gblru->lr1tpB0_ z{$^Val=1o)u$_4`mxEMNWQJVx?E*;O&U&COH0?7AV8?1K47xn{skP)_G1=0*w=mRs zz!E|HSFjd?r$z!57s|PvC<>35ieNavO%yz)!%IcK`hyAi`;#P@-C+>oq(7{p%_(qM zb;tu>)s1Xzx%voe?qdv9UyRL+-?5-q5{a|lPKp=r10t~@eeR7uq2O4l)0Bi^25~pZ zHD;$jI**uv`}h|YM|%lRIIUd-Q6iAabB84#X@TO;gWp!EaY2*ryH5JFl`MU%POQ|R z_>LPP@9Hu7w6}Zhy}fKszRpC)+Y7eS;dLo3a(r3T(uZZK1h%d3d*EO5!f7%ZFDih^ zE6NN&oD}xaoRqAlkSfXINs(RMs2}Y!Sp`Kl?B8uc$OOH-@Y z#&JFzfqWyb1S#QF(pmGBHna6N-%e>b{uhtSh@b_E(Us3504n88)W;zSpXz9@w+C9{ zi?ZV8_w`yUlt>OW_SleuDg?Xmc;kIFn+E+ujaTV}CMJ2+MhCXaW38UEuC?^ZNLCEzE^hAyqY`jF3u6HGk9|Gla|{NsF|l6R zf#RjbsGz&PtP+%A@nqCCA^&XNTu`8E1A|(Xh{0WSsyRe_Jtb^|IB~`x3;YLk=kl@# zjt3A03KZiVEVc@ePW?NVGy510vckmD;O!(dku0{h3)Hu=N(?H5Dxu~Re2*o$6gV%- zC=tnc9>5b~dmeBWkaUSzdA{vFTEn0s;P42PXMH2U(3m0tc(c*Z=^2Cbo(@PdV8djB zA^UO=$Mz10Z-v^P>#t6BmJt)#a!&q`aVxFevCL(6nQMES^qTwl|2(xGOjN|LUP5)v zSESZylFlaX9G`6FEe!w^+$-eYcWs$#?HP9;!n%+pk&cW)9~|q8g^_nd6&#LR>EU|2 z3gmHlPOaZLmaeMz{p{;C?qXkA{cW571R?p8mHoysZ?7RcPs#ce$kp!k(z%Tw+)t`$?7L-3Q%7Yb+ zxH4RlVDjGu(4|)h5MEfgpM#yaHgc8!U8zPNVWgfj4hEqQ(ICyJ7)AvAdvH$wQ1V8_c9dSG_ua_Vf zMtx8dt(PU_c2SE=v!Z*16Bh)HnWvudbDS<(84cM926co0na+5RH=-q8035MeSS7`d zt6v}lGY!9)B-j+&HOxfjFJ$btLz3hx0U+L}lECAl2L5A>NCV2MB92G~=d9Rak%LGD zJ87}a_oZH#1tXEHY=&lN?+4fGB~UxarrTMck#wR4m%<9Fsy00}JBy${=R%XGuwFY3 z2R9?}%ct^dR?GeG0Lw$s3WQ{uNZT3_CHdY=D+m`eXjGJZNoFo((5NgS^SSFj zttr-Vs3>Y{6R>hqh032H0W2}vdrp__I@RVY^i;TQSN_~y5bxu3@b5#C?$_1G3)i7>Pc9OuJ1Hfg4GDi|qnUA&v^*ZXf5^`w`ZgeDf32wE%DWSAd!BR7_dY-0{79~SWzWo7_qx~2?6qdk1gs-17Q#Ef zd>olE-@)OeeL*+dXVE zQkNGehYIxdM)g*PB*gMMC8xCwu5jq&ynu2|JTgwtuK+Y8f%yP2mn+}siP^s$A3?3Y zM61!WF^m#{yS0Q0;}}&s2aOV+hpPb0K*upe=ueX!8bIJi zr6Ds9pX}g)_@5}Fvi(dj2{XijtUQ}J2lwW}Gmr%{WU*j6cO1Un0hYL;%VRs4?f+_O z-+9j|^w&ysJ6P|AeC3V71D&PkOF&eUs1IKXjATEpNSnG=OfTrDU2$#L4ON(Q>$oJp z*B5Xz2Ur|H-p{W`2VMKEjh4=pCqigX!p|46 z(M^t@`ZRblfFS=L^OC@366hPJxTN8A(-(l0J`<#B9eylc?RyVMca*UR>u#6pRVqEp z^pgGxpA5`&~Xxui@Gx#h)toL+^N6(JPeKc8A^C@#ZT#TpcU0goTFTT<%W32V%mk~sW1f3wH!Zbj}D}<5Ag!mYekg$0@P`#u3HXTORGxd&gut^9#*wp%HsCd#- zXIS$i9T_*)nB)DA&7YIeK>bgLy|n%t)(=eVvTuuy*O3q1>Ayfw3ezf&H-5gR%{b^K z=08tzkhr6EkW)oEQGP(C$@2X0;K zkS!PBQa=E4c(8%{9{*)B;)U<-U7x=nAb@A)LJRBHf200~KtvPdtMRQ8;pZ&mcZ`_- z7yL}$bYJTvu22N+{O=N~eC(vppUf;nS2jfRz1zVO9hN*)_9->y-PAfvf7koBILZY~ zz|yXzy<6?hDK#R~5gKYKTin&_yr_KtGu*#e^PhZJyURy7^^kUGDJPCUFl!E ze)S&P+691GiEez^tietH1V$DkmFkRn3!V40_sN$U_h7D&Sp;-J7+#Z)U%M}az5{LVt{Kgjl{qlkJ)=6!Z#vxheuuJ}Qf zVxT}X+|Y@^i~zG+E+q!5+6ItVub9MeW3-LS*{>AG!B~@8Pb`>F=Kg%|#R%`Ku1b!# z3lZ!7m~^y`dIT@cX)PRIqfrDXX#_iM$!~ONP{73>Z?}WLls`diTboxOKJ$4kFA8i< z6TzdzWUxPCwsieM{W=789NOp-Z6p2;C7?v8lXKa1Hy;!A+x*qNITRB61HHMBKhPun z5!m^X3)0X?nuT$o91a8)RlP7DGfPuk5@{I7ZSJcMWfRNKYWG{6IHF;5tDR{Fy$!xe zWmu)nU`*qdhCY!iHC|X+8L~fHTRCxTz>8i@JDEd^r9s=+%u*j*!%V+BNR!6s7n^Dn zbdw~!pM06Bgt)^ad$F$joBQt=y`>B>;U^R$vX!?)(^MvD3()u9;8Prn77w~_-HLf7 z+2aKp&Udxg(@7LHd!`<{oZD;D_;L&E4&Tvb#t#B-u6k3yv%0xRnbisRdV_oU6iRVy zotSoxOE5`c9w~=)ULS|S*4($esb!1|pn+(a8mH|{xn$K8-(8tB(0=Ex&hn-SRIMMi zF72rVo5wCVV8!Yc<_D`w$HT7c$E@b=-0Vf&led#Me-!i*>m8p84L$3C8#kP3JjD;{ z+hF9dVWn;xbJ^(5G1O9X8PvkD_B6llGZb5hn$sx-$M(s_MHeFPdd56fS}ccJD^i`-v@+m2J;hor2!? z4He!HT%pqGbGo3LYq5$M$!3b|OPRzUxgCeEIgCMDws4PN;h3_J1=n+yB z6`}{cbfN$8I0SOXo4AZ&WV!sj<5a;rzNDDQ?HsYFDySm^~ z4&yfgrg8Ozue;;Bt8_c5he*-s5RVT-cBGvy1eHj#1fxPzD{>B0mQkb)2u*&maHOar zgqW~-HuP$QMx@qigqK>dXx+9yQ^UNv1NW&}-NAAw&JJAYqGwN@fbX}@x{#_xIM+>o~w2F{F+_j7$EKkl|n{JRd? zE}CNS^~D&q-cfyxul2#oK`N=UgFNRggaRNohae#KYFbEvZZ@Z{b)@H#B5Yts_`*sL zh%SX9!6lOB@-HD(laRk$V(M~_84N5da19^w4qSokkt zSH1VIV5Df?ohGy_@l9+K!92AS_)l!UUy+9 zVA?_4(~n$J6m{Qx)*-nAB2hq|2FD3_fK{xag zE9w2LAT))YE!-vN)NqfJJR#HzTnVviTnv|R%%7e%xmmi#RPxO5|^JuRTRdaxbJiCK@WKCzAG&hZMC#86}byV%i`gbk*}w_IQ5=ow{5=!-T>m(2pwfUFQq_Vvl!2f~B$ zguY*$xuodUgBwQGhM}rPK{6`ib<)T$`mJ5h=ta0b^Q*CSSag-(dYgS0FJUO@d6~FJQCtb9 zfy{jw2QvPkN)C7R$v_QK^u6@iE5{6@9I-i%b>2*JO`z5#%}ZUvQ6+E${_{>)Up)%6 zu6q-;Ub~54wDz1+w9SesgKh`Wsa1|fT!bPYQ-=;A#|X9tD3^G@;zx=%mN`lqwSehqmI)Nk*^d2+5xT?X^nq#qODF99!9kqMzRo0a9eLs6fK5+C zsTi5#Xk>OwDRfoFHWO+zX#G>!hfaWU&9p*+`YqJxI@{(CpFpK}+Sl0IlZ8lJWZ(-d z?Fe{oD@eKJ!Ua$ZVYBvwy;0K;CH0hTiHeZZ)}_}Uei?0c)MoYAe*9$c zi-FLSd{9=bUu4K4#KHjVoSNS&emHPfMy|nq(>)U{*@KX=kUCjB-sGR&i%?OIFvOj1 z3%hrfWOt$&_{&560&TuAcj1LBZeszb-p(H% zofgHWaBAI#D~JJ!FBql8{DA>Q5W3a#mg8hGznTE(=q8!d&^W9>Z8C@yy|KMU^4`wP z<>OAu?I}^9TN~TQT;2(<2|*0Z&;F(c2FN(Q=lo49n|L^eme;wz3O zdf5bajI@qK``>Jyfv7c0k|O;U8uU&yHT$cqYlX8Gx;&!@o@hPiK!Nno-S?6dbqnB@}`5FgEM=Ug6*=$mh|2Mr@{Pkrw|?#`+|Yd&17c3t_=)=eE} zgG*!IJ~;ZJ@@xzUH!z5>ZIWpFg8~`GX_Ky%Ti`B|=Z^eTzf)YRFkocyFp1k~Un@O| zA+v_B{L~p5NVd>G_@PTK+yqwYJJFwJpXc_)X~niPuOOkDP51APD5Z$EbxUPF`c+{t z!uL)?*l>$NP5d?9jwL>_uTHf8Af)GsdT0EB;3Y(R@nlSQFs`4qQ1`3cUTXO^eTO(6;~X z^?mbdckuDmBAAafop~j?3>d}UE4dkad^o5}b99p(r>^8Ey~SJxwd$-2ANNl?C(rQi zZBb=eQ{eaA0#`E4=9f3pP;ikXX82C!cjQ~>AiJU*hunn{#Kq^oIHphMBdgFFT?_(F zTR{;VY$KV4XG>?EVL9!)jM%^x*o*7YUo_-ge%>av>5q%tU1KmZwNi`)R1*z~94fV=5$-8_AwVnn)EFVv$Qzn? z``Mu|?&5Nd1G7jY=YCc5!&i`=*xY-=ZeVrkc(%qUXI8)b%Vs-pQoxF(|A}r6Htmi(T5D>#NP2&K0tV zI!2!FM+~175^+mG^sBPwA1MRD7w?*)EaQ30g)x?C-3VsY%RTI!rFLi()mT)8*WxQ_ z#~*j!sbww1e7D*3whv+$TUIvty&xN$osHJNhLty_XEE5LOOa`h4}TNv8}sTYI_^_S+QLcC{gvaF0|Tn{ zAk7*(<1YEAgD+Uec;uiRa28#MD)%6$=z*2IxnQ!3IE)T#;Ux6@>zR{FKa%;Auo;UDkSY?a$I?pa(fmv*2+O z;rEpzDiYc8Cc1O^bQn6i&>DMK*3+RhF4&Ri(d0eZs9S#nn~4@nFh1`ead&^LVyVbI zGY}Ir@WG5=|C83YkzcxfyiQMc$KJk~=6H0uX)Cg- zyX=m9x%Yfdz_AThK0~J%n8s%%sU26j!wmaTe zLOQNs^i9E4!Hn+n3z zax&Dba{9jGYHkJwkR`^N#@}mZ-mskkGS)A2y!KPy?D=`_(@v`jC`)`OV!qqEOVG)3 zPbZ`U7!^t-BY5R=hN0iA=Y=n|gDF+>(WuEvkHUfBeRSDm?Ko|vj;#*!ZzR-3f^^~~ zcJ7@w_9BcP_G4NJyKvXcH-B9jVg5*9XPX`nS_Sb!z8BG24$anZ={&%qe#tZ2N%ks< z8J0i3VO%HG)l;#j6U89^DFaHeB3XZK(?8A9UNR$SON^|-FO~mIYr#-YG=FJ3^(73L z4e>UUKG~bB)CX_7ntS@&lEa=Z-|d5#Z=xtBcY1)~Up%rIv*&I1t^P7y~YR=UR7ooI{D%dY(;Ur192}zqCRraCIj*4tx>yJ-X zlBLjXnq%70jP&ZTe7`PSdyrS<1B*`e2LCS{V#ePXlX+)TPRSw&^0D6&&j#*Me|~uT zWNGw%IU*vQ;chmJZ6;N}9KwsJno zWT9(0Wap=#YZ-;~DTe`O7yy2dtIO>D4WE8CLsY#D@HV46V@kp~tZT^m`Ia-;+iJl- zfTlHxP5bw{tsx)Gw1`y&vkN+1nhE~K@5^#72p33^$&wsQA~EBm&mPnfG!^LV#58}H zN9tLbZ`=Zrc~&0C%_b2M&T?XN>-N9lpBU*!lq29)WVw+kwBNR8FN27%{U+Q|eeWFA z7!rByJU3d#cH82S2nDP7ZOz|#KHIK5JSwyzXU%Nkbm@(ybE3L%ho8BYJ~53F+97om zGI=%@Od^0_+wjSdbLyn+?|Z*20Z<%9{RPE4-!uL&f4r+@9zelJmXjqS6zVfAZ6Rl_ z0H=~8&Ln{=qH-TJwo?2V7;eo@sov41&N`aaO|#0ty^q;OlSqsz z2?y#F?*WTxnFnaZE}rLR_>f1#4AG7<0RR7nTaf}}YY!o8wYCKlzbHQmI?Y)Huv;7; zEzmZER0G+He=7wr5<+AoU|%99SQ;iSSptyy2+ReNX_9gGaB&7}+Fl}U@d24ya9;wy z;HN}?=M45%T|20L$v3VYjMqKBrTM9RKEONN zesHWz0{M`DQ8IX}d#S{iPQ63T(z14*iks_N71Eik2P$H$&+Xd`bO<%Gin+eacV_D{ zh^c*H-yIKeyu(e;SXmK U3~aATNr2CTdzz}ncg_9&AJJ5H6951J literal 0 HcmV?d00001 diff --git a/docs/images/build.png b/docs/images/build.png deleted file mode 100644 index 7c5914c82597681eaeedbec895967d8794eada01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62555 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 diff --git a/docs/images/docker_build.png b/docs/images/docker_build.png deleted file mode 100644 index f4be10f6894b79a586b725cb463b5333690b5e48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58699 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 diff --git a/docs/readme/README-UA.md b/docs/readme/README-UA.md new file mode 100644 index 0000000000..892e16d19f --- /dev/null +++ b/docs/readme/README-UA.md @@ -0,0 +1,7 @@ +

+ + + +

+ +
\ No newline at end of file