diff --git a/README.md b/README.md
index 0da542a7d5865de28a432ceb9e5f385526bb916c..3a627f50ad81be7068295bb0f7c3a3364a13f773 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,8 @@
+README.md内容如下:
+
+```markdown
+# PikaPython
+
@@ -20,7 +25,7 @@
Forum |
Documents |
Videos |
- BSP |
+ BSP |
Package Manager |
Contribute |
Business
@@ -36,11 +41,11 @@ PikaPython also known as PikaScript and PikaPy.
-It's very easy to bind C function to python module with the help of Pika Pre-compiler.Only write the API of python in `.pyi` and the bindings are autoly generated by Pre-compiler.
+It's very easy to bind C function to python module with the help of Pika Pre-compiler. Only write the API of python in `.pyi` and the bindings are auto generated by Pre-compiler.

-# Get pikapython:
+# Get PikaPython:
## Use Online Project Generator
Generator url:
@@ -50,8 +55,8 @@ Note: You need the [Community Edition license (Now Free)](https://www.keil.com/p
[](http://pikascript.com)
-## PikaPython studio
-PikaPython serial terminal, script download and package menage tool.
+## PikaPython Studio
+PikaPython serial terminal, script download and package manage tool.
[](https://gitee.com/Lyon1998/pikapython/attach_files/1285327/download)
@@ -61,19 +66,19 @@ You can use [simulation project](https://pikadoc-en.readthedocs.io/en/latest/Kei

-The board based on STM32G030C8T6 MCU, only 64kB Flash, 8kB RAM can run pikapython with total peripheral device (GPIO、TIME、IIC、RGB、KEY、LCD、RGB).
-CH340 is deployed to support USB to serial with Type-C USB, support download python script py serial, there are 4 RGB on the board and support the [LCD](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-23991764791.12.16f97c58fsLjVk&id=660745643102).
+The board based on STM32G030C8T6 MCU, only 64kB Flash, 8kB RAM can run PikaPython with total peripheral device (GPIO、TIME、IIC、RGB、KEY、LCD、RGB).
+CH340 is deployed to support USB to serial with Type-C USB, support download python script via serial, there are 4 RGB on the board and support the [LCD](https://item.taobao.com/item.htm?spm=a1z10.3-c.w4002-23991764791.12.16f97c58fsLjVk&id=660745643102).
# Related Projects
- 🎮 [MicroLink](https://github.com/Aladdin-Wang/MicroLink) 一款集多功能于一体的嵌入式系统开发工具
-- ▶️ [pikapython Binding For LVGL](https://github.com/lvgl/lv_binding_pikascript)
+- ▶️ [PikaPython Binding For LVGL](https://github.com/lvgl/lv_binding_pikascript)
-- ⭐ [pikapython Bluepill Demo In PlatformIO — Python-like REPL 🐍🔌](https://github.com/maxgerhardt/pikascript-pio-bluepill)
+- ⭐ [PikaPython Bluepill Demo In PlatformIO — Python-like REPL 🐍🔌](https://github.com/maxgerhardt/pikascript-pio-bluepill)
-- ⭐ [pikapython Bluepill Demo In GCC 🐍](https://github.com/Chandler-Kluser/pikascript_gcc_bluepill)
+- ⭐ [PikaPython Bluepill Demo In GCC 🐍](https://github.com/Chandler-Kluser/pikascript_gcc_bluepill)
-- ⏩ [pika_startup_demo](https://gitee.com/kcfkwok/pika_startup_demo) This program demonstrate the 5 startup methods of pikapython.
+- ⏩ [pika_startup_demo](https://gitee.com/kcfkwok/pika_startup_demo) This program demonstrate the 5 startup methods of PikaPython.
- 🎮 [PikaPython-OpenHardware](https://gitee.com/Lyon1998/pikapython_openhardware) PikaPython 开源硬件
@@ -96,17 +101,17 @@ https://pikadoc-en.readthedocs.io/en/latest/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E
[test](../../tree/master/port/linux/test) - unit test
-[document](../../tree/master/document) - developt document
+[document](../../tree/master/document) - development document
[examples](../../tree/master/examples) - example scripts
-[package](../../tree/master/package) - packages and moudles
+[package](../../tree/master/package) - packages and modules
-[pikaCompiler](../../tree/master/tools/pikaCompiler) - pre-compiler write by Rust, used to bind C function to python moudle.
+[pikaCompiler](../../tree/master/tools/pikaCompiler) - pre-compiler written by Rust, used to bind C function to python module.
-[pikaPackageManager](../../tree/master/tools/pikaPackageManager) - pacakge manager
+[pikaPackageManager](../../tree/master/tools/pikaPackageManager) - package manager
-# 2.Platform support
+# 2. Platform support
## MCU support
@@ -131,7 +136,7 @@ https://pikadoc-en.readthedocs.io/en/latest/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E
|w806 |√ |√ |√ |√ |√ |√ |√ | |
|apm32f030r8 |√ | | | | | | | |
|apm32e103vb |√ | | | | | | | |
-|bl-602 |√ |√ | | |√ |√ | |√ |
+|bl-602 |√ |√ | | |√ |√ |√ |√ |
|bl-706 |√ | | | | | | | |
|[bl-618](https://verimake.com/d/285-bl618-pikapython-led)|√ | √ | √ | √ | √ | √ | √ | √ |
|Raspberry Pico |√ | | | | | | | |
@@ -147,7 +152,7 @@ https://pikadoc-en.readthedocs.io/en/latest/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E
## Board support
|Board|bsp|gpio|uart|pwm|adc|i2c|rgb|lcd|arm-2d|
|---|---|---|---|---|---|---|---|---|---|
-|[Pika-Pi-Zero](https://item.taobao.com/item.htm?spm=a230r.1.14.1.4f2e27a8R0qWJn&id=654947372034&ns=1&abbucket=15#detail)|√|√|√|√|√|√|√|√|√|
+|[Pika-Pi-Zero](https://item.taobao.com/item.htm?spm=a230r.1.14.1&id=654947372034&ns=1&abbucket=15#detail)|√|√|√|√|√|√|√|√|√|
|Board|bsp|pika_lvgl|
|---|---|---|
@@ -171,12 +176,12 @@ https://pikadoc-en.readthedocs.io/en/latest/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E
|---|---|---|---|
|linux|√|√|√|
-# 3.Characteristic
+# 3. Characteristic
### (1)Run environment
-Support run in mcu without OS or file system. Can run in everywhere with **RAM ≥ 4kB** and **FLASH ≥ 64kB**,such as stm32g030, stm32f103c8t6,esp8266.
+Support run in mcu without OS or file system. Can run everywhere with **RAM ≥ 4kB** and **FLASH ≥ 64kB**, such as stm32g030, stm32f103c8t6, esp8266.
-### (2)Develop enviroment
+### (2)Develop environment
#### Support REPL by serial.
@@ -186,13 +191,13 @@ Support run in mcu without OS or file system. Can run in everywhere with **RAM

-Support IDEs like Keil, IAR, RT-Thread studio and segger embedded studio to develop C moudle.
+Support IDEs like Keil, IAR, RT-Thread studio and segger embedded studio to develop C module.
Support build tools like CMake, makeFile and Scons.
-Zero dependencies, zero configuration, out-of-the-box, easy to integrated into privious C projcet.
+Zero dependencies, zero configuration, out-of-the-box, easy to integrated into previous C project.
-Eazy to extern customized C moudles.
+Easy to extern customized C modules.
Support linux.
@@ -200,7 +205,7 @@ Support linux.
Support subaggregate of python 3 standard syntax.
-Support class and method define, encapsulation-inheritance-polymorphism and moudles in `.pyi ` of C module.
+Support class and method define, encapsulation-inheritance-polymorphism and modules in `.pyi ` of C module.
More Details About Syntax Support
@@ -223,8 +228,8 @@ Support class and method define, encapsulation-inheritance-polymorphism and moud
#### Operator
| + | - | * | / | == | > | < | >= | <= | % | ** | // | != | & | >> | << | and | or | not | in | += | -= | *= | /= |
-|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|
+|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
+|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|√|
#### Control flow
@@ -245,8 +250,8 @@ Support class and method define, encapsulation-inheritance-polymorphism and moud
| --- | --- | --- |
| import [module] | √ | √ |
| import [module] as | √ | - |
-| from [module] import [class/function>]| √ | - |
-| from [module] import [class/function>] as | √ | - |
+| from [module] import [class/function>| √ | - |
+| from [module] import [class/function> as | √ | - |
| from [module] import * | - | PikaObj Module Only |
#### List/Dict
@@ -289,13 +294,13 @@ Support class and method define, encapsulation-inheritance-polymorphism and moud
Readability first, nearly never use macro function and global argument.
-Complete unit testes based on google test.
+Complete unit tests based on Google Test.
-# 4.Both talk and show the code:
+# 4. Both talk and show the code:
## E-mail: liang6516@outlook.com
-# 5.Demo
+# 5. Demo
The scripts in demos are in the [examples](examples) folder.
@@ -303,7 +308,7 @@ The scripts in demos are in the [examples](examples) folder.
View Code
-``` python
+```python
import PikaStdLib
import STM32G0
@@ -338,7 +343,7 @@ while True:
View Code
-``` python
+```python
import PikaStdLib
import STM32G0
@@ -362,11 +367,9 @@ while True:
## Demo 03 ADC
-
-
-View Code
+View Code
-``` python
+```python
import PikaStdLib
import STM32G0
@@ -388,12 +391,11 @@ while True:

-
## Demo 04 PWM output
View Code
-``` python
+```python
import PikaStdLib
import STM32G0
@@ -418,7 +420,7 @@ while True:
View Code
-``` python
+```python
import STM32G0
import PikaPiZero
import PikaStdLib
@@ -443,11 +445,9 @@ while True:
## Demo 06 Snake(Need LCD)
-
-
-View Code
+View Code
-``` python
+```python
from PikaObj import *
import PikaStdLib
import PikaPiZero
@@ -556,11 +556,11 @@ while True:
s.prev = b_new
s = b_new
len = len + 1
- print('snake lengh')
+ print('snake lengh:')
print(len)
print('mem used max:')
mem.max()
- # drow the snake and fruit
+ # draw the snake and fruit
# clear last body
lcd.fill(s.prev.x, s.prev.y, w, h, 'white')
# new body
@@ -585,8 +585,6 @@ while True:
elif key_val == 3:
d = 3
isUpdate = 1
-
-
```
@@ -605,7 +603,7 @@ In addition to device drivers, developing custom Python modules for MCU is very
## Rotating suns~

