Files
my-worker/README.md

274 lines
17 KiB
Markdown
Raw Normal View History

2018-01-02 11:55:42 +08:00
2021-07-11 12:45:46 +08:00
<p align="center">
<img alt="JeeSite" src="https://jeesite.com/assets/images/logo.png" width="120" height="120" style="margin-bottom: 10px;">
</p>
2024-05-14 15:15:06 +08:00
<h3 align="center" style="margin:30px 0 30px;font-weight:bold;font-size:30px;">快速开发平台 - Spring Boot 3</h3>
2021-07-11 12:45:46 +08:00
<p align="center">
2024-12-25 15:50:16 +08:00
<a href="https://spring.io/projects/spring-boot" target="__blank"><img alt="SpringBoot-2.7/3.3" src="https://img.shields.io/badge/SpringBoot-V2.7/3.4-blue.svg"></a>
<a href="https://v3.cn.vuejs.org/" target="__blank"><img alt="TypeScript-Vue3" src="https://img.shields.io/badge/TypeScript-Vue3-green.svg"></a>
2024-09-14 13:05:54 +08:00
<a href="https://jeesite.com/docs/upgrade/" target="__blank"><img alt="JeeSite-5.9" src="https://img.shields.io/badge/JeeSite-V5.9-success.svg"></a>
2024-12-25 15:50:16 +08:00
<a href="https://gitee.com/thinkgem/jeesite5" target="__blank"><img alt="star" src="https://gitee.com/thinkgem/jeesite5/badge/star.svg?theme=dark"></a>
<a href="https://gitee.com/thinkgem/jeesite-vue" target="__blank"><img alt="star" src="https://gitee.com/thinkgem/jeesite-vue/badge/star.svg?theme=dark"></a>
<a href="https://gitee.com/thinkgem/jeesite" target="__blank"><img alt="star" src="https://gitee.com/thinkgem/jeesite/badge/star.svg?theme=gvp"></a>
<a href="https://gitcode.com/thinkgem/jeesite" target="__blank"><img alt="star" src="https://gitcode.com/thinkgem/jeesite/star/badge.svg"></a>
2021-07-11 12:45:46 +08:00
</p>
2024-05-14 15:15:06 +08:00
------
<div align="center">
如果你喜欢 JeeSite请给她一个 ⭐️ Star您的支持将是我们前行的动力。
</div>
------
## 技术交流
2024-05-14 15:15:06 +08:00
* 官方网站:<https://jeesite.com>
* 使用文档:<https://jeesite.com/docs>
2024-05-10 22:51:41 +08:00
* 问题反馈:<http://jeesite.net> [【新手必读】](https://gitee.com/thinkgem/jeesite5/issues/I18ARR)
2024-05-14 15:15:06 +08:00
* 需求收集:<https://gitee.com/thinkgem/jeesite5/issues/new>
2024-12-12 18:12:46 +08:00
* 联系我们:<http://s.jeesite.com>
* 关注微信公众号,了解最新动态:
2024-08-22 17:40:04 +08:00
<p style="padding-left:40px">  
<img alt="JeeSite微信公众号" src="https://jeesite.com/assets/images/mp.png" width="200">
2024-05-14 18:47:33 +08:00
</p>
2024-12-12 18:12:46 +08:00
* QQ 群:`127515876``209330483``223507718``709534275``730390092``1373527``183903863(外包)`
* 微信群:如果无法进入,可添加客服微信 jeesitex 邀请您进群
<p style="padding-left:40px">  
<img alt="JeeSite微信群" src="https://jeesite.com/assets/images/wxg_cur.png" width="200"/>
</p>
* 源码仓库地址:
[Gitee](https://gitee.com/thinkgem/jeesite5)、
[GitCode](https://gitcode.com/thinkgem/jeesite5)、
[GitHub](https://github.com/thinkgem/jeesite5)
* 分离版源码仓库地址:
[Gitee](https://gitee.com/thinkgem/jeesite-vue)、
[GitCode](https://gitcode.com/thinkgem/jeesite-vue)、
[GitHub](https://github.com/thinkgem/jeesite-vue)
2024-12-13 12:59:09 +08:00
* 源码合集仓库地址:
[GVP](https://gitee.com/thinkgem/jeesite/tree/v5.springboot3)、
[G-Star](https://gitcode.com/thinkgem/jeesite/overview?ref=v5.springboot3)、
[GitHub](https://github.com/thinkgem/jeesite/tree/v5.springboot3)
2023-03-28 09:40:47 +08:00
## 平台介绍
2024-05-14 15:15:06 +08:00
* JeeSite 快速开发平台,不仅仅是一个后台开发框架,它是一个企业级快速开发解决方案,后端基于经典组合 Spring Boot、Shiro、MyBatis前端采用 Beetl、Bootstrap、AdminLTE 经典开发模式,或者分离版 Vue3、Vite、Ant Design Vue、TypeScript、Vben Admin 最先进技术栈。
* 提供在线数据源管理、数据表建模、代码生成等功能,可自动创建业务模块代码工程和微服务模块代码工程,自动生成前端代码和后端代码;包括核心功能模块如:组织机构、用户、角色、岗位、管理员、权限审计、菜单及按钮权限、数据权限、模块管理、系统参数、字典管理、系统监控、数据监控等;扩展功能如:工作流引擎、内容管理、消息推送、单点登录、第三方登录、在线作业调度、对象存储、可视化数据大屏、报表设计器、在线文件预览、国际化、全文检索、统一认证服务等。
2018-01-02 11:55:42 +08:00
2024-05-14 19:22:05 +08:00
* 本平台采用松耦合设计,微内核和插件架构,模块增减便捷,支持集群,支持 SaaS 架构支持读写分离、分库分表、Spring Cloud 微服务架构;并内置了众多账号安全设置、密码策略、系统访问限制等安全解决方案,支持等保评测。
2024-05-14 15:15:06 +08:00
* 本平台专注于为初级研发人员提供强大的支持,使他们能够高效、快速地开发出复杂的业务功能,同时为中高级人员腾出宝贵的时间,专注于更具战略性和创新性的任务。我们致力于让开发者能够全心投入业务逻辑中,而将繁琐的技术细节交由平台来封装处理。这不仅降低了技术实现的难度,还确保了系统架构的稳定性和安全性,进而帮助企业节省人力成本、缩短项目周期,并提高整体软件的安全性和质量。
2018-02-08 22:41:01 +08:00
2024-05-14 15:15:06 +08:00
* 2013 年发布以来已被广大爱好者用到了企业、政府、医疗、金融、互联网等各个领域中,拥有:精良架构、易于扩展、大众思维的设计模式,工匠精神,用心打磨每一个细节,深入开发者的内心,并荣获开源中国《最受欢迎中国开源软件》多次奖项,期间也帮助了不少刚毕业的大学生,教师作为入门教材,快速的去实践。
2023-10-08 17:22:02 +08:00
2024-05-14 15:15:06 +08:00
* 2019 年换代升级,我们结合了多年总结和经验,以及各方面的应用案例,对架构完成了一次全部重构,也纳入很多新的思想。不管是从开发者模式、底层架构、逻辑处理还是到用户界面,用户交互体验上都有很大的进步,在不忘学习成本、提高开发效率的情况下,安全方面也做和很多工作,包括:身份认证、密码策略、安全审计、日志收集等众多安全选项供您选择。努力为大中小微企业打造全方位企业级快速开发解决方案。
2023-10-08 17:22:02 +08:00
2024-05-14 15:15:06 +08:00
* 2021 年终发布 Vue3 的前后分离版本,使得 JeeSite 拥有同一个后台服务 Web 来支撑分离版和全栈版两套前端技术栈。
2023-10-08 17:22:02 +08:00
2024-07-24 14:54:52 +08:00
* 支持国产化软硬件环境,如国产芯片、操作系统、数据库、中间件、国密算法等。
2024-05-14 15:15:06 +08:00
## 核心优势
2018-02-08 22:41:01 +08:00
2024-05-14 15:15:06 +08:00
* JeeSite 非常易于二次开发,可控性高,整体架构清晰、技术稳定而先进、源代码书写规范、经典技术会的人多、易于维护、易于扩展、安全稳定。
2025-01-06 11:22:07 +08:00
* JeeSite 功能全,知识点非常多,也非常少。因为她使用的都是一些通用的技术,通俗的设计风格,大多数基础知识点,多数人都能掌握,所以每一个 JeeSite 的功能点都非常容易掌握。只要您学会使用这些功能和组件的应用,就可以顺利地完成系统开发了。
2024-05-14 15:15:06 +08:00
* JeeSite 是一个低代码开发平台具有较高的封装度、扩展性封装不是限制您去做一些事情而是在便捷的同时也具有较好的扩展性在不具备一些功能的情况下JeeSite 提供了扩展接口,提供了原生调用方法。
2024-05-14 15:15:06 +08:00
* 大家都在用 Spring也在学习 Spring 的优点Spring 提供了较好的扩展性,可又有多少人去修改它的源代码呢,退一步说,大家去修改了 Spring 的源码反而会对未来升级造成很大困扰您说不是呢这样的例子很多所以不要纠结我们非常注重这一点JeeSite 也一样具备强大的扩展性。为你解决升级的困扰。
2024-05-14 15:15:06 +08:00
* 为什么说 JeeSite 比较易于学习JeeSite 很好的把握了设计的 “度”,避免过度设计的情况。过度设计是在产品设计过程中忽略了产品和用户的实际需求,反而带来了不必要的复杂性,而忽略了系统的学习、开发和维护成本。
2023-03-17 15:42:17 +08:00
2024-05-14 15:15:06 +08:00
------
* 至今 JeeSite 平台架构已经非常稳定,我们持续升级,并不失架构的先进性。
* JeeSite 精益求精,用心打磨每一个细节,界面 UI 操作便捷,体验性好。
* JeeSite 是一个专业的平台,是一个可以让您使用放心的平台。
2023-10-08 17:22:02 +08:00
* 社区版基于 Apache License 2.0 开源协议,永久免费使用。
2022-02-14 10:55:21 +08:00
### 架构特点及安全方面的优势:<https://jeesite.com/docs/feature/>
2018-02-08 22:41:01 +08:00
2018-07-16 22:47:19 +08:00
## 技术选型
2018-02-08 22:41:01 +08:00
2024-11-24 20:36:58 +08:00
* 主框架Spring Boot 3.3、Spring Framework 6.1、Apache Shiro 2.0、J2Cache
* 持久层Apache MyBatis 3.5、Hibernate Validator 8.0、Alibaba Druid 1.2
2024-11-24 20:36:58 +08:00
* 视图层Spring MVC 6.1、Beetl 3.10替换JSP、Bootstrap 3.3、AdminLTE 2.4
* 前端组件jQuery 3.7、jqGrid 4.7、layer 3.5、zTree 3.5、jQuery Validation
2023-07-11 10:49:37 +08:00
* 分离前端版Node.js、TypeScript、Vue3、Vite、Ant Design Vue、Vue Vben Admin
2024-12-29 16:45:02 +08:00
* 工作流引擎Flowable 7.1、符合 BPMN 规范、在线流程设计器、中国式流程、退回、撤回、自由流
2024-12-12 18:12:46 +08:00
* Bootstrap 版 支持 IE10 及以上版本及其他所有现代浏览器,如:谷歌、火狐、国产浏览器 等
2022-08-26 14:39:15 +08:00
* Vue3 版 支持现代浏览器,如:谷歌 Chrome 86+、火狐、国产浏览器 等
2021-06-22 18:35:41 +08:00
* 技术选型(详细):<http://jeesite.com/docs/technology/>
2023-07-11 10:49:37 +08:00
* JeeSite Vue 版本:<https://gitee.com/thinkgem/jeesite-vue>
2024-09-22 17:38:33 +08:00
* Spring Boot 2.x 版本:<https://gitee.com/thinkgem/jeesite5/tree/v5.9>
2021-12-27 10:01:30 +08:00
2021-06-22 18:35:41 +08:00
## 更多介绍
2018-02-08 22:41:01 +08:00
* 内置功能:<https://jeesite.com/docs/function/>
2021-06-22 18:35:41 +08:00
* 目录结构:<https://jeesite.com/docs/catalog/>
* 架构特点:<https://jeesite.com/docs/feature/>
* 开发规范:<https://jeesite.com/docs/standard/>
* 代码生成:<https://jeesite.com/docs/code-gen/>
2018-02-08 22:41:01 +08:00
2018-10-21 11:54:44 +08:00
## 生态系统
2018-02-08 22:41:01 +08:00
2023-10-16 07:00:52 +08:00
* 分布式微服务Spring Cloud<https://gitee.com/thinkgem/jeesite-cloud>
2023-03-06 10:22:13 +08:00
* Flowable业务流程引擎BPM<http://jeesite.com/docs/bpm/>
2023-09-19 14:27:22 +08:00
* 多站点内容管理模块CMS<https://jeesite.com/docs/cms/>
2023-10-16 07:00:52 +08:00
* 手机端移动端:<https://gitee.com/thinkgem/jeesite-uniapp>
2023-03-06 10:22:13 +08:00
* PC客户端程序<https://gitee.com/thinkgem/jeesite-client>
2022-05-06 09:07:53 +08:00
* Vue3分离版本<https://gitee.com/thinkgem/jeesite-vue>
2023-09-19 14:27:22 +08:00
* JeeSite统一认证<https://jeesite.com/docs/oauth2-server>
2024-05-14 15:15:06 +08:00
* JFlow工作流引擎<https://gitee.com/thinkgem/jeesite-jflow>
* Mybatis-Plus: <https://gitee.com/thinkgem/jeesite-mybatisplus>
2023-09-19 14:27:22 +08:00
* Magic接口快速开发<https://gitee.com/thinkgem/jeesite-magic-api>
* 内外网中间件:<https://my.oschina.net/thinkgem/blog/4624519>
2018-02-08 22:41:01 +08:00
2018-10-21 11:54:44 +08:00
## 快速体验
2018-02-26 22:13:37 +08:00
2018-02-26 22:13:52 +08:00
### 在线演示
2018-02-26 22:13:37 +08:00
2024-05-14 15:15:06 +08:00
1. 全栈版地址:<http://demo.jeesite.com>
2024-04-01 12:03:11 +08:00
2. Vue3分离版地址<http://vue.jeesite.com>
2018-02-26 22:13:37 +08:00
2021-12-27 10:01:30 +08:00
### 本地运行
2018-02-24 20:07:24 +08:00
2024-08-29 16:05:56 +08:00
1. 环境准备:`JDK 17+``Maven 3.8+`、使用 `MySQL 5.7 or 8.x` 数据库、[其它数据库](https://jeesite.com/docs/technology/#_8、已支持数据库)
2024-05-10 22:51:41 +08:00
2. 下载源码:<https://gitee.com/thinkgem/jeesite5/repository/archive/v5.springboot3.zip> 并解压
3. 打开文件:`/web/src/main/resources/config/application.yml` 配置JDBC连接
4. 执行脚本:`/web/bin/init-data.bat` 初始化数据库
5. 执行脚本:`/web/bin/run-tomcat.bat` 启动服务即可
2024-04-01 12:03:11 +08:00
6. 浏览器访问:<http://127.0.0.1:8980/js> 账号 system 密码 admin
7. 部署常见问题:<https://jeesite.com/docs/faq/>
2022-08-26 14:39:15 +08:00
8. 分离端安装:<https://jeesite.com/docs/vue-install-deploy/>
2018-02-08 22:41:01 +08:00
2022-04-24 12:09:30 +08:00
### 快速运行
2024-08-29 16:05:56 +08:00
1. 环境准备:`JDK 17+``Maven 3.8+`、无需准备数据库(使用内嵌 H2 DB、Vue资源包
2024-05-10 22:51:41 +08:00
2. 下载源码:<https://gitee.com/thinkgem/jeesite5/repository/archive/v5.springboot3.zip> 并解压
2022-04-24 12:09:30 +08:00
3. 执行脚本:`/web-fast/bin/run-tomcat.bat` 启动服务即可(自动初始化库)
2024-08-29 16:05:56 +08:00
4. Vue分离版本地址<http://127.0.0.1:8980/vue/login>
5. 全栈版本地址:<http://127.0.0.1:8980/a/login>
6. 初始登录账号超级管理员system 密码admin
2024-04-01 12:03:11 +08:00
7. 部署常见问题:<https://jeesite.com/docs/faq/>
2022-04-24 12:09:30 +08:00
### 容器运行
2023-07-11 10:49:37 +08:00
- 拉取 Docker 镜像演示使用JeeSite版本较久
2023-10-12 14:50:53 +08:00
```sh
2024-02-28 10:34:46 +08:00
docker pull thinkgem/jeesite-web
2022-04-24 12:09:30 +08:00
```
- 启动脚本:
2023-10-12 14:50:53 +08:00
```sh
2023-11-20 15:16:32 +08:00
docker run --name jeesite-web -p 8980:8980 -d --restart unless-stopped \
2024-02-28 10:34:46 +08:00
-v ~/:/data thinkgem/jeesite-web && docker logs -f jeesite-web
2022-04-24 12:09:30 +08:00
```
- 浏览器访问:<http://127.0.0.1:8980/js/> 账号 system 密码 admin
2022-08-26 14:39:15 +08:00
- 分离端安装:<https://jeesite.com/docs/vue-install-deploy/>
2022-04-24 12:09:30 +08:00
2021-12-27 10:01:30 +08:00
### 开发环境
2018-02-27 22:27:23 +08:00
1. 部署运行文档:<https://jeesite.com/docs/install-deploy/>
2. 部署常见问题:<https://jeesite.com/docs/faq/>
2022-08-26 14:39:15 +08:00
3. 分离端安装:<https://jeesite.com/docs/vue-install-deploy/>
2018-02-24 20:07:24 +08:00
2021-06-22 18:35:41 +08:00
## 技术文章
* 菜单和按钮权限:<https://jeesite.com/docs/permi-shiro/>
* 强大的数据权限:<https://jeesite.com/docs/service-datascope/#数据权限>
* 表结构数据字典:<https://jeesite.com/docs/code-gen/#表结构数据字典>
* 持久层设计:<https://jeesite.com/docs/dao-mybatis/>
* 后端工具:<https://jeesite.com/docs/sys-utils/>
2022-08-26 14:39:15 +08:00
* 表单组件:<https://jeesite.com/docs/views-beetl/>
* 表格组件:<https://jeesite.com/docs/datagrid/>
* js工具<https://jeesite.com/docs/jeesite-js/>
2021-06-22 18:35:41 +08:00
## 专题文章
2022-08-26 14:39:15 +08:00
* 自定义主题:<https://jeesite.com/docs/custom-views/>
* 国际化多语言:<https://jeesite.com/docs/i18n-locale/>
2021-07-11 12:45:46 +08:00
* 接口文档:<https://jeesite.com/docs/mobile-rest-api/>
2022-08-26 14:39:15 +08:00
* BPM工作流引擎<https://jeesite.com/docs/bpm/>
2021-06-22 18:35:41 +08:00
* 用户类型:<https://jeesite.com/docs/user-type/>
2022-08-26 14:39:15 +08:00
* 消息推送:<https://jeesite.com/docs/msg-push-use/>
2021-06-22 18:35:41 +08:00
* 单点登录:<https://jeesite.com/docs/sso-cas/>
2022-08-26 14:39:15 +08:00
* 在线任务调度:<https://jeesite.com/docs/job/>
2021-06-22 18:35:41 +08:00
* 对象存储:<https://jeesite.com/docs/oss-client/>
* 大屏设计器:<https://jeesite.com/docs/visual/>
2022-08-26 14:39:15 +08:00
* 报表设计器:<https://jeesite.com/docs/ureport/>
* 文件在线预览:<https://jeesite.com/docs/filepreview/>
* 三员管理员:<https://jeesite.com/docs/manager3/>
2021-07-11 12:45:46 +08:00
* 手机端框架:<https://jeesite.com/docs/uniapp/>
* 统一认证服务:<https://jeesite.com/docs/oauth2-server/>
2022-08-26 14:39:15 +08:00
* 树表结构设计:<https://jeesite.com/docs/tree-table-use/>
2021-06-22 18:35:41 +08:00
## 云服务架构
* 多租户、SaaS服务<https://jeesite.com/docs/saas-corp-use/>
* 集群、负载均衡、高可用:<https://jeesite.com/docs/cluster/>
2022-08-26 14:39:15 +08:00
* Spring Cloud 微服务:<https://jeesite.com/docs/springcloud/>
2021-06-22 18:35:41 +08:00
* 分布式事务 Seata<https://jeesite.com/docs/springcloud-seata/>
2022-08-26 14:39:15 +08:00
* 读写分离、分库分表:<https://jeesite.com/docs/sharding/>
## 前后分离版
* Vue 版介绍:<https://jeesite.com/docs/jeesite-vue/>
* Vue 安装部署:<https://jeesite.com/docs/vue-install-deploy/>
* Vue 参数配置:<https://jeesite.com/docs/vue-settings/>
* Vue 前端权限:<https://jeesite.com/docs/vue-auth/>
* Vue 源码解析:<https://jeesite.com/docs/vue-crud-view/>
* Vue 表单组件:<https://jeesite.com/docs/vue-basic-form/>
* Vue 表格组件:<https://jeesite.com/docs/vue-basic-table/>
* Vue 常用组件:<https://jeesite.com/docs/vue-comp/>
* Vue 图标组件:<https://jeesite.com/docs/vue-icon/>
* Vue 国际化多语言:<https://jeesite.com/docs/vue-i18n/>
* Vue 样式库:<https://jeesite.com/docs/vue-style/>
2018-02-08 22:41:01 +08:00
2018-10-21 11:54:44 +08:00
## 授权协议声明
2018-03-15 20:37:18 +08:00
2021-12-27 10:01:30 +08:00
1. 基于 Apache License Version 2.0 协议发布,可用于商业项目,但必须遵守以下补充条款。
2. 不得将本软件应用于危害国家安全、荣誉和利益的行为,不能以任何形式用于非法为目的的行为。
3. 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议、版权声明和其他原作者
规定需要包含的说明(请尊重原作者的著作权,不要删除或修改文件中的`Copyright``@author`信息)
更不要,全局替换源代码中的 jeesite 或 ThinkGem 等字样,否则你将违反本协议条款承担责任。
4. 您若套用本软件的一些代码或功能参考,请保留源文件中的版权和作者,需要在您的软件介绍明显位置
说明出处,举例:本软件基于 JeeSite 快速开发平台并附带链接http://jeesite.com
2022-02-10 00:41:08 +08:00
5. 任何基于本软件而产生的一切法律纠纷和责任,均于我司无关。
6. 如果你对本软件有改进,希望可以贡献给我们,共同进步。
7. 本项目已申请软件著作权,请尊重开源,感谢阅读。
2023-07-11 10:49:37 +08:00
8. 无用户数限制,无在线人数限制,放心使用。
2018-03-15 20:37:18 +08:00
2024-12-12 18:12:46 +08:00
## 技术支持与服务
2018-03-15 20:37:18 +08:00
2024-12-12 18:12:46 +08:00
* 本软件免费,我们也提供了相应的收费服务,因为:
2022-08-26 14:39:15 +08:00
* 没有资金的支撑就很难得到发展,特别是一个好的产品,如果 JeeSite 帮助了您,请为我们点赞。支持我们,您可以获得更多回馈,我们会把公益事业做的更好,开放更多资源,回报社区和社会。请给我们一些动力吧,在此非常感谢已支持我们的朋友!
2024-12-12 18:12:46 +08:00
* **联系我们**:请访问技术支持与服务页面:<http://s.jeesite.com>
2018-05-03 22:29:17 +08:00
2019-03-18 15:48:55 +08:00
## 今后如何升级?
2021-06-22 18:35:41 +08:00
尽量不修改 web 项目以外的源码项目,如 jeesite-common、jeesite-modele-core如果修改了请 Pull Requests 上来,否则代码与官方不同步,可能会将对你的日后升级增加难度。
2019-03-18 15:48:55 +08:00
如果您修改了依赖模块代码,也没关系,这时你需要利用 Git 版本控制工具,与官方仓库代码进行同步,合并代码即可。
2019-03-18 15:48:55 +08:00
每个版本升级,我们都会附带详细更新日志:<https://jeesite.com/docs/upgrade/>
2019-03-18 15:48:55 +08:00
在这里,你可以看到 JeeSite 新增哪些新功能和改进,在每个版本下都有对应升级方法。
2019-03-18 15:48:55 +08:00
2021-06-22 18:35:41 +08:00
如果跨版本升级,可以将版本号直接修改为最新版本,然后去看每个版本的升级方法,修改对应业务。
2018-02-08 22:41:01 +08:00
# Git 全局设置技巧
2018-01-02 11:55:42 +08:00
```
1、提交检出均不转换换行符
git config --global core.autocrlf false
2、拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
```