├── .github ├── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── config.yml │ └── installation-help.md └── stale.yaml ├── .gitignore ├── .vscode ├── extensions.json └── settings.json ├── LICENSE ├── README.md ├── docs ├── 01_features.md ├── 02_configuration.md ├── 03_wiring.md ├── 04_nodered_example.md ├── 05_homeassistant_example.md ├── 09_faq.md ├── _config.yml ├── flash.html ├── flasher │ ├── manifest_v1.json │ ├── manifest_v1_no_wifi.json │ ├── manifest_v2.json │ ├── manifest_v25.json │ ├── manifest_v2_alpha.json │ ├── manifest_v2_no_wifi.json │ ├── ratgdo_esp8266_hV25_sV2.5.bin │ ├── ratgdo_esp8266_hV25_sV2.51.bin │ ├── ratgdo_esp8266_hV25_sV2.52.bin │ ├── ratgdo_esp8266_hV25_sV2.53.bin │ ├── ratgdo_esp8266_hV25_sV2.54.bin │ ├── ratgdo_esp8266_hV25_sV2.55.bin │ ├── ratgdo_esp8266_hV25_sV2.56.bin │ ├── ratgdo_esp8266_hV25_sV2.57.bin │ ├── ratgdo_esp8266_hV25_sV2.59.bin │ ├── ratgdo_esp8266_hV2_nowifi_sV2.2.bin │ ├── ratgdo_esp8266_hV2_nowifi_sV2.22.bin │ ├── ratgdo_esp8266_hV2_nowifi_sV2.23.bin │ ├── ratgdo_esp8266_hV2_nowifi_sV2.24.bin │ ├── ratgdo_esp8266_hV2_nowifi_sV2.25.bin │ ├── ratgdo_esp8266_hV2_nowifi_sV2.26.bin │ ├── ratgdo_esp8266_hV2_nowifi_sV2.27.bin │ ├── ratgdo_esp8266_hV2_nowifi_sV2.29.bin │ ├── ratgdo_esp8266_hV2_sV2.2.bin │ ├── ratgdo_esp8266_hV2_sV2.22.bin │ ├── ratgdo_esp8266_hV2_sV2.23.bin │ ├── ratgdo_esp8266_hV2_sV2.24.bin │ ├── ratgdo_esp8266_hV2_sV2.25.bin │ ├── ratgdo_esp8266_hV2_sV2.26.bin │ ├── ratgdo_esp8266_hV2_sV2.26a.bin │ ├── ratgdo_esp8266_hV2_sV2.27.bin │ ├── ratgdo_esp8266_hV2_sV2.29.bin │ ├── ratgdo_esp8266_no_wifi_v1.5.bin │ ├── ratgdo_esp8266_no_wifi_v1.6.bin │ ├── ratgdo_esp8266_no_wifi_v1.61.bin │ ├── ratgdo_esp8266_no_wifi_v1.7.bin │ ├── ratgdo_esp8266_no_wifi_v1.8.bin │ ├── ratgdo_esp8266_no_wifi_v2.0.bin │ ├── ratgdo_esp8266_no_wifi_v2.1.bin │ ├── ratgdo_esp8266_v1.5.bin │ ├── ratgdo_esp8266_v1.6.bin │ ├── ratgdo_esp8266_v1.61.bin │ ├── ratgdo_esp8266_v1.7.bin │ ├── ratgdo_esp8266_v1.8.bin │ ├── ratgdo_esp8266_v2.0.bin │ └── ratgdo_esp8266_v2.1.bin ├── images │ ├── control4_logo.png │ ├── crestron_logo.png │ ├── dry_contact_diagram.png │ ├── esphome_logo.png │ ├── homekit_logo.png │ ├── mqtt_logo.png │ ├── nice_logo.png │ ├── ratgdo.png │ ├── ratgdo_logo.svg │ ├── sec2.0-row-wiring.jpg │ └── sec2.0-wiring.jpg ├── index.md ├── jquery-3.6.0.min.js └── order_status.html ├── include └── README ├── lib └── README ├── platformio.ini └── test └── README /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/.github/ISSUE_TEMPLATE/bug_report.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/.github/ISSUE_TEMPLATE/config.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/installation-help.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/.github/ISSUE_TEMPLATE/installation-help.md -------------------------------------------------------------------------------- /.github/stale.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/.github/stale.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/README.md -------------------------------------------------------------------------------- /docs/01_features.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/01_features.md -------------------------------------------------------------------------------- /docs/02_configuration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/02_configuration.md -------------------------------------------------------------------------------- /docs/03_wiring.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/03_wiring.md -------------------------------------------------------------------------------- /docs/04_nodered_example.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/04_nodered_example.md -------------------------------------------------------------------------------- /docs/05_homeassistant_example.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/05_homeassistant_example.md -------------------------------------------------------------------------------- /docs/09_faq.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/09_faq.md -------------------------------------------------------------------------------- /docs/_config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/_config.yml -------------------------------------------------------------------------------- /docs/flash.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flash.html -------------------------------------------------------------------------------- /docs/flasher/manifest_v1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/manifest_v1.json -------------------------------------------------------------------------------- /docs/flasher/manifest_v1_no_wifi.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/manifest_v1_no_wifi.json -------------------------------------------------------------------------------- /docs/flasher/manifest_v2.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/manifest_v2.json -------------------------------------------------------------------------------- /docs/flasher/manifest_v25.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/manifest_v25.json -------------------------------------------------------------------------------- /docs/flasher/manifest_v2_alpha.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/manifest_v2_alpha.json -------------------------------------------------------------------------------- /docs/flasher/manifest_v2_no_wifi.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/manifest_v2_no_wifi.json -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.5.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.5.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.51.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.51.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.52.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.52.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.53.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.53.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.54.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.54.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.55.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.55.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.56.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.56.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.57.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.57.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV25_sV2.59.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV25_sV2.59.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.2.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.2.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.22.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.22.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.23.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.23.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.24.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.24.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.25.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.25.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.26.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.26.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.27.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.27.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.29.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_nowifi_sV2.29.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.2.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.2.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.22.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.22.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.23.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.23.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.24.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.24.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.25.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.25.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.26.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.26.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.26a.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.26a.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.27.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.27.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_hV2_sV2.29.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_hV2_sV2.29.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_no_wifi_v1.5.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_no_wifi_v1.5.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_no_wifi_v1.6.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_no_wifi_v1.6.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_no_wifi_v1.61.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_no_wifi_v1.61.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_no_wifi_v1.7.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_no_wifi_v1.7.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_no_wifi_v1.8.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_no_wifi_v1.8.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_no_wifi_v2.0.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_no_wifi_v2.0.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_no_wifi_v2.1.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_no_wifi_v2.1.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_v1.5.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_v1.5.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_v1.6.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_v1.6.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_v1.61.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_v1.61.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_v1.7.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_v1.7.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_v1.8.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_v1.8.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_v2.0.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_v2.0.bin -------------------------------------------------------------------------------- /docs/flasher/ratgdo_esp8266_v2.1.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/flasher/ratgdo_esp8266_v2.1.bin -------------------------------------------------------------------------------- /docs/images/control4_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/control4_logo.png -------------------------------------------------------------------------------- /docs/images/crestron_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/crestron_logo.png -------------------------------------------------------------------------------- /docs/images/dry_contact_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/dry_contact_diagram.png -------------------------------------------------------------------------------- /docs/images/esphome_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/esphome_logo.png -------------------------------------------------------------------------------- /docs/images/homekit_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/homekit_logo.png -------------------------------------------------------------------------------- /docs/images/mqtt_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/mqtt_logo.png -------------------------------------------------------------------------------- /docs/images/nice_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/nice_logo.png -------------------------------------------------------------------------------- /docs/images/ratgdo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/ratgdo.png -------------------------------------------------------------------------------- /docs/images/ratgdo_logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/ratgdo_logo.svg -------------------------------------------------------------------------------- /docs/images/sec2.0-row-wiring.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/sec2.0-row-wiring.jpg -------------------------------------------------------------------------------- /docs/images/sec2.0-wiring.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/images/sec2.0-wiring.jpg -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/index.md -------------------------------------------------------------------------------- /docs/jquery-3.6.0.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/jquery-3.6.0.min.js -------------------------------------------------------------------------------- /docs/order_status.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/docs/order_status.html -------------------------------------------------------------------------------- /include/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/include/README -------------------------------------------------------------------------------- /lib/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/lib/README -------------------------------------------------------------------------------- /platformio.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/platformio.ini -------------------------------------------------------------------------------- /test/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PaulWieland/ratgdo/HEAD/test/README --------------------------------------------------------------------------------