-# 6.Test and develop Core
+# 6. Test and Develop Core
## Test core in docker (recommend)
[get start with docker](https://pikadoc-en.readthedocs.io/en/latest/get-start_linux.html)
@@ -616,20 +614,21 @@ In addition to device drivers, developing custom Python modules for MCU is very
-## [How to contribute](https://pikadoc-en.readthedocs.io/en/latest/%E5%A6%82%E4%BD%95%E5%8F%82%E4%B8%8E%E7%A4%BE%E5%8C%BA%E8%B4%A1%E7%8C%AE.html)
+## [How to contribute](https://pikadoc-en.readthedocs.io/en/latest/%E5%A6%82%E4%BD%95%E5%8F%82%E7%A4%BA%E5%8C%BA%E8%B4%A1%E7%8C%AE.html)
### Contribute Log On 2023
-| Contribute log | Contributer |
+| Contribute log | Contributor |
| --- | --- |
|fix REPL echo for '\b' and 0x7F|[versaloon](https://github.com/versaloon)|
|pika_hal support for ESP32|[geekheart](https://gitee.com/geekheart)|
|Driver Design for PIKA-OPEN-HARDWARE|[Kirin](https://gitee.com/ztqkirin)|
|bsp support for `Makefile-win-mingw` |[unsigned_0](https://gitee.com/unsigned0)|
|Fix bug for STM32F4 `delay_unit()`|[MrLeekon](https://gitee.com/MrLeekon)|
-|bsp support for `air780e`|[Kirin](https://gitee.com/ztqkirin)|
+|bsp support for `air780e` |[Kirin](https://gitee.com/ztqkirin)|
+|Driver Design for PIKA-OPEN-HARDWARE|[Kirin](https://gitee.com/ztqkirin)|
|Component Selection, Schematic Diagram, PCB Design for PIKA-OPEN-HARDWARE| 冰点 (WeChat Name)|
|Driver Design for PIKA-OPEN-HARDWARE|[Kirin](https://gitee.com/ztqkirin)|
|Product Design, Component Selection for PIKA-OPEN-HARDWARE| 方海钰 |
@@ -652,14 +651,15 @@ In addition to device drivers, developing custom Python modules for MCU is very
|implement shell filter | [GorgonMeducer](https://github.com/GorgonMeducer) |
|修复socket模块在lwip中fcntl的参数数量错误|[梦程MI](https://gitee.com/dreamcmi) |
|support GPIO pika_hal for BLMCU|[codercmd](https://gitee.com/codercmd)|
-|Fix Typo on PikaVM.c|[Ikko Eltociear Ashimine](https://gitee.com/eltociear)|
+|Fix Typo on PikaVM.c|[Ikko Eltociear Ashimine](https://gitee.com/eltociear) |
|Fix type assert on dataArgs.c|[itschina](https://gitee.com/itschina)|
|add examples/Device/KEY_POLL.PY|[codercmd](https://gitee.com/codercmd)|
-| hmac hashlib base64 aes modules | [梦程MI](https://gitee.com/dreamcmi) |
+|hmac hashlib base64 aes modules | [梦程MI](https://gitee.com/dreamcmi) |
|fix pikaCompiler build error on macos|[梦程MI](https://gitee.com/dreamcmi) |
+
Contribute Log On 2022
-| Contribute log | Contributer |
+| Contribute log | Contributor |
| --- | --- |
| request module | [onceday](https://gitee.com/onceday) |
| mqtt module | [FlintJ](https://gitee.com/flintj) |
@@ -670,27 +670,28 @@ In addition to device drivers, developing custom Python modules for MCU is very
|PikaNN module| [Renzhihan](https://github.com/Renzhihan) |
| re module | [eglwang](https://gitee.com/eglwang) |
| PikaMath.Quaternion() | [purewind7](https://gitee.com/purewind7) |
-| contrubute to PikaCV | [purewind7](https://gitee.com/purewind7) |
+| contribute to PikaCV | [purewind7](https://gitee.com/purewind7) |
| xr806(openharmony) bsp |[sjy](https://gitee.com/shanjiayang)|
| ESP32 package |沧御|
-| MM32F5277E9P package |[unsigned](https://gitee.com/unsigned0)|
-| mm32f5277e9p BSP |[unsigned](https://gitee.com/unsigned0)|
+| MM32F5277E9P package |[unsigned_0](https://gitee.com/unsigned0)|
+| mm32f5277e9p BSP |[unsigned_0](https://gitee.com/unsigned0)|
| Add [CMSIS-PACK](https://pikadoc-en.readthedocs.io/en/latest/get-start_cmsis-pack.html) | [GorgonMeducer](https://github.com/GorgonMeducer) |
| donate: air32f103 board * 20 | 合宙 [xinxi204](https://gitee.com/xinxi204) |
-| contrubute to PikaMath.Math() | [onceday](https://gitee.com/onceday) |
+| contribute to PikaMath.Math() | [onceday](https://gitee.com/onceday) |
| add support for Unix Time | [onceday](https://gitee.com/onceday) |
-| contrubute to PikaStdLib.String() | [purewind7](https://gitee.com/purewind7) |
-| Add [PLOOC](https://github.com/GorgonMeducer/PLOOC) support for pikapython Core | [GorgonMeducer](https://github.com/GorgonMeducer) |
+| contribute to PikaStdLib.String() | [purewind7](https://gitee.com/purewind7) |
+| Add [PLOOC](https://github.com/GorgonMeducer/PLOOC) support for PikaPython Core | [GorgonMeducer](https://github.com/GorgonMeducer) |
| Donate:500¥ (ctypes 相关) | 蒋太平 |
+| add support for Unix Time | [onceday](https://gitee.com/onceday) |
| fix linux install script | [Maximilian Gerhardt](https://github.com/maxgerhardt) |
| ch582 package | [梦程MI](https://gitee.com/dreamcmi) |
| ch582 BSP | [梦程MI](https://gitee.com/dreamcmi) |
| Donate:EC600X QuecPython Develop board| 移远通信 武加玉 |
| Performance Point: 900->1400 | [GorgonMeducer](https://github.com/GorgonMeducer) |
-| stm32f051r8 BSP |[unsigned](https://gitee.com/unsigned0)|
-| stm32f407ze BSP |[unsigned](https://gitee.com/unsigned0)|
-| devc BSP |[unsigned](https://gitee.com/unsigned0)|
-| TC264D BSP |[unsigned](https://gitee.com/unsigned0)|
+| stm32f051r8 BSP |[unsigned_0](https://gitee.com/unsigned0)|
+| stm32f407ze BSP |[unsigned_0](https://gitee.com/unsigned0)|
+| devc BSP |[unsigned_0](https://gitee.com/unsigned0)|
+| TC264D BSP |[unsigned_0](https://gitee.com/unsigned0)|
| PikaVM improvement | [GorgonMeducer](https://github.com/GorgonMeducer) |
| W801Device package | 刘延(微信名) |
| W806 bsp | 刘延(微信名) |
@@ -703,23 +704,23 @@ In addition to device drivers, developing custom Python modules for MCU is very
Contribute Log On 2021
-| Contribute log | Contributer |
+| Contribute log | Contributor |
| --- | --- |
| Donate:ESP32 board、ink lcd*4 | name(微信名) |
| Donate:smartloong board | 龙芯俱乐部 石南 |
| package/STM32F1 | [sjy](https://gitee.com/shanjiayang) |
| package/STM32F103RBBooter | [sjy](https://gitee.com/shanjiayang) |
| bsp/stm32f103rb | [sjy](https://gitee.com/shanjiayang) |
-| QEMU ARM-2D simulation proejct | [liuduanfei](https://github.com/liuduanfei) |
+| QEMU ARM-2D simulation project | [liuduanfei](https://github.com/liuduanfei) |
| Donate:GD32E103TB2 2 pic | 信息牛(微信名) |
| Rt-thread bsp、port、module| [Meco Jianting Man](https://github.com/mysterywolf) |
| Donate:EC600S-CN 4G| 移远模块 |
-| Donate:BL706 board|博流智能 [bouffalolab](https://github.com/bouffalolab)|
+| Donate:BL706 board|博流智能 [bouffalolab](https://github.com/bouffalolab) |
| Donate:CM32M101A 开发板| 孟巍(微信名) |
| Donate:APM32F030R8 board | 极海半导体 陈成 |
| Donate:APM32E103VB board | 极海半导体 陈成 |
| Donate:APEX-Link| 极海半导体 陈成 |
-| corde format,add gitattributes| [Meco Jianting Man](https://github.com/mysterywolf) |
+| code format,add gitattributes| [Meco Jianting Man](https://github.com/mysterywolf) |
| demo/simulation-keil | 千帆(微信名) |
| demo/stm32f103zet6/demo01-led-stm32f103zet6 | [甜航](https://github.com/easyzoom) |
| demo/stm32f103zet6/demo02-led-stm32f103zet6_tworoot | [甜航](https://github.com/easyzoom) |
@@ -730,3 +731,16 @@ In addition to device drivers, developing custom Python modules for MCU is very
## Star History
[](https://star-history.com/#pikastech/pikascript&Date)
+
+# 6. Test and develop Core
+
+## Test core in docker (recommend)
+[get start with docker](https://pikadoc-en.readthedocs.io/en/latest/get-start_linux.html)
+
+## ✨ Contributors
+
+
+
+
+
+## [How to contribute](https://pikadoc-en.readthedocs.io/en/latest/%E5%A6%82%E5%8F%82%E7%A4%BA%E5%8C81%E7%9A%84%E7%94%9F|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
\ No newline at end of file