feat: Add config flow for SmartIR integration with multi-step UI wizard

- Implemented a new config flow in `config_flow.py` for SmartIR, allowing users to select platforms, controllers, and devices through a guided interface.
- Added support for new device codes in `codes_index.json` for Apton and Andersson manufacturers.
- Enhanced fan, light, and media player components to support setup from config entries.
- Introduced `strings.json` and `translations/en.json` for improved localization of the configuration steps.
- Created a tool `build_index.py` to rebuild the `codes_index.json` from individual device JSON files.
- Updated `smartir_capture.py` to handle single-code modes and excluded modes for better device configuration.
- Added `iot_class` and `config_flow` attributes in `manifest.json` to support the new configuration flow.
This commit is contained in:
2026-07-01 20:11:48 +02:00
parent 2dd72d367c
commit 992098fbf1
17 changed files with 1510 additions and 282 deletions
+132
View File
@@ -0,0 +1,132 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
# C extensions
*.so
# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
# PyInstaller
*.manifest
*.spec
# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
# Translations
*.mo
*.pot
# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal
# Flask stuff:
instance/
.webassets-cache
# Scrapy stuff:
.scrapy
# Sphinx documentation
docs/_build/
# PyBuilder
target/
# Jupyter Notebook
.ipynb_checkpoints
# IPython
profile_default/
ipython_config.py
# pyenv
.python-version
# pipenv
Pipfile.lock
# PEP 582
__pypackages__/
# Celery stuff
celerybeat-schedule
celerybeat.pid
# SageMath parsed files
*.sage.py
# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
# Spyder project settings
.spyderproject
.spyproject
# Rope project settings
.ropeproject
# mkdocs documentation
/site
# mypy
.mypy_cache/
.dmypy.json
dmypy.json
# Pyre type checker
.pyre/
# IDE
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store
# Project specific
*.bak
temp/
tmp/
+1 -1
View File
@@ -150,7 +150,7 @@
"28": "JgDKAI+REjURERE1ETYREBIQETYQEhASEDYREREREDYRNhEQEjURERERERARNhE1EjURNRE2EDYRNRE2EREREBIQEhAQEhE1EhARERERERERNRIQEhARERE1ETYRNRE2EREQNhA2EK6PkRI1EBIQNhE1EhARERA2EhEQERE2EREQEhA2ETURERA3ERASEBEREDcRNRE1EjURNRE1EjUQNhIQEhAQEhASEBIQNhEREBMQERASEDYRERERERIQNRE1ETYQNhERETURNhAADQUAAAAAAAAAAAAAAAAAAA==",
"29": "JgDKAI+SETUQEhE1EjURERASETUREg8TDzYRERERETUSNRASETUSERAREBIQNhE2EDYRNRE2EDYSNRA2EREREg8SEBIQEhE1ERERNRIQERERNhEQERIQERE2EBIQNhE1ERESNRE1EK6PkRE1ERERNhE1ERIPEhA2EhEREBE2ERASERE1ETURERE2ERARERERETYQNhE1EjUQNhI1ETURNREREhARERERERIQNRERETYQEhEREDYRERASEBIRNREREDYRNhEREDYQNhAADQUAAAAAAAAAAAAAAAAAAA==",
"30": "JgDKAI+RETYQERE2ETUSEBEREDYRERIQETYREBESETUQNhERETYQERIQERERNhE1EDYSNRA2ETYQNhA2ERESEBEREBIREhA1ERERNRE2ERIQNRERERERERA2ERIPExA1EhARNhA2EK6PkRE1EREQNhI1EREQExA1EREQEhE1EhAQEhE2ETUQEhA2ERIQEREREDYRNhE1ETURNhE1ETURNhESEBERERARERIQNhASETURNRIQETYRERASERASNRASERERNRASETURNREADQUAAAAAAAAAAAAAAAAAAA=="
},
}
}
}
}
+266 -266
View File
@@ -17,13 +17,13 @@
"fanModes": [
"auto",
"low",
"mid",
"medium",
"high",
"highest"
],
"swingModes": [
"auto",
"swing",
"vertical",
"top",
"high",
"mid",
@@ -51,281 +51,281 @@
"29": "{\"ir_code_to_send\": \"Bw4NqwawAQwFgAMGsAF1AeYBsCABAXUBQBMDsAF1AUADAQwFQAMDsAHmAUAHAXUBQAdAA0ALAQwFwBcAsOAAC8AbA7ABdQGACwCwYAcDsAF1AUAPQAPAC+ADB+ADC+ADI+AHC0APAwwFdQFAB8AzwAsCDAWwYAMDsAF1AUATQANAEwGwAUAHQAMFsAGwAXUBQBfgAwdAFwMMBXUBQBcBDAXgAQtADwGwAYADwAtAB0ADAwwFdQGABwOwAQwF4AELAbABwAuAB0APwANAL+AHC8ATQAcC5gGwIAFAB+ABAwCwYAEBdQHgBRMBdQFAA+ADE0ALwBPAB8ATQA9AA+ADD8ALwAfgAx9AE8ADQMcDDAWwAUAPQAdAA0ALQAMFsAF1Aa8swkcFdQEMBbABQBfAA+ADD0ALQAMBsAGACwOwAXUBQCdAEwMMBXUB4AELAbABgAEBdQFAC0AXQAPgAwsBsAGAA0AXwAPgAxNAC+ADF0AL4AsTQFMDsAF1AeADA0ArQBdAAwSwAXUBsGABBnUBDAV1AbAgAQEMBYADQCcBsAHAA0ABA3UBDAVAAwGwAUABQAdAAwawAXUB5gGwIAFABwJ1AbBgAeABB8AjQAdAA0ABgAcCdQGwIAGAC+ADAYAXgAFAC8ADQAHAC0AHwAEBdQGAdwJ1AbDgAAHgAwtAAUAPQAPAAeADC8ABwBPgBwdAAcATQAFAC0AD4AEBQH9AxwMMBXUB4AELDbABsAGwAbABdQGwAXUB\"}",
"30": "{\"ir_code_to_send\": \"BzgNlwanAQoFQAMHbwHkAW8BpwFAAwWnAQoFpwHAD0ALQANAD8AHwAvAD0AHQAMDpwFvAcAbQAdAA0AXQAdAAwOnAW8BQAfgAQMApyAB4AEPwAvABwHkAeABA+ADE0BTA6cBbwHgAx9ACwEKBUADAacBQAsDpwFvAUAHQANAE8ADQA8GpwFvAeQBpyABQAcBbwHgAxsBCgVAAwGnAUAX4AMDA6cBbwHgAw/AI0AHQANAG8AHA6cBbwHAC0AXQA8C5AGnIAFAB+AFA+BNEwCnIAEDbwHkAYADwAvAB0AXwAvAB0ATwAPgCxNAzwEKBYAHwCdABwG7LMJHA28BCgWAGwOnAW8BQBvgAw9AC0ADAacBgAtAH0ADQBNAA+AHC8APQAdAA0AjA6cBbwFAC+ADA8ATAKcgAcAXA6cBbwHAC8AHwBPAB0AX4A9TQBdAA0AjAKegAUALQBPAA0APAKcgAcAHQAHgAxvgAwtAI4ADAKcgAQJvAadgAQVvAeQBbwFAJ8AH4AMLwAFAE+ABAQFvAcADQDMAp6ABAuQBpyAB4AEPAacBwAvAB+APAQZvAeQBbwGn4AABQAsBbwHgCRNAAQJvAacgAeAFG4AB4AkTAW8B4AkTBacB5AGnAUDPAgoFbyADDacBpwGnAacBpwGnAacB\"}"
},
"swing": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"vertical": {
"16": "{\"ir_code_to_send\": \"Bx4NpgaIAQkFgAMBxgHgAQNAE8APQAtAA0APwAfAC8APQAdAA0AXQAPgDwtAG+A7A+ADX+ADT0AXQAPgAxPgGwtAM0ADQCtAB0ADQAvgBwNAF8ADQBvAC0AH4AMPwAtAB+C7A0DfQANAy8AHwAsBsyzi/Ufi/UfiLkcCBYgB\"}",
"17": "{\"ir_code_to_send\": \"B9cMqQamAQ8FgAMDpgFvAUADA+YBbwFAE0AHQANAC0ADwAsDpgFvAcAL4AMXwAvAGwGmAeABC0ATA6YBbwFAB8ADQA9AAwLmAaYgAUAHgAOACwCmIAEDbwHmAYADgAsApiABBW8B5gFvAcBrwA9AE0ADQBdAA0ALQAMDpgFvAUAH4AMD4AsTQDMDDwVvAUAnAQ8FQAsBpgFAC4ADAKYgAYALAQ8FQAMApiAHA6YB5gFAC0ADAaYBQAMBpgFAC0ADA6YBpgGAB0Aj4AMDA6YBbwHAD8ALwAfAF0AH4EcTQFNAA+AdVwCmIAEGbwHmAW8BpiABQAcBDwVAA+ABC0ATQANAEwEnLUJHgAsHDwVvAaYBbwFAG0AHBw8FpgGmAW8BQA8BDwWAA4ALAaYBgAEBbwFAC0ADAaYB4AULA+YBpgGAF0ABAW8BwAsE5gFvAabgAAEBbwHAD8AHAaYBgBNAD8ADQBOAAwGmAUATAKZgAQFvAYBTAW8BgBPgAQdAF0ADQAGAG0ABBG8B5gGmoAECbwGm4AoBQDNAAwPmAW8BQAdAA0ALAKagAcALQBfAA0ABwAtAB0ABQAdAA0ABwAfgCwHAT+ADAYAT4AFzQAEC5gGmIAHgAxMBbwHgCRPgBwECbwGm4CoBAeYB4Ak3wBNAy0ADA6YBbwGABwmmAaYBpgEPBaYB\"}",
"18": "{\"ir_code_to_send\": \"Bx8NswazAQwFgAMHswF5AeYBeQFAB0ATA7MBeQFADwEMBYADwAtAB0AbAgwFs2ADAbMBQAtAAwWzAbMBeQFAH8ALQA8DDAV5AUATQANAD8AD4AMPwAvgBwdAK+ADE8AL4AFTALMgAQN5AeYBgAMCDAWzIAMBeQHAD0AHQA8DswF5AUALQAdAA8ALQAdAAwIMBbNgA+ABCwB5YAtAD0ADA7MBeQFAB0AXAgwFsyADgAfgARMFeQGzAXkBQAcDDAWzAcAXQAfgAwMDswF5AeADD0AL4AcTQA9AAwLmAbMgAUAHgANAC0AD4AsPwBdAB0ADAuYBsyABQAfgAQNAD0ADQBPAB+AHC0APQAPgAx9AzwEMBUAHAXkBQBtABwOzAXkBwAcBryxCRwF5AUAPQANAI0ADA7MBeQHAD4ALA7MBDAVACwmzAQwFswGzAXkBQCcBDAWAA+AHC4APA7MBswHgAwtAAQJ5AbNgAQF5AUAjALNgAQF5AYALAXkB4AUDQAHAEwGzAeADI0ALBAwFeQGzYAFAB+ABA0AXCAwFswGzAXkBs2ABBXkBDAV5AUAHALNgAeALBwR5AQwFs2ADAbMB4AULALNgAQF5AUBzQAeAJ8AHA7MBswHACwJ5AbMgAQEMBYADQAFAC4ABgBsBswFAB+ADA0AB4AMPQAtAAQR5AeYBsyABAXkBgANAAcALQAfAAeAPC0ABQBtAA0ABwAdAAeADC0ABQA9AA+ADAQZ5AeYBeQGzYAEBeQFAx8ADAbMBgA8LswF5AQwFeQGzAbMB\"}",
"19": "{\"ir_code_to_send\": \"BxsNqwbKAQ0FQAMDfQHKAeABA8APA/ABfQFAC0ADwAtAB0ArQBNAA+AHC0AfwBfAG0AHQBfgAwdAC8AD4Asb4AsTwC/gA19AE8ArQBdAA0AT4AMDQB+AF0ABAX0BQA/gAwdAG0ADQBNAB0ADQAtAA+ADK0AX4AMDQB/AD4ALA8oBDQXACwF9AcA7A8oBfQHAC8AHQBPAA+A7E+ADQ8ALwAdAZ8ALwAdAE8AD4BcTwMtAB0ADQC9AB0A/AZEsQkcBfQFAD0ADQBPAA+ADD0ALQAPgAztAJ0ATQAPgBwvgCydAE0AnQAPAC8AHQBPgEwPgCyfAd+AHN0AXQAPgBxdAD+APF8AbwB9AB0ADQBfgBwNAF+ADA0AfwA+ACwPKAQ0FQAsBygGAB0AL4E8DQAFAW0ABQAfgIwNAAeAhL8DLQAdAAwvKAX0BDQV9AcoBfQE=\"}",
"20": "{\"ir_code_to_send\": \"BxkNrgaCAQ0FgAMF1AFUAdQBQAcBggFAEwHUAYAPQAtAAwPUAYIBwAcNYAJUAQ0F0QANBYIB1AFACwGCAUADQAsD1AGCAYALBYIB1AFUAeABC0APwAMDVAHUAcALwAfgIRPgBVMDVAHUAYBDQBdAAwHUAeALE0AXwAPgAR8D1AGCAUAzQAPgBwtADwHUAeABK0Aj4AMDA9QBggHAD+ALC0AT4AED4AFHAdQBwAPgMxPgO0PgGX9A3wHUAYADQAtAAwPUAVQBgAcDggGmLOIHRwGCAcADwCNAD0ALQAPACwfUAVQB1AGCAUATQAPgBwvAD0AHQAPAI0ALgAOAPwHUAeArA4A74AlTAYIBQANAF0ADQAvAA0APQAPAD+ALB0AfQANAG0AHQANAC+AHA0AX4AMDQB/AD+ALC0AT4B8DQAHgGytAAeAHJ0AB4AcT4CcPQAHgBzNAAUDfwBdAC0ADC9QBggENBYIB1AGCAQ==\"}",
"21": "{\"ir_code_to_send\": \"BwwNrQaEAQkFgAMF1QFUAdUBgAdAE4ALAYQBQAtAA8ALQAdAA0ATQAPgBwvAD0AHQAPAIwXVAVQB1QFAB0ADwAvAB0ATwAPgAxPAC8AHgCPgAVMBhAHgAQMBVAFAF0ADQAsB1QFAB+ABA+APFwPVAVQBQBtAA+AHCwHVAUAT4AEDQCPgAwNAG8AP4AsLQBMB1QHgCUfgSRNAU0ADgGsHQALPANUBhAGAA8ATBVQBQAKEAeADAQHVAeADAwNUAdUB4AMPQAuAE0DjA9UBhAFAB0ADwAsF1QFUAa0s4gdHQBdAAwFUAcArA9UBhAFAC0ADwAtAB0ADQBNAA+AHC8APB9UBVAHVAYQBwCMB1QGADwHVAeAXA+ALJ+AFE+ABUwGEAUADQAFAB0AXQANAC+AHA4AX4AVHQAED1QGEAUAbQAPgBwtAD+ADA0Aj4AMDQBvAD+ALC0AT4BsDQAHgBydAAeAHE+BPD0AB4AdbQAHAE0DjQAFAB0ADC9UBhAEJBYQB1QGEAQ==\"}",
"22": "{\"ir_code_to_send\": \"BywNqwawAQYFgAMD5QGBAcADQBMDsAGBAUAPQAtAAwGwAYALQBMDsAGBAUATQAMBsAHgBQtAH8AXwBsBsAFAC0ABAYEBQB/AB+ADC0ATgANAAQGBAcAbQAsAsGABBIEB5QGwIAEBgQHAXwPlAYEBQA+AAwGwAUAXQAMBsAHgAxNACwmwAQYFsAGwAYEBwDOAB0ABAYEBQBtAAwGwAeAFC0APgAOAAUAjAgYFgaADA7ABsAHACweBAeUBsAEGBUADQAsBgQFABwCwYAEBgQFAD0AHALDgAAFAC+AHA8ABwBdAAUALQAFAB0ADQAHgAwdAC8ADQAEBgQHgAWsCgQGwYAEBgQFAE0ADQAsAsGABAYEBwA+AB0ABAoEBsGABQAdAA0ABAYEBQMcFBgWwAbABQAdAAwOwAbABQAcBgQFAOwPALCwN4gFHAYEBQBuAAwGwAYAPQAEBgQFAC0ADgAsAsGAHBbABgQEGBYADgAsBsAFAAwGwAcAPQAdAAQqBAQYFsAGwAYEBsGABQAfgAwNAAQGBAUCPQAeAA0ABAYEB4BMTwFMC5QGwIAECgQGwoAFAFwEGBcAPgAfADwMGBbABgAFAF8ADQAEDgQEGBUADA7ABsAFAB0ADCbABsAGBAeUBgQFAB4ADAbABQBeAAwCBIAcFgQGwAYEBQAdAA0ArQAdAA4ALAbABgAECgQGwYAFAB0ADQAHgAwfgAQtAN4AP4AMHwAFAE0ABwAdAAUALwANAAUALQAHAB0ABBIEB5QGwIAECgQGw4AgB4AMTwAtAB0ADQAEBgQFAx0ADQAEBBgWADwuwAYEBBgWBAeUBgQE=\"}",
"23": "{\"ir_code_to_send\": \"B1AN4waHAQsFQAMFwAHAAYcBwAPgAw9AC0ADAcABQAsBhwFAB0ADQAtAA+ABCwDAYAsDwAGHAeAPC0Ab4CcDA+wBhwHgBTMDwAELBeAHE4APQBdAA8APwAdAE0ADwA/gBwdAG0ADQBdAB0ADQAvgBwNAFwILBcAgA0AHAYcBQJtAB0ADgAuAG4ALA4cBwAHgEQNAI+ABH0AB4AMP4F8LQAHgHWtAz8ADQDMJCwXAAcABhwG5LEJHAewAQA9AAwvAAewAfALsAMABwAGADwGHAUADAQsFgAPAC0AHQAPgBxdAD0AXQAPgDwtAG+AVA0AB4BcjAYcB4ANfQA/AA0AXQAPAD0AHA+wBhwFAE0ADQA/gCwMCCwXAIAMFhwHAAYcBQAdAA0AL4AcDQBfgAwNAH8AP4AsLQBPgLQNAAeAHO0AB4AcT4B8PQAHgHyvgDScCCwXAIANABw2HAcABhwELBYcBwAGHAQ==\"}",
"24": "{\"ir_code_to_send\": \"CCINtQaDAQsFtGADgAEFgwHlAYMBQBMDtAGDAYALBYMBCwW0AYALBbQBtAGDAUADQAtAAwG0AeAFC+ABJ0ABAYMBwCMAtGABQAdAA0AB4AEHQDNAD4AHQAECgwG0YAFAB0ADQAHgAQdAU+ADK4ALAYMBQBcDCwWDAcAPALQgAQELBUADAIMgBwODAbQB4AMDQAFADwG0AUAbAwsFtAFAAQELBUALAoMBtGABQAfgAQNAF4ADALQgBwO0AbQBQA8MtAELBYMBtAGDAQsFtCADDoMBtAGDAQsFtAG0AYMBtGABQAfgAwNAAQGDAeABpwKDAbRgAQGDAeAHE0APQAMBtAHAA0ABwAvAB0ABAYMB4AUnAYMBgANAAQGDAeAFG0AB4BcTgAEKCwWDAbQBgwELBbSgAwKDAbQgAQkLBbQBtAGDAbgswkcBgwFAA0ATALRgAQGDAeADD0ALQAMAtCABgAcBgwFAk0ALQAPgBwsAtCABBwsFtAG0AYMBwBsAtGABAYMBQA9AB4ADQAHAC8AHQAHAC8AHQAHAC4AHBAsFgwG0YAFAB+ABA0AXQAOAE0ABAYMBQA8CCwW0IAMDgwG0AcADQAFAC0ABBIMBCwW0IAMIgwG0AYMBCwW0YAMDtAGDAeAFrwODAQsFQAMAtKAHBYMBtAGDAUAHQAPgCwvgBz9AIwC0YAEBgwHgBRtAAQKDAbRgAUAHQANAAUAH4AMDQAHgAw9AC0AB4AMH4AcLwA9AAeAHC0APQANAAUAHQANAAeABB+AH2+ADDwO0AYMB\"}",
"25": "{\"ir_code_to_send\": \"CNMMqAbDAQoFhiADBcMBwwGGAUADB/EBhgEKBYYBQAtAAwIKBcMgAwWGAcMBhgHAB4ALAcMBQAMDwwGGAUAHQAMDwwGGAUADAwoFhgFAB0ADBwoFwwHDAYYBQFdAB+AXA+AbJwMKBYYBQEfgBytAF0ADQBvgCwPgDxsCCgXDIAMFhgHDAYYBQAdAA0AL4AcDQBeAAwDDYAcDwwGGAYALA8MBwwFAC4ADwAtAB+AHo0AT4E8D4E9rwNfAB0C/QAtABwEyLUJHAYYBQA9AA0ATwAPgAw9AC0ADQBvAB8ALBQoFwwHDAUAHgANAC0ADQA9AB0AD4AMLQA/gNQNAAQGGAeAPU0AXQANAI+ALA+APG0AXQANAM0AHQANAC+AHA0AX4AMDQB/AD+ALC0AT4LsDwOPABwvDAYYBCgWGAcMBhgE=\"}",
"26": "{\"ir_code_to_send\": \"BxINtAbDAQkFQAMDhwHDAeABA0APA/IBhwFAEwIJBcNgAwHDAYALA8MBhwFAAwEJBYAD4AcLwA9AB0ADBwkFwwHDAYcB4AMDwFvgAxPgIwvgC1NAPwEJBUADBcMBwwGHAcAD4AMPAwkFhwHAF+ADBwIJBcMgAwWHAcMBhwFAB0ADQAtAA+ADq0AX4AEDA8MBwwHgAQ/gCwtAE+BxA0AB4Dl/AQkF4AkDQFdAF0AHAbgsQkcBhwFAD0ADQBPAA+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvgOwPgA1/gA09AF0AD4AcTwA/gBxuAFwHDAUAXQAMDwwGHAUAHQANAC+AHA0AX4AMDQB/AD+ALC0AT4AEDQAHgAw/gnQvA3+ADBwvDAYcBCQWHAcMBhwE=\"}",
"27": "{\"ir_code_to_send\": \"BycNmwa+AQYFgAMDvgGEAYADAb4BQBMBvgGAD0ALQAMBvgGACwfrAYQBvgGEAUATQAMBvgHgBQvADwG+AeAJC8AT4AMHQE9AA8ATwAuABwG+AYAHAYQBQAPACwMGBYQB4AEPQAGADwIGBb4gAwKEAb5gAQGEAeABLwm+Ab4BhAEGBYQBQAcAvmABQAeAA0AXQANAD0AHQANAC+AHA0AX4AEDAb4BQF9ABwoGBYQBvgGEAQYFviADBYQBvgGEAcAHQAtAJwC+YAFAB+AzA0ABAYQBgE8BhAGAA0ABAYQB4AUTAYQB4E0DQAEBhAFA2wkGBb4BvgGEAbgsQkcDhAEGBYADQBPAA0AT4AELA74BBgWAD8AHA74BhAFAC0AD4AcLgA8AvmAHB74BhAEGBYQBQAfgKwPhBRtAAQGEAUAD4A9TQBdAA0Aj4AMDgBMBvgGABwGEAeAFVwGEAUAXQAMAviABQAdAAwG+AeAJA0AX4AEDA74BvgHgAQ/gAQsAvuAACwG+AUADQAEBhAHgBXNAAQGEAeA1A0AB4AdDQAHgBxOAD+BBfw2+AQYFhAEGBb4BvgGEAQ==\"}",
"28": "{\"ir_code_to_send\": \"BxoNqAaLAQkFgAMBxgHAAwFDAUATAcYBgANAC0ADQA8HCQXGAcYBiwFAA0ALBwkFiwHGAYsBQAdAA0ALAR4CgD/AAcAXQBvgPwPgD1NAF0AD4ANnQA9AA0ATwAdAC+ADA0AXBQkFxgHGAUAHQAMFxgHGAYsB4AcDQBcBCQVAB4ADBsYBiwEJBcYgAwWLAcYBiwFAB0ADwAtAB0ABQAfgCwNAAeALF+ABEwNDAcYB4AMP4EULQAHgB1NAAeADE8DP4AUTA8YBCQWAEwGYLOIPRwGLAcAjwAvAD8AHQAFAC0AD4AMjQAHAD0AHQAPAI0AL4BMDQAHgEx/AG0AB4A9TQBdAA8ArQAdAD0ADwAtAB+AHA0AfQANAF0AHQANAC+AHA0AX4AMDQB/AD+ADC0ABQBdAE+APA0AB4AcbQAHgBxPgJw9AAeAHM0AB4C8T4AvHCwkFiwEJBYsBxgGLAQ==\"}",
"29": "{\"ir_code_to_send\": \"BxANqQbBAQoFQAMHhgHtAYYBwQGAA+ADDwIKBcFgAwHBAUALAYYBwCcCCgXBYANAD+ADCwPBAYYBQA8DwQGGAcAbA8EBhgHgDwNAI+AnGwMKBYYBwDPAP0AHAgoFwSADAYYBQAsBwQHgBQNAFwcKBcEBwQGGAeAHAwEKBUADA8EBwQGAB8ALAcEB4AUDAQoF4AUDQB/AE+ALC0AT4LsDQOPgA8dAD0ADQBMBsCxCRwGGAUAPQANAEwDBYAEBhgHgAw9AC0ADA8EBhgHAB8ALwA9AB0ADQBdAA+APC+EL30AvQAPgExtAH+ADA+ADX+AHF+A3G0A/QAPgA1fAC0AX4AMDQBfAD+ALC0AT4CcD4RMH4BMb4Cdn4CMvQOPgAy8LCgXBAQoFhgHBAYYB\"}",
"30": "{\"ir_code_to_send\": \"BxENqAaOAQwFQAMCzAGOIAEHzAFeAcwBjgHgAQ9AC4ADwAtAB0AB4AcXQA9AG0AD4A8LAcwBgF8BzAHgAwPgCxOAH0ABQAtAAQHMAeABJ+ADXwHMAYADQAFAFwEMBUARA44BzAGALwcMBY4BzAGOAUAHQANAC+AHA0AXQANAFwIMBcwgAwOOAcwBQAOAQwHMAYADQBfgAwMDzAFeAcAPA8wBjgHAC0ABQAtAE+ADA0AB4AMPQAtAAUAH4AMDQAHgAw9AC0ABQAfgCwNAAeAHF0AB4BMTQAFAH0ABBcwBXgHMAUAHgANAAcALQMdAA8APQAdAD0ADQAsBmSziA0cBjgFAE8AD4AMPQAtAAwPMAV4BgAcAjmABQAtAA0ABQAdAA0ABQB/ACwNeAY4BQAtAE0ADQAFAB+ADA0AB4AMP4AMLQAHgAw9AC0AB4AlTA14BzAGAF+ADG8ATwAfgBxtAAeAHG0AjQANAF0ABQAfAA0AX4AED4AVzQAEBDAWAA0ABQAtAAUA7QAFAB+ADA0AB4AMPQAtAAUAH4AMDQAHgAw9AC0ABQAfgAwNAAUAPQAFAB0ADQAHgAwdAC8ADQAHAC8AHQAHAC8AHQMdAA0APQAFABwsMBY4BDAWOAcwBjgE=\"}"
},
"top": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"ByQNpwbAAQkFgAMDwAGGAcADQBMDwAGGAUADQAtAAwHAAYALA8ABhgFAA0ATQAMBwAHACwGGAUALQAPgBQsFwAHAAYYB4A8DA+0BhgHgDxvgAxfgAyfgAVNAAQGGAcADQBdAAwPAAYYB4AcvAgkFhmADAcAB4AEDwCPgAxuACwHAAYABAYYBwANAKwEJBeADAwPAAcAB4AEP4AsLQBPgQwNAg+BDT8BL4BtXAwkFhgHAL0ALQANADwGqLEJHAYYBQA9AA0ATwAPgAw9AC0ADQBvAB8ALwA9AB0ADQBdAA+AFCwXAAcABhgHgJQNAAeARMwMJBYYB4AEfQAGAD0AXQAPAD4AHAcABQBPAAwHAAeAJA+ADG4ALBcABwAGGAeAHAwEJBeAFA0AfwBPgCwtAE+A5A0AB4DtH4BtDQAEBhgHiBVdAAQGGAUDnQAdAAwsJBYYBCQWGAcABhgE=\"}",
"17": "{\"ir_code_to_send\": \"CBYNowbFAQkFiSADBcUBxQGJAcADAwkFiQHgAQsDxQEJBYAPwAcDxQGJAUALQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBcHCQXFAcUBiQHgAQMDSQHFAeADD0AL4AUTAQkFgAMDxQGJAYALBcUBxQGJAeAHAwMJBYkBQBNAAUAHQA/AA+ADD8ALQAfgWwNAAeBTZ+AD40Bn4AMPAbksQkcBiQHgAxNAI0ADQBNAB0ADQAtAA8ALQAdAA0ATQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBdAA+APZwVqAkkBiQFAHeABAUANQDNAA+AHC0AP4AMDwCPAE0APwANAAcALQB9AC0AH4LsDQMtAA8DLCwkFiQEJBYkBxQGJAQ==\"}",
"18": "{\"ir_code_to_send\": \"BxYNswapAQkFgAMGqQF+AeEBqSABAX4BQBME4QF+AakgAUALAwkFfgFAD0AHAKmgAQEJBYADBqkBfgEJBeEgAwapAakBfgGpIAHgAQsBfgFACwLhAakgAQJ+AalgAUAHQAOAAQHhAeAHCwR+AeEBqWABAeEBQAsCfgGpIAGAB4ALBgkFfgHhAakgAQF+AUADA+EBfgFABwIJBalgA4APQAFAEwF+AeABD0ABAn4BqeAEAQR+AQkFqWADAakB4AULgDcBfgHAA0AnA6kBfgFAAwkJBX4B4QGpAQkFgANAAeAFCwJ+AangBAEFfgHhAX4BQAeAA0ABAX4B4AkTAakB4AETwAFAJwCpIAEBfgGAA+ADAeADE0ALQAEGfgHhAX4BqWAB4AEHgBMBfgGAA0ABAX4B4A0TAKkgAQF+AUADAgkFqSADgAcLqQF+AeEBfgEJBakBgAEDfgG7LEJHAX4BQBNAAwLhAakgAQF+AUADQA+AAYALgA+ACwSpAX4BqSABQBNAA0ABAgkFfiADAakBgAHACwJ+AakgAeADFwCpYAEBfgHgA2sAqWABwAfgAwHAEwZ+AeEBfgGpYAGAB+AJUwGpAUAjAQkFQANACwCpoAFADwF+AeADDwCp4AQBgA9AIwUJBakB4QGAB8ALAakBQAPAAQF+AUAXwAHAC0AHQAMBqQGAH4ALAakBwAcC4QGpIAEGfgHhAX4BqWAB4AEH4AETwAHAEwF+AYADgAEC4QGpIAFAE+ABAQHhAeAFD+ADAeAJGwF+AeABEwJ+AamgAYAT4AEPQAGAE+ABAUDHwAOAAQ1+AQkFqQGpAX4B4QF+AQ==\"}",
"19": "{\"ir_code_to_send\": \"CCkNrgaHAQYFw2ADA8MBhwHAA0ATgAGAC4APgAsDwwGHAUADQBNAAwHDAcALAYcBQAtAAwcGBcMBwwGHAUAD4AMLQA/gOwMDBgWHAeALRwIGBcMgAwOHAcMB4AUD4AcTA/EBhwFAI8AHQB8FBgXDAcMBQAeAA0AL4AcDQBvAE8ALQAdAA0AXQAdAA8ALQAfglQNAAeAho+AL2wG9LMJHAYcBQAPgA0/gAw9AC0ADQB/AB8ALwA9AB0ADQBdAA+APC0Ab4A0DQAHgDxvgCRfgA1+AH0ABAYcBQBdAA0AL4AMD4AsT4AcfwCNAB0AD4AMfwAvgAxfAC0AHQANAI0AHQAPAC0AH4MMD4AjbAgGHAQ==\"}",
"20": "{\"ir_code_to_send\": \"ByENrgawAQUFQAMHgQGwAYEB5AGAAwMFBbAB4AMLAwUFsAFADwEFBYAHBrABgQEFBbBgA8AXBwUFsAGwAYEBQAMDBQWwAUAXB7ABgQEFBbABgAtAAQGBAYADQAFAC0ABAYEBgB+AB+ADC0ATgANAAQGBAcAbBwUFsAGwAYEBQA9AA0ALALAgAQEFBYADQBPAAwIFBbAgAwKBAbBgAQGBAcAXgAcAsCABBIEBBQWwYAMBsAFAC0ADCbABsAGBAeQBgQFAB4ADB7ABBQWwAbABgA8DBQWBAUAfAgUFsCADAoEBsCABAgUFgSADA7ABsAFABwGBAUAH4AMDQC8AsGAB4AEH4BETAYEBgAPgAwHgAxMBgQGAO+ABB0ALALBgAQGBAcAbQAsAsGABAYEBgBNAAQKBAbBgAQGBAYATAYEBgANAAQGBAeADEwQFBYEBsKABCwUFsAGwAYEBBQWBAUAHALAgAQHBLEJHA4EBBQVAAwWwAbABgQHAPwgFBbABsAGBAbAgAQIFBYFgAwCwIAEBBQVAB4ADAQUFQAMDsAGwAUAHgANACwCwIAEBBQVAB4ADAwUFgQHAV4AHQAECgQGwYAFAB0ADQAEBgQGAH8AHQAECgQGwYAEEgQHkAbAgAQGBAUADBwUFgQHkAYEBQAuAA0ABA4EBBQWAA0ALwB8CBQWwYAMDsAGBAYAD4AMBgBMBBQWAA0AzAQUFgANAC4AfwAEFgQEFBYEBQAcAsCABCgUFsAGwAYEBBQWwYAMBsAHgAwsJsAEFBbABsAGBAcAD4AtP4AETAoEBsGABAYEB4BUTQAEBgQGAA0AB4AcLQAFAE+ALAUAXwANAAQGBAYBrQAECgQGwYAHgBwcHsAEFBbABsAFAFwaBAQUFgQGwIAELBQWwAbABsAGwAYEB\"}",
"21": "{\"ir_code_to_send\": \"BywNqwa0AQYFgAMH4wGBAbQBgQFAB0ATgAFAC0ADA7QBtAHgAQcAtCABQBNAAwO0AYEBQAdAAwO0AYEBQAMDBgWBAUBHgAsBtAFAC0ADAbQBwANAAQGBAeALE0AXQAPgBRsBgQHAA0AXQFOAAQGBAeABAwS0AQYFgSADAbQBgAEBgQFAK0AHQAMDBgWBAUAHQANAF0ADQAsAtCABQBtAA0ATAQYFQA8BtAGAAQGBAUATQAdAAwMGBYEBwA8FBgW0AbQBQAdAAwO0AbQBQAdAAwO0AbQBgAeAK0ABAoEBtGABwAdAAcALAYEBgCcBgQGAA0ABAYEB4AETwAHgAxMCgQG04AABQAvAA0ABQAtAAUAH4AMDQAHAD0ABQAtAAQGBAYBrQAECgQG0YAFAB+ABAwMGBYEBQCNABwC0IAGAB0ALDIEBqiwsDasGgQEGBbQgAwGBAUAnAbQBgANAD4ALA7QBBgVAA4APCAYFtAG0AYEBtCABQAsBBgVACwGBAUAHQAMAtGABAYEBgAsCgQG0IAHgAQuADwG0AeADB+ADC0ABQA9AA0AB4AMHQAvAAwG0AYBT4AMBAYEBQL9AF0ADQAtAE4ADQAEBgQFAF0AHALRgAUAHQANAAQSBAQYFtCADCIEBtAGBAQYFtCADBIEB4wG0IAEBgQGAA0ABAYEBQBdABwC0IAHACwEGBeAHCwO0AbQBgBcEtAGBAbRgAUAHQANAAUAHgAME4wGBAbRgAUAHgAOAEwGBAYADQAEBgQHgFRPAAeAHJwGBAYADQAEBgQGAQ+ADAeADEwKBAbTgAAFAC8ADgAEBBgWADwMGBbQBQEcLBgWBAbQBtAG0AYEB\"}",
"22": "{\"ir_code_to_send\": \"CDANsQaGAQsFw2ADA8MBhgFAAwfvAYYBCwWGAUALQANAC0ADwAtAB0ADQBMFCwXDAcMBQAeAA0ALQAMHCwXDAcMBhgFAA+ADC0APQF9AB+APA+AFH0ABAYYB4AcDAwsFhgHgAxPAM0AXQAPgAxsFCwXDAcMB4AEHQAvgBwMBCwWAA0AX4AMLQA/gAwNAG8APwAtAB0ADQBdAB0ADgAsAw2AHAcMB4A8DQAHgDxvgKxdAAeArN+AVMwELBYADQCdAC+ADB0ALAbYswkcBhgFAA0ATQANBk+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvgMQNAAYA/4ANfwBNAB0AXQANAC8ADwA/AB8AX4AMHQBtAA0ATQAdAA0AL4AcD4AMXwAtAB0ADQCtAB0ADwAtAB+B5A0ABQIdAAUAH4CUDQM9AA0A34AcHA8MBhgE=\"}",
"23": "{\"ir_code_to_send\": \"CCINsAaHAQUFwWADA8EBhwHAAwcFBcEBwQGHAUADAgUFwSADDYcBwQGHAQUFwQHBAYcBQAMCBQXBYAMBwQHgBQsL7gGHAQUFwQHBAYcBQAMHBQXBAcEBhwHAA0AfwAvgLwcHBQXBAcEBhwHgBwMCBQXBYAMDwQGHAeADAwEFBYADQBPgC38CBQXBIAMHhwHBAYcBBQWAA0AL4AcDBwUFwQHBAYcBQAMDBQWHAcAHAwUFhwHgCwtAE+ARA0AB4AEf4AuX4AsT4AMz4AULQAHgBxPgQQ8BBQWAA0BTAwUFhwFABwDBIAEBuSzCRweHAQUFhwHBAeABAwMFBYcBwA8BBQWAA0APAwUFhwFAB0ADAQUFgAPgBwvAD0AHQAMDBQWHAUAH4EMDAwUFhwHhC2MBBQVAAwXBAcEBhwHgAwMBBQWAA+ADE+ADCwEFBYADQBMBBQWAA0AL4AcDAwUFhwHAEwMFBYcBQAsCBQXBIAMHhwHBAYcBBQWAA8ALQAfgDQNAAeAPG+AfF0AB4Esr4ANTQAGADwEFBYADQA8LBQWHAcEBhwHBAYcB\"}",
"24": "{\"ir_code_to_send\": \"CDENlQbHAQsFimADAccB4AEDQBPAD0ALQANAD8AHwAvADwILBcdgAwPHAYoBQAMDCwWKAUAHQAMHCwXHAccBigHgIwNAAeATL+APUwELBYAD4AM7wBNAB+ADF0ALQAFAB0AbQAPgBwtAD+ADA8AjQBPAC0AHQAPAEwULBccBxwFABwGKAUAH4A8DQAHgDxvgMxdAAeAHP0AB4AcT4AsPQAHgBxdAx0ABQAdAA0AfwAdACwGyLEJHAYoBQBNAA0ATwAPgAw9AC0ADQBvAB8ALwA9AB0ADQAHAG0AHQAFAF0ALQANAAUAH4DcD4A9TQBdAA+ADX0APwAPgAxfgAwvgAx/gAwtAAeAHJ8APQCdAAUAHQANAF0AHQANAAUAHQBPgFwNAAeAHI0AB4C8T4Ac34BcPQAHgByNAAcATQMdAAUAHQANAAQsLBYoBxwGKAccBigE=\"}",
"25": "{\"ir_code_to_send\": \"ByMNlwbDAQoFQAMDhwHDAYADA+wBhwHgAw9ACwUKBcMBwwFABwGHAUAfgAsBwwFAAwXDAYcBCgWAA0ALQANAD+ADJwPDAYcB4B8DwDfgEy9AX0Af4AcrQBcHCgXDAcMBhwFAA+ALH0AXQAPgAxsBCgWAA0AX4AMLQA/gBydAE0ADQCfABwUKBcMBwwFAB4ADwAtAB+AhA0AB4AcvQAHgBxPgaQ/A10AHQH/AB0ALAbwsQkcBhwFAE0ADQBPAA+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvgDQNAAeAPG+AJF+ADX+ADH0AXQAPgAxPgAwvgDxtAF0ADQCtAB0ADQAsAwyAB4AEFAYcB4AEX4AELQBNAA8AT4AMLQBNAA+IDi0AP4KcDQNPAA0C7CwoFhwHDAYcBwwGHAQ==\"}",
"26": "{\"ir_code_to_send\": \"BzYNlQbBAQkFQAMDiAHBAeABAwcJBcEBwQGIAUADAQkFQAMDwQHBAUAHAYgBQAdAA0ALBQkFwQHBAUAHQAMNwQHBAYgB7gGIAQkFiAFAC0ADBwkFwQHBAYgB4C8DQE/gBTsDwQEJBeAHE4APQBcHCQXBAcEBiAHAAwMJBYgB4AsLwBNAB0AjQAOACwPBAQkFgAsBwQGAA8CD4AMXwAtAB0ADQCtAB0ADwAsAwWABQAfgMwNAAeAzP+A1O0DP4AMDQE9AD0AHQAMBsSxCRwGIAUATQANAE8AD4AMPQAtAA0AbwAfAC8APQAdAA0AXQAPgDwtAG8GTQAvgIQNAAeABLwcJBcEBwQGIAeAHAwEJBYAD4AMXQBPAD+ADC8ATQAcCCQXBIAMFiAHBAYgBQAdAA0AL4AcD4AMXwAtAB0ADQCtAB0ADwAtAB+BpA0AB4EF3QM+AAwDBYAcPwQGIAQkFiAHBAYgBwQGIAQ==\"}",
"27": "{\"ir_code_to_send\": \"BzUNlwa2AQQFgAOAAQGEAUADQBOAAYALgA+ACwO2AYQBQANAE0ADAbYB4AMLQAFADwGEAUAHALYgAQUEBbYBtgFAC4ADBOkBhAG2YAEBhAGACwGEAYADQAHACwGEAYAbQAEBhAHgBQMBtgHgBVNAAUAjAbYBQBcBBAVAC4ADgEMHhAEEBbYBtgHgAQcAtmABAYQB4AMfCgQFhAG2AYQBBAW2IAMDhAG2AeAHAwW2AQQFtgGAAQWEAQQFhAGABwW2AQQFhAFAS0AHQAMDtgGEAYAHQAEBhAHgBQNAAeAbE8AjQAHAC+AFB0Bz4AETQAHgAQ+AG0ABAYQB4AUDQAHgDROAMwGEAYADQAHACwGEAcAbAgQFtiADAoQBtmABA4QBuyzCRwGEAUADALZgAUAHAYQB4AMPQAtAA4AXALZgB0AFAgQFhGADALYgAYALAbYBgAEFhAEEBYQB4AF3AYQBQBPgAQPAAcATQAFAC0ABAYQBwDdACwC2YAFAB+ADAwe2AQQFtgG2AcATQAGACwEEBYADALZgAUAHgAMFBAW2AbYB4AEHALZgAeABB0AfQAMBtgHACwGEAUALgANAAUALAbYBgBdAAQGEAYALgAfgDwsAtmABQAfgAwNAAUAPQAFAB0ADwAFAC+AHA0AB4A8TQAHAG0ABAYQB4Rs/A7YBhAHgEQNAAUAfQAHgAweACwEEBUADCYQBtgGEAbYBhAE=\"}",
"28": "{\"ir_code_to_send\": \"CCwNnAapAQkFfCADBakB4QF8AcADQA+AAYALgA+AC8ABQBNAA0ABQAdAAwOpAXwBQENAC0AHQANACwOpAXwBQAsAqWAB4AEHAuEBqSABAXwBgAMIqQHhAXwB4QGpIAFABwJ8AalgAeADB4AL4A9TAgkFfCADAakBgDsBfAFAB0APQAMI4QGpAQkFfAGpYAEBfAFADwOpAXwBQAMCCQWpIAMCfAGpIAEBCQWAAwHhAYAPwAcDqQF8AUAbwAEDCQV8AUAbAQkFQAsDqQGpAeAJCwapAXwB4QGpYAEE4QF8AalgAeABB+ABE8ABwBMBfAGAA0ABAXwBgCcBfAGAA0ABAXwBgBPgAwFAEwCpIAECfAGp4AABwAtAB0AD4A8B4AEbAeEBQAtAA4ABgNtAAYATAgkFfCADAakBgAEJfAG4LCwNnAZ8AUATQAOAP4AB4AEPwB8BfAHACwepAXwB4QGpAUATAwkFqQHgAQsAfGALQAEICQWpAakBfAGpIAEBCQVAB8ADQAEFfAHhAXwBQAcAqeACAYATQAHgBRcBqQFAD0ADQAEJfAHhAakBCQWpAYABAnwBqWABBXwB4QF8AUAXAwkFfAFACwCpYAEEfAEJBalgAwGpAYALgBsBfAGAA0ABAXwB4AcjQA/gAQECfAGpoAHAF0BDwAsBCQVACwJ8AakgAUAHQAMAqSABAwkFqQGAAYAPBqkBfAHhAakgAQJ8AangAAEGfAHhAXwBqeAEAcAPAXwB4AsbgBMBfAGAA0ABAXwB4AETQAECfAGpIAEC4QGp4AYBAXwBgBMCfAGp4AgB4AsTQAEBfAHgA8dAP0APCwkFfAHhAXwBqQGpAQ==\"}",
"29": "{\"ir_code_to_send\": \"BxsNnwbCAQgFgAMDwgGHAcADAwgFhwHgAwvAD8AHQBsCCAXCIAMIhwHCAYcBCAXCYAMDwgGHAUADBwgFhwHvAYcBgAsAwmAHAcIB4A8DQAHgDxvgDRcDCAWHAeALG0AXQAPgDRsDwgEIBeAZG0AjQAMDwgGHAcDDQAtAA8AX4AMLQBNAA8AT4AELBcIBwgGHAeBZA0AB4Aln4Ae74Asj4B8TAwgFhwHAK0ALQAPADwG7LEJHAYcBQBNAA8AXQAfAD0CLQAtAA+ADF8AL4AMXwAvAG0AHQANAF0BHQAvgPwNAU+ALS0AXQAPgMxtAP0AD4A1DAMLgABcHCAWHAcIBhwFAB0AD4AsLQBPgiwPhJ48HCAXCAcIBhwFAAwEIBYADB8IBhwHCAYcB\"}",
"30": "{\"ir_code_to_send\": \"CRcNCAf/AAcFwwFAAwPDAYYBwAPgAw9AC0ADAcMBgAsDwwGGAUADQBNAAwHDAeAFC4APgAeACwDDYAcBwwHgHQMD8QGGAeAXKwMHBYYB4AsjQBdAA8AbQEvAD0AHBwcFwwHDAYYB4AcDAQcFgANAFwIHBcMgAwGGAUA7AcMB4AUDBwcFwwHDAYYBQAMDBwWGAYAHA8MBBwXACwCG4AQLAcMB4AEDgE9AAQGGAeBjA4B3AYYB4C8D4APTQEPgBw8BuSxCRwKGAQfgAvtAJ0ADQBNAB0ADQAtAA8ALQAdAA0ATQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBdAA+ADZ8APQAdAA+ADG8ALQBdAA0APQAdAA0AL4AcD4AMXwAtAB0ADQCtAB0ADwAtAB+C3A0DPQAPAx0ALCwcFhgHDAYYBwwGGAQ==\"}"
},
"high": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"CDANngbCAQUFiCADBcIBwgGIAcADBwUFwgHCAYgBQAMBBQVAAwPCAcIBQAcBiAFAB0ADAgUFwmADAcIB4AULwA8BwgHAC4AHwA/gOwcHBQXCAcIBiAHgBwMCBQXCYAMDwgGIAeADAwEFBeABA+ADF8ALAgUFwiADB4gBwgGIAQUFgANAC+AHAwMFBYgBwBMFBQXCAcIBQAeAA+ALC0AT4H8DAxQCiAHgM4sDBQWIAUA/AQUFgANAC0ADAbQsQkcDiAEFBYAD4ANnAwUFiAFAI0ADAQUFgAPAC0AHQAMBBQWAA+AHC8APQAdAAwMFBYgBQAfgQwMDBQWIAeALTwEFBYAD4AcbAQUF4AED4AcbQA8BBQWAA+AHC0AP4AMDAwUFiAHADwMFBYgBQAsBBQWAA+ALC0AT4BcDAxQCBwFAIwNbAsIB4AMBQBXgAwEFBwGIAcIB4BcDQAHgFyPgLR8DBQWIAUA7AQUFgAMHwgGIAcIBiAE=\"}",
"17": "{\"ir_code_to_send\": \"CCQNsgaHAQ4FwWADA8EBhwHAA0ATA+wBhwFAA0ALQAMBwQFACwGHAUAHQAMCDgXBIAMFhwHBAYcBQAcHDgXBAcEBhwFAA+AFCwGHAUBHQBdAA+ADC0AP4AMD4Asb4AsTQFPgAzfAC0AXQAPAD+AfB0AzQANAL0AHQANAC+ALAwcOBcEBwQGHAUADAQ4F4AED4AMPgAsAwWAHAcEB4G8DQAHgKXvhD28BDgWAA0BTAg4FwSADB4cBwQGHAbsswkcBhwFAA0ATwAPgAw9AC0ADAMEgAYAHQAsBhwFAC0AD4AcLwA9AB0ADwCNAC+AtA0AB4AU74A9TQBdAA+AHL+AXD0AzQANAJ0AHQANAC+ALA+ADG0ALwANAK+AHC0AT4LsDwNdAB0DPCw4FhwEOBYcBwQGHAQ==\"}",
"18": "{\"ir_code_to_send\": \"CO8MtAaIAQoFwCADB4gB8QGIAcABgANAD+ABCwHAAUADA8ABiAHAB4ALBYgBCgXAAUA3QAdAAwPAAYgBQAPgDwtAG+AHA0A/QBPAB0ALwAPgCxNAGwMKBYgBQAfgBwMCCgXAIAMBiAHgAzdADwHAAeAVA0AjQANAJ0AHQANAC+AHA0BXwBvgAwfgDQsFwAHAAYgB4BkDQAEBiAFAW0AH4B8D4BEvQAEBiAHgJQNAAeANMwEKBeAFA0AnQBNAB0ADAewswkcBiAFAA0ATwAPgAw9AC0ADQBvAB8ALBQoFwAHAAUAHgANAC0ADQA9AB0AD4AMLQA/gOwPgD1NAF0AD4ANj4AcP4AMbwAtAI0ADQA9AB0ADQAvgCwPAG+ADB+APC+ALPwDAYAFAB+BTA0AB4D1fQNvgAwNAVwsKBYgBwAGIAcABiAE=\"}",
"19": "{\"ir_code_to_send\": \"ByENwwaIAQwFgAMBwgHgAQMHDAXCAcIBiAFAA0ALQAMBwgGACwXCAQcCNQFAC4ADQA0CDAXCIAMDiAHCAYAD4A8LwB/gAwcDBwKIAeADD+APC+ADJ0Bf4AMPwDNAFwcMBcIBwgGIAeADAwMMBYgB4AMP4AcLQB9AA0AXQAdAA0AL4AsDwBvgAwfgDwvgCz/gHxMDBwI1AeAfK+ALJwMHAogB4AsX4DcTQOtAA8BHAaUs4hNHAYgBwCdAC0ADQA/AB8ALwA9AB0ADQBdAA+APCwEHAuE1G0BbQAPgA19AD8ADQBdAA8APwAfgCxPAG0AHQB9AA+AFC0ABgBPgAwfgAydAFwIMBcIgAwWIAcIBiAFAB0ADwAtAB+DHA0DfCwwFiAHCAYgBwgGIAQ==\"}",
"20": "{\"ir_code_to_send\": \"CCMNoAbFAQkFiWADAcUB4AEDQBPADwIJBcUgAw2JAcUBiQEJBcUBxQGJAUADQAsKCQWJAcUBiQEJBcUgAwOJAcUBgAPgDwvAH+A3B+ADX+ADS0AXQAPgFxPgAx9AC0AzQAPgBwtAD+AHA0AnQAEFCQXFAcUBQAeAA+ALC0AT4DMDQAHgMz/gOztA3+ADR0APQAPAEwG5LEJHAYkBQBNAA8AXQAfgAw9AC0AD4BcXwCPgAydAAeADF0Ab4DsD4A9TQBdAA+ADY0APQAPgAxPgAwtAAUAfQANAF0AHQANAC+AHA0ABwBvgAwfgDwvgBz/gBw9AAeAHE+BPD0AB4AdbQAHgBxPgBw/A28AXQA8LCQWJAcUBiQHFAYkB\"}",
"21": "{\"ir_code_to_send\": \"By4NmAasAQsFgAOAAQWAAeEBgAFAE0AHQAMBCwVAAwOsAawB4AEHAKwgAUATAwsFgAGAI0ALAKxgCwOsAYAB4AcLA6wBgAFAJ0AHgANAAQGAAUATQANACwCsYAEBgAHgAQ8CgAGsYAEEgAHhAawgAQGAAYADAawBQF8BrAGADwPhAYABQAsG4QGsAQsFgCADCawB4QGAAawBgAGAB4ABAQsFwA8BgAGAA0ABAYABQCMCCwWsIAMDgAHhAYAHgAsDgAGsAcADQAFACwGsAUAbAKwgAQMLBawBQAECCwWAIAMDrAGsAYAHBwsFgAGsAYABwAcArGAB4AMH4AMLQAEBgAGAa0ABQAsArCABQAcBgAFAB4ADQAEBgAHgTxOAV0ABAoABrGABQAdAA0ABBYABCwWsAcAjQAsFCwWAAawBoAMALEJHBIABCwWsIAMBgAGAJwKAAawgAeADDwELBUAPA6wBrAGACwSsAYABrCABAgsFgGADAKwgAYALAawBwAEBCwVAF4ADgAtAAQKAAaxgAQGAAeABawKAAaxgAQSAAeEBrKABAoABrGABBYAB4QGAAUAHAKxgAUAHBYAB4QGsAeABU8ABQBcEgAELBaxgA+ABAQKAAaxgAQGAAUAb4AEBAYABQC9ABwCsIAECCwWAYANAE8ALAawBQAPgAwGAD0AfAKwgAQMLBawBQAFABwELBeABEwMLBawBQAGAB4AXA6wBgAFAWwCs4AQB4AMP4AMLQAHgBQ/gCzsC4QGsIAEBgAGAA8ABQA/gBQGAJ0AB4Acb4AcP4BEBAQsF4AErQAsLCwWAAawBrAGsAawB\"}",
"22": "{\"ir_code_to_send\": \"CBMNpwa8AQkFhSADBbwBvAGFAcADQA8H7wGFAbwBhQFAC0ADAbwBgAsDvAGFAUADAQkFgAOACwG8AUAD4AMzAbwBwBuAB4AbQAEBhQHgBQNAAeAHE+AFD+AHO4BTQAEBhQHgAwNAFwcJBbwBvAGFAUADQDcDCQWFAYAHAbwBgAEBhQHgBwMBCQVAAwO8AbwBQAeAAwC8YAFAB4ADQENAC0Af4AcH4AMT4AELBbwBvAGFAUADgDtAAQGFAeAZA0AB4AcnAbwBgEPgBxfgNw9AAeABQ+ALYwEJBYADQCdAH+ADDwC8IAEBtixCRwGFAYAXBbwBvAGFAcADAwkFhQHgAwvAD8AHQBtAC0AD4AcLwA9AB0ADwCNAC4ADQAHAC8AHQAFAC0ABQAfgAwNAAeADDwGFAeAPU0AXQANAI8ADwA/AB8AX4AMHQBtAA0ATQAdAA0AL4AsDwBvgAQcAvKALA7wBCQXgAxcDhQG8AUADQAFAB0ADQYkBhQFABwC84AABB/QAcgL0ALwB4AMBQA9AJ0ABQAdAA0ABQAfgGQMD7wGFAeABJ0ABQA9AAUAH4AsDQAHAF0ABwAsBhQFAx0ADQAtAAwIJBbwgAwmFAbwBhQG8AbwB\"}",
"23": "{\"ir_code_to_send\": \"BygNkwbDAQYFgAMDwwGEAcADQBMDwwGEAUADAQYFgAOACwPDAe0B4AELQA8DwwGEAUAHBwYFhAHDAYQBQB8HBgXDAcMBhAFAA+ADC0AP4AsDQDPgBxfgExPAU8AjwAdAFwQGBYQBw2ABQAeAA0ATAwYFwwHAJwHDAYADwA9AGwcGBYQBwwGEAUAHQANAC8AfQAvAA8AbQAdAHwIGBcMgAwWEAcMBhAFAB0ADgAsAw2AHAcMB4L0DAwYFhAFAywIGBcMgAwGEAUD7BcMBhAG9LEJHAoQBBiATQANAE8AD4AMPQAtAA0A3QAfgASMDwwEGBYAPQAdAAwHDAYAD4A8LQEPAI+AzB+ADX+ADR0AXQAPgAxNAC0ATQANAC+ALA0AbQANAG0AHQAPgD6tAG8AnwAfgAxPgAwtAH+BBA0AB4DdPQAHgI0NAAYAv4APXCwYFhAHDAYQBwwGEAQ==\"}",
"24": "{\"ir_code_to_send\": \"BxsNtganAQsFgAMGpwF9AeABpyABAX0BQBMDpwF9AUAPQAtAA8ALBOABfQGnIAFAE0ADA6cBfQFABwcLBX0BpwF9AUAfAwsFpwGAAYALQBMBpwGAA8ALAuABpyABQAeAA4ALAKcgAYALAKdgAeABBwTgAX0Bp2ABAX0BQF9AD8ADAKdgAQF9AUAXQAMDpwF9AUAbAKcgAUAPAgsFfSADAacBgAEEfQHgAacgAQF9AYADAacBQBtAA0ABQAdAAwPgAX0BwAMDpwF9AUALQAdAG0ABBAsFfQGnIAEBCwWAAwWnAX0BCwVAAwOnAacBgAcC4AGnIAECfQGnIAEB4AFAB0ADQAEBfQGADwGnAcAHAacBwBMBfQGAA0ABAX0BgB8BfQGAA0ABBH0B4AGnoAECfQGnIAEG4AF9AeABpyABAX0BgANAAQF9AcATBOABfQGn4AQBQA9AA0AB4AEHgCcBfQGAA0ABAX0B4AfPQA9AAwLgAadgAQGxLOIJRwCnYAEBfQFAJwSnAX0BpyABAgsFfSADAacBQAEFCwV9AacBQAMBpwFACwULBacBpwFAB0ADBqcBpwF9AacgAcALCOABfQELBX0Bp2AB4AMH4AELQCMAp+AGAeABE+ABG+ABEwWnAQsFpwGAAYAfwBtAF0ADAacBgBdAAUAPgAPAE8AHAacB4As3AgsFp2AD4AcBAuABp2ABQB9AAeADB+AJC4BHBKcBfQGnIAHAO+ABAQF9AYATAn0Bp+AIAUATQAPgAwEGfQHgAX0Bp+AMAeAFF+AJJwR9AeABp+AIAeALE+ALAQQLBX0BpyAB4AMHCwsFfQGnAacBpwGnAQ==\"}",
"25": "{\"ir_code_to_send\": \"CBUNowbCAQ0FhyADBcIBwgGHAcAD4AMPAQ0FgANAG0ALQAdAAwINBcIgAwWHAcIBhwFAB0ADQAtAA0ALA+0BhwHAC0AHwA+AB0ABAYcB4BMDQCdAA+ALI0Bf4A0XA8IBDQXgDRsDwgGHAeAPG0AXQAPAI8ALQA/gBwPAG+ABBwDC4A4LA4cBwgHgDwNAAeAPG+AtF4ErQAEBhwHgQQNAAQGHAUDLQAPgBwtADwG9LEJHAYcBQB9AA0ATwAPgAw9AC0ADQBvAB8ALwA9AB0ADQBdAA+APC0Ab4DUDQAEBhwHgA19AD8ADQBdAA8AP4AcH4A8bQBdAA0AvQAdAA0AL4AsDwBvgAwfgDwvgCz/gVxOCTwGHAeBDA0DfQANAU0AHCw0FhwHCAYcBwgGHAQ==\"}",
"26": "{\"ir_code_to_send\": \"CBENrQa/AQgFhiADB78B7wGGAb8BgAMDCAWGAcAPQAtAA0AbwAeACwG/AUADA78BhgFABwMIBYYB4AEzA78BvwGADwMIBYYBQAvgDwPAM+APH+ALFwcIBb8BvwGGAeAHA0AXQAMDvwGGAcADAwgFhgHAY0ALwBfgAwcCCAW/IAMFhgG/AYYBQAdAA0ALQANAO0ADQAtAA8AbBQgFvwG/AYAH4AELQA8FhgG/AYYBwAdAC+AxA0ABQD9AAQGGAYCHQAEBhgHgGwOALwGGAeAzA0DHwANAR+ADC0APAbEsQkcBhgHgBxdAG0ATwINAC0ADwBdAB0ADQBNAA+AHC8APQAdAA8AjQAvgIQMCvwGGIAEC7wG/4AwBCQgFvwEYAYYBvwHgBQMBCAWAA+ADF0ATgA8BvwHgAQvAE0AHAb8BQBdAAwO/AYYBQAdAA0AL4AsDwBsFCAW/Ab8BQAeAA+ALC0AT4E0DQAHgD1tAAeAPG+AnFwG/AcDfQAcAvyABQAcLCAWGAb8BhgG/AYYB\"}",
"27": "{\"ir_code_to_send\": \"ByINsgaIAQgFQAMFxAHEAYgBwAMDCAWIAeABCwPEAQgFgA8HCAXEAcQBiAFAAwEIBUADA8QBxAFAB0ADBcQBxAGIAUAD4AULBYgB9QGIAUAX4D8DQFPgC0tAFwcIBcQBxAGIAeADAwMIBYgBQA/AB0AL4AMDQBdAA0ATQAdAA0AL4AsDwBvgAwcFCAXEAcQBQAeAA8ALQAfgwwPA30AHwNcBuCziA0cBiAHAF0AH4AMPQAtAA+AXF8Aj4AsnQBPgQwPgA2vgA1dAF0AD4AMTQAvAE8AHQBPgAwNAF0ADQBNAB0ADQAtAAUAH4AMDwBvgAwfgDwvgAzfguwtA58ADB4gBiAHEAYgB\"}",
"28": "{\"ir_code_to_send\": \"BysNpga9AQwFQAMHhQH2AYUBvQGAA0AP4AELA70BDAWADwcMBb0BvQGFAUADQAtAAwG9AUALgANAC0ADQA+ATwG9AUALA70BhQGADwGFAeADA+ALE+ADH+APC4BTQAEChQG9YAFABwGFAUAXQANAC0ADQF8CDAW9IAMFhQG9AYUBwAdAC8ADgCMBhQFAA0ATQAdAA0AXAL1gAUAH4AEDQBtAD+ADB+ANCwW9Ab0BhQHgGQNAAeABJ+APdwC9YAFAB+ADA0AB4AMP4BcLQAHgASOAawGFAeATAwQMBYUBvWABAYUBQAvAA0APQAMBsSxCRwGFAeAHF0AbAwwFvQGAAUALQAMDvQG9AUAHAYUBQAdAA0ALQAPgBwvAD0AHQAMHDAW9Ab0BhQGAA0ABQAtAAeADB0AL4CEDAwwFhQHgCy9AF0AD4AMbQA9AA0ATgAdAAQGFAeADA0AXQANAE0AHQANAC+ALA4AbAb0BgAdADwG9AUADAb0B4AcLAYUBQBPgIQNAAcAvQAFAC0ABQAfgFwNAAeAHI8AB4AcX4A8PQAHgBxsBvQHgA8dACwEMBeACEwIBhQE=\"}",
"29": "{\"ir_code_to_send\": \"CBUNtQaFAQcFwWADA8EBhQHAA0ATA8EBhQFAA0ALQAMBwQGACwPBAYUBQANAE0ADAcEB4AULgA+AB4ALAMFgBwHBAUADQAFAB+AXA0AB4AEjA+8BhQHgAw8EBwWFAcFgAUAHgANAI0AXBwcFwQHBAYUB4AcDAQcFgAPgBxdAD4AbAcEBQAEBBwWADwHBAeANA0AfQBtAB+ABcwGFAcAT4AMLQBPgKwNAVwDBYAEBhQGAC+ABB0ALwAPAG8AP4DcH4A9P4APTQAtAA8BrAb0swkcBhQFAA8AXQAfgAw9AC0ADAMEgAYAHQAsBhQFAC0AD4AcLwA9AB0ADwCNAC+APp0Ab4AMD4Bcn4ANT4AM3QBdAA+ADE8ALQBcHBwXBAcEBhQHgBwMBBwVAAwPBAcEBQAeAA0AL4AsDQB9AF+ADB+APC0An4CkDQAHgDzdAAeAPG+APF0ABwBtAAUALQAHgAwdAC+ARA+AH3wsHBYUBwQGFAcEBhQE=\"}",
"30": "{\"ir_code_to_send\": \"ByENsAanAQkFgAOAAQJ+AacgAUATAacB4AELQA8K4AF+AQkFfgHgAacgAQR+AQkFp2ADAacB4AULA+ABfgFAG0ABgAsCfgGn4AABBH4B4AGnYAEE4AF+AadgAQR+AeABpyABAn4BpyABAeABQAdAA0AB4AMH4AELAwkFpwGAJ0ABBH4B4AGnIAEBfgFAFwkJBX4B4AF+AacBQAMBpwFADwanAX4BCQWnYAMDpwF+AUAD4AcjBAkFfgGnIAEBCQVAAwF+AYAfQAECfgGnYAGAB0AbCacBfgEJBacBpwGAB+AJCwenAQkFfgGnAUADQAHgAQeAVwF+AUADwAvgBQdAAUATAKcgAQF+AYADQAEBfgHgARPAAcAT4AMBAn4Bp2ABQAdAA+ADAQZ+AeABfgGn4AYBgBNAF0ADgAGAEwOnAQkFgAMDpwF+AcALBAkFfgGnYAEDfgGtLEJHBH4BCQWnYAPAN0ABQBPAAUALCwkFfgGnAX4BCQWnAUABQCsBCQWAAwPgAacBgAsBpwFACwOnAX4BQAsDpwF+AUAPgAvgBQEE4AF+AadgAeABB4ATAX4BgAPgAwHgAxMFfgHgAacB4AFTgA/AAUAXQAMEpwF+AadgAQF+AYAPAacBQAdAAwTgAX4Bp2AB4AEHQBdAA0ABQAdAAwanAX4B4AGnoAECfgGnYAEGfgEJBX4BpyABQAdAHwEJBUADAn4BpyABQAcDCQWnAUABBAkFfgGn4AQBAX4BQC8EpwF+AafgAgGAE+A/AeADW0ALQAPgAQEB4AHgBQ9AAQLgAafgFAEBCQWAA0ABwAsLCQWnAacBpwGnAacB\"}"
},
"mid": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"By8NrAbCAQkFgAMDwgGHAcADQBMDwgGHAUADQAsHCQWHAfMBhwFABwHCAYADQAtAA0APQAdAA0ALQAMHCQXCAcIBhwFAA+ADC0AP4CcDQHfgBzMDCQWHAeAHE0APAgkFwiADA4cBwgHgBQNAE8ADQBvgB1MCCQXCYAMBwgHACwGHAUALQAPgCSsBhwFAF+ADB+APC+AHO0A34AsTQBfgBwPgHyfgBTdAAcATQAHAC+AvB0ABgDtA4+ADA8AXAZQsQkcBhwHAG8AXQAdAE0AHQANAC0ADwAtAB0ADQBNAA+AHC8APQAdAA8AjQAvgMwPhA1fgD1NAF0AD4AdnQBPAAwDCYAFAB+ABA+ABG+AFC0AP4AcDQCtAE+ADB+APC0An4L8DQOPgAwMHwgGHAcIBhwE=\"}",
"17": "{\"ir_code_to_send\": \"ByoNrwbDAQMFgAMDwwGIAcADQBMDwwGIAUADQAsPAwWIAcMBiAEDBcMBwwGIAUADQAsKAwWIAcMBiAEDBcNgAwPDAYgBQAMDAwWIAUAHQAPgAwtAD+A7AwcDBcMBwwGIAeAHAwEDBUADBcMBwwGIAeAjAwEDBYADQDMCAwXDIAMHiAH9AYgBwwHgBQNAF0ADwBfgBwtAD0ADQB/AB0AL4LMDQMfAA0DHwAtAB0APAbEsQkcBiAFAD0ADQBPAA+ADD0ALQANAG8AHwAvADwIDBf0gAwKIAcOgAQMDBcMBwAEBAwVAF+BFA+APU0AXQAPgJ29AM0ADQDdAB0ADQAvgAQMCwwGIIAFAF0ADQA1AA+AHC0APQAPgBxtAD+CvA0DPwANAw8ALBwMFiAHDAYgB\"}",
"18": "{\"ir_code_to_send\": \"CBcNsQaJAQgFxGADA8QBiQHAA0ATA8QBiQFAAwEIBYADgAsAxGAHBcQBiQEIBYAD4AELAMRgC0AF4AELBYkBCAWJAUAH4EMD4A9TQBcHCAXEAcQBiQHAA+AHD8AX4AMHAQgFgANAE+ADC0AP4AMD4AMbQAvgCxvAF8AH4AMj4LcLQNPAA8DLAcAswkcBiQFAA8AXQAfgAw9AC0AD4AMXQAFAE0ADwBfAC8APQAdAA+ADF0AP4DsD4A9TQBdAA0ABwGdAD8AL4A8HQCNAA0AfQAdAA0AL4AcDQBdAA0AXwAdAC0ADQA/AA8APQAeAAwLEAYkgAUAF4D8DQAHgP0vgH0fA3wsIBYkBxAGJAcQBiQE=\"}",
"19": "{\"ir_code_to_send\": \"CCANyQauAQsFgCADCa4BrgGAAeYBgAFAB0AP4AMLwA8ECwWAAa5gAQGAAUALBQsFrgGuAUAHQAMGrgGuAYABriABAQsFQAcBgAFAQwcLBa4BrgGAAcADQBOAC0AB4AULwBuABwGuAUAHQAMDrgGAAUAHQANAC0BTQAtAAwCu4AABAYABQBdAAwOuAYABgBsBgAFAAwYLBYAB5gGuIAFABwKAAa4gAUAHQAMGrgGAAQsFrmADAa4B4AULwB+ABwSuAQsFgGADAK4gAUALA64BgAHgBxtAF0ATQAdAH4ADQAEBgAFAF0AHgANAAQGAAcATgAdAAcALAYABgANAAQGAAYAfAYABgANAAQGAAeALEwCuYAFAB0ADQAHgAwdAC8ADQAEBgAHgC0PgAxNAx8APAgsFrqADAoABrmABA4ABuyxCRwGAAUATAwsFrgHAKwCuIAFAD8ABQAtAAwOuAYABwAeACwWAAQsFrgFAAQELBUALAoABrmABBYABCwWuAYABQAsBgAFAB4ADQAFAC0ABQAdAA0ABAYABgH9AAQGAAeAHA+AFGwmuAQsFrgGuAYABgANAAQGAAUAjAQsFQAMBrgFACwCuYAGAB0ATAa4BQAtAA0AB4AMHAYABQB8DCwWAAUA3AQsFQAsBrgHgCQFAG0ADAa4BQAEFCwWAAa4BQAOAAUAPAQsFQAcBrgFAAYAHAoABrmABwAdAAcALAYABQG9ABwCu4AABQAtAA0ABwAfAAeAHD+AHAeALH8ATwAfgAwEBgAGAf+AHAQKAAa4gAcAbAQsFQA+AAwILBa7gAAMHrgGuAa4BrgE=\"}",
"20": "{\"ir_code_to_send\": \"CCsNpAbCAQ0FiCADBsIBwgGIAcJgAQWIAQ0FiAFAB0ADAg0FwiADBYgBwgGIAcAHwAvADwINBcIgAwOIAcIBgAMHDQXCAcIBiAFAAwMNBYgBQAfgIwMD9AGIAeATL+APU0AXQAPgAztAD0AD4AMT4AMLQGtAH0ADQBdAB0ADQAvgBwNAF0ADQBdAB0A7QAtAA0APwAPAD0AH4LsDQNdAx0AHwANAD0ADAbYsQkcBiAHgBxdAG0ATQAdAA0ALQANBM0AHQBNAA0ALQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBdAA+ADZ0APQAPgAxPgBwtAH0ADQBdAB0ADQAvgBwNAF0ADQBfAB0ALQANAD8ADwA9AB+C7A0DXQMdAB8ADB8IBiAHCAYgB\"}",
"21": "{\"ir_code_to_send\": \"CC8NqgbGAQoFhmADAcYB4AEDBwoFxgHGAYYBQAMBCgWAA4ALAMZgBwPGAYYBQAsHCgWGAcYBhgFABwcKBcYBxgGGAUADAwoFhgFAB0ADBwoFxgHGAYYBwAMD8wGGAcALwAfgCxPAG+ALBwMKBYYB4A0XA8YBCgXgDxvgDRcDxgGGAUAbQAPgBwtAD+ADA0AjQANAE8AHQAtAA0APwAPAD0AHQAPgJ99AM+AZA0AB4Bsn4DUj4AfT4AMPQFsBsyxCRwGGAeAHF0AbQBNAB0ADQAtAA8ALQAdAA0ATQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBdAA+ALZ+APF0ArQBtAA+AHC0AP4AMDQCNAA0ATwAdAC0ADQA/AA8APQAfgtwPgB9PgAw8DxgGGAQ==\"}",
"22": "{\"ir_code_to_send\": \"CAQNtgaGAQwFwSADB4YB7gGGAcEBgAPgAw8CDAXBYAMBwQGACwPBAYYBQAPAF0A3AQwFgAMBwQGAAwcMBcEBwQGGAcAbQAvgKwNAP+ALNwMMBYYB4AcXQCsCDAXBIAMDhgHBAeABA8APwAfgAxvACwIMBcEgAwWGAcEBhgFAB0ADQAvgBwNAF0ADgGsBhgHgAx9AD4ADA8EBwQGAC0AnQAvgKwPgbzvgD6sBDAXgBQPAJwG+LMJHAYYBQAPAF0AH4AMPQAtAA0DXQAdAH0ADQAtAA+AHC8APQAdAA0AjQDtAC+A/A0BT4AtLAgwFwSADA4YBwQHgAQPAD8AH4AMbwAtAG0ADQA9AB0ADQAvgBwNAF0ADQBfABwDBYAEBhgFAD8ADwA9AB+AhA0AB4A8vQAHgDxvgIxdAAeAXL0AB4AkjwNsCDAXBIAMJhgHBAYYBwQGGAQ==\"}",
"23": "{\"ir_code_to_send\": \"BxYNsQaHAQkFQAMHvwHsAYcBvwGAA0APA78BhwFAA0ALBwkFhwG/AYcBwAeACwG/AUADA78BhwFABwMJBYcBwEMHCQW/Ab8BhwFAAwMJBYcBQAfgHQNAAeAVK0BjBwkFvwG/AYcBQANAD0AHQAMBCQWAA0AL4AMD4A8XwCPgAx+ACwG/AYABAYcB4AMDAQkFgANAc0AL4AkbA78BCQWAF8AHAb8B4CcDQAHgJzPgDS9Ap+ABG0AB4AMP4B0LgMcBvwFAB+ADAwG/AYADAa8s4gNHAYcB4ANzQA/AJ0ALQANAD8AHgAsDvwEJBeAHC0ABCYcBCQW/Ab8BhwFAAwQJBYcBv2ABQAfgAwNAAeADD+AhC4BTAYcBgANAAYALQBdAA8APwAdAE0ADwA/gBwdAG0ADQBdAB0ADAL9gAUAH4AEDQBdAA0ATwAdAC0ADQA/AAwC/IAFACwC/YAFAB0ADQAFAB+BHA0AB4A9TQAHgDxvgHReAx4AHQAvAAwe/AYcBvwG/AQ==\"}",
"24": "{\"ir_code_to_send\": \"BxANqQamAQkFQAMEeQHjAaYgAUAHCHkBCQWmAeMBpiABgAtADwGmAYALwAFAE0ADAeMBgBfACwOmAXkB4AELAaYBQAuAAQJ5AaZgAQR5AeMBpiABQAcCeQGmoAEC4wGmIAEGeQHjAXkBpiABQAdAAwOmAXkBgAcBpgHAB0BTQAvAAwCmIAFAC0AXQANACwOmAXkBQAdAD8ADQA8C4wGmoAECeQGmYAEDeQEJBUADA6YB4wGAB0ALBKYBeQGmoAFAFwOmAXkBQBdAAwGmAYALBqYBeQHjAaYgAQF5AUAXwANAAUALgAEFeQHjAXkBQAcApmABAXkBgA/gAwHgAxMCeQGm4AABQAtAA8ABBHkB4wGmoAECeQGmIAEB4wGABwGmAUAHQAMBpgHgBRPAAYAbA6YBeQGAHwF5AYADgAFAE0ADAKbgAgEC4wGmYAFAy+AHA8ABAcIs4gNHB6YBpgF5AeMBgAPgAw9ACwUJBXkB4wGABwCmoAFAEwMJBaYBQAEBCQWACwTjAXkBpiABAwkFpgHgAQsAeeAACwSmAXkBpmAB4A0HgDNAG0ADQAEEeQHjAaYgAQF5AYADgAFAUwGmAUADgAEB4wFACwR5AQkFpiADAnkBpuAAAQR5AQkFpuAAA4ABBHkB4wGm4AQBAgkFeSADAaYBQAFAB0ADgAEBeQHgAysCCQV5IAMDpgHjAYAH4AMBQBfAAwGmAYAfQCcApuBKAeABV+ABX+ABE+ABAQLjAabgPAHA1+ABBwl5AaYBeQGmAaYB\"}",
"25": "{\"ir_code_to_send\": \"CBMNtQaHAQwFwCADA4cBwAHgAQNADwPuAYcBQBMCDAXAYAMBwAGACwPAAYcBQAMBDAWAA+ABCwDAYAsDwAGHAcALQEMDDAWHAUAT4CsDQD/gBzdAE+APU0AXQANAI8A34AMLQBvAF+ADB0AXQANAE0AHQANAC+AHA0AXQANAF8AHwF9ADwIMBcAgAwWHAcABhwHAB0AL4C8DwFvgLz/gOTcBwAFAx+AJAwHAAYABA4cBrSzCRwGHAUADQBPAA+ADD0ALQANAGwcMBcABwAGHAUADAQwFgAPgBwvAD0AHQANAJ0AH4EMDAwwFwAGAAQGHAeADAwEMBYADgBNAAcALgAdAH8AL4AMHQBdAA0ATQAdAA0ALAMBgAUAHgANAF0ADQA/AB0ALQANAD8ADwA9AB+AfA+J5MwGHAeALAwIMBcAgA0AHwAOADwfAAYcBwAGHAQ==\"}",
"26": "{\"ir_code_to_send\": \"BxMNyQaGAQsFQAMFuwG7AYYBwAOAD0ABQAtAAwO7AbsBQAcBhgFAB0ADAgsFuyADBYYBuwGGAUAHBwsFuwG7AYYBQANACwftAYYBuwGGAUALA7sBhgGAD0ABAYYB4AcDgBsBhgHgAwPgAxPAC8AHAwsFhgHgAyvAC0AXQAPAD0AHgA9AAcALAYYB4AcDAgsFu2ADAbsBQAuAA0AL4AcD4AMbQAvgAx8CCwW7IANABwGGAUCnQAcBuwHgHwNAAUArQAFAB0ADQAFAB+ADA0AB4AMP4AMLQAHAD0ABwAvgBwdAAeAHE+AfD0ABgCvA3wHCLOIXRwGGAUADQC9AA8ALALtgAQGGAUATBQsFuwG7AUAHQAMFuwG7AYYBQAMDCwWGAUAHQAPgAwtAD+ANA0AB4AcbwAGAF0GbwAvgCVNAAYAXBwsFuwG7AYYBgAMBuwHgAw8FCwWGAbsBgAPgB0/AG0AHQAOAJ0ABwAsEhgELBbsgAw6GAbsBhgELBbsBuwGGAbtgAQOGAQsF4AEDwA9AB+ANA0ABwBtAAcALQAdAAUAH4AsDwAHAG0ABQAtAAUAH4CMDQAFAL0AB4AMH4AcLQA/gAwNAAQmGAQsFhgG7AbsB\"}",
"27": "{\"ir_code_to_send\": \"BxwNuAbDAQgFgAMDwwGHAcADQBMDwwGHAUADAQgFQAMDwwHDAUAHBYcB8QGHAYALA8MBCAXgCQsDwwGHAUAX4AEnAYcBQBPAD0AL4CEDQAEBhwHgBzsHCAXDAcMBhwHgBwMBCAWAA+ALF0ATQB9AB+AHA0AXQANAF0AHQANAC+AHA0AXQANAF4AHQAEBhwFAA0APwAPAD0AH4FsD4Qcf4ENzQNPgC0/AFwHELEJHAYcBQA9AA+ADK+ADD0ALQANAH8AHwAvAD0AHQANAF0ADBwgFwwHDAYcBQAMDCAWHAUAH4EEDAcMB4A9TQBdAAwHDAeAFA8ATwAfgCx/AG0AHQAPgByNAD0AXQAPAC0AHgAMBwwFAF8ADA8MBhwFAC0AH4IkDQAHgIZfgD8cHCAWHAcMBhwE=\"}",
"28": "{\"ir_code_to_send\": \"BxwNuAbDAQgFgAMDwwGHAcADQBMDwwGHAUADAQgFQAMDwwHDAUAHBYcB8QGHAYALA8MBCAXgCQsDwwGHAUAX4AEnAYcBQBPAD0AL4CEDQAEBhwHgBzsHCAXDAcMBhwHgBwMBCAWAA+ALF0ATQB9AB+AHA0AXQANAF0AHQANAC+AHA0AXQANAF4AHQAEBhwFAA0APwAPAD0AH4FsD4Qcf4ENzQNPgC0/AFwHELEJHAYcBQA9AA+ADK+ADD0ALQANAH8AHwAvAD0AHQANAF0ADBwgFwwHDAYcBQAMDCAWHAUAH4EEDAcMB4A9TQBdAAwHDAeAFA8ATwAfgCx/AG0AHQAPgByNAD0AXQAPAC0AHgAMBwwFAF8ADA8MBhwFAC0AH4IkDQAHgIZfgD8cHCAWHAcMBhwE=\"}",
"29": "{\"ir_code_to_send\": \"ByUNtAa2AQcFQAMKgwG2AYMB6wGDAbYgAQcHBbYBtgGDAUAPQAsQBwWDAbYBgwEHBbYBtgGDAbYgAUALAwcFgwHgASMGtgG2AYMBtiAB4AELAYMBQAtAI0ADA7YBgwHAB0ALALZgAQGDAUATQANACwC2YAFAB4ADgBdAAQGDAcADQFMDtgGDAeAFAwG2AUAXAQcFQBdAAYAHQA9AAwO2AYMBwAdACwC2YAEBgwFAX0AXBQcFtgG2AUAHQAMFtgG2AYMBQANAHwC2YAEBgwFAF0ADQBMFBwWDAbYB4AEDQA+AAwO2AbYBgAtABwC2YAFAB8ADQAHAC+ADB0AB4AMPQAtAAeALB+ADE0ALwANAAeAHC0ABwBMBgwFAuwC24AABQAvAA0ABwAvgBQcDBwWDAeABNwKDAbYgAUATBbYBgwG+LEJHAYMBQA8HBwW2AbYBgwHAA+ADDwEHBYADALYgAUALAbYBgANAC0ADQA9AB0ADQAsAtiAB4AELAYMBgAtAAQKDAbZgAUAHQANAAQGDAYCfAYMBgANAAcALQAfAAcALQAcBgwGAUwGDAeABA0ABAYMBQBcIBwW2AbYBgwG2oAFAD0ADCLYBgwEHBYMBtuAAAUALQAMDtgEHBUADQAsEgwEHBbYgAwODAbYBwANAAUALAbYBQBdAAwC2IAGAB0ALgANADwIHBbYgAwWDAbYBgwHAB0AL4AUDQAHgDxNAAcAbQAFAC0ABQAdAA0AB4AMHQAvAA0ABwAvAB0ABwAvAB0ABwAvAB0ABwAvAB0ABQAsBtgHgAcvAAQmDAQcFgwG2AYMB\"}",
"30": "{\"ir_code_to_send\": \"A4cBxQHgDQMHDQWHAfcBhwHgBx9AFwcNBcUBxQGHAcADAw0FhwFAC0AHQANAC+AHA0AXQANAF0AHQANAC+AHA0AXQANAF8AHQAtAA0APwAPAD0AH4KMD4QtTwL9A28ALQAfADwi9LBgNtAaHAQ0hZ0ADQBvAA+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvgOwPgA1/gA09AF0AD4AcTQA9AF0ADQAvgBwNAF0ADQBdAB0ADQAvgBwNAF0ADQBfAB0ALQANAD8ADwA9AB+C/A0Db4APLBw0FhwHFAYcB\"}"
},
"low": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"BwYNpwafAQoFgANAAQLgAZ9gAUATQAFAD0ALQAPACwPgAWcBQANAE0ADQAFAB0ADwAHAC8AnAuABn2ABA+ABZwFAAwCfIAEC4AGfIAEGZwHgAWcBnyABQAcC4AGfIAFABwJnAZ/gBgHgAxNAXwLgAZ8gAQZnAeABZwGfIAFAB0AXQANAAQLgAZ8gAQVnAeABZwFAE8ADQA8C4AGfYAGABwFnAcAbQAHgAwvgAwFAK8AbwAsE4AFnAZ8gAQbgAZ8BCgVnIANABwOfAeABgAvAAQLgAZ9gAQTgAWcBnyABQAcC4AGf4AgB4B8TwAEE4AFnAZ8gAcAHQAHgAwvAAQLgAZ/gAAEB4AHAMwCf4AgB4AsT4APPwB8D4AFnAcAXA74sBg3iB0fAAUAjQAHAL0APwAsC4AGfYAFAE0ADQAFAB0ADQAFAH8ALQAFACwTgAWcBn6ABAuABn+AIAcATAeAB4AEnwAHgCxNAU+ADAQLgAZ9gAUAXQAPgBwFAE8ADQAEB4AHgBWcOCgXzAAoFnwGfAeABCgVnIAMBnwHAAQTgAWcBn6ABQBdAA0ABwAdAAQFgAoA/QBNAAwOfAWcBQAfgAztAAeAHD8ABAuABn+AIAeATEwTgAWcBn6ABAuABn+AIAcATAeAB4AEnwAHgDRMAn+AIAcATQMdAAcAHwAEHCgWfAeABZwE=\"}",
"17": "{\"ir_code_to_send\": \"BzUNsAatAQkFQAMEfwHkAa0gAQJ/Aa0gAQMJBa0BgAEBfwFAC0ADQAFABwPkAX8BQANAC0ADAa0B4AELQBcArSABwBcDrQF/AeADCwCt4AABQAsBfwGALwF/AYADgAHgAxPAC4AHAa0BwAcFCQV/Aa0BwANAAYALQBdAAwCtYAFAB0ADQAHgAQfAQwStAX8BrWABAX8BQDMFCQWtAa0BQAdAAwGtAUABgCsCfwGtYAFAB0ADBa0BCQV/AUAbAwkFrQGAAYALQA9AA4AbAH9gBwCtYAFAB4ADQBtAAwCtYAGAB+AHDwGtAYAXAa0BQAdAA0AB4AcHQAHgAxNACwF/AeADS+ABC8ABwBMBfwGAA8ABwA9AB0AB4AEHAgkFraADQAvAA4ATQAEBsCzCR4AbAa0BQAOAAUATAa0BQAMDrQEJBUAD4AELA60BfwFAn0ATQAPgBwtAHwgJBa0BrQF/Aa0gAQEJBYAH4A0B4BMbwAFAIwF/AUBnwAfgCVMBfwFAA0AXQANACwCt4AQB4AMPwAtAB0ADA60BCQVAA+AHC4AP4AEB4AEP4AEr4AUTAQkFQBsBrQFAAcAHBK0BfwGtYAFAB0ADwAEBfwGA08ABAX8BQAMC5AGtIAECfwGt4A4BAeQBQBtAA0ABQAdAA0AB4AMHQAvAA0ABwAsBfwGAP0AB4AELwBPABwOtAX8BgAMBrQFAx4ADAH8gB8ADCa0BCQV/Aa0BfwE=\"}",
"18": "{\"ir_code_to_send\": \"By4NsQaIAQsFQAMFxQHFAYgBwAPgAw8BCwVAAwPFAcUBQAcBiAFAB0ADQAtAA+AHC8APQAdAA8AjQAvgPwPgD1NAF0AD4ANn4AcP4AMbwAtAI0ADQA9AB0ADQAvgDwNAH0AD4AMfQA/AA0AXQAtAB+DPA8DfAcAs4gNHAYgB4APv4AMPQAtAA0AfwAfAC8APQAdAA0AXQAPgDwtAG+A7A+ADX+ADT0AXQAPgBxPgAw/gCwtAM0ADQBtAB0ADQAvgDwNAH0AD4AMfQA/AA0AXQAtAB+DPAwcLBYgBxQGIAQ==\"}",
"19": "{\"ir_code_to_send\": \"CCgNtAaEAQAFw2ADA8MBhAFAAwPwAYQBQBMDwwGEAUADQAtAAwHDAUALAYQBQAdAAwIABcNgAwHDAUALQAMFwwHDAYQBQAPgCwtAV0Ab4AMD4AsT4AMf4A8L4ANf4AMjQBcFAAWEAcMB4AUDBwAFwwHDAYQB4AsDQIMBAAVAAwHDAeADCwPDAYQB4A8DQCsFAAWEAcMB4AEDAgAFw6ADBYQBwwGEAcAHQFNAD+ABA0AB4AMP4AkL4AUzQAEBhAHgYwPgA3/Ax+AHf8AXAbYswkcJhAEABcMBwwGEAcADAwAFhAHgAwvAD8AHQBtAC0ADAMMgAUAHQAMBwwGAA+APC8AfwAfgA68Aw2ABQAfgEQPAL+ADX+ADL0AXQAMAw2ABQAdAAwHDAYATQAvgDQNAH0ADQB9AB0ADQAvgDwNAH0AD4AMfQA/AA0AXQAtAB+BNA0AB4CNbQAHgIy/gASvgD8cHAAWEAcMBhAE=\"}",
"20": "{\"ir_code_to_send\": \"ByENsQaIAQgFgAMBwQHgAQNAE8APAggFwWADAcEBgAsDwQGIAUADAQgFgAOACwHBAUADAcEBwA+ABwPzAYgBwAvAG+A7BwcIBcEBwQGIAeAHAwEIBYAD4AMXgBMFwQHBAYgB4A8DQB9AAwHBAeAFC0APQMNAB+ADAwEIBYAD4AsTQBtAFwcIBcEBwQGIAeA5A0AB4DFH4Au/4CdPAwgFiAHgBzPAEwGvLOIfRwGIAUADQEfAB8ALwA9AB0ADQBdAA+APC0Ab4AsD4Cfr4ANf4ANPQBdAA+AXE+ADH0ALQDNAA+AHC0AP4AsDQCtAA+ADG0APwANAF0ALQAfgMQNAAeAnP0AB4Ccz4Bkv4APLwasHCAWIAcEBiAE=\"}",
"21": "{\"ir_code_to_send\": \"BzINowayAQsFgAMDsgGCAcADQBMHsgGCAeQBggFAC0ADgAsCggGyYAEEggELBbIgAwGCAcAXCAsFsgGyAYIBsiAB4AELBYIBCwWCAUAjQAuAA0ABwAsBggGAG0ABAYIB4A0DQAEBggHgAyfgA1NAF0ADQCNAFwgLBbIBsgGCAbJgAUAHAYIBQB/gARcBggFAD+ADB0AbQANAAUAHQAMDsgGCAcAnALJgAUAHAYIBQBMBCwWAA0ALQBNAAwILBbIgA4AHQBdAC0AHALJgAcAHQAFAC8ADQAHgBwtAAcATwAdAAcALwAdAAUALQAFABwGCAYBvAoIBsmABAYIB4AEPAoIBsmABAYIBQBNAA0ALALJgAQGCAeABDwKCAbJgAUAHAYIBQBcCCwWyYAMDsgGCAYADQAEBggFAFwWyAYIBqiziA0cBggFAM0AXQAdADwCyYAEBggFACwULBbIBsgFABwGCAUAHALIgAQELBUADwAsAgiAPAoIBsmABAYIBgAsBggFAAwcLBbIBsgGCAYADQAFAC0ABAYIBQGtAB4ADQAHAC0AHwAEBggHgBycFCwWCAbIBwANAAUALAbIBQBcDCwWyAYABAYIB4AMDAwsFggHgB0cBsgGAEwILBbIgAwWCAbIBggFABwMLBbIBgAEBggGAA+ADAQGCAUAfQAMDsgGCAcADQA8BCwVABwKCAbIgAcAHAbIBgA8BsgFAB0ADQAHAB8AB4AMP4AMLwAHAE8AHQAHAC0AHQANAAeADB0ALwAPgDwFAH0ABwAdAAcALQAcBggFAx0ADALJgAUAHQAMJsgELBYIBsgGCAQ==\"}",
"22": "{\"ir_code_to_send\": \"ByINmwafAQUFgAMC3QGfYAEF3QFrAQUFQAcAn2ABAQUFgAMBnwGAF0ABQBsBBQWAA0ABAQUFgAME3QFrAZ8gAQMFBZ8BQAtAAwcFBZ8BnwFrAUALAJ8gAUAHAt0Bn2ABBN0BawGfoAEC3QGfYAED3QFrAeABAwCfYAHAB8ABBQUFnwGfAYAnAJ8gAQndAWsB3QGfAQUFgANACwSfAWsBnyABAwUFnwFADwgFBWsB3QFrAZ8gAQLdAZ9gAcAHAQUFgAMGnwFrAQUFn2AD4AcBgCsCawGfIAEBBQWAAwPdAWsBQAMAnyABAQUF4AEDB58BawEFBZ8B4AMBwCfAB0ABAt0Bn2ABA90BawFAAwCfIAEC3QGf4AgB4AMTAd0B4AUnwA9AAQLdAZ9gAQHdAYAjQAHAC8AH4AMBAt0Bn2ABAd0B4AMvAJ9gAQHdAeAFEwEFBeANDwHFLOIFR0ABwDsDBQWfAUABBd0BnwEFBYADwAvAAQEFBYADQAEBBQWAA0ABgCfgAXMIBQVrAd0BawGf4AYBAt0Bn+AIAcATBt0BawHdAZ9gAcAH4AMBAwUFnwHgAwHAIwEFBYADQAHgAxNAAQMFBZ8B4AMBwB8G3QFrAQUFn2ADQAEBBQWAA+ADAQLdAZ9gAQTdAWsBnyABAQUFQAOAC8ABAQUF4AEDB90BnwEFBZ8BwAFAD+AHAeATEwHdAeAFW0ABAt0Bn+AIAeABEwFrAcALwAfgAwGAE0AjAmsBn6ABAt0Bn2ABAd0B4BUTwAEIBQWfAZ8BawHdIAELawHdAQUFnwGfAZ8B\"}",
"23": "{\"ir_code_to_send\": \"BwsNqAa2AQoFgAME6gGDAbZgAQWDAQoFgwHAD0ALAwoFtgFAAQUKBYMBtgGAAwIKBbYgAwGDAUAnQAdAA0ALC7YBgwEKBbYBtgGDAUAPwAvAD0AHgANAAcALwAdAAcALAYMBQD9AB+AHAwQKBYMBtmABQAfgAQNAF0ADgDdAAYALQBNAA0AP4AEDQAEBgwFAK0AbQAMAtiABQAdAAwG2AYADQB/ACwC2YAEEgwEKBbZgAwO2AYMBwAOAE0AHAYMBQBPAB4A/QAEBgwHgDQNAAeAHG0ABgBOAPwKDAbZgAQGDAeABDwGDAUAD4AcPALZgAUAH4AMDQAHgAw9AC0ABAYMBwD/AB0ATALZgAUAHAYMBgMcBtgGABwKDAbZgAQGDAcAPAbksQkcEgwEKBbZgAwO2AYMBwANAEwO2AYMBQFsBCgWAA8ALALZgAQSDAQoFtiADBYMBtgGDAUAHAwoFtgHAAYALAYMBQAMDCgWDAUAH4AEDQAEBgwFAT0AHgANAAQSDAeoBtiABAYMBgANAAUALQAEFgwHqAYMBwAfgAVNAAQKDAbZgAQGDAUAXBwoFtgG2AYMB4AMDQBMECgWDAbbgAAHAC0AHAYMBQBtAA4ALA7YBCgWACwG2AcADQAHACwSDAQoFtiADA4MBtgFAA4ABQA/AAwC2IAFACwC2YAHgAwdAC8ADQAHAC8AHQAHAC8AHQAEBgwHA/0AL4A0DQAFAG0ABwAdAAcALQAfgKQOAx8AHwAEJgwEKBbYBtgG2AQ==\"}",
"24": "{\"ir_code_to_send\": \"CCgNrQaGAQkFv2ADA78BhgHAAwMJBYYB4AMLBQkFvwG/AUAHBYYB7gGGAYALA78BCQXACwCGIAsFvwG/AYYBQAPgBQsBhgFAE+AFA0AB4AcT4CEP4AdT4AuTwE8CCQW/oAMDhgG/AeANA0AbQANAR0AHQAPAK0ATwAvAB0AfQAPAD0AHQA/AA8APAL9gAUAH4EcDQAHgKVMEfwIKAb/gCgHAFQKGAb8gAUAF4AMDAb8B4AHXQAGAG0ATQAsBwCzCRwGGAUADQBPAA+ADD0ALQANAG8AHwAsFCQW/Ab8BQAeAA0ALQANAD0AHQAPgAwtAD+AxA0ABgD9AU+ER3wW/Ab8BhgHAAwEJBeABA8AT4AcHwCNAF+ADC0AP4AsD4AsjwBNAB0AzwAdAC4ADQAHAC0AHQAFAB+ALA0AB4AMXQAHgAw/gAwtAAeADD+ANC4EvQAEBhgHgDQNAAeANG0DLQAPgAx8HCQWGAe4BhgE=\"}",
"25": "{\"ir_code_to_send\": \"BxkNpwbBAQgFQAMDhgHBAeABA0APA+8BhgFAEwIIBcFgAwHBAYALA8EBhgFAGwEIBYADQA/gAwvAD0AHQAMHCAXBAcEBhgHgAwNAP+ADD+AnCwMIBYYB4AczQFNAF0ADQAvgBx9AD0AbQAdAA8AjQAcCCAXBIAMFhgHBAYYBQAdAA0AL4AcDQCtAE0AfBwgFwQHBAYYBwAMBCAVAAwDBYAcHwQGGAQgFhgFAB+BvA8Cr4Bd/4BcnQMcCCAXBIAMDhgHBAeABA8APAbosQkcBhgFAD0ADwE9AB0APwDNAC0ADQA/AB8ALwA9AB0ADQBdAA+APC0Ab4DsD4ANf4ANPQBdAA+ADE+ADC+ABG0ABAYYBwANAF0ADQA9AB0ADQAvgDwNAH0AD4AMfQA/AA0AXQAsAwWAB4AMHQAvgBwNAAeAHE+AXD0AB4AsjQAHgCxfgMRNAx8AD4ANHBwgFhgHBAYYB\"}",
"26": "{\"ir_code_to_send\": \"ByoNsgaqAQkFgAMHqgF8AeIBfAFAB0ATgAGAC8APgAcBfAFAJ0ALQAPgAwsEqgF8AaogAQMJBXwBQBdAAwMJBaoBgAEBfAGAA0ABQAtAAUAHAXwBQCfgAwdACwCqIAGAF0ABAXwBgAsBfAFAA0BT4AEPwAFAF0ADAaoB4AEBwA8CfAGqIAFAG8A3wAcFqgF8AQkFQAMBqgFAE0AHQANACwGqAcADQAEBfAHAE0AfQAMDqgF8AYATAaoBQA8CCQV8YAMB4gGACwCqYAHgAQcD4gF8AYAPQAdAAQF8AeAPE+AFF+AHD+ADAcAbAaoBgDNAAQJ8AaogAYAPgAsDqgF8AeABDwF8AcAD4AUTQAFAEwCqIAEBfAGAA0ABAXwBQBMDCQWqAYABAXwBQAsF4gF8Abgs4gdHQAEBfAFAA0AjwAFAC0ADAaoBwBcBfAFAPwEJBUADAaoBQAFAB0ADgAFAFwJ8AaqgAQcJBaoBqgF8AUAzAKrgBAHgBw/AAUAXwANAAQR8AeIBqqABQAsBfAGAU0ABAnwBqmABgAdAF0ADwAGAK0AbQAMFqgEJBaoB4AMBQB8AqiABQBcBCQXgAwsBqgGAAYAT4AEBgA8CCQV8YAMAquAAAQR8AQkFqqADAnwBqiABAwkFqgHgAwEC4gGq4AgBgBOAL+AbAQHiAcArwAcBqgHgARPgAQEC4gGqIAHgASPgAQHgCxPgAQEB4gHgDx8BfAFAG+AD0wcJBaoBqgGqAQ==\"}",
"27": "{\"ir_code_to_send\": \"By8NrQa0AQgFgANAAQfnAX8BtAF/AUATBLQBfwG0IAFAC0ADQAHABwO0AX8BQAtAAwG0AeAFC0BDAwgFfwFAF0ADCAgFtAG0AX8BtGABQAfgEQNAOwC04AABQAtAA8ABwAsFfwEIBX8BQAfAA4A3BH8BCAW0IAMFfwG0AX8BgBNAAQF/AUATQA8HCAW0AbQBfwFAA0APALRgAQF/AUAXQANAEwEIBUADBrQBtAF/AbRgAQF/AUAXQAeAAwG0AUAfQAMBtAHAEwN/AQgF4AEDgA8AtCAHQAGADwC0IAGAR0ABAX8BgAsBfwGAA0ABAX8B4AsT4AUXQAGAE+ABB0ABAX8B4A07QAHAG0ABAn8BtGABAX8B4AEvwAHgAxMCfwG0YAEFfwEIBX8BQAcAtCABwAtAO8ALAY4swkcBfwFAAwC0YAFABwF/AeADDwIIBbRgAwG0AUALAX8BQAcAtCABAQgFQANACwR/AQgFtCADAX8BQF8AtCABQAsAtGABCX8BCAW0AbQBfwHgBQNAAUATQAFAB4ADwD8DtAF/AUADgA8CfwG0YAEBfwHAD8BTwA8AtKABQBcBCAXAD0AHgAMFCAW0AbQBQAcBfwFABwC0YAHgAQcCCAW0YANAAQEIBYAPA7QBfwHgDwOAIwJ/AbRgAYAHQA8BCAWABwe0AX8BCAV/AeABnwJ/AbRgAUAH4AMDQAEBfwHgCyfgARNAAQF/AYADQAEBfwGAG0ABAn8BtGABwAdAAcALQAfgAwPAAUATQAHAB0ABQAvAA0ABQAtAAQp/AQgFtAG0AX8BtCABAQgFgAcLtAF/AQgFtAG0AX8B\"}",
"28": "{\"ir_code_to_send\": \"ByUNuAaAAQoFgAMAr2ABCYAB5QGAAQoFrwGAAUALQAMDrwGvAYAHQB8DrwGAAUATQANAAUAHQANAAUAfQAtABwOvAYABQAsDrwGAAcAPQAsAr2ABAYAB4AsTQBdAA0AbQANAC8ADwA/gBVNAAQGAAUADAQoFgAPAJ0AH4AMTQAtAJ0AXAK9gAUAHBIABCgWvYAMBrwFAC0ADAa8BQCNAAwGvAUADQAEBgAHADwEKBYAD4AETAa8BwBNABwCvIAEDCgWvAeAFAQSAAeUBryABQAcCgAGv4AABQAsBgAHgARPACwKAAa/gAAFAC0ADwAFAC0ADQAFABwGAAeABP0ABAYABgANAAUALgAGAI0APQANAAQGAAeABE8ABwBNAAQKAAa8gAYDLAYABwAdAMwQKBYABryABAb0s4gNHBa8BrwGAAUAfAK8gAYAPgAECCgWAYAMAryABQAsAr2ABAYABQAsFCgWvAa8BQAdAAwavAa8BgAGvIAHgAQsFgAEKBYABgFcBgAHgAwPgCxMAr2ABAYABgBtAAQKAAa9gAQGAAeADE+ADU+AHFwgKBa8BrwGAAa9gAQGAAUAPQAMBrwGACwOvAYAB4AUDAa8BQB9AAwOvAYABQAcECgWAAa/gBAFAD+ABA0AfQAOAE0ABAYABQA8CCgWvYAMBrwGAC+ABAQGAAYADQAFAC8ABwAvAB0ABwAvAB+ALAeADG8AL4AMHwAvAAUAPQAPgBwFAE8ADgAGBT0ATwAEBgAFA1wGvAUAHAoABr2ABCYABCgWvAa8BrwE=\"}",
"29": "{\"ir_code_to_send\": \"Bx0NrwZ/AQYFQAMFrgHkAX8BQAMDrgF/AeADD0ALQANAG0AHA64BfwHAC0AP4AcLA64BfwFAFwOuAX8BgBuAB8APQAdAA0AbQAcArmABAX8BQA9AA0ALAK5gAUAH4AkDQCPgD1NAF0ADgDdAAUALQAEEfwEGBa5gA4ABAn8BrmABAX8BgE8DrgEGBeADCwGuAYABgBPgAQdAAQF/AUAfQAMErgF/Aa5gAQF/AUAPgAMCfwGuIAEHBgWuAa4BfwFAX0AHgANAAQF/AcATgAfAAcAPAn8BruAEAUAPQANAAeADB+ADC8ABgBPgAVcBfwHgAQvAAQF/AeAFA0ABBH8B5AGuIAEBfwGAA0ABBX8B5AF/AUDHBAYFfwGuIAHAB0ABQAtAHwG5LEJHgA8ABqAnBK4BfwGuIAHAD0AnQAsFBgWuAa4BQAcBfwFAEwCuIAEBBgVAA+AHC0APBX8BBgWuAYABwAsCfwGu4AABQAvAA0ABAX8BwFPgAQFAEwCuIAEBfwGAA0ABwAsBfwGAXwJ/Aa7gBgECBgV/YAMAruAEAUAPAX8BwBsE5AF/Aa5gAcAHAa4BgBsHrgGuAX8BBgVAAwWuAa4BfwGAKwF/AYADQAFACwGuAUAfBgYFfwHkAa7gAAFADwEGBUAHAa4BQAEJBgV/AeQBfwGuAcADQAHAC0AHwAFAC8ADgAGAN0AB4AUX4AkBQB9AAUAHwAPgAwHgCROAW+ADFwF/AeABE8ABAn8BrqABAQYFgAMHrgF/AQYFfwFABwuuAa4BBgWuAa4BrgE=\"}",
"30": "{\"ir_code_to_send\": \"ByENpwbAAQkFQAMDhwHAAeABA+ADD0ALBQkFwAHAAeABB8ALAQkFwAsAh+AACw/AAYcBCQXAAcABhwHxAYcBwAtAD+AZA0AB4Bkn4A9TAQkFQAMBwAFAdwHAAYADwA8BCQWAA8AX4AMHAgkFwCADBYcBwAGHAUAHQANAC+APA0AfQAPgAx9AD8ADQBdAC+ADh0AT4CkDQAHgKzfgSTNAz0ADwFvACwG9LEJHAYcBQA9AA8AfQAfgAw9AC0AD4BcXwCPgCydAE4ADQAHAC+AbB0AB4AcnAcAB4ANrAcAB4AEDQBdAA+AHE0APQBdAA0AL4AcDQBdAA0AXQAdAA0AL4A8DQB9AA+ADH0APwANAF0ALQAcAwGABQAfgCwNAAeADF0AB4AMP4AMLQAHAD0ABwAvgCwdAAeALF0ATwAFAC+AhAwIJBcAgAwOHAcABgAMHCQWHAcABhwE=\"}"
},
"bottom": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"BxQNmgbBAQgFgAMDwQGGAcADQBMH7QGGAcEBhgFAC0ADAcEBQAsBhgFAB0ADAggFwSADCIYBwQGGAQgFwWADA8EBhgFAAwMIBYYB4AM/AcEB4AEPQAvgGQNAAeARJ0Bf4AsfAggFwSADA4YBwQHgBQMCCAXBIANABwOGAcEB4AkDAggFwWADAcEBQAuAA8C/QBPAA8ATAggFwWADA8EBhgHAAwEIBeABA0ATQA9AB0ADwDdAC8AD4AsTwBvgCwfgAy/gAwvgCyvgKRNAAQGGAeALV8DHQAdAA0AnQAPACwG9LMJHAYYBQANAGwDBYAEBhgHgAQ+AC8APwAfgCxfgBxtAI0AD4AMXQA/gIwPgC9dAP+ABU0ABAYYBwANAF0ADwA/AB0ATwAPAE0AHwF/gAxvgAQtAAQGGAeALA8AjwD9AI8ATQAfAD0AH4HMD4AOf4C+H4APPwAsLwQGGAQgFhgHBAcEB\"}",
"17": "{\"ir_code_to_send\": \"CAkNqAa4AQsFgyADBrgBuAGDAbhgAQGDAUAPBOwBgwG4IAFAC0ADQAEBCwVAEwGDAUAbQAtAA0APQAdAA0ALALggAQULBbgBuAFACwGDAYALQAEBgwHgBQNAAeAnE0ABAYMB4ANTQItAA4AXBYMBCwW4AYAPQAEBgwGAC8AHQAEBgwHgBQMEuAELBYNgA0ArwAsBuAHAA0ABAYMBwBsAuCABQCMAuCABBwsFuAG4AYMBwBtADwcLBYMBuAGDAcAHQAtAHwC4YAFAB+ADA0AB4AEPgCcBgwGAA0ABwAvAB0ABwAvAB0ABwAvAB0ABwAvAB0ABwAvAB0ABQAtAAQGDAUB/QANAC8ADQMfAA8ATALhgAQGDAUAXAbssQkcBgwFACwcLBbgBuAGDAcAD4AMPAQsFgANAG0ALALhgAQSDAQsFuCADBYMBuAGDAUAHQANACwC4IAHgAQsBgwHgAwtADwC4YAFAB+ADA0AB4AMP4AMLQAHgAw8BgwGAU0ABAYMB4AMDQBcHCwW4AbgBgwHgBQNAAeAHE+ABDwELBYADALggAYALAbgBgAFAE4ADQV8DCwWDAUAPBQsFuAG4AeABB4ALAYMBgAMDuAG4AYALQAcAuGAB4AMH4AMLQAFAD0ADQAHgAwdAC8ADQAHAC8AHQAHAC+ATB0ABQB9AAUAHgANAz8ALgAdAAUALQAFABwGDAUAjAQsF4AEDALjgAAEJgwG4AYMBCwW4AQ==\"}",
"18": "{\"ir_code_to_send\": \"CCANpgbEAQoFhiADBcQBxAGGAcADwA8D8QGGAUALDwoFhgHEAYYBCgXEAcQBhgFAAwEKBYADgCMBhgFAA0AXQAMHCgXEAcQBhgFAAwMKBYYBQAdAA0ArQAfgHwPgDy/gD1NAF0AD4ANf4AcP4AtTQCNAA0A3QAdAA0AL4AcDwBdAB0AD4AMfQA/AAwDEIAEFCgXEAcQBQAvgbQPgC+fgN4sDCgWGAcBDQAtAYwGoLEJHAYYBQA9AA8AfQAfgAw9AC0AD4BcXwCPgCydAE+BDA+ADa+ADV0AXQAPgBxPgAw/gCwtAM0ADQBtAB0ADQAvgBwPAF0AHQAPgAx9AD8ADQBdAC0AH4EsDQb/gS1eAU0AB4AsLAYYB4APTBwoFhgHEAYYB\"}",
"19": "{\"ir_code_to_send\": \"BxENrQa/AQgFgAMHvwGFAewBhQFAB0ATA78BhQFAAwEIBYADQBtACwC/YAEBhQFAC0AD4AELAL9gCwO/AYUB4A8LQBvAA0BPwAvgBwfgCRtAAQKFAb9gAQWFAQgFhQFAB+AHA0AXBwgFvwG/AYUBwENAB8ATQBeAA0ABAYUBQBtAB0AfCggFhQG/AYUBCAW/IAMDhQG/AeAJAwMIBb8BQAEBCAVACwOFAb8B4AEDQA/AA0AXQAtAB+A5A0ABwEcBvwHAswG/AeArA0AB4B83QAEBhQFAx8BzQAtAE0ADwAsBwCxCRwGFAUAPQANAG4ADAb8B4AMPQAtAAwO/AYUBwAfAC8APQAcDCAW/AeAPb8AXwAcBvwHgBwNAAeAHE+ARDwMIBYUB4AsfQBdAA+ABG0ABCYUBCAW/Ab8BhQHgDwMBCAWAA0Af4AML4AevQBuAIwO/AQgFgAsBvwGAA0APwANAE0ALAL9gAUAH4BMDQAHgAx9AAeADD+AXC0ABQCNAAUAH4AMDwAHgAxPgJQuAxwGFAUAD4AgLAgG/AQ==\"}",
"20": "{\"ir_code_to_send\": \"ByANpQbBAQkFQAMDhwHBAeABA+ADDwIJBcFgAwHBAYALB8EBhwHxAYcBgBcBhwGACwGHAUADQAtAH0ALQAdADwcJBcEBwQGHAUADQA9AB+AJA0AB4AsX4AkTQEMDCQWHAcAbQA/AC0AXBwkFwQHBAYcBwAMBCQWAA8AP4AsH4AMj4AML4AcrQBtAb0AHQANAC8AjQA/AA0ATQAtAB+ANA0AB4A8b4BEXwG/AB+ATK+AjG+ART0ABAYcBwMvAB+ADEwG7LEJHAYcBQBtAA0AbwAPgAw9AC0ADQBvAB8ALwA9AB0ADQBdAA+APC0Ab4CsD4Afn4ANf4ANPQBdAA+ANE0AB4AUbwA9AM0ADQA9AB0ADQAvgBwOAFwHBAUAHQAMBwQHgAQNAD8ADQBdAC0AH4D8D4QcD4D9X4BtHwMvABwvBAYcBCQWHAcEBhwE=\"}",
"21": "{\"ir_code_to_send\": \"CCQNrAbEAQkFh2ADAcQB4AEDCwkFxAHEAYcB9AGHAUALAwkFhwHACwPEAYcBQAMCCQXEIAMIhwHEAYcBCQXEYAMDxAGHAUADAwkFhwFAB0AD4AMLQA/gOwMHCQXEAcQBhwHgBwMBCQWAA+AHF0APQBtAB4ADQAEBhwFA00AHQBtAA4ALAcQBQAMBxAGAD+ADBwMJBYcBQA9AB0ADQAvAA0APwANAE0ALQAfgRQNAsQOHAcQBgANADcAL4E8HQMdAA0BfwAfgAwsBvixCRwGHAUAbQANAG8AD4AMPQAtAA0AbwAfAC8APQAdAA0AXQAPgDwtAG+A7A+ADX+ADT0AXQAPgAxPAC+APF0AfQBtAA+AHC0AP4AMD4BMjQBvAA0AzQAtAB+C3A0DHQANAx8AHC8QBhwEJBYcBxAGHAQ==\"}",
"22": "{\"ir_code_to_send\": \"CCQNrAbEAQkFh2ADAcQB4AEDCwkFxAHEAYcB9AGHAUALAwkFhwHACwPEAYcBQAMCCQXEIAMIhwHEAYcBCQXEYAMDxAGHAUADAwkFhwFAB0AD4AMLQA/gOwMHCQXEAcQBhwHgBwMBCQWAA+AHF0APQBtAB4ADQAEBhwFA00AHQBtAA4ALAcQBQAMBxAGAD+ADBwMJBYcBQA9AB0ADQAvAA0APwANAE0ALQAfgRQNAsQOHAcQBgANADcAL4E8HQMdAA0BfwAfgAwsBvixCRwGHAUAbQANAG8AD4AMPQAtAA0AbwAfAC8APQAdAA0AXQAPgDwtAG+A7A+ADX+ADT0AXQAPgAxPAC+APF0AfQBtAA+AHC0AP4AMD4BMjQBvAA0AzQAtAB+C3A0DHQANAx8AHC8QBhwEJBYcBxAGHAQ==\"}",
"23": "{\"ir_code_to_send\": \"CCwNlwaqAQoFfyADCaoB4AF/AaoBfwFAB+ABDwOqAQoF4AEPAwoFqgFAHwOqAX8BQAtAA0ABQAcFCgV/AaoBgAMDCgWqAeADJwSqAX8BqmABwAdAAcALAX8BwCsAquAAAQF/AYAT4AMBQBMAqiABAX8BQF8HqgF/AeABfwFAB4ADAaoBQBcDCgV/AeABFwGqAUAPAKogAQUKBaoBqgFACwF/AeADH0ABAgoFfyADA6oBqgFAB4ADQAvgAScCfwGqIAEJCgWqAaoBfwEKBUADBaoBqgF/AYAjAaoBQA/AA0ATBAoFfwGqYAHgAQdAF0ADQBPgAQcAqiABgA8D4AF/AUALAKpgAUAHQANAAeADBwF/AeANJ8AXQAHACwJ/AargAAEEfwHgAaqgAUALAX8BgAcAqqABQA9AAeADB8ALAaoBQM8ICgWqAaoBfwGqIAEBCgVABwV/AcIsLA3iA0cEqgF/AapgAQp/AQoFqgGqAX8BqiABQAsHCgV/AeABfwHABwCqIAFACwUKBaoBqgGAB4ALgAHgAQuAG+ABAQJ/AapgAQF/AUBPgAcAqiABgAsAquAAAUALQANAAYAHA+ABfwFAAwCqIAFAXwLgAargBgEBfwFAF0ADgAEBfwFAA4APgAcE4AF/AapgAcAHAaoBQBMBCgVAA8ALAKpgDwCqYAHAB0ABAX8BQBtAAUAHQAPgAQGAG0ATQANAAQQKBX8BquAIAeAfE0AB4AcrAX8BQKsAqmABwAcBqgHgARPAAQR/AeABquAOAQJ/AargKAGAMwEKBYADwAEHCgWqAaoBqgE=\"}",
"24": "{\"ir_code_to_send\": \"BxoNtAamAQsFgAMEpgF6AaagAUATAaYBQA8BegFAC0ADAeEBgAuAAUALQAMDpgGmAYAHwAsB4QGACwfhAXoBpgF6AUAXgAtAAQJ6AabgAgFAF8ADA6YBegFACwCmIAHABwOmAXoBgAsBegGAA0ABBnoBCwV6AaZgAYAHAuEBpmABAQsFgAOAAYAbgBMAeiAHAnoBpqABAeEBwAuAB0AbAwsFpgFAAQELBeABCwamAXoB4QGmIAEBegFAAwMLBaYBQA9AB0ADB+EBegGmAXoBQAdADwELBYAHAaYBgAdAFwGmAcADAaYBQA9AAwCmYAHgAQcC4QGmIAEBegGAA0ABAXoB4AETwAECegGmYAEGegHhAXoBpiABwAcDpgF6AeABC8AB4BMTAXoBgAOAAQLhAaagAUAXQAHgBQfA1wULBaYBpgGAG8ALAb4s4gdHBqYB4QF6AaYgAYAjgAFACwELBcAXgAdAAQELBYADBaYBegELBUADAaYBwAGACwF6AUADQAvAVwSmAXoBpqABgBPgAQ9AAQLhAaZgAQPhAXoBQAMApuACAeADD+ABU+AFI0AXQANAAQLhAaZgAUAPgAPAKwF6AYAbAnoBpqABAQsFgAMDpgF6AYALBnoB4QF6AabgAgEH4QGmAQsFpgFAAUAHQAPgAwECCwV6IANABwGmAUABwAdAAQThAXoBpiABQAdAAwCmIAHABwGmAYAPQAEC4QGmoAHgCxPgMQEB4QHgAU/AAQLhAaYgAeAFF4AT4AkBAgsFeiADQAcRpgGmAXoBpgGmAQsFpgGmAaYB\"}",
"25": "{\"ir_code_to_send\": \"CCgNsgaMAQYFySADA4wByQFAAwdRAckBjAEGBUAFAYwBQAUBBgWAA8ALQAdAAYAXA8kByQHACwGMAUALQAPgDwtAG0ADQAEByQGAa8AHQAEByQHAA8AbwA/gBQfgA1/gAxtAF0AD4AMTwAtAAYAbgFtAAQHJAYADQBcFBgXJAckBQAeAA0AL4AcDQBtAE0AHQANAC8ADQA/AA0ATQAtAB0ABQAeAA4B7AckBgANAAQHJAeAFEwHJAeAxA0AB4DM/4As7QMfgAwPAI0ATQAsBtCzCRwGMAUADQBPAA+ADD0ALQAMDGAJRAUAH4AMjwA9AB0AD4AMb4AsLQAEFyQFRAckBQAeAA0ABwAvAB0ABwAvgCwfgA2tAAcAjQBdAA8APQAdAAUAHQANAG0ABQAvgAwNAF0ADQBNAB0ADQAvgBwPAF0AHQANAH0ABQAcCBgXJIANABwWMAckBjAHAB0ALwANAAcALwAdAAcAL4AcHQAHgHxNBn+ADK0AB4AMPQAtAAUAH4AMDQAFAD0ABQAfgAQOAT0DH4AMDAskBjGABBwYFjAHJAYwB\"}",
"26": "{\"ir_code_to_send\": \"CCkNxQZ+AQoFqmADBeEBfgGqAUADAaoBQBMC4QGqIAEBfgFAC0ADAaoBgAsEqgF+AaogAUATAQoF4AULEOEBfgGqAX4BCgWqAaoBfgGqIAHgAQuADwOqAX4BwCdAB0AD4AMTQAsAqmAB4AEHgCNAAQJ+AaogAQEKBYAHAaoB4AEHQCNAFwMKBaoBQAsBqgFAAwiqAQoFfgHhAapgAQgKBaoBqgF+AaqgAQHhAYALQBcDCgV+AUAPAQoFgAsBqgHAA0ABAX4BgBvgAQdACwCqYAGAB0APAQoFgAcDqgF+AUALgAEBfgFAOwCqYAEBfgGAC+ABBwCqYAGAB8AbAaoBQANAAQF+AeATE4Ab4AMBgBPgBRfADwF+AYADQAEBfgGAIwF+AYADQAEBfgHgGxOA1wF+AcAHAccsQkcBqgFAD0AD4AMBBAoFfgGqYAEEfgEKBapgA0ABBQoFfgGqAUADAaoBQAsDCgWqAUABQAdAA4ABQBcBfgFABwCqIAEDCgWqAUABgKPgAwGAH4ABwAvAB0AB4AEL4Ac7gFNAH0AD4AEBAgoFfiADAaoBgAEBfgFANwQKBX4BqqAB4AMLBqoBfgHhAaogAQR+AQoFqiADAn4BqiABAQoFgAMBqgGADwHhAYAHQAEBCgWACwEKBYAD4AMBAgoFfuAAA0AzAwoFqgHAAQLhAaogAQJ+AargEAHgExvAAeAbI0ABwCfABwGqAeAZf0AB4AEv4BMBgNcJfgEKBaoBqgGqAQ==\"}",
"27": "{\"ir_code_to_send\": \"ByMNmwbBAQcFQAMDhgHBAeABAwcHBcEBwQGGAUADAQcFgAPAC0AHAMEgAQEHBUADQAsEhgEHBcFgAwPBAYYBQANADwTBAYYBwSAB4AELQA8FhgHzAYYBQAfgAwPgCxPgAx/gBwsDBwWGAeAHE0APAgcFwWADA8EBhgHgAwNAFwHBAUAHAYYBQAfgBwNAF0ADQBdAB0ADQAvgB5fAF0AHQANAI8ADQA/AA0ATQAtAB+AfA+ADa+ADC8A/4AsTwBvgHwfgE0PgDxvgB8fAD8AHAcAsQkcBhgFAD0AD4AOL4AMPQAtAA0AfwAfAC8APQAdAA0AXQAPgDwtAGwDBYAFAB+APAwLBAYYgAQDB4AwBBf0AwQHBAeADXwHBAeABAwIHBfMgAwGGAeADE0ALwBPAB0AT4AMDQBdAAwPzAYYBQAdAA4AfQBEDhgHBAYADwBdAB0ADwBdAB0APwAPAD0AH4DEDwAHAQ0ABwAvgJwdAAeAjM0ABQC8BwQFA0wHBAeABA8APBwcFhgHBAcEB\"}",
"28": "{\"ir_code_to_send\": \"BzMNrgaGAQkFgAMBvAHgAQMHCQW8AbwBhgFAA0ALQAMBvAGACwO8AYYBQANAEwoJBYYBvAGGAQkFvGADA7wBhgFAAwcJBYYB7QGGAcALQAfgGQNAAeAbJwmGAQkFvAG8AYYB4AcDAQkFgAPgAxeAEwO8AbwBQAsFvAG8AYYB4AMDQKcBCQWAA+AHC+ADJ0ALQCfAB8ALALxgAQGGAUAPAgkFvCADBYYBvAGGAcAHQAvAA0BfgAtAAcAL4BMHQAHgEx8BhgHgAVMBhgHgGQNAAeAPJ0AB4A0b4AHLAbwBwAvABwG0LEJHgBfAEwC8YAEBhgHgAQ+AC8APCAkFvAG8AYYBvCABAgkFhmADA7wBhgHgAQtAAUAPBbwBvAGGAUADAwkFhgFAB4ADQAHAC+ATB0AB4A8fAbwB4A9TQBdAAwC8YAFABwGGAUAPQAPAC0AHgANAAYALQB8FCQW8AbwBQAdAAwW8AbwBhgHgBwPAFwEJBYAD4AMfAgkFvKADAoYBvCABBQkFvAG8AUALQANAAUAH4AsDwAHgCxvAE8AB4AMPQAtAAUAH4AMDwAHgAxPgCwtAAeALF+AJEwMJBYYBQBdCs8ALBwkFhgG8AYYB\"}",
"29": "{\"ir_code_to_send\": \"Bx0NxAaIAQoFQAMFwQHBAYgBwAMDCgWIAeADC8APQAcD7QGIAUAbQAtAA4ALA8EBCgVAC0ABAYgBQAvgAyfAC0Ab4BcDgCtAAQGIAeANAwHBAUBfAcEB4AkDQBdAA+AzG0A/QAPgD0NAF0AfQANAC8ADQA/AA0DDQAvAG0AP4AsLwBPgeQdAAcCHQAFAC0ABAYgBQMdAA0ALQAOACwHBAYAHA4gBtiziA0cBiAFAE8AD4AMPQAtAA0AbwAfAC8APQAdAA0AXQAMHCgXBAcEBiAFAAwMKBYgBQAfgQwPgD1NAF0AD4AtrQBdAA+AXG0AjQAPgDydAF0AfQANAC8ADQA/AA0ATQAtAB+BDA+IDj+AbV+AnL+ALU0DHQANAG0BPwAsHCgWIAcEBiAE=\"}",
"30": "{\"ir_code_to_send\": \"ByUNpQbAAQcFgAMDwAGHAcADQBMDwAGHAUADAQcFQAMDwAHAAUAHBYcB7wGHAcALBQcFwAHAAYAHwAsDwAGHAeAPC0Ab4BkDQAHgFSfgA1/gAysBBwWAA+AHE0APgBsBwAGAAQGHAeADA0AXBwcFhwHAAYcBQAdAA0AL4AcDwBcCBwXAIAMDhwHAAeABA0APwANAF0ALQAfgEwPBS+ATI+BFG0AB4C1TwM/gBwcBsyxCRwGHAUAXQAPgA1/gAw9AC0ADQB/AB8ALwA9AB0ADQBdAA0ALwSMHBwXAAcABhwHgQwMDBwWHAeALT0AXQAPgAxvAD0AHQAPgAxvAC0AXQANAD0AHQANAC+AHA8AXQAdAA+ADHwIHBcAgA0AHBYcBwAGHAcAHQAvBC0AL4A8D4Bsj4AU7wAHAF0ABQAtAAeADB0AL4DkDwM/gBAcCAcAB\"}"
}
},
"low": {
"auto": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"BxkNtAanAQsFgAMH4AF+AacBfgFAB0ATQAcDpwF+AUALQAMBpwGACwSnAX4BpyABQBMDCwV+AUAnAQsFgAsBpwFAAwinAQsFfgHgAacgAQV+AQsFpwFAAYAP4AMBAn4Bp2ABQAdAAwWnAeABfgFAAwCnIAHABwGnAYAPQAGAEwF+AeABUwF+AUAPAKegAQILBX4gAwGnAcAXAuABpyABAX4BQBPAAwPgAX4BQAMAp2ABAX4BQAsBCwVAAwGnAYALCKcBCwV+AeABp6ABAn4Bp2ABB34BCwWnAeABgAcDCwV+AUALAKdgAQR+AQsFp6ADBX4BpwF+AcAHgCPgAQcAp+AAAQF+AYAb4AMBQBMApyABAX4BgANAAUALQAEGfgHgAX4Bp2AB4AEH4AET4AMBAn4Bp2ABAX4BgB/gAQcAp+ACAcAbAacBQANAAQR+AeABpyABAX4BgAMFpwELBacBQAGABw1+AQsFfgHgAX4BCwWnAUABAb4sQkeADwULBX4BpwHAAwGnAeABDwOnAQsFQANAGwGnAUAHQEMGpwF+AQsFp2ADQAHgAwsBpwFAGwJ+AadgAQV+AQsFpwHgCQEBfgGAA+AHAUAXQAHAB+ADAeABEwELBeABC0ABgJMDpwELBUAD4AUbQAEBCwXgAQPgBQGAKwILBX4gAwGnAUABQAdAA8ABwFtAAUAXA+ABpwFAB0ADQAvAAUAPwANAAUAL4AsBBOABfgGn4AQBBH4B4AGn4AYB4AsTwAEBfgGAA4ABgDtAE+ATAeABHwHgAUALQANAAYAH4AUTgAGAEwGnAYDHBn4BCwV+AacgAUAHC+ABpwELBacBpwGnAQ==\"}",
"17": "{\"ir_code_to_send\": \"BwsNpgbEAQgFQAMHhgHuAYYBxAGAA+ADD0ALBQgFxAHEAUAHAYYBQAdAAwIIBcQgAwiGAcQBhgEIBcQgAwOGAcQBgAPgDwvAH+AzB0Cn4ANf4ANLQBdAA0Aj4AMX4A8LwCdAM0ADQCdAB0ADQAtAA+ADC0AP4AMD4AMbAggFxCADQAcFhgHEAYYBwAdAC+ADA8Bz4AMT4CULQAHgBzNAAeABE+A5Y+ATQwHEAUDbQAMFxAGGAb4sQkcBhgFAD0ADQBPAA+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvgOwPgA1/gA09AF0AD4AMT4BsLQDNAA0ArQAdAA0ALQAPgAwtAD+ADA+ADG0ALwANAI0ALQAfgywMLCAWGAQgFhgHEAYYB\"}",
"18": "{\"ir_code_to_send\": \"BzENmAbKAQcFQAMDigHKAeABA+ADD0ALQANAH8AHwAvADwIHBcogAwOKAcoBQAMBTgHgAQsJigEHBcoBygGKAUADQAFAB+ADA0ABAx8CTgGAE8AHAYoB4AED4AcTA04BBwXgAR9AAUATA8oBigFAF0ADQAvAAwcHBcoBygGKAcADQAHACwHKAcA3A8oBBwVADwSKAQcFyiADA4oBygGAA4ALgCcBygHgAQOAFwGKAUADQAFAD8ADQBNAC0ABQAvgWwNAAeAbZ0AB4BsnwCNAx8ALQAdAAeADEwGULEJHAYoBQBNAA0Ajwc/ADwPKAU4BQAtAAwPKAYoBwAdAAUALQAPAF8ALAMogAeABCwGKAeADC0AP4A8DQAHgBxtAAeALE4BTBE4BygGKYAFAB0ADQBdAA0ALwANAD0ABwA/AB0ABwAtAI0ADQA9AB0ADQAtAA4ALAsoBiiABQAXAA4AXAYoBwANAD8ADQAFAC8AbQAHAC8AHQAHAC+BDB0AB4AdPQAHgGxPgByNAD+ADx0APQAMLBwWKAcoBigHKAYoB\"}",
"19": "{\"ir_code_to_send\": \"BxoNrwaZAQwFgAMD1wFnAYADAZkBQBPAAUALQAMD1wFnAYAHAJlgAUALQANAAUAHQANAAUAfQAtAB0ABwAvAD+ABBwRnAdcBmWAB4AkHgBuAB0ALQANADwCZYAGAU8ATgAdAAUAXQANAAQLXAZngAAFAEwHXAUAnwAMAmWABBNcBZwGZIAFAHwUMBWcB1wFAB4ADAZkB4AEPQBcBmQFAD0ADAJlgAUAnAdcBQA8CZwGZIAFAD8ADQAFACwHXAYADQAEB1wGAJwHXAYADQAEF1wFnAdcBQAeAA0ABQAtAAQHXAYAbQAEC1wGZ4AABwAvgAQcCZwGZIAEB1wHAAwFnAeABA4ATQAEB1wFAF0AHwAPAD8AHQBeAC0ABwAtAB0DL4AMBwA8F1wGZAcAs4gVHQAFAFwGZAeABN0APQDNAA8ALwAFAE0ADQAFAB0ADQCNAAwMMBWcBQAdAAQMMBZkBwAvgAwHAEwHXAeABKwLXAZngAAHAC+ABB+ABJ4BTAmcBmSABAdcBwAMBZwFAF0ADQAEC1wGZ4AABQBPgAw9ACwbXAWcB1wGZYAFAH0ADQAFAB0ADQAED1wFnAUALAtcBmSABA2cB1wFAAwCZYAHgAReAAUAPwANAAUALBNcBZwGZoAEC1wGZYAED1wFnAUADAJkgAQHXAUADAWcBQAMAmaABQAvgAQPADwCZIAFAFwOZAdcBgAdAAeADC+ADAQLXAZngCAFAEwHXAUA7AmcBmaABAtcBmWABAdcBgBNABwHXAeABBwGZAUAPCGcBDAVnAdcBmWABD9cBZwEMBZkB1wGZAZkBmQE=\"}",
"20": "{\"ir_code_to_send\": \"Bx4NxQaKAQYFgAMBywHAAwFUAUATAcsBgANACwUGBcsBywFABwmKAcsBVAHLAYoBQAtAA+AHC8APAcsB4AEnAcsBQAOADwHLAeARA0AB4BMfwBvAdwHLAeAFU0AXQAMCywGKYAFAB0APQANAC+ADA0ABQA9AAUAfQANAD0AHQANAC0AD4AMLQA/AA+AHF0APwANAAUALAcsB4AWfAcsB4A8D4AUnQAEBywFAA+AFFwHLAeAFA0AB4AcT4EcPQMdAA4BXBVQBQAJUAeABDwOKAags4iNHAYoBQDPAB8ALwA9AB0ADQBdAAcALQA/gAwtAD0ABQAfgJQMDVAHLAeABM+APU0AXQAPgByvgBxPgAx9AC0AfQAPgBwvAD0AH4AcDwC/AF0APwANAE0ALQAdAA0ABQAfgAwNAAeADD+APC0AB4A8b4B8XQAHgBytAAeAVE4FzQMdAAwHLAeABAwsGBYoBywGKAYoBigE=\"}",
"21": "{\"ir_code_to_send\": \"BxUNuwaVAQoFgAMG0QFoAdEBlWABQBNAC0ADQAtAA8ALAdEBgCdAE0ADQA9AB0ADANEgAQNoAZUBQAtAAUANQAsC0QGVYAEF0QFoAdEBQAeAA0ABAdEBgBNAAQLRAZVgAQHRAUATQANACwCVYAHAB0ABwFNAEwHRAYAnQAFAF0ADAdEBgANAAQHRAYAfBQoF0QHRAUALQAMBlQHAA0ABAQoFgANAAcALwB9AD0ALQAHgAQcBaAHgBReAD0ATQAMD0QGVAcAHQAFAD0ADQAHgAQcDaAHRAUAPgAdAAQHRAcAD4AMTQAtAA4AbQAEB0QFAD0ADQAsAlWABQAcB0QHgHRNAAeADKwLRAZVgAQHRAeABPwLRAZVgAQHRAYATQM9AAUAPQAsC0QGVYAEBsyziB0cBlQFAA0ABQCdAAUAPQAtAAwGVAYA/QAEB0QGAC0AX4AULAJVgAUAXQAFAD0ALQAdAAeABBwNoAdEBQA+AB8ABAdEB4AEDQAEB0QGAHwHRAYADQAFAC+ALU0ABQBdAA0AjQANAAcAHQBdAAcAPAdEB4AFbQBtAA0ABQAdAAwHRAYADQAtAAUAPwAFAC0AXQAdAAUAHQA/AAwPRAWgBQAsC0QGVYAEF0QFoAdEBQAeAA0ABQAtAAUAHQANAAcAHAZUBgC9AAcATQAdAA0AB4AEHQCdAA+AFEwCVoAFAF0AB4AMH4AMLQAFAD0ADQAHgAQcBaAFAAwCVIAEC0QGVYAFAz0ABQA8LCgVoAdEBlQHRAZUB\"}",
"22": "{\"ir_code_to_send\": \"CC8NrQaGAQgFwyADA4YBwwHgAQMHCAXDAcMBhgFAAwEIBYADgAsAw2AHA8MBhgFAC0ADAcMBQAuAA0ALQAMHCAXDAcMBhgFAAwMIBYYBQAfgQwMHCAXDAcMBhgHAAwPzAYYBQAsBCAVAAwXDAcMBhgHAAwMIBYYBQAsHCAXDAcMBhgHAK0ALwAMBCAWAA0AP4AMLwA9AB+AHA0AnwBNAU0APwANAF0ALQAfgDwNAM+APG+CDFwUIBcMBwwHgAQeAC4AHQMMBwCzCRwGGAUADQB/AA+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvAA0CDwAvgJwfgA1/gAztAF0AD4AcTQA/gBxdAE8ADQBtAA0APQAdAA0ALQAPgAwtAD8AD4AcXQA/AA0AjQAtAB+AXA+EfB4AnQAEBhgHgXQNAAQGGAcDHwAeAEwnDAcMBhgHDAYYB\"}",
"23": "{\"ir_code_to_send\": \"ByoNrAauAQkFQAMCfQGuIAED5QF9AUADBwkFrgGuAX0BwAvADwMJBX0BQBMGrgF9AQkFriADAX0BQA8BCQWACwGuAYADQA+AAYALQCNAAwGuAUADwAHgBwtADwF9AcAnwAcArmABQAcBfQFAE0ADgF8EfQHlAa4gAUAHAn0BriABQBdAAwGuAUAPQAOAAUATQAMDrgF9AYArwAdAAQN9AQkFQAMDrgGuAYAHwAsDrgF9AYALQAECfQGu4AABAX0B4AMXQFNAD4ADAX0BgA+ABwGuAcADQAHAC4AHQCdAC4AHAa4BQAdAAwGuAUADwAHAC+APB0ABAX0B4A03An0BruAEAQR9AeUBriABAX0BQAMD5QF9AUAHAK5gAUAHQAPgAwEBfQFAI0DLQANACwCuIAEHCQWuAa4BfQFADwGgLOIDRwWuAa4BfQFAAwnlAa4BCQV9Aa4BgAMCCQWuIAMFfQHlAX0BQAcArmABBH0BCQWuYAMBrgHgAwtAAUAPAn0BrqABBQkFrgGuAeABDwGuAUALwANAAUAL4AcB4BUTgFPAAQF9AUCbAK4gAUAXQAPgBwFAE0ADAa4BQCfgAwNAAQN9AQkFQAMDrgGuAUAHgAMArqABQA8BrgFAA+ABAUBvAwkFrgHAAQPlAa4BQA+AAwJ9Aa4gAQUJBa4BrgFAC0AD4AcBQBNAA0AB4AEHA+UBfQGADwF9AUALQANAC+ABAwGuAUATAuUBriABAX0BgANAAUALQAHAB8AB4AsPQBPAAwOuAeUBQAtAAUAHwANAAYALQB8BCQWAA0ATwA8HrgF9Aa4BrgE=\"}",
"24": "{\"ir_code_to_send\": \"BwgNpQbDAQ4FQAMDhQHDAeABA+ADD0ALQANAHwcOBcMBwwGFAUADAQ4FgAMG7gGFAQ4Fw2ADQAsHwwGFAQ4FhQFAB0AD4AMLwB9AF+AHA+ATG+AHK+ADU+ADG0AXQAPgCxPgAxfgB2sCDgXDIAMFhQHDAYUBQAcHDgXDAcMBhQFAAwMOBYUBQAfgAwNAP+AHF0APwANAK0ALQAfgKQNAAeArN+ArM0ABwDdAAUALQAFAB4ADQMfAA+ADE8ALAcIsQkcBhQHgByNAH0ATQAdAA0ALQAPAC0AHQANAE0AD4AMLQV/AD0AHQAPAI0AL4D8D4A9TQBdAA+ADZwIOBcMgA0AHA4UBwwHgDQMCDgXDIAMFhQHDAYUBQAdAA0ALQAPgAwtAD8AD4AcXQA/AA0AjQAtAB8ADwRvAD+ADB+ATG+ADJ+AfC+BDT0DHwAPAfwsOBYUBwwGFAcMBhQE=\"}",
"25": "{\"ir_code_to_send\": \"CBENtgaBAQkFsmADBLIBgQGyYAEBgQFAEwSyAYEBsiABAgkFgSADA7IBsgHgAQeACweBAQkFsgHmAUAHgAMBsgFAAweyAQkFsgGyAUALAYEBQAtAIwGyAYADQAtAAwCyYAFAB4AD4AMTQAtAA8AbQAfgAw9AU4ABAYEBgANAAQOBAQkFQAMGsgGyAYEBsmABQAdAA0ABAYEBQBvgAUfAAUAXQAMDsgGyAYAHwAtAK4ALQAEBgQGAA0ABAYEB4AcXQA8BCQWABwGyAYAHQD8BsgHAA0ABAYEBwBNAB0ADQBPgBQNAAUATQAFAB0ADQAHgAwfgAwtAAQGBAeAFS0AB4AcTAYEBQAPAJ4AHQAHACwGBAYAD4AMB4AETQC8FCQWyAbIBQAcCgQGyYAEgBwAswkcBgQFAAwGyAUADQAEBgQHgAw8BCQVAAw2BAbIBgQEJBbIBsgGBAUADAQkFgAPAXwcJBbIBsgGBAUADwAuAGwKBAbJgAUAHQANAAeAHB0AB4AcTQA9AA+ADAQGBAYBTAbIBgAEBgQFAA0ATQAcBCQWAAwCy4AABQAtAA0ABBYEBCQWyAYABAYEBgAOAAQIJBYEgAwOyAbIBQAdAAwayAbIBgQGyIAEBCQVAB8ADAbIB4AFrAbIBgAFAGwSyAQkFgeAAAwOyAYEBQA8AsmABAYEBgDNAAQKBAbJgAUAHQANAAQGBAYAfAYEB4AUDQAHgDxPAAUAfQAHgBwdAAeADE+ADC0ABAYEB4ANzQAtAAwCyYAFABwGBAYAPAYEB4AEDAbIBwNMLCQWBAbIBsgGyAYEB\"}",
"26": "{\"ir_code_to_send\": \"Bx0NswaFAQkFgAMBxQHgAQMHCQXFAcUBhQFAA0ALBwkFhQHFAYUBwAfACwUJBcUBxQFAB4ADA/EBhQGADwDFYAcHxQGFAQkFhQFAB+BDA0BTwGvgA1dAF0AD4AcTwA/gBxvgAxdAG0BTQAdAA+ADG8AL4AMH4AMjQBdAD8ADwEdAF+BbA0Bv4A1nQAHgDxvgGRdAV0DTwCvAC8AHQBcBviziE0cBhQFAQ0AnQAtAA8ALQAdAA0ATQAPgBwvAD0AHQAPAI0AL4BkDQAHgEydAAQGFAeAPU0AXQANAI8AD4AMP4AMLwB9AB0AXQAPgBwvAD0AH4AcDwC+AFwHFAUAPwAMAxSABQAsBxQHgZQPBs+ADd+ALE+ADH+AXC+ADx0ALQE8LCQWFAcUBhQHFAYUB\"}",
"27": "{\"ir_code_to_send\": \"B0gNkwbCAQoFQAMDhAHCAeABAwcKBcIBwgGEAUADAQoFQAMDwgHCAUAHAYQBQAdAAwIKBcIgAwWEAcIBhAFAB0ADQAtAAw8KBcIB8QGEAcIBhAEKBYQBQAfAD0ALAMJgAUAHgAPgBRsBhAFAA+ALE0AXQAPgDVOAF8AbQA/AAwUKBcIBwgHgAQcAwmABQAeAAwEKBYADQA/gAwvAD0AH4AMDQJtAJ8ATwA8CCgXCIAMFhAHCAYQBQAdAF0AL4AMDwBPAB+ADG+AfC+AXO8AfwAfgN1dAy0BD4AcHQBMBpixCRwGEAUAbQANAE8AD4AMPQAtAA0AbwAfAC8APQAdAA0AXQLvAC0AP4AMLQA/gOQMBwgHgD1NAF0ADAMLgAAFACwGEAYAT4AEHQAvgAwNAH0ADQBNAB0ADQAtAA4ALQAEBhAHAA+AH40AXAgoFwiADQAcFhAHCAYQBwAdAC+AxA0AB4BE/QIcAwmABQAfgAwNAAeADD8ALQAGAC4A7AYQB4BsDwMvgBwcD8QHxAQ==\"}",
"28": "{\"ir_code_to_send\": \"CDINvwaGAQMFw2ADA8MBhgHAAwMDBYYB4AMLwA8HAwXDAcMBhgFAA0ALQAMBwwHACwGGAUALQAPgBQsFwwHDAYYB4BMDA/EBhgHgEx/gBxsDAwWGAeAHE0APQBdAA0ALwAMCAwXDIAMFhgHDAYYBwAdAC+ADA0AXBQMFwwHDAYAHwAsHwwGGAQMFhgFAB8ADwKvAF+ADD0ATBQMFwwHDAUAHAYYBQAfgOQNAAeA7R+ABQ8Cz4AMTAMNgAUAH4AUDQMdAA0AX4AcHQBMBsSzCRwmGAQMFwwHDAYYBwAMDAwWGAeADC8APwAdAG0ALQAPgBwvAD0AHQAPAI0AL4BsD4A3jAYYB4AMD4A1TAcMBQBdAAwHDAeABA0APQANAE8AHQAvgAwNAF0ADQBNAB0ADQAsAwyAB4AELQA/gAQPgBxdAD8ADQMNAC+ADL+BfC0B74Adr4AsT4Acj4A8PQMdAA0Af4AcHA8MBhgE=\"}",
"29": "{\"ir_code_to_send\": \"By4NowaSAQsFgAMC0AGSYAED0AFhAUATAdABQAOACwQLBdABkiABDgsFkgHQAWEB0AGSAQsFYSADAZIBgAsBkgFAA0ALQAHAC0AP4AMLQA/AA0ABwAvgAQcDYQHQAcAPgAtAAcALAdABgAMBCwWAGwHQAYAHQAEF0AGSAQsFgANAC0ABAdABgB9AB8AbQAEC0AGSYAEH0AFhAdABkgGAG+ADCwGSAUAXA9ABYQHAC8ABAdABgAOAFwVhAdABkgFAA0APwANAAUALQBdAA0ABAdAB4AErAdABQAPgAQ/AAQNIApIB4AcB4BETA2EBkgHgCR0HSALVAEgCkgHgAwHgBw9AAeANE4A7QFkB0AHgBQNAzwMLBWEBQBcDCwWSAUAHBdABYQG8LOIZR0ABQDNAA0ABQAcB0AGAA0ALQANAD0AHQANAC0AD4AcLQAEF0AFhAdABQAeAA0ABwAvAB0ABQAtAAQHQAYAvQAEC0AGSYAFAB0ADgF+AHwHQAUADgAtAF0ADwA/gAwdAF0ADAdABgANAAQfQAWEB0AGSAUAXQANAAUAHQANAAcAbQAdAAUAHwANAIwHQAYA/QAdAD8ADQAFACwHQAcADAWEBgAOAD8ABQA/AAUALwANAAcALwAdAAQHQAUBHQAeAA0ABQAvAAUALgAPgBScB0AGAA0ABwAvAB0ABAdABwC/gDwcBkgFAz0ADwAsHkgGSAdABkgE=\"}",
"30": "{\"ir_code_to_send\": \"BwcNqwbBAQ0FQAMHhQHwAYUBwQGAAwMNBcEBgA8DwQENBUAPDYUBwQGFAQ0FwQHBAYUBQBsBDQWAA0APAg0FwSADAYUBQBcLwQGFAQ0FwQHBAYUBQAMDDQWFAUAH4CsDwE/gBzvgD1NAF0AD4AM3wA9AB0AD4AMbAMFgAQGFAUAXQAOACwPBAQ0FgAsDwQGFAeADC0APQANAQ+AHF0APwANAI0ALQAfgQwNAd+AjT+AnL+ALW8DHQAdAA0AjwAcAwSABAbwsQkcBhQFAE0ADAcEB4AED4AMPQAtAA0AfwAfAC8APQAdAA0AXQAPgDwtAGwDBYAEBhQHgIeNAAeAFL+ADX0AbwANAF0ADwA9AB8APQAdAA0AT4AcDQBdAA0AXQAdAA0ALQAPgAwtAD8AD4AcXQA/AA0AjQAtAB+ANA0AB4AEbgQtAAQGFAeAFA0AB4AcT4AcPQAHgBxPgAQ+AWwGFAeABA0AB4AsPQAHgAxeAC8DHQAdAA0AXCw0FhQHBAYUBwQGFAQ==\"}"
},
"swing": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"vertical": {
"16": "{\"ir_code_to_send\": \"CCQNvwaFAQgFxWADA8UBhQHAAwMIBYUB4AMLwA9ABwP0AYUBQBtACwUIBcUBxQGAB8ALA8UBhQHgDwtAG+A7AwMIBYUB4AtHAggFxSADA4UBxQHgBQNAE8AD4AcbQA/gAxvgAwvAG0AH4AcDQCfgAxNADwIIBcUgAwWFAcUBhQHAB0AL4EMDwX/gF1PgHyfgF0dAH0DLwAOADwDFYAcFxQGFAbYswkcBhQFAA0ATwAPgAw9AC0ADQBvAB8ALwA9AB0ADQBdAA+APC0Ab4DsD4ANf4ANPQBdAA+ADE0ALQBPAA0APQAPhA2fgAxvgAwtAJ0APQAfgBwPgBxdAD8ADQCtAC+ADY0AT4J8DgLdAAQGFAUADQMvAA8APB8UBhQHFAYUB\"}",
"17": "{\"ir_code_to_send\": \"CkANugaBAQEFvQEBIAMDvQGBAcADAAFgD0ABgAsAAWAPgAsI7gGBAb0BgQEBIBMAASADAb0B4AMLQAGAD+ADJwO9AYEBwA/AB0ATwAPgCxPAG+ADB8AnAAGgd+ADG0ALAAEgFwABIAMDvQGBAeADA8A34AMTQAvAFwEBBYADQBMEAQW9AQEgA+ABGwW9Ab0BgQFADwEBBUADAr0BASADAb0BgAtAFwW9AYEBAQVAAwq9AQEFgQG9AYEBAaAHQAvAA8ArgA9AAcALwAdAAcALwAdAAcALAYEB4BFDQAEBgQHgBwPgES8BgQHgAwPgBScBgQFAA+AHEwABINMAASADQBtAAwUBBb0BiyzCR4APA70BgQHAAwcBBb0BvQGBAUADAQEFQAMBvQFAAQUBBYEBvQGAAwABIAsAASADQA8AASAHAAEgA0ALAL0gAQABoAtAhwABIAtABwG9AeAHA0ABgBNAH0AD4AMPwAvgCwcAASBT4AUXQAECgQEBIBcAASADQAvgEwPgA2tAJwABIDMAASAD4AULQAECgQEBoBfACwABIA8AASADAL0gAQABYAdACwKBAQEgCwABYAMDvQG9AUALAb0BgGdAAQGBAeAFA0AB4BUTgDsBgQHgCQNAAUAXQAFAB+ADA0ABwA/gAwHAEwGBAYBXQAEBgQHgFQNAAeAFIwEBBUADDb0BvQGBAe4BgQEBBYEB\"}",
"18": "{\"ir_code_to_send\": \"BxwNqgauAQwFgAOAAQl9AeQBfQEMBX0BQAtAAwIMBa5gA4AXBa4BrgF9AUADAQwFgAPAFwcMBa4BrgF9AUADgAtAAYALQCMArmABQAcBfQFAD0ADQAtAA+ADCwCuYAFAB8ADwAEBfQGAJwGuAYBfAn0BrmABQAdAAwGuAUAXAQwFgAvAAYAPQBNAA0ABAX0BgEcBfQHAA0AjQANAF0AHAwwFrgFACwCuIAEBDAWAB0ABQAsBDAVAB0ADBX0BrgF9AYAnBH0BDAWuIAOABwGuAUAHAX0BQAcArmABAX0BgCdAAQJ9Aa5gAeADBwF9AeABH0ABAn0BruAAAcALAX0BQCNAA0ALAK7gAAEBfQHgBRNADwCuIAEBfQFAAwPkAX0BQAcAruAAAcAL4AMHwAvAAUAPAX0BQDsDDAWuAYABgAuAD0ALAn0BriABAcAs4gdHgBcDrgF9AYAjAX0BQANAC0ADgFMCfQGuoAFACwUMBa4BrgFAB0ADAa4BwAEFDAV9Aa4BgAMDDAWuAYABAn0BruAAAUALQAPgAwFAD0ADQAHgAQdAd0ADAK7gAAEGfQEMBX0BruAKAQEMBYADgAGAI0ATQAGAQ0ATQAOAAYATAa4BQCMBDAWAFwEMBYADAa4BQA8FfQEMBX0BgCcEfQEMBa7gBAMDrgF9AUADQB+AG0AHAn0BriABAwwFrgFAFwGuAcAD4AcBQBeAAYAnQAFAE0ADwAEBfQHgARvgAwECfQGuIAFAG0ADA64BfQHAB0ALAK4gAeADD4ALAa4BwAcBrgGAE0APwANAE8ADQBMArmABBX0BDAV9AUAPQANACw8MBa4BrgGuAQwFrgGuAX0B\"}",
"19": "{\"ir_code_to_send\": \"CCMNpAbFAQwFhSADBcUBxQGFAcAD4AMPQAsHDAWFAcUBhQHAB4ALA8UBDAXACwCF4AALA8UBhQFAD0AHQAPgAwtAD+ArAwPyAYUB4AM34A9TQBcHDAXFAcUBhQHgAwMDDAWFAeADD+AHCwIMBcUgAwWFAcUBhQFABwcMBcUBxQGFAUADAwwFhQFAB0ADQAvgAwNAE8AD4AcXQA/AG+CPB+EHV0Cn4AsTwMtAB0ADQCfABwG3LEJHAYUBQA9AA0AbwAPgAw9AC0ADQBtAB8BnQAtAA8AXwAvAD0AHQAPgAxdAD+ALA8BT4Asb4AsT4A9TQBdAA+AHM+ALE+ADI0AfQANAE0AHQANAC0AD4AcLQA/AA0AfwAPAE0AHQBPAB0AL4KsD4QOTQMtAD0AHQAMLxQGFAQwFhQHFAYUB\"}",
"20": "{\"ir_code_to_send\": \"CB8NrAaDARUFvyADA4MBvwHgAQMLFQW/Ab8BgwHyAYMBQAtAAwG/AYALA78BgwFAAwEVBUADA78BvwGABxEVBfIBMQGDAfIBgwEVBYMBvwGAA+ADCwPyATEBwBfgHwcD8gGDAcArwAvgA1PAG0AHAhUFvyADA4MBvwHgAQNAD0AD4AMTQAvAS0ALQB8DFQW/AUATARUFgAMBvwGAAwcVBb8BvwGDAUADARUF4AMDBfIBMQGDAUAXQAMBFQXgAQPAD0AH4AMDA/IBgwFAD8AH4AcLQA/gCQNAAeALF+ADE0AB4AMP4AcLQAHgARPgA3/gAxcAv2ABQAeAA0AnwNdAE+AHC0ATAbwswkcBgwFAA0ATgAMBvwHgAw9AC0ADwFMBvwGAA0ATBRUFvwG/AUAHgANACwC/IAFADwG/AYAD4AELQAEBgwHgJwNAd4AzQAGAC+ABUwGDAYADQAEBgwFAF0ADQAuANwG/AUAPQAMBvwHgEQNAH0ADQCNAB0ADQAsAvyABwAtATwYVBfMAFQUxoAcF8wC/AYMBwAMBFQXgAQNAE0APQAfgEQNAAeABH0BfQA/AB0AL4AUDQAEBgwFAH0ADQAvAA8APwAfAF+ABBwG/AeADG8ALgAdAAcALAYMBQAMD8gExAUAHQANAx0AD4AsLA78BgwE=\"}",
"21": "{\"ir_code_to_send\": \"BxgNtgbFAQsFgAMDxQGEAcADQBMDxQGEAUADAQsFQAMDxQHFAUAHAYQBQAdAA0ALQAOACwPFAQsFgAsLxQGEAQsFxQHFAYQBQAPgAwtAD+AXAwPyAYQB4Bcj4AtTQDdAFwMLBYQBQAsBxQHgBQNAF+AHE8APQBtAA0APQAdAA0ALQAPgBQsAxWAPAQsFQAMFxQHFAYQBwAMBCwXgAQNAE0APQAfgCwPgC5/gCyfgVRNAAeAhY0DPwANAN0ALQAcBrCxCRwGEAUAPQANAE8AD4AMPQAtAA0AbQAfBA0ALQAPAF8ALwA9AB0AD4AMXQA/gOwPgD1NAF0AD4Atj4A8XQCtAG0AD4AcLwA9AB0ADQCPgAwNAEwDFYAEBhAHgBxdAD0AXwAPBN8APQAfgCxNAF0AD4BMbQB/gEwPgJzvgGy9Az8ADC8UBhAELBYQBxQGEAQ==\"}",
"22": "{\"ir_code_to_send\": \"ByYNrAa/AQsFgAMHvwGEAe0BhAFABwMLBYQBQAdAA0ALAwsFvwFAG8AHBb8BhAELBUADA78BvwGAB8ALA78BhAHgBQsBhAFAE+A3A0B/wEPgAVNAAQGEAcADQBcHCwW/Ab8BhAHAA8APAwsFhAHAE0AH4AdPQB9AE0AHQANAC0AnBwsFvwG/AYQBQAMBCwXAAwC/IAsFvwG/AYQBwAMBCwVAAwC/IAcDvwG/AUALAYQBwENAD+BhA0AB4Alv4AOL4AML4Asr4AMTAwsFvwFAAQELBUALgAMDvwGEAUALQAcBlyxCRwSEAQsFvyADA4QBvwGAA0Bj4AMPAgsFvyADDYQBvwGEAQsFvwG/AYQBQAMBCwWAA+AHC8APQAdAA0AnQAfgKQNAAeADN8ABAYQBQFNAp0AL4AMDQBdAA+ADG0APQCPAB0ALQAPgByNAH0ATQAdAAwC/YAEBhAGACwGEAUADQAsCCwW/IANABwOEAb8B4AEDAgsFvyADQAcFhAG/AYQBwAdAC+BRA0AB4AFfQL/gAw/gBwvgDR9AAQGEAeALA0AvQMfAB0ALQAML7QGEAQsFhAG/AYQB\"}",
"23": "{\"ir_code_to_send\": \"CCANuAaBAQwFuGADA7gBgQGAAwG4AUATB7gBgQHrAYEBQAtAAwG4AUALAYEBQAdAAwIMBbhgAwG4AeAFC4APQAcBuAGAPwCBYAcBuAHAA0ABAYEBQBtAB4ADQAEBgQFAE0ADQAvAA+AFD0ABAYEBQFNABwC4YAFAB4ADAgwFuGADA7gBgQHgAwMBDAWAA+AFSwGBAcADwB9ADwIMBbhgAwS4AYEBuCABQA8BuAFACwOBAQwFQAMAuOAABwO4AYEBwAPgARcBgQFAE8AHQAvgDQNAAeAjG0ABwC8BuAHgC8vgCxMBuAFAA0ABQAfgCwNAAeAHF0AB4AETAgwFuCADQAeAAwC4IAFACwC4IAEBmyziA0dAE8ADAbgB4AMPAQwF4AEPQAuAAYALgA9AC0ADBbgBuAGBAUDLAwwFgQFAC0ADCAwFuAG4AYEBuGAB4AMHwAvAAUAP4AMDwAFAE0ABBIEB6wG4IAEBgQHgAVMBgQFAAwPrAYEBQAdAFwUMBYEBuAHgBQNAEwgMBbgBuAGBAbhgAUAHQANAAQOBAQwFgAPgBwsAuCABQBsBuAGAA0ALgAMAuCAHBbgBuAGBAYB7AbgBQA8CDAWBYAMDuAGBAUALQAeAA0ABwAvgEwdAAeAHH0AB4AkTwHcDuAGBAYALAYEBgANAAcALwAdAAcALAYEB4AUvAYEBQAOAE0ABAYEBwAPAEwEMBUADAIEgB4ADC7gBuAEMBYEBuAGBAQ==\"}",
"24": "{\"ir_code_to_send\": \"BzcNmgbDAQgFQAMDhgHDAeABAw0IBcMBwwGGAe8BhgEIBYADQA9AC0ATgAsDwwEIBcALAIYgCwXDAcMBhgFAAwMIBYYBQAdAAwcIBcMBwwGGAeBDA+APUwEIBYAD4ANrAggFwyADQAcDhgHDAYADwMPAD0AbQANAD0AHQANAC0AD4AcLAggFwyADQAcDhgHDAeABA0APgAMDwwHDAUALBcMBwwGGAeC3AwEIBeAJA0DTQBdBRwGtLEJHAYYBQA9AA0AbwAPgAw9AC0ADQBvAB8ALwA9AB0ADQBdAA+AFCwXDAcMBhgHgQwMDCAWGAeALT0AXQAPgAxtAD8AD4AMXwAtBC+ADH+ADC0AjQA9ABwDDIAFAC+ADAwPDAYYBQD9AB+AHF0APQBfgCQNAAeALF+ArE0AB4Ac3QAHgBRPAo+AHF+ALD+AHK0DH4AcDC8MBhgEIBcMBwwGGAQ==\"}",
"25": "{\"ir_code_to_send\": \"BysNrgaEAQoFQAMFxQHFAYQBwAMDCgWEAeADCwUKBcUBxQFABwWEAfEBhAHAC0AP4AcLgA8AxWAHA8UBhAHgAwtAD+ALA8BT4AMbwBPAB+ADG+ANUwPFAQoFQBsDhAHFAeABA+ADP+AHG8AnQBdAA0APQAdAA0ALQANAC8BDQAsCCgXFIANABwOEAcUB4AEDQA/AA0AXQAuAN0ABAYQB4E8DgGMBhAHgBwPgBxfgBw/gBy/gHQ9AAQGEAUDbQANACwHALOIDRwGEAUATwAPgAw9AC0ADQBvAB0CTQAtAA8AXwAvAD0AHQAPgAxdAD+A7A+APU0AXQAPgD2PgDxtAF0ADQDdAB0ADQAtAA+AHC0APwANAH8ADwBNAB0ATgAdAAQGEAcADQTfAC+BDB+A7V+ADQ+ADC8CnwBNABwsKBYQBCgWEAfEBhAE=\"}",
"26": "{\"ir_code_to_send\": \"CBcNsgaDAQkFwGADA8ABgwHAA0ATCe4BgwHAAYMBCQWAA4ALAMBgBwXAAYMBCQWAA+ABCwDAYAsDwAGDAeAPC0AbQAOAW0ABAYMB4AUDQAHgDROAMwGDAUAD4ANfQA/AAwEJBYADgA9AAQGDAUATgDsBwAFACwHAAeAFA0AbQBdAA0AbAgkFwCADA4MBwAGAA+ABCwPAAQkFQAOAE0AHAcAB4AEDQA8CCQXAIAMFgwHAAYMBwAcAwGABAYMBQGdAB+ALA+ATG+ADL+AXJ+ANH0ABAYMB4BkDQAHgBycHwAEJBcABwAHgAxcEwAEJBYNgAwXAAYMBryzCRwGDAUADQBPAA0APwJNAC0ADQBvAB0AbQAtAA8AXwAvAD0AHQAPgAxdAN0AT4CsD4AM74ANT4ANLQBdAA+APK0Ab4AMvgAsBwAFAF0ADAMAgAUAHQAMBwAGAA+AHC0APwAPAI0AHwBNAB8APQAcAwGAB4AMHQAsBgwGAo0ABAYMB4BMDgCcBgwFAA+ADCwDAYAFAB4AD4AUb4AUP4AMbwAvAB0ArwAPgCxMHCQXAAcABgwHAA0AjCwkFgwEJBYMBwAGDAQ==\"}",
"27": "{\"ir_code_to_send\": \"ByUNpgabAQ0FgAME3QFmAZugAUATwA9ACwMNBWYBQA8DDQWbAUAHQANAC0ADA90BmwFAB0ADQAtAAYALA2YB3QHgAQsAmyABQA9AAQHdAYAPQAEC3QGbYAEB3QHgBRNAD0ADAJugAQLdAZtgAUAHgF8Am2ABwAdAAUAXQAPgAwFAH0ATA90BZgFABwObAWYBQAsC3QGbYAFABwINBWYgAwGbAYALAZsBQAPAAYALBWYB3QFmAUAL4AMDQBMAm6AB4AMXQAFAD+ADAQLdAZtgAQHdAeABMwLdAZvgAAHAC+ABB+AHJwFmAeAJEwSbAd0Bm+AAAcALwAfgAwHAEwTdAWYBmyABQAcC3QGb4AQBAd0B4AETwAtAB0DLQAeAAwGbAUAPQANAAQGvLOIHRwCbIAECZgGbIAFAI4APAZsBQAtAA0ABwAdAGwINBWYgAwGbAYALAZsBQAPAAeALCwTdAWYBm6ABAt0Bm2ABAd0BgBNABwLdAZtgAQTdAWYBm6ABAt0BmyABA2YB3QFAAwCbYAFAB+ADX8ABwBdAG0AL4AMBQBNAAcAHwB8E3QFmAZsgAUAXQANAAUAHQANAAUAfQAsC3QGbYAFAC+ADA8AXAd0BQCdAAwGbAUADQAFABwLdAZvgAAED3QFmAYADAJsgAYALAJsgAQbdAWYB3QGbYAHAB0AB4AULAmYBmyABAd0BQAMBZgFAAwCbIAFABwHdAeAHB0ATAmYBmyABAt0BmyABwAsBZgGAAwCbIAHACwJmAZsgAQLdAZtgAQPdAWYBQAMAmyABAd0BQAMBZgFAA+ADy4APCWYBDQWbAd0BmwE=\"}",
"28": "{\"ir_code_to_send\": \"CBYNsgaHAQsFzCADA4cBzAHgAQPgAw9ACwULBcwBzAHgAQeACwGHAUAD4AcLwA8HzAFSAcwBhwHAI0AL4D8D4A9TQBdAA+ADZ0APQAMDzAFSAYAHQAtAAwNSAcwBQAcBhwFAF0AD4AcLwA9AB0ADQCPgAwNAE8AD4AcXQA/AG+APB0AB4A8b4B8XQAEBzAHgAcsBzAHgKQMBFALgET9Ax0AD4ANXQA9AA0ATAcAswkcBhwFAA0ATwAPAD0ABQAtAA0ABQAfgAyPAD0AHQAPgAxvgAwtAAcAPwAdAAcAL4CEHgO/gA2sBzAHgAQMCCwVSIAMBhwFAE0ABQAdAD0ADwAtAB+AHA0AfQAMBzAGAP4ALAYcBQANAC0ABwAtAD8ADQBPAA8ATQAdAE8AHQAvgFwNAAeAHI0ABwBPhE+fAI4AHA1IBzAHACwCHYAFAB4ADgBtAAcALAcwB4AsDgCcBzAGAA0DHQAPADw/MAVIBCwWHAQsFhwHMAVIB\"}",
"29": "{\"ir_code_to_send\": \"Bw8Ntga3AQgFQAMDgQHrAYADALcgAUAPAbcBgANACwMIBbcBQB8FCAWBAbcBgAMCCAW3YAMBtwHgBQuADwGBAUAv4AULwAGAF0AHAusBtyABAYEB4BkDQAHgAScJCAW3AesBgQG3AYADwAsBCAWAA8AXALdgAQGBAUAfAggFt2ADA7cBgQHgAQNAAQOBAQgFQAMDtwG3AUAHQAMBtwFAMwC3IAEBCAWABwO3AYEBQAuAAwC3IAcFtwG3AYEB4AMnAQgFgANAE0ALALdgAeABB0AXgA9AB0ABAYEB4AsTQBfgFQNAAcAjAbcBgENAAcATwAcBtwHgCRtAAUAfQAEBgQGAHwGBAeARA0ABCoEBCAW3AbcBgQG3IAECCAWBYAMFtwGBAcUswkcJgQEIBbcBtwGBAcBTwA9AEwEIBYADgAsAtyAHQAEBgQFAC0ADAbcBQAtAAwa3AbcBgQG3IAEBCAWABwO3AYEB4AMLQA8At2ABAYEBwGtACwC3YAFAB8ADQAHAC+AJB0BTgD9AAQKBAbdgAQGBAUAXCAgFtwG3AYEBt2ABQAdAAwS3AQgFgWADALfgAAFAC4AD4AEb4AULQGMHCAW3AbcBgQFAAwEIBeADAwW3AbcBgQHAAwEIBUADALdgBwe3AYEBCAWBAUAHgANAAUALQAFAB0ADQAFAB+ALA0AB4AcXQAHgBxPgAQ9Aq0AD4AMT4AELAbcBgBtAAeADF+ABC+AFH0ABAYEB4AMDBwgFtwG3AYEBQAMLCAW3AQgFgQG3AYEB\"}",
"30": "{\"ir_code_to_send\": \"BxsNrAaWAQcFQAMJ1AHUAWYB1AGWAUAD4AEPA2YBBwVADwGWAcALAtQBlmABQBNAAwHUAeABI0ABA9QBlgGAFwOWAdQBgBtABwHUAeABB0ABAdQB4A8TQBdAA+ABI0ABgA8AlmABgF/gByMBZgFAF0ADgBsFZgHUAZYBQA9AAUAHQAMB1AFAF0ADwAsBlgFAF0AD4AMLQAHADwHUAUAvAWYBQCPgAwNAE4ADAZYB4AcXQA8G1AFmAdQBlmABQAcB1AGADwHUAUADwAsLZgFrApYBlgHuAGsCgAMElgHUAZYgAUAFBdQB7gDUAUAHAWYBgANAC4ADQAEB1AFAF0AHgANAAUALwAHAC+ADB+ADC8ABQBMB1AHAS0AHgAOAxwGWAcAHwAvADwHBLOIDRwGWAUABQCNAAeADD0ALQANAG8AHAdQBgF+AD+ADCwGWAUADQBdAAcALQAcF1AFmAdQBQAcAlmABQAcB1AHgARPAC0ABwAvAB0ABwAsD1AGWAUBfAdQB4AM7gA9AF0ADQAFAE0ABwA9AB0ADQAFAGwPUAWYBQAMAliABQBcFBwVmAdQBQAeAAwGWAeABD0AXQAHAGwIHBWYgAwGWAcAXQAFAD8ADQAFACwXUAWYB1AHgAQdAAQHUAcATQAsAlmAB4AEHgBtAAQLUAZbgBAFAD0ADQAFAB+ADA8ABgBPgDUMC1AGWYAHAB0ABwAvgAwfgAwtAAQQHBWYBliABBQcFlgHUAeABCwcHBWYB1AFmAQ==\"}"
},
"top": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"CBcNtQaEAQoFviADA4QBvgHAAwe+AQoFvgHsAYAPAQoFQAMDvgG+AUAHAYQBQAdAAwIKBb5gAwG+AUALQAMGvgG+AYQBviAB4AELAYQBgAtAAQGEAeAfA0B7wAPgCzMDCgWEAeANFwG+AUADAb4B4AUfAQoFwAMBvgFAVwC+YAFAB4ADQBcHCgWEAb4BhAFABwcKBb4BvgGEAUArAwoFhAFAC0ADQAvgAwNAE0ADwCfAG0ATQAtAB+ADA0AnAL5gAUAH4AMDQAHgAw/gHwtAAeADK0AB4AkP4AF3wAHAEwGEAYADQAEBhAGAJwGEAYADQAGAC0DLQAPgCw8BvyzCRwGEAUADgCNAAQGEAeABD4ALwA/AB+ADF0B7QBdAA0AXQANAC0AXwAtAB+AXA4AvwAEBhAHgEwNAX+AJHwG+AUAXQAMBvgFAA0ABQAcBhAFAE8ADQA/gBwPgAxsCCgW+YAMDvgGEAUADAwoFhAFAB0ADQAvgAwNAE8AD4AcXQA/AG+AFB0AB4AETgPcBhAHgCQNAAeABF+AFJ0ABAYQB4DMD4AVPAYQB4BEDA74BCgVAA+ABIwsKBYQBCgWEAb4BhAE=\"}",
"17": "{\"ir_code_to_send\": \"By0Nmga5AQgFgAMDuQGBAYADA7kBCAWACwPpAYEBQAtAAwe5AYEBCAW5AUATA7kBgQFACwoIBYEBuQGBAQgFuWADA7kBgQFAAwMIBYEBQAdAAwMIBbkBgDNAAQGBAeAXA4Ar4AEHQAsAuWABQAcBgQFAH0BTA7kBgQHgBQMBuQFAF0ADgAHgBx/AD0ABAYEBQEdAB0ADAQgFgAPgAQsBuQGAHwG5AUALAbkB4AEbgAtAAQGBAeAHG0APDwgFgQG5AYEBCAW5AbkBgQHgBQNAAeAPE0AB4A0bwIsEuQGBAblgAQGBAUATQANAC+ANAwG5AeAJH0AB4AcvQAFAE0ABQAfgDwMBuQHA0wEIBUADB7kBuQGBAawswkcBgQFAA+ADc0APQCNAA0ALQAMAuSABBwgFuQG5AYEBQCtACwcIBYEBuQGBAUAHQANAF4APALlgBwe5AYEBCAWBAUAHgANAAeADC8ABwBPAB0ABQAtAAUAHQANAAUAHAYEB4A9TQBdAA0AjALngBAFAD0ADQAFAB4ADgK8BuQFAM0ADBrkBgQEIBbkgAwKBAblgAQGBAYALAYEBQAPgAwuADwC5YAdABQIIBYHgAANAV0APAbkBgANAD4ALwAHgAw9AC0ABQAcBgQFAK0ADALngAAFAC+ATA0ABQB9AAUAH4AMDQAEBgQGATwGBAYADQAHAC+ANB4AvQAFACwC5IAEBgQFAA8DTCwgFgQEIBYEBuQG5AQ==\"}",
"18": "{\"ir_code_to_send\": \"CBYNowbAAQcFhGADBe4BhAHAAYADQBPADwIHBcBgA0APBQcFhAHAAYADAgcFwGADgBcFwAEHBYQBQAsLwAGEAQcFwAHAAYQBQAMDBwWEAUAHAMBgAUAHAYQBwCdAC+AFA0AB4BUTQDsHBwXAAcABhAFAA0APQAdAA0AXBQcFhAHAAeABA0APgCNAAcALAYQB4AMDQCMFBwXAAcABQAeAA0ALQAMDBwXAAYABgAuAS0ALAYQBQAfAAwIHBcAgA4AHAcAB4AEHQAvgQwPAf8AH4AlbQAHgCxfgHRPgA1dAC0DTwDtAC+AHEwG9LEJHAYQBQBtAA4ArQAEBhAFAD0AvwAtAD8ALQAcAwCABQBNAAwPAAYQBQAdAA0ALQAPgDwvAU8AHQCvgAwPgBxfgBw9AK0AT4ANfQBMAwGABAYQBQBdAA0ALwANAD0AzAMBgAUAH4AkDQCNAA0AbQAdAA0ALQAPgGwvAJ0ArQAPAD0AHwAOAgwGEAeAVA0AB4BcjgB/gHU8BhAHgNwPAz0BHwAsLBwWEAcABhAHAAYQB\"}",
"19": "{\"ir_code_to_send\": \"CB4NpwbCAQwFhSADBcIBwgGFAcAD4AMPAQwFQAMDwgHCAeABB4ALAYUBQAMG7wGFAQwFwiADBYUBwgGFAcAPA8IBhQFAA8AXQAvgHwNAQ+AHK+ADE+ADU+AHF+ADG0BDQB8HDAXCAcIBhQFAA0APQAfgAwMBDAWAA0ATgAsFwgHCAYUBQAMDDAWFAUAHQANAC8A/QAtAE8ADQA/AA0ATQAtAB+ALA8BD4AsbQBPgFx9AI+ADA+ATL+ADG+ADC+ADP+AXC8DL4AcHQDcBwCxCRwGFAUAbQANAE8AD4AMPQAtAA0AbwAfAC8APQAdAA8CnQAtAI0AD4AMLQA/gIQNAAUAvQAFAB+ABA+APU0AXQAPgAStAAQGFAeAFEwGFAUADwKtAC0AfQAPgBwvAD0AHQAPAI+AHC8APQB9AA8APQAfgLQNAAcA7QAHAC+BLB0AB4AFX4QMXwBfgA9NAHwsMBYUBwgGFAcIBhQE=\"}",
"20": "{\"ir_code_to_send\": \"CBsNpQbDAQoFhSADBcMBwwGFAcADAwoFhQHgAwvAD8AHQBsCCgXDYAMBwwHACwGFAUALQANACwPzAYUBgAsAw2AHwA8BwwHgIwNAAeAJLwMKBYUB4A0XA8MBCgXgBRtAD0ADgH9AAQGFAeAHA0AfBQoFwwHDAUAHgANAC0ADQA9AB0AD4A8LwBtAH0ADwA8Aw2ABQAfgOQOAvwGFAeBHA+AXV0DPQANAJ0AHQH9AB0APQAsBtixCRwGFAUATQANAE8AD4AMPQAtAAwDDIAGAB0ALAYUBQAtAA+AHC4APAMNgBwfDAYUBCgWFAUAH4EMD4A9TQBdAA+ADa0APQAPgAxPgBwtAH0ADQBdAB0ADQAtAA+ALC0FD4AMXwCdAE0ADwA9AB+BTA0CH4C9f4BE7QAEBhQHAA0DPQANAD0AHQDcLCgWFAcMBhQHDAYUB\"}",
"21": "{\"ir_code_to_send\": \"BxgNoAbEAQUFgAMF8QGEAcQBgAMHBQXEAcQBhAFAAwEFBYADgAsAxGAHBsQBhAEFBcRgAwHEAeAFC8APAcQB4AkLAMRgAQGEAeADa0APQAPgCxNAF+ALAwMFBYQB4A0XBcQBBQWEAeALSwMFBYQB4AsXBsQBhAEFBcQgAwGEAUAfAQUFgAMBxAGAAwcFBcQBxAGEAcAbQAtAAwcFBcQBxAGEAcADAQUF4AEDQBMDBQWEAUAH4BMDQFPgEx/gIRtAAeAPL0AB4A0b4CN/AQUFgANAMwMFBYQBwFMBwCxCRwOEAQUFgAPAF0AHBwUFxAHEAYQBQAMBBQWAA8ALQAdAAwEFBYAD4AcLwA9AB0ADAwUFhAFAB+BDAwcFBcQBxAGEAeAHAwEFBYADwBdA88ALAwUFhAHAC+AHBwEFBYADQBcBBQWAA0ALQAMDBQWEAUAHQAMDBQWEAUAHQAMDBQWEAUAHwAMBBQXgAQNAEwMFBYQBQAfgDQNAAeAPG+B1F+EDM+ADiwEFBYADQBMLBQWEAcQBhAHEAYQB\"}",
"22": "{\"ir_code_to_send\": \"Bx0NpQaqAQYFgAME4wF8AaogAUAHQBNABwOqAXwBQAtAA0ABgAcFfAHjAaoBQAtAA+AFCwV8AaoBfAGAFwJ8AaogAUALAaoBQAtAA0ABAXwBgBsBfAGAA0ABBHwB4wGqIAFABwJ8AapgAQR8AeMBqiABQAfgAQMAqiABgFOAAUAbA6oBfAFAB0AXQANACwGqAYADgA8QqgEGBXwB4wF8AaoBfAHjAaogAQF8AYADA6oBBgWAAwWqAXwBBgVAAwGqAYABgAsH4wF8AaoBfAGAFwF8AUAPgAtAAQV8AeMBqgFAD8ADA6oBfAFAC4ABAXwBgAMDqgHjAUALgAGAC0APQAOAAeAJEwF8AUATQANACwCqYAEEfAHjAaogAQF8AYADBaoB4wF8AUADAaoBwANAAUALQAEBfAFAG0ADQAsAqmABAXwBQA9AA0ALAKpgAQF8AUAPQANACwCqYAEBfAGAx4AHQAtAH0AHgAEDfAG2LOIFRwSqAXwBqmABAXwBgCcCfAGqIAFAC0ADQAGAB+AFF4BXAXwBQANACweqAXwBBgWqAUABQA/ACwaqAXwB4wGqIAECfAGq4AABwAtAB0ADQAHgAQcE4wF8AapgAeABB0ATBAYFfAGqYAEBfAFADwCqoAEBBgWAAwGqAcATAXwBQBMBqgHAB0ABAnwBquAGAUAjQANAAQIGBXxgAwCqYAEKfAEGBaoBqgF8AaogAeABCwF8AYALQAEBfAFAAwEGBcADA6oBqgFACwGqAeADm8ABgBMBfAGAA0ABBHwB4wGq4AgB4AkTAnwBquAAAeADC0AB4AcPgAEB4wHgBxcBfAGAEwJ8AargAAEEfAHjAaogAQF8AYAD4AMBAXwBQMcBqgGAB4ALDaoBBgV8AeMBfAGqAXwB\"}",
"23": "{\"ir_code_to_send\": \"BycNqwatAQwFgAMIrQF+AeMBfgGtIAFAEwOtAX4BQA9AC0ADwAuAAeABFwGtAeAFCwPjAa0BwC8DrQF+AUALBa0BfgHjAYADAK1gAQF+AeABDwJ+Aa1gAQF+AcATQAcArWABAX4BQAvgAwMArSABQFNAEwCtYAEEfgHjAa0gAQF+AUAXQAMErQF+Aa3gAAEBfgFAE0ADBK0BfgGtYAEFfgHjAX4BwAdAG0ADQBMBDAVAAwatAa0BfgGtIAEBDAVAB4ADAwwFrQGAAcALAn4BrWABA34BDAVAAwCtYAcHrQF+AQwFfgFAB0BTQAeAA0ABAX4BwBNAB0AD4AMTQAsArWAB4AEHgCNAAQJ+Aa1gAQF+AeANEwCtIAHgAxtAAQF+AeABA0ABQA9AAcAHQAHAC0AH4AEDwE8CDAWtoAMTfgGtAX4BDAWtAa0BfgHjAX4BuCziA0cCfgGtYAGAB4APQAsBfgFACwUMBa0BrQFABwF+AUA7AK0gAQEMBYADA60BfgHgAwtAHwYMBX4B4wGtIAEKfgEMBa0BrQF+Aa1gAQF+AcAXQAsArWABBX4B4wF+AUAHgANAAQF+AeATE+AFU0ABAn4BrSABQBcBDAVAC8ADQAEBfgFAEwoMBa0BrQF+AeMBraABAn4BraABAgwFfiADA60BrQFAB0ADDq0BrQF+AeMBfgEMBX4BrWABAX4BQAtAEwCtIAEHDAWtAa0BfgGADwF+AUAPAQwFQAcCfgGtIAGAB0ALQANAAQR+AeMBrSABQAcCfgGtYAHgAQfgERMBfgGAA0ABAX4BgCcBfgGAA0ABBH4B4wGtoAECfgGt4AgBwBPgAwfgAwtAAcAP4AUBAeMBgBcBDAVAAwB+YAdAAQsMBa0BrQF+Aa0BrQE=\"}",
"24": "{\"ir_code_to_send\": \"Bz0NqAa9AQUFgAMHvQGEAesBhAFABwcFBb0BvQGEAUAPAgUFvWADwAsDvQGEAUADAgUFvWADgBeADwO9AYQBQAMHBQW9Ab0BhAFAAwcFBb0BvQGEAeABA0AB4AEPQD/gAw/gAQtAAeABD0AnQANAEwcFBb0BvQGEAUADwBNACwEFBUADBb0BvQGEAcADAgUFvSADgAcDvQGEAeALAwIFBb1gAwG9AUALQAMFvQG9AYQBQFsHBQW9Ab0BhAFAAwcFBb0BvQGEAUADBwUFvQG9AYQBwAMCBQW94AAD4AE3QAEBhAFAD0AH4BEDQAHgEx/gPRuAh0ABAYQB4BkDQAEDhAEFBUADAL2gBwmEAb0BhAEFBYQBQAdATwGPLEJHA4QBBQWAA0AXwAMDBQWEAeADCwUFBb0BvQFABwGEAUAHQAMBBQWAAwC9IAECBQWEYAMBvQGAAwMFBYQB4AELAL1gC0BzQAkBvQHgAQeAEwGEAeABA0AB4AMP4A0LBwUFvQG9AYQB4AUDBL0BBQWEIAMBvQGAAQGEAUADAQUF4AEDQA8AvWABQAfgAQMBBQWAA0ATAQUFgANAC0ADBwUFvQG9AYQBQAMDBQWEAUAHQAMDBQWEAUAHwAMBBQVAAwC9YAcHvQGEAQUFhAFAB+AZA0AB4A8nQAHgDxvgRxdAAeAJUwIFBb0gA0AHgAMPvQGEAQUFhAG9AYQBvQGEAQ==\"}",
"25": "{\"ir_code_to_send\": \"CCMNtwaGAQUFxWADB8UBhgH1AYYBQAcDBQWGAUAHQAMCBQXFYAMBxQGACwPFAYYBQAMBBQVAAwPFAcUBQAdAAwXFAcUBhgFAAwcFBcUBxQGGAUADAwUFhgFAB+BDAwMFBYYBwKvgA1cCBQXFYAMDxQGGAeALAwMFBYYB4A8XBQUFxQHFAYAHBwUFxQHFAYYBQAMDBQWGAUAHQAMDBQWGAUAHQAMHBQXFAcUBhgHAAwEFBUADAMVgBwfFAYYBBQWGAUAH4McDAQUFgAPA1wGwLMJHBYYBBQWGAcAXQAcDBQWGAUAHQAMBBQWAA8ALQAdAAwEFBYAD4AcLwA9AB0ADAwUFhgFAB+BDAwMFBYYB4AtPAQUFgAPgCxtAEwMFBYYBQAfgBwMBBQWAA0AXAQUFgANAC0ADAwUFhgFAB0ADAwUFhgFAB0ADAwUFhgFAB8ADAQUF4AEDQBMDBQWGAUAH4McDAQUFgAMHxQGGAcUBhgE=\"}",
"26": "{\"ir_code_to_send\": \"BxkNpwbCAQUFgAMH8wGGAcIBhgFABwcFBcIBwgGGAUADAgUFwmADAcIBgAsDwgGGAUADAgUFwmADAcIB4AULgA+AB4ALAMJgB0BXAcIB4AUD4AsT4Acj4AEPQAGADwcFBcIBwgGGAeAHAwIFBcJgAwPCAYYBwAMHBQXCAcIBhgFAAwcFBcIBwgGGAeAHAwEFBUADA8IBwgGABwUFBYYBwgGAAwMFBYYB4AELAMLgAgtAF0ABQAcDhgEFBeABA8APQAfgMQNAAeAzP+A3O0ABBYYBBQWGAUAHwAMBBQWAA8APAaAsQkcDhgEFBYADwBdABwMFBYYBQAdAAwEFBYADwAtAB0ADAQUFgAPgBwvAD0AHQAMDBQWGAUAH4D0DQAEFhgEFBYYBQAfgBwMBBQWAA+ADFwMFBYYBwA8DBQWGAcAL4AMHAQUFgANAEwEFBYADQAtAAwMFBYYBQAdAAwMFBYYBQAdAAwMFBYYBQAfAAwEFBeABA0ATAwUFhgFAB+CFA0AB4CWTAwUFhgHgATMEwgEFBYZgAwfCAYYBwgGGAQ==\"}",
"27": "{\"ir_code_to_send\": \"CCMNpAaEAQMFxmADB8YBhAHyAYQBQAdAEwPGAYQBQANAC0ADAcYBgAsDxgGEAUADAQMFQAMDxgHGAUAHQAMFxgHGAYQBQAPgBQsBhAFAE+AjA8CH4A8zQFPgCyMCAwXGYAMDxgGEAeADA0AXQC9ABwPGAYQB4AcDQBcKAwWEAcYBhAEDBcYgAwOEAcYBgAMHAwXGAcYBhAGAPwGEAUALQAPgAwvADwIDBcYgAwWEAcYBhAHAB0A3QA/gdwPgM4fAy0DDQAtAA0ALQAMBvCxCRwPGAQMFQAMDhAHGAeABA+ADD0ALQANAH8AHwAvAD0AHQANAF0AD4A8LQBvgCQNAAeABF+Ab7+ADX+ADO0AXQAPgAxNAC8ATwAdAE+ADA0AXQANAE0AHQANAC0AD4BsLwCdAK0ADwA9AB+C7A8DTQMtACwsDBYQBxgGEAcYBhAE=\"}",
"28": "{\"ir_code_to_send\": \"BxYNtAbAAQoFgAMF7AGGAcABgANAEwPAAYYBQANAC0ADAcABgAsDwAGGAUADQBNAAwHAAeABC8BDAwoFhgHgAQsFwAHAAYYB4AMDwBvgAxPgCwvgBSdAAQGGAUADAwoFhgFAB+AHA0AXAwoFwAHAN0AHAQoFgAMDwAGGAUALQAfgBwNAFwUKBcABwAFAB4ADQAtAA0APQAdAA+AFCwXAAcABhgHAAwEKBeABA0ATQA9AB0CDQAfgiQNAAeAHl0AB4AUTQMdAA8AXAgoFwCADA4YBwAGAAwGxLEJHAYYBQBNAA8AXQAfgAw9AC0AD4BcXwCPgBScBwAHgAxcBwAHgPQPgD1NAF0ADAMBgAQGGAUHDQA9AA0APwAdAC+ADA0AXQANAE0AHQANAC0AD4BsLwCdAK0ADwA9AB+ANA0ABwBtAAcAL4AsHQAHgCxfAE0ABwAvgAwdAAUAPQAFAB0ADQAFAB+AhA0DPQAPAM0ALCwoFhgHAAYYBwAHAAQ==\"}",
"29": "{\"ir_code_to_send\": \"ByUNnQazAQYFgAMH5AGAAbMBgAFAB0ATgAGAC0APgBcAgGAHBrMBgAEGBbMgAwiAAbMBgAEGBbNgAwOzAYABQANAD0AvA7MBgAFACwOzAYABwA9ACwCzYAHgAwcBgAFAH8ADQA+AAwGzAUATALNgAQGAAYALAYABwFNAC0ADQBdAA0AXQANAC0ADALNgAUAHAYABQBdAA+AFF0AB4AEbAbMB4AULQCvgAzMHBgWAAbMBgAHAFwOzAYABgAMDswEGBcADAYABgB8DgAGzAcADQAEBgAFAF0AHgANAAQGAAeABE0ABAYABQAPgARMBgAHAAwLkAbMgAQGAAeAFA0ABBYAB5AGAAUAHgANAAQGAAeAhEwCzIAECgAGzYAFAB0ADQAFAB+ABA0DPA+QBgAFAB0ADQAtAHwG+LEJHAoABBiDvCAYFswGzAYABs2ABAYAB4AMPAQYFQA8CgAGzIAGAB0ALAYABQAtAA0BPQAdAA0AXALMgAQUGBbMBswHACwGAAUAjQA/AB0ALALNgAQGAAeAfE0ArwANAUwCzYAFAB0ADgAFAFwgGBbMBswGAAbNgAQGAAcBfQBcFBgWAAbMBwANAAYALQBdAAwCzIAFAB0ADALNgAQqAAQYFswGzAYABsyABAQYFQAeAA0ALwFtAE0APgAMDswGzAYALQAcAs+AEAUAPQANAAeALB8ATAbMB4AFbwAEBgAHgCxMAs2ABQAdAA+ADAUAPQANAAeAHB0AB4AMT4AMLQAFAD8ADgAHgAdfgAQsDswGzAQ==\"}",
"30": "{\"ir_code_to_send\": \"BxMNqQasAQoFgAMGrAGAAeIBrCABAYABQBMD4gGAAUADQAtAA4ALAIBgBwasAYABCgWsYAMBrAHgAQtAIwesAYABCgWAAUAHQANACwLiAawgAQGAAYADQAFAC4ABAeIBgAvABwOsAYAB4AMLAKxgAQGAAcATQAcHCgWsAawBgAHgAQNAAQGAAUAXQAMErAGAAaxgAQGAAYAPAawBQAdAAwSsAYABrGABAYABQEtAA0AXAwoFgAHgAQsFrAGsAYABQAMGCgWAAeIBrCABCoABCgWsAawBgAGsIAGAC0AB4AEPQBNAAwPiAYABQAeAAQGAAUAPQAeAA0ABBIAB4gGsIAFABwKAAaxgAQSAAeIBrCABAYABgANAAUALQAEGgAHiAYABrGAB4AEHgBMBgAGAA0ABAYAB4CETAKwgAQGAAYADQAFAC0ABQAdAA0ABAYABwMcECgWAAawgAUAHBwoFrAGsAYABQAMBryxCRwOAAQoFgANAEwCsYAEBgAFAE0AHAKwgAQEKBYADB6wBgAEKBYABQAcD4gGAAUALQAOACwGsAUADA6wBgAFAA8ALgBsCgAGsYAHgAwfgAwtAAQGAAUArAKxgAeABB4ATAYABgANAAQGAAUATAwoFrAHgBQEBgAFAA0AXBQoFgAGsAUADQAEBgAGADwGsAUAHQANAPwGsAcADQAEBgAFAFwUKBawBrAFAB0ADBqwBrAGAAawgAQEKBYAHQAGAC4APBwoFrAGsAYABgE8BrAFADwIKBYAgAwGsAUABBQoFgAGsAcADQAEBgAGAKwGAAYADQAEBgAHgARPAAQKAAaygAYAb4A8B4AsnwBMEgAHiAaygAQKAAaygAYAT4AEP4A0B4AEfA+IBgAGAxwWsAQoFrAFAAUAHCwoFgAGsAawBrAGsAQ==\"}"
},
"high": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"BxcNtQbBAQsFgAMDwQGHAUADA+sBhwFAEwPBAYcBQANACwMLBYcB4AkXAYcBQAMGwQGHAQsFwSADA4cBwQGAAwcLBcEBwQGHAUAD4AMLQA/gOwPgD1NAFwMLBYcBQKsBwQHgAQNAEwILBcEgAwOHAcEB4AkDQBcFCwXBAcEBQAeAA0ALAMEgAUAPAcEBgAPgDwtAH0AbwAPAD0AH4LsD4AfXQA/A1wGoLEJHAYcBQBNAAwDBYAEBhwFBg4APAYcBQANAC0ADwAtAB0ADQBNAA+AHC8APQAdAA8AjQAvgAQNAAeADD0ALQAFAB+ADA0AB4AMPQAsBwQHgDVMBhwFAF0ADQAvgAwNAE8AD4AMXwAvgAxvgAwtAH0APQAdAA+AFCwbBAcEBhwHBYAEDhwELBeABA8APQAfgrQNAAeABu8DbQBPgAwsDwQGHAQ==\"}",
"17": "{\"ir_code_to_send\": \"BxgNoAbBAQYFQAMDhgHBAeABAwcGBcEBwQGGAUADQAtAAwHBAYALA8EBhgFAAwEGBUADA8EBwQGAB8ALA8EBhgHgDwtAG+ADAwMIAoYBwA/gAwvAE8AH4AcbAwYFhgHAG+ADB0AXQAPgAxPgFwsLCAIYAQYFCAIGBcEBQAFAB0ADB8EBGAEIAhgBgAsBhgHAAwMGBYYB4A8LAgYFwSADBYYBCAKGAUAHAcEB4C0DQD/gLzvgVzcCBgXBIANABwGGAUCnA5gsGA2CRwGGAUADAcEB4AED4AMPQAtAA0AfwAfAC8APQAdAA0AXQAPgDwtAG+AZA0ABQCdAAUAH4AkD4ANf4AMfQBdAA+ADE+AbC0AzQANAKwIGBcEgAwOGAcEBgAPgAwtAE+ADD+AHC0APQAPgBydAD+BVA0AB4FdjgF9A3wsGBYYBBgXBAcEBhgE=\"}",
"18": "{\"ir_code_to_send\": \"CDENlQa3AQQFfmADALdgAUAHAX4BQBMAt2ABBH4BBAW3YAMBtwGACwe3AX4B6QF+AeAHF0APA7cBfgFAA0ALQCMDtwF+AUALA7cBfgHAD4AHQAEBfgHAA4ATAX4BgANAAQF+AeAFEwF+AUADQBNAA+AHU8AbQBdAA0AjAbcBgAPgBQ9AAQF+AYADQAFACwG3AUAjQAMDtwF+AUAHQAOAAUAPAX4BQE/AAwMEBbcBQAtABwO3AX4BwANAD4ADCX4BtwF+AQQFtwFAJwO3AX4BgAdAAQF+AeAFA0ABgBNAI0AD4AMPwAsAt2ABQAfgAwNAAUAPQAEBfgHgAzsAt2ABQAeAA4AbQAHACwF+AYADQAHAC8AHQAHACwF+AUDHBLcBfgG3YAEBfgFAD0ADA7cBfgFAVwG+LMJHBbcBBAV+AUATA7cBfgFAB0APQAtAA0ALQAPAC0AfgAsDtwEEBeADCwW3AbcBfgFAHwQEBX4Bt2ABCn4BBAW3AbcBfgG3YAEBfgFAH0AHgAPAAcAPQAdAAeABB4AvQAECfgG3YAEBfgHgAVMBfgFAA4AjAX4BQBcDBAV+AcAPALcgAUAPAbcB4A0DgCcDtwEEBUADgA8BBAWACwC3YAEFfgEEBX4BQCdAA+ADD0AXALdgAQF+AUAbQA/AA0ATQAsAt2ABQAdAA0ABQAfgBQNAOwC3YAEBfgGACwF+AYADQAEBfgHgARMD6QESAUAFALdgAUAL4AkBQBUCfgG3IAEAfiABQAXgCQNAAQV+AekBfgFAB4ADQAEBfgHgCxOAxwF+AcADQA8LBAW3AbcBfgG3AbcB\"}",
"19": "{\"ir_code_to_send\": \"BxINpwa9AQYFgAMDvQGDAcADQBMDvQGDAUADQAtAAwG9AYALA70BgwFAA0ATQAMB6gHgAQsDvQGDAUADQBcDvQGDAcAbA70BgwFAA0APAL0gAcAHA70BgwGACwGDAeARA0AB4AUfAwYFgwHgBxNAD0AXCAYFvQG9AYMBvWABAYMBQF8DBgWDAUALQANAD+ADB0ALAgYFvWADAb0BQAtAAwG9AcAnQAsDvQGDAcADAwYFgwFACwcGBb0BvQGDAeADJ0ATQAMHvQGDAQYFgwFAB4ADQAHAC+AHB0ABwBNAAcAL4A0HwG/gDR9AAeALG0AB4AcXQAFAE0ABQAfgEQMHBgW9Ab0BgwFAAwEGBYADQAtAAwG+LEJHAoMBBuAEF0ABgBNAB0AD4AEfCb0BBgW9Ab0BgwFAywEGBYADQA/gAwuADwC9YAcHvQGDAQYFgwFAB+AdA0AB4BUrwHsAvWABQAfgAQNAa0ADQCMAvWABQAcBgwFAEwC9YAFAB+ADA0ABAYMBQB9AA+AHC8APQAeAAwG9AeABJwO9Ab0BwBcDgwEGBeABA4APAL1gBwG9AeADA0AB4AMPQAtAAUAH4AMDQAHgAw/gAwtAAeADD0ALQAFAB+AXA0AB4Bcj4AkfAwYFgwHAF0ALCwYFgwG9Ab0BvQGDAQ==\"}",
"20": "{\"ir_code_to_send\": \"BxYNpQbBAQEFgAMH8QGEAcEBhAFABwABIBNABwTBAYQBASALAAEgAwHBAYALA8EBhAFAAwABIBMAASADAcEB4AULwA8DwQGEAUBDAAGgI0AP4AcDQB/gBxPgCw/gBycAAeAKU0AjAAEgFwABIAMDwQGEAUAD4AETgAtAE+ADA0AfQA8HAQXBAQEFhAFADwEBBUALBcEBwQGEAUADAwEFhAFAB8ADBQEFwQHBAeABB0ALQAMAASAXAQEFQAcBhAHARwPBAYQB4DEDQAHgBz9AAeAbE+AHI+AlD0C/wDMAASDPBwEFwQHBAYQBQAMBAQVAAwXBAcEBhAFAAwG4LEJHAoQBASATBQEFhAHBAeABAwcBBcEBwQGEAUADAQEFgAPAC0AHQAMAAeAGFwABIA9AF0ADAAHgCAtAAQGEAeA/AwAB4AJf4ANTAAEgFwABIAPgCRMDwQHBAeAFFwDBYAFABwOEAQEFgAPgBwvAD0AHwAMAASArQAsAAaAHQAtAAwABIA8AAaADwA9ABwDBYAHgAwdAC+ChAwAB4ALTQLcAAeADDwIBhAE=\"}",
"21": "{\"ir_code_to_send\": \"BxYNpQbBAQEFgAMH8QGEAcEBhAFABwABIBNABwTBAYQBASALAAEgAwHBAYALA8EBhAFAAwABIBMAASADAcEB4AULwA8DwQGEAUBDAAGgI0AP4AcDQB/gBxPgCw/gBycAAeAKU0AjAAEgFwABIAMDwQGEAUAD4AETgAtAE+ADA0AfQA8HAQXBAQEFhAFADwEBBUALBcEBwQGEAUADAwEFhAFAB8ADBQEFwQHBAeABB0ALQAMAASAXAQEFQAcBhAHARwPBAYQB4DEDQAHgBz9AAeAbE+AHI+AlD0C/wDMAASDPBwEFwQHBAYQBQAMBAQVAAwXBAcEBhAFAAwG4LEJHAoQBASATBQEFhAHBAeABAwcBBcEBwQGEAUADAQEFgAPAC0AHQAMAAeAGFwABIA9AF0ADAAHgCAtAAQGEAeA/AwAB4AJf4ANTAAEgFwABIAPgCRMDwQHBAeAFFwDBYAFABwOEAQEFgAPgBwvAD0AHwAMAASArQAsAAaAHQAtAAwABIA8AAaADwA9ABwDBYAHgAwdAC+ChAwAB4ALTQLcAAeADDwIBhAE=\"}",
"22": "{\"ir_code_to_send\": \"BykNpQapAQUFgAMD4gF7AcADAQUF4AEPAgUFqWADAakBgAsDqQF7AUAnAgUFqWADBeIBqQEFBYADgAGAGwviAXsB4gGpAQUFqQFAAQHiAUAPBXsBqQF7AUAHQAMAqeAAAQF7AUAPQANACwCpIAFACwLiAakgAUAHAnsBqWABAXsBQAsDBQWpAYABAXsBQA9ABwCpIAEBBQWAA4ATQAGAF0ABAwUFqQHgAQEEewHiAakgAUAHBHsBBQWpYAPgAwsEqQF7AakgAQcFBakBqQF7AUAbQAMFBQWpAakBwAfAAYAPAQUFgAMBqQGADwapAXsB4gGp4AYBAnsBqaABAeIBgAvABwOpAXsB4AELwAHAEwJ7AangCAFAE0ADQAEEewHiAakgAQJ7AangAAEBewGAE0ABAnsBqWAB4AEHBOIBewGp4AQBAXsB4A8TBAUFewGpIAEBBQWAA8ABAbksQkcEewEFBalgAwLiAakgAQJ7AakgAQMFBakBwA8BBQVAAwOpAakB4AEHAKkgAQIFBXsgAwGpAUABAQUF4AELAakBwAsCewGpIAEFBQWpAakBQAtAA+ADAQZ7AeIBewGpYAHgAQeAEwF7AYADgAHgBxMBBQXAH0AHQAEHewHiAakBBQVAA4ALgAECewGpoAEFBQWpAeIBwA/ABwGpAUATAgUFqWADBeIBqQEFBYADQAsBqQGAG+ABAeABDwMFBakB4AMBAQUFQBtAAwGpAUABCAUFqQGpAXsBqWABAXsBwE8E4gF7AalgAQR7AeIBqSABAXsBgAPgAwFAE8ABwAsFewHiAXsBQAdAAwLiAakgAUAHAXsBQAeAA0ABAXsB4AETwAFAEwCpIAFABwJ7AalgAQR7AeIBqSABAnsBqeAIAQZ7AeIBewGpYAGABwEFBUAHBHsBBQWpIAMJewGpAXsBqQF7AQ==\"}",
"23": "{\"ir_code_to_send\": \"ByMNpgbEAQMFQAMDhgHEAeABA0APA/YBhgFAEwIDBcRgAwHEAYALA8QBhgFAA+AHF0APA8QBhgFAA+APC0AbQAPAW0AL4CsDAwMFhgHgBzdAUwIDBcQgAwOGAcQB4AUDQBMHAwXEAcQBhgHgCwNAG0ADAcQB4AULgA+AB0ALQAPADwcDBcQBxAGGAcADQA+AAwWGAcQBhgHAB0ALQJtAB+AdA0AB4B8r4F0nQMtAA0BvQAcHAwXEAcQBhgFAAwGVLEJHA4YBAwWAA0ATwANAE+ADC8APwAdAG0ALQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBdAA+AHZ0ATQAPgBxfAD0AbQANAD0AHQANAC0AD4AML4AMP4AsXQBNAA+ADJ0AL4LcDQNNAA0DHQAcLAwWGAcQBhgHEAYYB\"}",
"24": "{\"ir_code_to_send\": \"BzANqwbFAQMFgAMDxQGEAcADQBMDxQGEAUADQAtAAwHFAYALA8UBhAFAAwEDBUADA8UBxQGAB8ALA8UBhAHgDwsD9AGEAUAfQAPgAwtAD0ADwBPAB0ATwAPgAxPgA1/AH0AHAQMFQAMFxQHFAYQBwANAD8ADA8UBhAHgCwMBAwVAAwPFAcUBgAfACwPFAYQB4AMLQIMDAwWEAeAHF4APBIQBAwXFIAMFhAHFAYQBwAdAC+CzA0DHwANAx+ADCwX0AcUBWyxCRwSEAQMFxSADA4QBxQHgAQPgAw8CAwXFIAMFhAHFAYQBwAfAC8APQAdAA0AXQAPgDwtAG+A7A+ADX+ADT0AXQAPgCxPgBxfgCyNAE0AnQANAC0AD4AML4AMP4AsXQBNAA+ADJ0AL4LMDQM/AA0DH4AMLA8UBhAE=\"}",
"25": "{\"ir_code_to_send\": \"BxcNqQbCAQQFgAMDwgGEAcADQBMDwgGEAUADQAtAAwHCAYALB+8BhAHCAYQBQBNAAwHCAeAFC8APA8IBhAFAK0AjQAcDwgGEAcAH4AML4AMTQBfgDwPgAydAUwPCAYQBQAPgBRcJhAEEBcIBwgGEAeALAwMEBYQBwC/AB0AnAgQFwmADAcIB4AULwA8BwgGAC0AzQCsBwgHgAQdAC0ADAQQFQAMAwiAHA8IBwgGACwPCAYQB4MMDAQQF4AEDwNcBuyxCRwGEAcAbwBdAB0ATQAdAA0ALQAPAC0AHQANAE0AD4AcLwA8AwmABAYQBwCNAC+A/A+APU0AXQAPgCWdAAQGEAeANG4AXwBtAB0ADQBdAA+ADC+ADD+ALF0ATQAPgAydAC+ATA0KbAMJgAUAH4B8DQAHgHyvgPSdAp0DbwAMHwgGEAcIBhAE=\"}",
"26": "{\"ir_code_to_send\": \"BzENlgbHAQMFgAMDxwGHAcADQBMDxwGHAUADAQMFQAMDxwHHAUAHDIcBxwE7AccBhwEDBcdgAwHHAeAFC4APgAeACwDHYAcBxwHAA4A/AccB4DED4AlTAYcBQAMBAwWAA0ALwAMHAwXHAccBhwFAAwMDBYcBQAfgBwMCAwXHIAMFhwHHAYcBQAcHAwXHAccBhwFAA+ADC+ADD+AJF0ATgAOAJ4AHQAtAA0ABQAfgPwNAAeAPS0AB4A8b4CcX4APHQAvAA8BHAbgsQkcBhwHgBxdAH0ATQAdAA0ALQAPAC0AHQANAE0AD4AcLQAHAF8AbQAfgGQMDSwI7AeAbJwWHAQMF7gBABwlLAu4ASwKHAccBQAcR7gADBccBAwXuAMcBhwFLAjsBQAcDAwWHAUAHQAPgAwtAD8ADQBdAA0APQAdAA0ALQAPgAwsAxyABwA/ABwHHAYADQA/AA0ATQAtAB+BPA0AB4BVbAscBhyABQAVAA0ABQAfgJwPgA8dAC8ADB8cBhwHHAYcB\"}",
"27": "{\"ir_code_to_send\": \"Bw4NowbDAQEFgAMD7QGEAUADB8MBhAEBBYQB4AELAsMBASADBMMBhAEBoAdAGwABIAsAASAD4AcLBMMBhAEBIBcDwwGEAcAbA8MBhAHgFwNAK+AHI+ALE0AjAAGgX0ALwANAKwABIBcAASADA8MBhAHgAwMAAaATAAGgB0Ar4AcfAAGgGwABIAcAASADA8MBhAFAAwMBBYQBQAfAAwABoA8HAQXDAcMBhAHAAwABIA8AAWADDYQBwwGEAQEFwwHDAYQB4C8D4Aej4CtH4DtDQHcDAQWEAcAHCQEFwwEBBYQBwwGAAwHBLEJHAoQBASATAAEgA8AXQAcAAeACDwABIAsAASAD4BcXAAGgI4AnA8MBwwHAC4AHwA/gOwcAAeAOUwABIBcAASAD4AdjAAGgEwABoAfgCx8AAaAbAAEgBwABIAPAIwAB4AILQBMAAaAPAAGgB0ATQAMAASAPAAGgA8APQAfguwMAASDXQMcAASAHAAGgAwfDAYQBwwGEAQ==\"}",
"28": "{\"ir_code_to_send\": \"ByINvQa4AQYFgAMHuAGCAegBggFAB0ATA7gBggFAD0ALQAMBuAGAC4ABQAtAAwO4AbgBgAfACwO4AYIBwAvAPwS4AYIBuGABQAeAA0AbALggAcAHAbgBQA9AA0AB4AEHgB/AB4ABwF8AuGABAYIBwCNAF0ADA7gBggHAA0APQANAAYAHAYIB4AEDgAFAF0ADQAFABwEGBUAjQAEJggEGBbgBuAGCAcADwA8DBgWCAcATQAdADwIGBbhgAwG4AUALAYIBQAcAuCABwJ8BuAHgBwNAAeAbE8AjQAHAC+AFB4BjQAECggG4YAEBggGAEwGCAYADQAHAC8AHQAHACwGCAeAFLwGCAUADAgYFuGADAbgBQAtAAwe4AQYFggG4AYADAbEsQkcEggEGBbggAwOCAbgB4AED4AMPAgYFuCADDoIBuAGCAQYFuAG4AYIBuCABAgYFgmADALggAeADCwO4AYIBQA9ABwC4IAHgAQuADwG4AUAH4AMDQAFAD0ABQAfgAwNAAQGCAeAF3wG4AeAPU0AXQAMBuAHgAQNAD0ADQBOAB0ABAYIB4AMDAgYFuCADBYIBuAGCAUAHQAMAuKABgAtAD0ADDbgBBgW4AbgBggEGBYIBQAcAuGABAYIBQA8CBgW4IAMNggG4AYIBBgW4AbgBggHgB7sDuAGCAeAFA0AB4A8TQAHgDxvgBxcBggHgJ2vgBS8BggHgCQMEuAEGBYJgAwC4IAHACwsGBYIBuAGCAbgBggE=\"}",
"29": "{\"ir_code_to_send\": \"By4NmwbDAQEFgAMDwwGEAUADBO4BhAEBIBMDwwGEAUADAQEFQAMDwwHDAUAHAYQBQB+ACwLDAQEgAwTDAYQBASAHAAEgAwPDAYQBQAMAASAL4AMnA8MBhAHAD8AHQBPAA+AfE8AvAAEgXwPDAYQB4Ac3AAEgFwABIAMDwwGEAeAHAwEBBYAD4AczQCcEAQXDAQEgAwHDAeAFC8APAcMBgAtAOwAB4AInA8MBhAHAAwABIBcAAWADBoQBwwGEAQGgB0AL4EkDQAHgB1dAAeABE0CrAMNgAUAH4DkDAAEgzwAB4AIDwFMBtCxCRwKEAQGgG8AXQAcAASATQAdAAwABIAsAASADwAtAB0ADAAEgEwABIAPgBwvAD0AHQAMAAaAjQAsAw2ABQAfgNQMAAeAEUwGEAcADAAEgFwABIAPAD+ADBwABIBcAASAD4AMTwAsAASAXAAEgA0APCQEFwwEBBYQBwwGAAwAB4AILQBMAAaAPAAGgB0ATQbMAASAPAAGgA0ATAAEgC0AH4I8DQLPgB5vgCxPAIwABIM8AAeACAwfDAYQBwwGEAQ==\"}",
"30": "{\"ir_code_to_send\": \"BycNlQa4AQIFgAOAAQV/AesBfwFAE0AHA7gBfwFAC0ADAbgBgAvgDxfAIwO4AX8BQAvgAycDuAF/AcAPgAdAAQF/AcAD4BcTQB/AA0AzQF8DuAF/AUATQAfAA0AXQAMDuAF/AcADgA8BuAFAB0ADA7gBfwFAA0A7QANACwECBUADA7gBuAFAB4ADQAsAuCABBQIFuAG4AUALgAPAD0AHwD8DuAF/AUAPwAMBuAGADwO4AX8B4AMjQA9AA+AFE0ABAn8BuGABAX8BgBsBuAHABwG4AcATwAdAAcALAX8BgANAAQF/AYAzAX8BgANAAcALwAdAAQF/AeALJ+AFE8APAbgBQNMFuAF/AQIF4AUDwC8BuyxCRwF/AcAfQCvAGwMCBbgBgAsBuAFACwcCBX8BuAF/AcAHgAsDuAECBeAFC4AzAX8BwBfgBQtAAUATQAFAB+ADA0ABQA9AAQF/AYBHQAECfwG4YAFAB+ABA0BfgCMBfwGAA0ABAX8BQBdAA0ALALigAcAPQAdAAwG4AUADQAFAB4ADQBdAA0APAgIFuCADA38BuAGAA+ADC0ATAwIFuAFAAQUCBX8BuAHAAwG4AUAPwAMDuAF/AUALALhgAUAH4AMDQAHgAw9AC0AB4AMH4AMLQAFAD+ADA0ABAX8B4QUDAX8B4AkDQAHgBxdAAUATQAFAB0ADQAHgAQfgA1eAx4AHAgIFuCADgAcHuAF/AbgBfwE=\"}"
},
"mid": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"By8NlwbDAQMFgAMDwwGEAcADQBMDwwGEAUADQAsTAwWEAcMBhAEDBcMB7gGEAcMBhAFAC0ADAcMB4AULQB/AF8AbAcMBgAvAB0AjwAtAB+AHD+ADE+ALG+ADX0ArwANAF0ADA8MBhAHgAwNAE8ADA8MBhAHgA1NAC+ADG+ADC0ArAwMFhAFAB8ADBQMFwwHDAeABB0ALQANAFwEDBYAHAcMBQAcBhAFAB+BzA0Db4A1/QAHgDxvgCRdAy+AHA8AnAaUsQkcBhAHAH8AXQAdAE0AHQANAC0ADwAtAB0ADQBNAA4ALA8MBAwWACwPDAYQB4A8LQBvgMQNAAYA/4ANfwBNAB0AXQANAC+ADA0ATwAPgAxfAC+ADG+ADC0AfQA9AB8ADgA8BwwGABwGEAcADQA/AA0ATQAtAB+AxA0AB4DM/4AM7QAHgAw/gJQtAy+AHAwfDAYQBwwGEAQ==\"}",
"17": "{\"ir_code_to_send\": \"BxMNtQbEAQgFQAMDhgHEAeABAwcIBcQBxAGGAUADAQgFgAOACwDEYAcDxAGGAUALQAMBxAHgBQvADwHEAeAJC8ATA/ABhgHAC+ArBwMIBYYB4As3AggFxGAD4BNf4AsbwDcBxAFAC0ADBcQBxAGGAUADAwgFhgFAB0ADQAtAA0ALQANAC0AD4AMLQA9AY0AHQBfgtwPgA8dAC+ADA0DbAaosQkcBhgHAF0ATwANAE+ADC8APwAdAG0ALQAMAxCABQAdAAwHEAYAD4A8LwB/gNwfgA1/gA0tAF0AD4AMT4A8LQevAG0AzQANAD0AHQANAC0AD4AcL4A8PQBfAA+AHN0AP4AEDQAHgAw/glQtA08CjQAvgAwMDxAGGAQ==\"}",
"18": "{\"ir_code_to_send\": \"BykNogbCAQgFQAMDhwHCAYADC+8BhwEIBcIBwgGHAUADAQgFQAMDwgHCAUAHAYcBQB+ACwHCAUADA8IBhwFABwUIBYcBwgGAA0AL4AMnAcIB4AEPQAvgLwOAUwHCAUBfAcIB4AkDQBdAA+ADG+AHD+ADG8ALAggFwmADAcIBQAuAA0ALQAMHCAXCAcIBhwFAAwEIBUADA8IBwgFABwGHAeAHBwIIBcIgAwWHAcIBhwHAB0AL4AEDQAHgAw/gZwtAAeAHc0AB4AcT4AUPwMtAB8ADwCMBsyxCRwGHAeAHF0AfQBNAB0ADQAtAA8ALgcsBhwFAE0AD4AcLwA9AB0ADwCNAC+A/A+APU0AXQAPgA2fgBw/gAxvAC0AjQANAD0AHQANAC0AD4AcLwA/gCwdAE0AD4Ac3QA/gGQNAAeAbJ+BpI+AD00ALCwgFhwHCAYcBwgGHAQ==\"}",
"19": "{\"ir_code_to_send\": \"CBoNoQbJAQUFh2ADBckBTwHJAUAHB4cBBQWHAckBgA8CBQXJYAMByQGACwrJAYcByQFPAQUFh2ADBckBhwEFBYADQAtAAwcFBckByQGHAUADBwUFyQHJAYcB4AUDA08ByQHgLxMFhwEFBYcBQAfgBwMBBQWAAwHJAeAFXwUFBYcByQHgEQMBBQWAA0AjAQUFgAMByQGAQwUFBYcByQGAAwEFBYADQA8FBQXJAckB4AUHAQUFQAMJhwHJAYcBBQWHAUAHAckBgEcByQHgWwPgR2sETwEFBYdgAwXJAYcBBQXgAQNAD0ADAZMsQkcEhwEFBckgAwOHAckB4AEDAwUFhwHADwEFBYADQA8DBQWHAUAHQAMBBQWAA+AHC8APQAdAAwkFBYcByQE4Ak8BQAfgPQMDBQWHAeALSwEFBYAD4AcbAwUFhwHgBxNAAcATAQUFgANADwEFBYADQAtAAwMFBYcBQAdAAwEFBYADwAvgBwcBBQWAA+ADF0ALwANAAcAL4J8HAQUFgANArwEFBeABAwfJAYcByQGHAQ==\"}",
"20": "{\"ir_code_to_send\": \"ByANvQa7AQkFgAMIuwGBAesBgQG7IAFAEwG7AUALAYEBQAtAA0AbBQkFgQG7AYADQAsFCQW7AbsBgAfAC4AnAbsBgAEBgQFAC0ATALtgAeABB4ATAoEBu2ABQAcBgQHgARMCgQG7YAEBgQHAE8AHQBPgAVMBgQFAA8AbQBdAAwO7AYEBwANAD0ADA7sBgQHgAQNAAeABDwEJBUADA7sBuwGABwUJBYEBuwGAA0AL4AFfAYEBQANAD0AHQCMFCQW7AbsBQAfgAQPAD0AHQCsAu2ABQAfgBQOAGwGBAcAD4AcPgBdAAcAL4AcHQAHgJxNAAUAzQAFAB+ADA0AB4AMPQAtAAQGBAeAB3wC7YAsBuwGAAwGtLEJHA4EBCQWAA8AXQAdAE0AHQAMCCQW7IAMFgQG7AYEBwAcAuyABQAtAAwC7IAFAB0ADAbsBgAPgAQsBuwHgAQsBgQHgGwPhBUtAAQGBAeAFAwG7AeAFU0ABgCNAF0ADwA9AB0APQAPgC1fAEwIJBbsgAwKBAbsgAQEJBUADQAuAA+AFCwC74AAPBwkFgQG7AYEB4AMHQAtAA+ADF0ALALtgAUAH4CMDQAHgBy9AAQGBAcC3QAsAu2ABQAfgAwNAAUAPQAFAB0ADQAFAB+ADA0ABQA9AAUAHQANAAUAH4AMDA7sBCQVAAwAFoAcJuwG7AbsBuwG7AQ==\"}",
"21": "{\"ir_code_to_send\": \"CBgNoQbDAQkFh2ADAcMB4AEDQBPADwIJBcMgAw2HAcMBhwEJBcMBwwGHAUADQAsKCQWHAcMBhwEJBcNgAwPDAYcBQANADwPDAYcBQAMECQWHAcNgAUAH4BEDA/ABhwHgEx/gAxsHCQXDAcMBhwHgBwMBCQWAA+AHF0APQBtAB+ALA0AbQANAg0AHQAPAJ+AHC0APwCdAI0APgAcBwwGAA8APgAcBwwHgNwNAAeA3Q+AxP8DHQAfgAwPAUwGULEJHAYcBwBvAF0AHQBNAB0ADQAtAA8ALQAdAA0ATQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBdAA+ALZ+APF0ArQBtAA4ALA8MBCQWACwPDAYcB4AcLwA/gCwdAE0AD4Ac3QA/gJwNCq+AnM+BLL+ADz0ALwAMHwwGHAcMBhwE=\"}",
"22": "{\"ir_code_to_send\": \"BxQNtAaIAQoFgAMBxgHgAQNAE8APQAtAA0APBwoFxgHGAYgBQAMBCgWAA4ALA8YBCgWACwvGAYgBCgXGAcYBiAFAAwMKBYgBQAfgQwPgD1MCCgXGIAMDiAHGAeABA8APwAfgAxvAC0AbQANAD0AHQANAC0AD4AcLwA/gCwdAE0AD4Ac3QA/gswNA0+AHA8DPAb8s4itHAYgBwD9AC0ADQA9AB0ADQAtAA+APC0Ab4DsD4ANf4ANPQBdAA+AHE0AP4AcXQAFAF0ADQBtAA+AHC8APQAdAA0AjQAPAC+AHB0AbQAPgAxdAC+BDA0AB4BtPQAHgGyfAI0ABwAvgBwdA0+AHAwfGAYgBxgGIAQ==\"}",
"23": "{\"ir_code_to_send\": \"BygNtAaFAQgFQAMJvwG/AYUB7AGFAUAH4AMPQAtAA0AbQAcDvwGFAUADQAtAA8AXAwgFhQFACwC/IAEHCAW/Ab8BhQFAD8ALQA+AA0ABwAvgDQdAN+APG0AXQFPgCyMBCAVAAwW/Ab8BhQHgAwNAE0ADA78BhQHgBwNAR0AbBwgFhQG/AYUBQAdAA0ALQAMHCAW/Ab8BhQGAJwGFAUADQA/gAQcDvwG/AUAPA78BCAVABwWFAb8BhQHAB0AL4AEDQAHgAQ9AUwC/YAFAB+ADA0AB4AMP4BELgEMBhQHgCQNAAeAHF0AB4AcT4BUPQMeAAwC/oAdADwW/Ab8BhQFAAwHFLOIDRwGFAUATwAPgAw9AC0ADQBvAB8ALwA9AB0ADQBdAA+ABCwG/AeABCwGFAeAvA+EHK+APU0AXQAPAZ8A3QBNAA8AXAL9gAUAHgANAG0ADQA9AB0ADQAtAA+AHCwUIBb8BvwFABwGFAeAHB0ATQAPgAxdAC8CHQAvgcQNAAeApf0DPAggFvyADQAfgAQMHvwGFAb8BhQE=\"}",
"24": "{\"ir_code_to_send\": \"BxkNpwbEAQgFgAMDxAGFAUADB/IBhQEIBYUBQAdAD0ALQAOACwDEYAcDxAGFAUALQAMBxAFAC0ADBcQBxAGFAUADAwgFhQFAB0AD4AMLQA/gAwPAY+AnEwcIBcQBxAGFAeAHA0AXBQgFhQHEAeABA0APgAMFxAHEAYUB4AsDQBsHCAWFAcQBhQFAB0ADwJtAC0AXQAMCCAXEIAMBhQFAG0AHA8QBhQHgAwdAC0AD4AMXQAvgIQNAAeAjL+AFK0CX4AcT4E8PwOcBtSxCRwGFAUAPQAPgA2/gAw9AC0ADQB/AB8ALwA9AB0ADQBdAA+APC0Ab4DsD4ANf4ANPQBdAA+ALE+AHF+ALI0ATQCdAA0ALQAPgBwvAD+AJBwDEYBMHCAWFAcQBhQHAB0AL4MsDBwgFxAHEAYUB\"}",
"25": "{\"ir_code_to_send\": \"CA4NpwbDAQoFhyADBcMBwwGHAcAD4AMPQAtAAwHDAUALAYcBQAdAA0ALQAOACwHDAUADQAEAhyABAwoFhwFACQcVAgoBCgXDAeANAQIKAYEgHwCHIAEBwwHgJQMDCgWHAUAzAxUChwFAB8ADQBdAA8AP4AcH4A8bAgoFwyADBYcBwwGHAUAHQANAC0AD4AcLwA/gCwdAEwUKBcMBwwFABwGHAUAH4LcD4A/HwBcBvCxCRwGHAUAPQAPgA+/gAw9AC0ADQB/AB8ALwA9AB0ADQBdAA+APC0Ab4DsD4ANf4ANPQBdAA+ADE+ADC+APG0AXQANAK0AHQANAC0AD4AcLwA/gCwdAE0AD4Ac3QA/gFQNAAeAXI+BtH8DP4Ad/BwoFhwHDAYcB\"}",
"26": "{\"ir_code_to_send\": \"CCYNrAaIAQgFxGADA8QBiAHAA0ATA8QBiAFAA0ALBwgFiAHEAYgBwAfACwUIBcQBxAFAB0ADBcQBxAGIAUAD4AULAYgBQBPgQwPgD1MCCAXEIAMDiAHEAeABA+ADD+ADC+AFIwPEAQgFgBMBCAXgAQsHxAGIAQgFiAFAB0ADQAtAA8AL4AcHQBtAA+ADF0AL4LcDwNPgA8fAEwG5LMJHAYgBQAPgCyNAE0AbQAPAC0AHQANAE0AD4AcLwA9AB0ABwCNAD+A/A+APU0AXQAPgA2fgAw/gAwvgByPAG0AHQAPAH+AHC8AP4AsHQBNAA0A7wAdAC+C3A0DLQAHgA8cHCAWIAcQBiAE=\"}",
"27": "{\"ir_code_to_send\": \"BxkNsAbDAQMFgAMHwwGFAfABhQFABwMDBYUBQAdADwIDBcNgA8ALA8MBhQFAAwEDBUADA8MBwwFAB0ADBcMBwwGFAUADAwMFhQFAB0ADAwMFwwFAOwHDAeANA+ATG+ADM+ADJwMDBYUB4AMPwCcCAwXDYAMDwwGFAcAfQAdAF4AHA4UBwwHgCQMCAwXDIAMBhQGAI+ABCwfDAYUBAwWFAUAHQAMCAwXDYAMBwwFACwGFAYAHAMPgAAdAC0ADB8MBhQEDBYUBQAfgYwNAv+BHbwIDBcMgAwOFAcMB4AUDwBMBvixCRwGFAUAPQAPgAyfgAw9AC0ADQB/AB8ALwA9AB0ADQBdAA+APC0Ab4CkDQAHgBTfgA1/gAxtAF0AD4AMTQAuAEwHDAYAHAYUB4AcDQBdAA0AXQAdAA0ALQAPgBwvAD+ALB0ATQAPgBzdAD+CtAwPDAQMFQAPgCb8HAwWFAcMBhQE=\"}",
"28": "{\"ir_code_to_send\": \"CCINpwbCAQkFhiADBcIBwgGGAcAD4AMPQAtAAwHtAYALA8IBhgFAA0ATCgkFhgHCAYYBCQXCIAMBhgFAIwPCAYYBQAtAB0ADBwkFwgHCAYYB4BUDQAHgASPAR8AH4AMbQAsDCQWGAUAH4AcDQBdAA+ADF0APQANAE0AH4AtTQBdAA4AjAcIBQAMBwgHgAQ8BwgHACweGAQkFwgHCAUAHAYYB4AUHBMIBCQWGYAMDwgGGAUAL4AtrQBvgDwPgJy/gD0fgSxdAz+ADV8APAbMsQkcBhgFAD0AD4AsjQBNAG0ADwAtAB0ADQBNAA+AHC8APQAdAA8AjQAvgPwPgD1NAF0AD4ANnQA9AA0ATwAdAC+ADA0AXQANAEwIJBcIgAwOGAcIBQAMBwgHgAQsBhgFAC0ADwAvgBwdAG0AD4AMXQAvgGQNAAeAPJ0AB4A8b4D8XQAHgFUvA18AnBwkFhgHCAYYB\"}",
"29": "{\"ir_code_to_send\": \"CB4NsQbGAQsFhSADBcYBxgGFAcADAwsFhQHgAwvADwcLBcYBxgGFAUADAQsFgAOACwPGAQsFgAsTxgGFAQsFxgHGAYUB7gGFAQsFhQFAC0ADQA9AB+A3A0BT4AtLQBcHCwXGAcYBhQHgBwMBCwVAAwXGAcYBhQHgBwMBCwVAAwPGAcYBQAeAA0ALQAMHCwXGAcYBhQFAAwELBYADgAsAxqAHwA8BhQHAAwPGAYUBQAtAB+BjA+ELE+Azf0BPwMfAB8BPwA8BuSxCRwGFAUAPQAPAH0AH4AMPQAtAA+AXF8Aj4AsnQBPgQwPgA2vgA1dAF0AD4AMTwAtAF0ADwA/gAwdAF0ADQBNAB0ADQAtAA+AHC8AP4AsHQBNAA+AHN0AP4K8D4A/PBwsFhQHGAYUB\"}",
"30": "{\"ir_code_to_send\": \"BygNngbEAQYFQAMDhgHEAeABAwsGBcQBxAGGAe4BhgFACwMGBYYBwAsDxAGGAUADAgYFxGADAcQBwAsBhgFAC+AJJwGGAUAXwANAH0ALwAdAC+AZA0AB4AEn4AdTwBtAF0ADwA9AB8APQAcHBgXEAcQBhgHgBwNAFwcGBYYBxAGGAUAHQANAC0AD4AcLAwYFxAFAuwcGBYYBxAGGAeADB0ALQAPgAxdAC+ADA0A74AMP4AcL4Bcf4Acv4FsPQNNAA+ADa8APAawsQkcChgEGIQ9AA+ALI0ATQBtAA8ALQAdAA0ATQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBdAA+ADZ0APQZtAB0AD4AMbwAtAF0ADQA9AB0ADQAtAA+AHC8AP4AsHQBNAA+AHN0AP4AEDQAHgAw/gZwtAAeAlc0DTQAPgAzcHBgWGAcQBhgE=\"}"
},
"low": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"Bw8NqAaHAQoFgAMBxQHgAQNAE8APQAsFCgXFAcUB4AEHwAsBCgXgCQsDxQGHAcAX4AcLQA/gOwMHCgXFAcUBhwHgBwMBCgWAA+APF0Af4AcbQA9AFwUKBcUBxQFAB4ADQAtAAwcKBcUBxQGHAUADAQoFgAPAC4AHAMWgBwGHAcADA8UBhwFAC0AH4D8DA/UBhwHgP0vgI0dAx8AD4AM3QBNADwG8LEJHAcUBQA9AAwHFAeABA+ADD0ALQANAH8AHwAvAD0AHQANAF0AD4A8LQBvgOwPgA1/gA09AF0AD4AMTQAtAE8ADQA/gBwPgAxvgAwtAJ0APQAdAA0ALQAPAC+AHB0AbQAPgAxdAC+CzA0DPwAPgA8cHCgWHAcUBhwE=\"}",
"17": "{\"ir_code_to_send\": \"BysNvQa4AQMFgAMDuAGCAYADAbgBQBMBuAGAD0ALQAMBuAGAC4ABgAvgAxfACwPnAYIBgAtAAcALAoIBuGABQAfgEQNAO0AfwAfgAwuAE0ABAYIBgF8CggG4YAEBggGAGwGCAUAXQAMDuAGCAeALA8An4AMbQBNAMwMDBYIB4AELBbgBuAGCAUAD4AELQAEBggFAA4ATAbgBQAdAA0ABAQMFQBdAAwG4AcBHgAEBggFAA0ATQAMAuGABQAfgAwNAAQGCAYAf4AEHQAvAA8AbgA9AAcALwAdAAQGCAeADJ+ADC0AbgANAAcAL4AcHQAEBggHgAzdAzwO4AYIB4AEDQAGADwUDBYIBnixCRwGCAUALQAPAG0AHQA/ASwIDBbhgAwG4AUALAYIBQAcAuCABQAtAAwa4AYIBAwW4IAMCggG4YAEBggGACwGCAUAD4AMLALhgAeABB8Bj4AMTgAvAB0AB4AELgC8BuAHgDVMBggFAF0ADQAvgDwOAQwGCAYADQAEBggFAMwUDBbgBuAFAB0ADBbgBuAGCAUADBAMFggG44AABQAsHggEDBbgBuAFAB4AD4AMLBQMFuAG4AUAHAYIBQAcAuGABAYIB4At3QBdAA4AbQAEBggHgDQNAAeAPG+ADF0AB4AMPQAtAAQGCAYBjAYIBgANAAQGCAeAFEwGCAYADQAEBggHAGwcDBbgBuAGCAeAFAwm4AbgBggEDBYIB\"}",
"18": "{\"ir_code_to_send\": \"BzINmAbAAQAFQAMDhQHAAeABAwcABcABwAGFAUADQAtAAwHAAYALA8ABhQFAA0ATQAMBwAHgBQsD7QGFAcAXwBsBwAGAC0AHQB9AB+ADA+ALE+ADHwDAYAEBhQHAJ+ADX0AXwANAF0ADA8ABhQHAA+AHD8AXQAfgA0/AJ0AHQAMDwAGFAUADAwAFhQFAB+ADAwIABcAgAwWFAcABhQHgAwcCAAXAYANAAUALA8ABhQHAY0AL4BkDQAHgGyfgJyNAAeAHM0ABQBNAAUAHQANAAUAH4AUDwMvgAxfgABMALEJHgA8FAAWFAcAB4AED4AMPQAtAA0AfwAfAC8APQAdAA0AXQTfAC0AP4AMLQA/gJwNAT+AHM+APUwIABcAgAwOFAcAB4AED4AUPQAEBhQHgBQMBwAFAI0ADBsABhQEABcAgAwOFAcABgAPgAwvgAxPAF+ADB0ALQANAJ8AH4Au/QB/gIwPgLUNAAQGFAeAFA0AB4AcT4AsPQAHgARcHAAXAAcABhQHgAwMHAAWFAcABhQE=\"}",
"19": "{\"ir_code_to_send\": \"ByYNmgaXAQIFgAMB0wFAAwFoAUADQBMC0wGXYAFAC0ADAdMB4AEXBtMBlwECBdMgAwWXAdMBlwFAB0ADQAsB0wHAJwVoAdMBlwFAF0ABQAtAA0ABQAcB0wFAH4ADAJcgAQLTAZdgAQXTAWgB0wFAB8ADQA9AA0APgAcEAgXTAZcgAUAFQANAAUAHAQIFgANAC0ABBNMBaAGXIAEJAgXTAZcBaAHTAeADAwCXYAEG0wFoAQIFl2AD4AULAJdgAUAbBtMBaAHTAZdgAQPTAWgBQBNAA8ALA9MBlwFAD8ADwA9AB0AB4AEHBGgB0wGXYAFABwHTAYAPAtMBl2ABgAdAE0ADAJdgAeABB4ATAdMBgANAAQHTAUATQANACwCXYAEB0wHgBQ9AAQLTAZdgAUAHQANAAUAHBNMBaAGXIAEC0wGXYAHgAQcEaAHTAZdgAeAD08ATQAdAF0AHAcIs4gVHQAFAF0ABQCNAAQPTAWgBQAtAAwPTAZcBwAdAAUALQAPAF0ALQAGADwBoYAeAC0AH4AEPAtMBl2AB4AMH4AMLQAFAD+ADA0ABBNMBaAGXoAHgA1NAAQLTAZdgAUAXQANAAcATQAdAE0AHQAEG0wFoAdMBl2ABwAdAH0ADQAFAB0ADQAED0wFoAUALAtMBl2ABB9MBaAHTAZcBQBNAA0AB4AMHQAtAA0ABQAdAK0ADQAEB0wGAOwHTAYADQAFAC0ABQAdAA0ABwAdAAcAL4AcHQAHAE0ABwAvgAQcCaAGXoAEC0wGXYAEG0wFoAdMBl2AB4AcHQAHgDxNAx0AD4AcfBwIFlwHTAZcB\"}",
"20": "{\"ir_code_to_send\": \"BxkNnwbEAQIFQAMHhwH0AYcBxAGAA0AP4AELAcQBQAMDxAGHAcAHwAsBAgXgCQsDxAGHAcAXgAsAxGAHAcQB4EED4A9TQBcFAgWHAcQB4AEDQA9AA+ADE+AHC0AfBQIFxAHEAYAHwAsDxAGHAeADC0APQANAE0ADAcQBgAsBxAGAB0ATDwIFhwHEAYcBAgXEAcQBhwHgCwPhA2vgCx/gixMDAgWHAeADl8APAcIsQkcBhwFAD0AD4AsjQBNAG0ADwAtAB0ADQBNAA+AHC8APQAdAA8AjQAvgPwPgD1NAF0AD4ANnQA9AA+ADE+AHC0AfQANAF0AHQANAC0AD4AMLQA9AA0ATQAPAC8AHQBNAA8APQAfgvwPA18DPBwIFhwHEAYcB\"}",
"21": "{\"ir_code_to_send\": \"BxINogbDAQcFgAMDwwGGAcADQBMDwwGGAUADQAtAAwHDAUALAYYBQAdAAwIHBcNgAwHDAeAFC4APgAeACwDDYAcBwwHgCQMD8wGGAeAHF+ALE+AHI+APU0AXBQcFhgHDAeAJA+APF0ArAgcFwyADBYYBwwGGAUAHBwcFwwHDAYYBQAMDBwWGAUAH4AMDAgcFwyADBYYBwwGGAeABBwDDYAtABwHDAUAHAYYBQAfglwPhF2/AxwcHBcMBwwGGAcADAwcFhgFACwHALEJHAYYBQA9AA0ATwAPgAw9AC0ADQBvAB8ALwA9AB0ADQBdAA+APC0Ab4DsD4ANf4ANPQBdAA+ADE8AL4A8XQB9AG0AD4AcLwA9AB+ADA0ArQANAE+ADB0ALQAPgAxdAC+CzA+APzwcHBYYBwwGGAQ==\"}",
"22": "{\"ir_code_to_send\": \"ByUNowazAQAFgAME5AF/AbNgAQF/AUATBLMBfwGzIAFAC0ADA7MBfwGAB0ABgAtAD0A3QAdAA0ALA7MBfwFACwOzAX8BQA+AC0ABAX8BwANAF+ABCwCzIAEDfwHkAeABAwCzYAEBfwHAEwCz4AABAX8BQBPgC1NAG0AXQANAIwGzAYADQAtAE0ADgAEBfwFAEwCzYAFABwF/AUAbQANAAUAHBAAFfwGzYAEJfwEABbMBswF/AYAzAn8BsyABQBNAA0ABAQAF4AUTAwAFswFAAYAHAX8BgDdAAQJ/AbNgAUAHQANAAeABB4AnAX8BQAPAC8AHQBMAs2ABAX8B4EcTQFNAA+APVwEABcADBrMBswF/AbMgAUArBAAFfwGzIAEBpyzCRwF/AUADALNgAUAHAX8B4AMPQAsFAAWzAbMB4AEHALMgAQIABX9gAwazAX8BAAWzIAMDfwGzAYADQAtAa0APAwAFswGAAQF/AeABA0ABAX8BwCNACwCzYAFAB8ADwAHgAw9ACwGzAYBTAX8BgD9AAQJ/AbMgAQIABX8gAwGzAYABAX8BgB8BfwFAEwUABX8BswHAA0ABwAsBfwFAGwUABbMBswGAB8ALQD8EAAV/AbNgAQF/AUAPQAcCAAWzIAMLfwGzAX8BAAWzAbMBQAdAAxKzAQAFfwGzAX8BAAWzAbMBfwGzYAFAB0ADQAHgAQfAT+A/EwCzYAEBfwGAV0ABAn8Bs2ABAX8BgBMBfwGAA0ABAX8B4BsTAgAFf+AAAwCzYAFABwl/AQAFfwGzAbMB\"}",
"23": "{\"ir_code_to_send\": \"ByYNogbCAQUFgAMF7QGFAcIBgAMDBQWFAeABCxHCAQUFwgHCAYUBBQXCAcIBhQFAAwIFBcJgAwHCAeAFC8APAcIBwAuAB8APQAfgA2tAD0AD4AsTQBdAA+AHGwcFBcIBwgGFAeAHAwIFBcIgAwOFAcIBQAMBwgHANwIFBcIgAwOFAcIBgAPAF8APAgUFwmADAcIB4AULgA+AB0ALgAMDwgEFBUADgA8JBQWFAcIBhQEFBcADAcIBQF8HBQXCAcIBhQFAC0AH4B0DQAHgHyvgCSfgJWsBhQHgGwMBBQXgAQPgAy8DBQWFAUBvAa8sQkcDhQEFBYAD4AcjwA8BBQWAA0APAwUFhQFAB0ADAQUFgAPgBwvAD0AHQAMDBQWFAUAHQHNAB+A7AwMFBYUB4AtHAQUFgAPAG8BzAQUFgAPAF+ABB0ABA4UBBQWAA+AHC8APAMJgAUAHgAMBBQWAA0APAwUFhQHABwEFBYADwA9AB+AnA8Cz4Cc34E8vAQUF4AED4ANjBwUFhQHCAYUB\"}",
"24": "{\"ir_code_to_send\": \"BxANpAbEAQYFQAMHhAHvAYQBxAGAAwMGBcQBwA9AC0ADAcQBgAsDxAGEAUADQBNAAwHEAeAFC8APAcQB4AkLwBPgCwfAb+AbG8B34AMrQD9AFwMGBYQBQAsBxAGAAwIGBcQgA4AHA8QBhAHgCwPgAx/gAwtAKwcGBcQBxAGEAeADAwEGBUADA8QBxAFABwGEAYAHBMQBBgWEYAMDxAGEAUALQAfgBwPgA5vgBxvgAw/AJ8AH4AMb4G8L4AHTAcQBwAsBvyxCRwOEAQYF4AETAcQBgAMDBgWEAeADC8APwAdAG0ALQAPgBwvAD0AHQAPAI0AL4D8D4A9TQBdAA+ADZ0APwAPgAxfgAwvgAx/gAwtAI0APQAfgAwNAE0ADQBPgAwdAC0AD4AMXQAvgCQNAAeALF+BzE0AB4BV/wNsLxAGEAQYFhAHEAYQB\"}",
"25": "{\"ir_code_to_send\": \"BygNnQbEAQMFgAMDxAGFAcADQBMDxAGFAUADQAsPAwWFAfQBhQEDBcQBxAGFAUADQAtAAwHEAeAFC+AJJwGFAUAj4C8DQE/gBzsHAwXEAcQBhQHgBwNAF0ADA8QBhQHgCwPgDxsBAwVAAwPEAcQBgAfACwPEAYUB4AMLQA9AAwEDBUADA8QBxAHgAwdAC0ADA8QBxAFABwGFAUAH4Au/QBfgAQNAAeADD+CFC8DHQJfgCwsBvSxCRwGFAUAbQANAJ8AD4AMPQAtAA0AbwAfAC8APQAdAA0AXQAPgDwtAG+A7A+ADX+ADT0AXQAPgAxPgAwvgDxtAF0ADQCtAB0ADQAtAA+ADC0APQANAE0ADwAvAB0ATQAPAD0AH4D0DQAHgP0vgJUfAz0A34AgLAgGFAQ==\"}",
"26": "{\"ir_code_to_send\": \"BzYNqwbAAQQFgAMDwAGDAUADA+4BgwFAEwPAAYMBwAtAD8ALA8ABgwFAA0ATQAMBwAHgBQvgCSeAE0An4AMDQCfgAw/gAQtAAeADD4ALgC9AAQGDAeAPUwIEBcBgAwPAAYMBwANAEwPAAYMBQAPgAwtADwDAYAEDgwEEBYADgAsFwAEEBYMBgG8JgwEEBcABwAGDAYADQAEBgwFAE0ADAcABQAsBgwFAKwIEBcAgA4AHAcABQAcBgwFAB+AHA0Ar4AcT4BkPQAHgGyfgGSPgJ39AL8DLwAdAZ8ALAZsswkcBgwFAA0AbwAPgAw9AC0ADQBtAB0BXgAsDwAEEBeAJCwDAIAHAFwvAAYMBBAXAAcABgwHgQwMDBAWDAeALT0AXQAPgAxvgAw9AC8C/4AcjBQQFwAHAAUAHgANAC0ADQA8AwGABQAeAA0ATQANAD+ADB0ALQAPgAxdAC+AJA0AB4AEX4AuT4AMf4CELQAHgBy9AAeAHE+AfD0ABAYMB4AvTBwQFgwHAAYMB\"}",
"27": "{\"ir_code_to_send\": \"BxYNsQa0AQYFgAMF5QGAAbQBgANAEwO0AYABQBNAC0ADQAGABwGAAUADQAtAA+AFIwGAAUADQBcDtAGAAcAbgAGAD0ATwAPAE0AHALTgAAEBgAFAH8AHQAvAA8ATgF9AAQGAAUAbQAdAA0AXQAMEtAGAAbRgAQGAAUAfAwYFgAFAC8AHQAsAtGABgAdAF0ADALQgAUAHAwYFtAGAAcALAoABtGABQAcDgAEGBUADA7QBtAHABwG0AUAPwANAAQUGBYABtAHAA0ABAYABQIsAtGABQAeAA8ATwAcBtAHAEwGAAYADQAFAC0ABQAdAAwG0AeADLwG0AeADA0ABAYABgB8BgAGAA8ABwA9AB0ABAYAB4AEnwAEBgAGAA0ABAYABQMdAA8ALALRgAQuAAQYFtAG0AYABsSxCRwKAAQYgDwMGBYAB4AFPAYABQA9AB0ADAgYFtGADAbQBgAsEtAGAAbQgAQIGBYBgAwC0IAHgAQtADwGAAUAPQAcAtCABBQYFtAG0AYALgAFAC+ADA0ABQA9AAUAH4AMDQAEBgAHgAZuAAQUGBYABtAHAA0ABAYABQCNAF0ADQAtAE8ADBQYFtAG0AeABBwC0YAFAB4ADQB8KBgWAAbQBgAEGBbQgAwOAAbQBgAPgAwuAEwG0AUATQAMAtCABAwYFtAFAAQIGBYAgA4AHB7QBgAEGBYABQAfgB4vgCRNAAQGAAeAFJ0ABAoABtGABAYABgBtAAQKAAbRgAQGAAYATAYABgANAAQGAAeAfEwC0YAFAB0ADQAHAB0ABwAuAB0DHQAMAtCABBQYFtAG0AUALCYABBgWAAeUBgAE=\"}",
"28": "{\"ir_code_to_send\": \"Bx8NmgbEAQUFgAMHxAGEAe4BhAFABwcFBcQBxAGEAUAPAgUFxCADAYQBgAsDhAHEAYADAgUFxCADCIQBxAGEAQUFxGADA8QBhAFAAwcFBcQBxAGEAUADBwUFxAHEAYQB4CcDQG/gDzMHBQXEAcQBhAHgBwMCBQXEYAMDxAGEAcADAgUFxCADDYQBxAGEAQUFxAHEAYQB4ANbQAsCBQXEIAMIhAHEAYQBBQXEYAMDxAGEAUADAwUFhAFAB+ADAwIFBcRgAwHEAUALAYQBwAcCBQXEIAMNhAHEAYQBBQXEAcQBhAHgdQNAAeA9gwEFBYADwE8JBQXEAcQBhAHCLEJHA4QBBQWAA0ATwAMHBQXEAcQBhAFAAwEFBYADwAtAB0ADAQUFgAPgBwvAD0AHQAMDBQWEAUAH4EMDAwUFhAHgC08BBQWAA+ADGwEFBYADQBMDBQWEAUAH4AcDAQUFgANAFwEFBYADQAtAAwMFBYQBQAfgAwMBBQWAA0ATAwUFhAHABwEFBYADwA9AB+AzA0Lj4DM/4EM7AQUFgAPAUwcFBYQBxAGEAQ==\"}",
"29": "{\"ir_code_to_send\": \"BxQNtQbAAQIFQAMDhgHAAeABAwsCBcAB8wGGAcABhgFAC0ADAcABgAsDwAGGAUAbQBNAAwHAAeAFC8APAcAB4AMLQAGAD+A7B8B34AdLAQIFQAMGwAHAAYYBwGABQAeAAwECBUADBcABwAGGAcADQMdAC0AXQAMBwAHgAwtAAUAPAYYBQAfgAwMCAgXAYAMBwAGACwHAAYAH4AsXAcAB4HUDwOPgL4cDAgWGAUA7QAdAA0ALQAPACwGyLEJHAYYBQA9AA0AbwAPgAw9ACwUCBcABwAFABwGGAUAHQANAC0AD4AcLwA9AB0ADwCNAC+A/A+AFU0ABAYYBQANAF0ADQAvgAQNAAQGGAUAXQANAC+AHAwICBcAgAwWGAcABhgFABwcCBcABwAGGAUADAwIFhgFAB+ADA0ATQANAE+ABBwDAYAsPAgWGAcABhgECBcABwAGGAeAZA0AB4Bsn4FcjQAHgB2MDwAECBYATQAdAAwHAAYADBwIFhgHAAYYB\"}",
"30": "{\"ir_code_to_send\": \"BxoNqQbBAQcFgAMFwQGFAe0BgANAEwPBAYUBQANAC0ADAcEBQAsBhQFAI4ALAcEBQAMDwQGFAUAHQAMDwQGFAUADQAvgAycDwQGFAeALA8AjwAdAI8ALwAdAE+AHA0BfA8EBhQHgBwNAF0ADgAEBhQFAQ4APQAdAAwXBAcEBhQHgAwOAIwGFAUADQBcCBwXBIAMDhQHBAYAD4AML4AMTwBcFBwXBAcEBgAcBBwVABw2FAcEBhQEHBcEBwQGFAeA7A0Cj4ANHwA/AB+ADG+ALC4AnQAEBhQHgKwMBBwXgAQPAP0ATQAsBuyxCRwGFAUAPBwcFwQHBAYUBwAMDBwWFAeADC8APwAdAG0ALQAPgBwvAD0AHQAOAI0ABAYUB4D8DgFMBhQHgBwNAF0ADgBdAAQGFAcAPQAdAA0AT4AcDQBdAA0AXQAdAA0ALQAPgAwtAD0ADQBNAA8ALwAdAE0ADwA9AB+ATA4HfAYUB4IMD4AuTQNPAA8CrBwcFhQHBAYUB\"}"
},
"bottom": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"BxYNsgasAQQFgAMHrAF+AeEBfgFAB0ATQAtAA0ALQAMBrAGACwOsAX4BQANAE0AD4AMjQAsDrAF+AUAXA6wBfgFAD4ALAawBQAsC4QGsIAEBfgFAAwHhAeABA0APgANAAUALwAEBfgHgBydAD0BTQAcGrAF+AeEBrCABQAcBfgFAF0ADBKwBfgGsYAEBfgHAD0AHQANAJwCsIAHABwOsAX4BQBdAAwGsAeAFC0AjQBdABwOsAX4BQAsBrAGAB0ALQBdAB0ABAQQFgAsDBAWsAYAXAH5gBwCsIAFADwGsAcADQAEBfgHgDRMArOAGAQJ+AazgAAEFfgHhAX4BQAcArGABAX4B4AUPQAHAE+ADAeADEwJ+AaxgAQR+AeEBrCABAX4BgAPgAwHgAxNACwOsAQQFgANAAQEEBUATC34BBAWsAawBfgG9LEJHAX4BQA9AAwXhAX4BrAGAA+ADD0ALQAMBrAGACwqsAX4B4QGsAQQFfmADAKwgAYALAawBwAGAC+ABG4ALQAeAAQHhAUALwANAAQR+AeEBrCABAn4BrOAAAeALC4ATAQQFQAdAA8ABCH4B4QF+AQQFrGADAuEBrCABAn4BrCABCQQFfgHhAX4BBAVACwGsAYABAX4BgANAAQN+AQQFQAMDrAGsAYAHwAsArCABAQQFQAeAA0AL4AdLQBMArCABAQQF4AEDQAFADwGsAYAbwAFAOwGsAcADQAEBfgHgARPgDwEBfgGAA8ABwA9AB0ABAX4B4AlD4BcTAn4BrGABBH4B4QGsoAECfgGsYAHgBwcBrAFAy0ADQAGABwl+AQQFfgGsAX4B\"}",
"17": "{\"ir_code_to_send\": \"CCANtwbFAQcFhCADCcUBxQGEAe4BhAFAB8APwAvAD8AHA8UBhAFACwMHBYQBQDNAB0ADAcUBgAMHBwXFAcUBhAFAA+ADC0AP4DUDQAEBhAFAU0B3AcUB4AUDAQcFQAMFxQHFAYQB4CMDQDMHBwWEAcUBhAFAB0ADQAtAA0ALwGsFBwXFAcUB4AMHQAsBhAGAEwGEAYADA8UBxQGAC8A3QA/grwMDBwWEAcC74AMLQBMFBwXFAbssQkdAC4ADAcUB4AEDQBPAD0ALQANAD8AHwAvAD0AHQANAF0AD4A8LQBvgOwPgA1/gAU8BxQFAF0ADAcUB4B8DQAEBhAFAM0AD4AcLwA9AB0AD4AMjwA/gAxNAC0ADwBtAB+AXA+KXa8DPQMfgAwsHxQGEAQcFhAE=\"}",
"18": "{\"ir_code_to_send\": \"BygNmAbFAQMFgAMDxQGDAUADA/EBgwFAEwPFAYMBQAMBAwVAAwPFAcUBQAcBgwFAB0ADAgMFxWADAcUB4AULwA8BxQHgCQtAE0BfQAfgAwPgJxNAewPFAYMB4AcDAQMFQAMFxQHFAYMBQANAV+ADD0ATQANAF0AHwANAIwoDBYMBxQGDAQMFxWADA8UBgwFAAwMDBYMBQAdAA8ALAgMFxWADAcUBgAsBxQFAB0ADAcUBQAMBxQGACwPFAYMB4BMD4AeH4A8r4B8n4A8/4DcXAwMFgwFAQ8AH4AMLAb0sQkcEgwEDBcUgAwODAcUB4AED4AMPQAtAA0AfwAfAC8APQAdAA0AXQAPgDwtAG+A7A+ADX+ADT0AXQAPgBxPgAw/gCwtAM0ADQBtAB0ADQAtAA+ALC0ATQAPgAx9AD8AD4AMXQAvgtwNA10DDwAcLxQGDAQMFgwHFAYMB\"}",
"19": "{\"ir_code_to_send\": \"BxMNtAbFAQQFQAMDhQHFAUADQAEBhQFADwP0AYUBgAsBxQFAAwPFAYUBwAdAG0ALCgQFhQHFAYUBBAXFIAMDhQHFAYADBwQFxQHFAYUBQAPgAwtAD0ADQD9AB+ADA+ALE+ADH+ADC+APU0AXAwQFhQHgB0sHBAXFAcUBhQHgDwMBBAWAA0AfAgQFxSADA4UBxQGAAwcEBcUBxQGFAUADwAtABw0EBYUBxQGFAQQFxQHFAYAHQAtAAwHFAYAPA8UBhQHgtwMBBAWAA0DHQAtAB0ADwAsBsSxCRwGFAUAPQANAG8AD4AMPQAtAA0AbwAfAC8APQAdAA0AXQAPgDwtAG+A7A+ADX+ADT0AXQAPgAxNAC+ALE0AXwANAH0ADQA9AB0ADQAtAA+ALC0ATQAPgAx9AD8AD4AMXQAvgswPgD9MHBAWFAcUBhQE=\"}",
"20": "{\"ir_code_to_send\": \"ByANrgbAAQcFgAMDwAGFAcADQBMHwAGFAe0BhQFACw8HBYUBwAGFAQcFwAHAAYUBQANACwoHBYUBwAGFAQcFwGADA8ABhQFAAwMHBYUBQAdAAwMHBcABQEcDwAGFAcAHQAvAA+ALE8Ab4AMH4AMnQFMDwAGFAeADE0APAQcFQAMFwAHAAYUBwANAD0ADA8ABhQGAA0ABwAuABwEHBYADQA8CBwXAYAMDwAGFAUADQA8DwAGFAUADAwcFhQGABwHAAUADB8ABhQEHBYUBwAcCBwXAYAMBwAGACwPAAYUB4AsD4Ae34Asj4GcT4BeTAQcFQAMFwAHAAYUBQAMDBwWFAUAHAbcsQkcBhQFAD0ADQBPAA+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvgAQNAAeADD+APC0AB4AUb4ANf4AMbQBdAA+AXE+EHM0AzQAMAwCABQAdAAwHAAYAD4AsLAgcFwCADBYUBwAGFAeADB0ALQAPgAxdAC+BFA0ABQFNAAUAHQANAAUAH4EcDQAFAUwHAAUDXQAMBwAGAAwcHBcABwAGFAQ==\"}",
"21": "{\"ir_code_to_send\": \"CD4NiwbBAQQFh2ADAcEBgAML7wGHAQQFwQHBAYcBQAMBBAVAAwPBAcEBQAcBhwFAH4ALAcEBQAMDwQGHAUAHQAMDwQGHAUADAwQFhwHgAycDwQGHAeAlA0AB4A8zB8EBBAXBAcEB4AkfQBdAAwPBAYcB4AEDQAEBhwHgCRcBhwHAA0AbQAMBwQHgBQuAD4AH4AMLAgQFwWADAcEBQAsBhwGABwHBAYAD4AEPAcEBgAvgcwfBh+Avg+ABz+ABC0BLQA9ABwGSLEJHAYcBQA9AA0ATwAPgAw9AC0ADQBvAB8ALwA9AB0ADQBdAA+APC0Ab4DsDBwQFwQHBAYcB4AUDBMEBBAWHYAMBwQHgCQNAG+ALF0ATQBtAA+AHC8APQAcAwSAB4AUjCcEBwQGHAQQFhwHAB0ALQAOADwDBYAcBwQHgEwNAAeATH+B5GwMEBYcBQIdAB0ADQAsLwQGHAQQFhwHBAYcB\"}",
"22": "{\"ir_code_to_send\": \"Bz4NmAasAf8EgAMC4gGsIAEFfwHiAX8BQBMC4gGsIAGAC0APAawBgAsD4gF/AUADQBNAA0ABQAdAA4ABgBsErAF/AawgAYAXQAsBfwFAN0ADAKxgAQF/AeADCwCsYAEBfwGAEwF/AUADQAvgCwOAU0ABAn8BrGABBX8B4gGsAUAXAf8EQAlAAYAHA/8ErAFACUAHA6wBfwGAA0ABBX8B4gF/AUAHQBtAAwGsAeAFC8APgAEBfwHgCyNAE0BHQAfAAwGsAYAPAuIBrCABBn8B4gF/AaxgAQR/AeIBrCABAX8BgANAAUALQAEGfwHiAX8BrGAB4AEHgBMBfwGAA0ABAX8BgBNAAQJ/AaygAYATQA9AA0ABAX8B4AsTAKxgAQF/AYAbQAECfwGsYAEBfwGAEwF/AYADQAEBfwFAE4DXgAcErAF/AawgAQkaBawBrAF/AZEsQkcEfwH/BKxgA+ADAUATBKwBfwGsIAFAC0ADQAEB/wRAE4ADQAsF/wSsAawBgAeAC4ABwGMArCABBv8EfwHiAawgAUAHAn8BrGAB4AEHgBMBfwGAA0ABBH8B4gGsIAEBfwGAA0ABBX8B4gF/AUAHQAMD/wSsAeADDwCsYAEBfwFAF0ADA6wBfwGAHwGsAcAPQAeAEwJ/AazgAAEBfwFAE0AbQAMD4gGsAUAHQAOAAYAbBKwBfwGsIAHAF0DfAf8E4AMTBH8B/wSs4AADAawBgA8HrAF/AeIBfwFABwCs4AIBAuIBrCABBn8B4gF/AaxgAeABB4ATAn8BrOAAAQF/AeABEwJ/AaxgAQR/AeIBrKABAn8BrGAB4AMHwAvgAwHAE+ABBwPiAX8BgA9AB4AB4AkTA38B/wRAAwCsIAcBrAGAAQl/Af8ErAGsAawB\"}",
"23": "{\"ir_code_to_send\": \"ES0Noga4AQEFgwEBBbgBuAGDAUADBOsBgwEBYA9AAYALAAFgD4ALA7gBgwFAAwABIBMAASADQAEAASAHAAEgA4ABgBsDuAGDAUADAAFgFwGDAYADQAHAC8AHQAHACwGDAUB/QAeAA0ABwAvgAQcAAeAOUwABIBcAASAD4ANDQAsAASATAAEgAwO4AYMB4AsDAAEgGwABIAMBuAHgBQvADwG4AeAFCwABICsAASADAbgBgAsBuAGABwABIBMAASADAbgBgA9AewO4AYMBgAdAAQGDAeAFA0AB4AkTgC9AF0ABQAfAA0ABwAvAB0ABwAtAB8ABQAvgAwNAAUAPQAFAB0ADQAFAB+ALA0ABA4MBAQVAAwO4AQEFQAcCgwG4YAECgwEBYAsDgwG+LMJHArgBASADA7gBgwHAAwQBBYMBuGABAoMBASALBQEFuAG4AUAHAYMBQAcAuCABAQEFQANACwuDAQEFuAEBBYMBuAGAAwAB4AQLBbgBuAGDAeAFA0AB4BsTwCNAAcALAoMBAeAOUwEBBUAbAoMBuGABQAeAAwkBBbgBAQWDAbgB4AcDQAEGgwEBBbgBASADAbgBQAtAAwW4AbgBgwFAAwQBBYMBuGABAoMBAWALgAcAAeACCwC4IAEAASAPAAGgAwS4AYMBASALALhgAUAH4AMDQAHgAw9AC0AB4AMH4AcLwA9AAcALQAfgAwNAAeADD0ALQAFAB0ADQAHgCwfAE8ABQA/gAQMAASDHAAFgAwe4AQEFgwG4AYADBwEFgwG4AYMB\"}",
"24": "{\"ir_code_to_send\": \"BzQNowbBAQAFgAMDwQGFAcADQBMHwQGFAekBhQFACw8ABYUBwQGFAQAFwQHBAYUBQANAC0ADAcEB4AULwA8BwQHgCQvAEwDBIAFAWwHBAeAtA8B3AMFgAUAHgANAF0ADgAEBhQFAA0APwAMDwQGFAeALA8AfQJMBAAVAAwXBAcEBhQFAAwMABYUBQAdAA8ALAgAFwWADAcEBgAsBwQFAB0ADAcEBQAMBwQFACwGFAUAHwANAW8AL4A0HQAHgDxvgCRfgGU8BhQHgAwPgCy/gBRNAAQGFAeAXA8DXwAcBjCxCRwGFAUAPQAPgAz/gAw8CAAXBYAMBwQFACwKFAcFgAQGFAUALQAPgBwvAD0AHQAPAI0ALgANAAcAL4C0H4AlTAYUBQANAFwcABcEBwQGFAcEjAQAF4AEDQBfgCwPAI0AbAgAFwSADA4UBwQGAA+ALC0ATBQAFwQHBAUAHAYUBwAdACwUABcEBwQFABwGFAUAH4G0DQAEBhQHBA0ALAMFgAUAH4DUDwNcHAAWFAcEBhQE=\"}",
"25": "{\"ir_code_to_send\": \"CBUNpwbAAQYFhSADBcABwAGFAcAD4AMPQAtAAwHAAYALB8ABhQHwAYUBQBMKBgWFAcABhQEGBcAgAwGFAUAXC8ABhQEGBcABwAGFAUAPwAtAD+AfA0A3QCvAB0AL4AMDAwYFhQHgAw/ACwIGBcBgAwPAAYUB4AUDQAEBhQFAHwPAAYUBQAPgA1sBBgVAAwPAAcABQAdAAwXAAcABhQFAI8ALQA/AC0AHQAMBwAGACwHAAYAHQBNAAwHAAYAPgAEBhQHgIQNAAeAjL+BZKwMGBYUB4ANnwA8JBgXAAcABhQG+LEJHAoUBBiAPBQYFhQHAAeABA+ADD0ALQANAH8AHwAvAD0AHBwYFwAHAAYUBQAMDBgWFAUAHQAPgAwtAD+A7A+ABU0ABAYUBwANAF0ADwA/gAQdAAQGFAeANG4AXwBtAB0ADQBdAA+ALC0ATQAPgAx9AD8AD4AMXQAuAA0ABwAvAB0ABQAtAAUAH4AMDQAHgAw/gbQtA0+ADe8APBwYFhQHAAYUB\"}",
"26": "{\"ir_code_to_send\": \"CDUNiga+AQIFhSADCb4B6gGFAb4BhQFABwMCBYUBQAdADwICBb5gAwG+AYALA74BhQFAA+AHF0APA74BhQFAAwMCBYUBQAdAAwcCBb4BvgGFAeADA8Bb4AMTwAvgExvAI+APU0AXQAMDvgGFAcAD4AMP4AMLwB8AviABQBdAA0ABAgIFhSADBb4BvgGFAUAD4AsLAQIFQAMDvgG+AUAHAYUBgAcBvgHAAwO+AYUBQAsDvgGFAeABA0AB4AMPQAtAAQGFAeAL8+AFE0ABAYUB4DUDQAHgLUPgA8sDAgWFAUBHwAcBmizCRwe+AQIFhQG+AYADQL/gAw9AC0ADQB/ABwC+IAEBAgVAA0ALBIUBAgW+IAMDhQG+AYAD4AULBb4BvgGFAeAFA0AB4AcT4CEPAwIFhQFAL0CrQAeAAwG+AUAXQAMAvmABQAcBhQGADwGFAUAD4AMLQA/AA0AXBQIFvgG+AUAHgANAC0ADQA9AB0ADwAtAB0ADQH9AB8AbQAtAA8APAL5gAUAH4DcDQAHgA0NAAcAPQAFAC0ABQAfgKwNAAeAPNwG+AcDTA74BhQHACwcCBYUBvgG+AQ==\"}",
"27": "{\"ir_code_to_send\": \"CBUNqQazAQIFgSADBbMB4gGBAcADgA8AsyABgAtADwGzAYALA+IBgQFAA0ATQANAAUAHQAOAAYAbBLMBgQGzIAGAF0AL4AEDQD9AD4AHQAECgQGzYAFABwGBAYAX4AkHwBPgBVMBswFAL0ADQBdAA0ALAbMBwAMBswFAEwOzAYEBwAcAs2ABQAcBgQFAK0AXQAMBswHgAQtAFwOzAYEBQBfgAwtAAUATQAMBswHgAR9AD8ADAbMBgA/ANwGzAeABA+AFE0AB4AETgBsBswFAB0ADA7MBgQGAB0ABAoEBs2ABAYEBgBMBgQGAA0ABAYEB4BkTAYEBQAPgGSdAAQKBAbNgAQGBAeAD00A7BAIFgQGzIAGABwOBAb8sQkcBgQFADwMCBbMBgAEBgQFAA4APAYEBwDcEAgWBAbMgAYAHQAsBgQFACwUCBbMBswFAB4ADQAsAsyABQA8BswFAAwGzAUALQEcDswGBAYAHQAECgQGzYAFAB0ADQAHgAwfgAwtAAQGBAYA7AYEBQAPgA1NADwCzYAEBgQFAFwcCBbMBswGBAcADQDcEAgWBAbMgAcAH4AEBAYEBwB9AG+AHC0AfAwIFswGAAeABCwECBUALAoEBsyABBwIFswGzAYEBQAeAAw2BAbMBgQECBbMBswGBAUBTQAeAA0ABAYEB4AsTALNgAUAHQANAAeABB+ALL+ARE0ABAoEBs2ABAYEB4AsnQBfgAQNAAUAPQAFAB+ADAwSzAQIFgWADAbMBgANADwuzAYEBAgWBAeIBgQE=\"}",
"28": "{\"ir_code_to_send\": \"BysNmQbDAfwEgAMDwwGFAcADQBMDwwGFAUADQAsP/ASFAcMBhQH8BMMBwwGFAUADQAtAAwHDAeAFC8APAcMB4AkLQBMD8AGFAUAH4AsD4BMb4AMvwHfgAxNAC0AXQAMDwwGFAcADQA9AAwHDAYALA8MBhQHgAwNAc0AfQAMBwwHgBQvADwHDAeAFC0ArQAMBwwGACwHDAUAHQAMBwwFAAwHDAYALA8MBhQHgYwNAy0BvwAdAC+A/A4DXAcMBgAdADwGFAUAHAbMsQkcEhQH8BMMgAwOFAcMB4AED4AMPAvwEwyADBYUBwwGFAcAHwAvADwL8BMMgAwOFAcMBgAPgDwvAH+A3B+ADX+ADS0AXQAPgDxPgBxvAJ0AXQANAD0AHQANAC0AD4AsLQBNAA+ADH0APwAPgAxdAC+C7A0DbQMfgBAcCAcMB\"}",
"29": "{\"ir_code_to_send\": \"CDANpwbCAQUFhyADBcIBwgGHAcADBwUFwgHCAYcBQAMCBQXCYAMBwgGACwPCAYcBQAMBBQVAAwPCAcIBgAcFBQWHAcIBgAMHBQXCAcIBhwFAAwcFBcIBwgGHAUADA/ABhwFAB+A3AwcFBcIBwgGHAeAHAwEFBUADBcIBwgGHAeAHAwIFBcJgAwPCAYcB4AcDAQUFQAMDwgHCAYAHBwUFwgHCAYcBQAMHBQXCAcIBhwFAAwUFBcIBwgGABw0FBYcBwgGHAQUFwgHCAUAH4AEDwA9AB+A/8wDCYAFAB+BlAwMFBYcBQHMDBQWHAeALBwGvLEJHA4cBBQWAA0AjwAMDBQWHAeADCwMFBYcBQA8DBQWHAUAHQAMCBQXCIAMHhwHCAYcBBQWAA0ALQAMDBQWHAUAHQAMDBQWHAUAH4EMDAwUFhwHgC08BBQWAA+AzGwEFBYADwEMDBQWHAeAHCwEFBYADQBcDBQWHAcAHAQUFgAPAD0AH4B0DQAHgHyvgNydAAeAhQwMFBYcBQC8DBQWHAeAIBwIBhwE=\"}",
"30": "{\"ir_code_to_send\": \"BwsNpQbCAQUFgAMDwgGGAcADDgUFwgHxAYYBwgGGAQUFwmADAcIBgAsDwgGGAUADAgUFwiADCIYBwgGGAQUFwiADA4YBwgGAAwcFBcIBwgGGAUBDBwUFwgHCAYYB4BcDQCvgFyNAH0AnBwUFwgHCAYYBQANAD0AHQAMBBQWAA0ALwAMDBQWGAUALAgUFwiADA4YBwgHgCQMCBQXCIAMIhgHCAYYBBQXCYAMDwgGGAUADBwUFwgHCAYYBQAMDBQWGAYAHA8IBBQXgAQsGwgGGAQUFwqADDYYBwgGGAQUFwgHCAYYB4LsDAQUFgANAywUFBcIBwgFABwGGAUAHAbssQkcDhgEFBYADQBPAAwMFBYYB4AMLAwUFhgFADwMFBYYBQAdAAwEFBYADgAsDwgEFBYALB8IBhgEFBYYBQAdAAwMFBYYBQAfgQwMDBQWGAeALTwEFBYAD4AMbAwUFhgFADwEFBYADQAvgBwMBBQWAA0AXAQUFgANAC0ADAwUFhgFAB0ADAwUFhgHABwMFBYYBwAvABwEFBYADwA9AB+BtA0AB4EF7AQUFgANAUw8FBYYBwgGGAQUFhgHCAYYB\"}"
}
},
"mid": {
"medium": {
"auto": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"CEENoQbBAf8EhSADBcEBwQGFAcAD4AMPQAtAA0ABgAcFhQHuAYUBQAtAAwHBAcALAYUBQAtAAwf/BMEBwQGFAcAnA8EBhQHgGwNAL0An4AcH4AMTQAvAX0AL4AMDAf8EQAMFwQHBAYUBwAPAD0AHQAMDwQGFAcADwGdAFwP/BIUBQA8B/wRACwXBAcEBhQHAA+AHD0AX4AMTQAvgAwMBwQFAEwGFAUAH4DEDQAHgMT9AywDBYAFAB+ADA0AB4AMPQAtAAUAH4AMDQAHgAw+AC0DXB/8EwQHBAYUBQAMBoCxCRwOFAf8EgANAE8ADQBPgAwvAD8AHQBtACwX/BMEBwQFAB4ADAMFgAQGFAUAPQAdAA+ADC0AP4DsD4A9TQBdAA+ADY8APQAdAA+ADG8ALQBdAA0APQAdAA0ALwAPgBw9AF+ADE0AL4AMD4AcfQA/gAwOB4wGFAeBvA+Azf8DnB8EBhQHBAYUB\"}",
"17": "{\"ir_code_to_send\": \"Bz4NlQbDAQEFgAMDwwGEAcADAAEgEwPDAYQBQAMAASALAAEgAwHDAYALA8MBhAFAAwABIBMAASADAcMB4AULgA+AB4ALA8MBwwGAC0AHA/IBhAFAB+AXA+ATJwAB4A5TAAEgFwABIAOAAQGEAeAFA0AB4AcTgA8AASAzCAEFhAHDAYQBASAHAAEgA+ADfwABIA9AG+AHAwUBBcMBwwFAB8ADAsMBASADAcMBQA8FwwHDAYQB4AUDQAHgBxPglQ8BAQVAAwXDAcMBhAHAAwABIA8JAQWEAcMBhAGsLEJHAoQBASAPAAEgA0ATwAMAAeACDxMBBcMBAQWEAcMBhAEBBcMBwwGEAUADAQEFQAMDwwHDAUAHgANAC0ADAAEgD0AHQAMAAeACC0AP4DsDBwEFwwHDAYQB4AcDAQEFgAPgBxfgAQ8BwwFADQHDAUAF4AEDAAHgAjcAAeACC8AjAAEgE8AL4AMHAAGgFwABIAcAAeACA0AjAAEgD0AH4K0DQAGAuwABIMcAASADwA9ABwsBBYQBAQWEAcMBhAE=\"}",
"18": "{\"ir_code_to_send\": \"B0UNrAaGAf8EQAMJwQHBAYYB6gGGAUAHwA/ACwH/BOABCwHBAeABCwf/BMEBwQGGAUAHQAMDwQGGAUAD4A8LQBvAY8AHQBPgJwPgA1/gAztAF0ADQAHgA18F/wSGAcEB4BEDAv8EwWADAcEB4AULQA9AA0AfA8EBhgHgAwMD/wSGAcAPQAsC/wTB4AADAcEBgA8DwQGGAeC3AwP/BIYBQMMH/wTBAcEBhgFAA+ADCwGMLOIDRwGGAUAfwAPgAw9ACwX/BMEBwQFABwGGAUAHQANAC0ADgAsBwQFAAwHBAcAPgAdAD+ADC0AP4DsD4A9TQBdAA+AHY+ALE+ADI0AfQANAE0AHQANAC8AD4AcPQBfgAxNAC+ADA+AHH0AP4C0DQAHgIztAAeAHL0ABQBNAAUAHQANAAeADB0AL4A0DQNdAG8AH4AQLAgGGAQ==\"}",
"19": "{\"ir_code_to_send\": \"By4NmQbBAQEFgAMHwQGGAfABhgFABwABIBMDwQGGAUAPAAEgCwMBBYYBwAsDwQGGAUADBAEFwQEBIAMBwQHgBQvgCScBhgFAI+AhA0AB4AEvQE/gAw9ACwAB4A5TBAEFwQEBIAMDwQGGAeADAwMBBYYB4AMP4AdTBAEFwQEBIANAAQABIAcFAQWGAcEB4AEDAwEFwQGAAQGGAcADAwEFhgHgAQsCwQEB4AIDBMEBhgEBIA8DwQGGAeAPA+AHg+APJ+ALF+AFO0ABAYYB4EkDQAEFhgEBBYYBgAcDwQHBAeAJCwGYLEJHA4YBAQWAA8AjQAcAASATQAdAAwABIAsAASADwAtAB0ADAAEgEwABIAPgBwvAD0AHQAMAAaAjQAtAA+EFAwGGAeArAwAB4AZTwEMAASAXAAEgA8APwAcAAeAAE0ABAYYB4AcDAAEgHwABIANAFwABIAcAASADQAvAAwAB4AYPQBcAAeACEwABIAsAAeACA+AHH0AP4CkDQAHgBzdAAeAHE+BVDwABINdAYwABoAeACwnBAcEBhgHBAYYB\"}",
"20": "{\"ir_code_to_send\": \"BycNnwa1AQMFgAMDtQGCAcADQBMDtQGCAUADQAtAA0ABgAcBggFAA0ALQAMB6QHgAQsDtQGCAUADQBcDtQGCAcAbAukBtSABAYIBgAMDtQHpAcAL4A0H4AMf4AMLQC9AD0BfAukBtSABAYIBgANAAQGCAUAXQAPgAQHgAxMDggHpAeABAwC1YAEBggFAE0AzQAPgAwsDtQGCAYADAbUBQBsBtQHAD0AHAbUB4AMTQAvgAwMBtQGAEwS1AYIBtWABAYIBQFtAB4ADQAHAC8AHQAHAC8AHQAFAC0ABQAfgAwNAAQGCAeALV+ALE0ArQAPgBRsBggFAA4ATQAEBggHgCwPA2wS1AYIBtSABAQMFQAeAAwG6LMJHAYIBQAMAtWABQAcFggEDBbUBgAFAC0ADA7UBtQFABwGCAUAHALUgAUALQAMAtSABQAcDAwW1AYABQAsBggFAB0ADAwMFtQGAAQGCAeABA0AB4AcPQAHAE0ABQAtAAUAH4AMDA7UBAwXgBQ8BtQFADwG1AUAXQAMAtWABQAcBggFAD0ADgSsBggGAA0ABwAsEggEDBbUgAwiCAbUBggEDBbVgAwO1AYIBgAMBtQFAEwG1AcAPgAcDAwWCAYALA7UBAwVAAwCC4AAHALUgAUAPALVgAUAH4AMDQAHgAw/gAwtAAQGCAeATq0Af4A0DQAHgBxtAAeAjE0AB4AkvQMtAAwC1YAENggEDBYIBtQGCAbUBtQE=\"}",
"21": "{\"ir_code_to_send\": \"BzINnwbCAQMFQAMHhQHuAYUBwgGAA0AP4AELAcIBQAMDwgGFAcAHQCtAC0ADAcIB4AULwA8BwgHgCQtAN0AXwAfgAwvgAxNAF+APA0AnwHfgAyPAFwUDBYUBwgHgCQMHAwXCAcIBhQHAA0AvAMJgAQGFAUAbQAMBwgHgBQtAD0ADAwMFhQFAB+ADAwcDBcIBwgGFAUADAQMFQAMAwiAHgAMBwgGADwPCAYUB4EsDgLsBhQHgWwMBAwXAAwXCAcIBhQFAAwMDBYUBQAdAAwGeLEJHAYUBQBMHAwXCAcIBhQHAAwMDBYUB4AMLwA/AB0AbQAsFAwXCAcIBQAeAA0ALQANAD0AHQAMHAwXCAcIBhQHgQwMDAwWFAeALT0AXQAPgDxvgCxdAE0AzQAPgBwtAD0ADwBtAC8AD4AMTQAvgAwNAI0APQAfgBwPiYwPgB3vgKw9Ax8ADAMJgAQ2FAQMFhQHCAYUBwgGFAQ==\"}",
"22": "{\"ir_code_to_send\": \"BxcNowa5Af8EgAMDuQGBAcADQBMEuQGBAbkgAUALQAMDuQGBAcAHwAtADwPnAYEBQAdAAwO5AYEBQANAC0AXA7kBgQFAC4ABAYEBwAOAG+ADAQGBAYADQAFAC0ABQAfgAwPAAQGBAYBTAYEB4AMDQFNAF0ADA7kBgQFAA8ATwAeAAQGBAeADA8AbgDcBuQFAB0ADA7kBgQHAA4APQAEBgQHAA4ATAYEBQANAC+ADAwG5AYATQFsDuQGBAcAHQAvgAwPgDxfgFyPgBTdAAQGBAeALA+AdJ8ABAYEBgANAAcAL4AUHA/8EgQFAUwP/BLkBgAEDgQGqLEJHA4EB/wRAAwa5AbkBgQG5YAEFgQH/BIEBQAcAuSABQAtAAwC5IAGAB0ALAYEBQAtAA+ADC0BjALkgAQX/BLkBuQFACwGBAYALQAEBgQGAHwGBAYADwAHAD0AHQAFAB+ADA0ABwA9AAQaBAf8EgQG5YAFAB+ABA0AXCP8EuQG5AYEBuWABBYEB/wSBAcAH4Al/AYEBQANAIwX/BLkBuQFAB4ADALlgAUAHAYEBQBMAuWABQAeAAwf/BLkBuQGBAUBTAf8E4AMDA7kBuQFADwa5AbkBgQG5YAFAB+ALA0AB4AcXQAEBgQFAV0AHALngAAFAC+ADA0AB4AMPQAtAAeADB+ADC0ABQA/gAwNAAeADD0ALQAFAB+ADA0ABBYEB/wSBAYAHCbkBuQGBAbkBgQE=\"}",
"23": "{\"ir_code_to_send\": \"BxwNrwbDAQQFgAMHwwGFAe0BhQFAB0ATA8MBhQFAA0ALQAMBwwGAC4ABQAtAAwPDAcMBQAdAAwXDAcMBhQFAA+AHC8BXAcMB4AkD4Asb4BcTAwQFhQHgB0tAMwIEBcNgAwPDAYUB4AMDgBcBhQHgAxPgAwsCBAXDIAMIhQHDAYUBBAXDIAMDhQHDAeABAwcEBcMBwwGFAeADAwQEBYUBw2ABBIUBBAXDIANAB0ADA8MBwwFABwGFAUAH4AsDQKvgCxfgixPgA8fAC8AHYK8ALEJHAYUBQBNAAwHDAeABA+ADDwIEBcMgAwWFAcMBhQHAB8ALwA9AB0ADQBdAA+APC0Ab4DsD4ANfwE9Bm0AXQAOAE0ABgAtAE0ADwA/gBwdAG0ADQBdAB0ADQAvAA+AHD0AX4AMTQAvgAwPgBx9AD+CvA0DXgLsBwwHACwsEBYUBwwGFAcMBhQE=\"}",
"24": "{\"ir_code_to_send\": \"BxANlQbBAQMFQAMDhQHBAeABA+ADDwIDBcFgAwHBAYALA8EBhQFAA8AXAe0B4AULA8EBhQFAGwPBAYUBQAOAC0ABAYUB4AUDQAHgBxPgDQ9AY+ADG+APU0AXQAMDwQGFAcADQA/AAwPBAYUB4AdLQBMBAwVAAwPBAcEBQAdAAwXBAcEBhQHAAwMDBYUBwAvAB+ADEwIDBcGgA4ALAcEB4AEHQAvgNQNAAeAJQ+ALx+ALJ+ARE0AB4BMfwBsBwQFA1wnBAYUBAwXBAcEB4AEHQAsBwCzCRwGFAUADQBPAA+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvgFQNAAQGFAeENI0ABAYUBQAPgA19AD8ADQBdAA8APQAdAD8ADQA/gCwPgAx/gAwvAK0ATwAvAB+ADE0AL4AMDQCNAD0AH4EUDQAHgR1PgD09AAUAbAcEBwMvgBwcDwQGFAQ==\"}",
"25": "{\"ir_code_to_send\": \"Bx0NoAbEAQcFQAMHhQHvAYUBxAGAA0AP4AELAcQBQAMDxAGFAcAHQCtACwMHBYUBgAsJhQEHBcQBxAGFAUAD4A8LQCtAH+ALA0AbQAPgCxvgBxPgA19AG8A3AQcFgAPAD0Ab4AMDBwcFxAHEAYUBQAPgAyMBBwVAAwPEAcQBgAcFBwWFAcQB4AED4AcPQBsHBwXEAcQBhQFAAwEHBUADAMSgBw2FAcQBhQEHBcQBxAGFAeA7A+ADq+A7T+AjQwEHBYADQDMFBwXEAcQBQAcBhQFAB0ADAbQsQkcBhQFAE0ADQBPAA+ADD0ALQANAG8AHwAvAD0AHQANAF0AD4A8LQBvgOwPgA1/gA09AF0AD4AMT4AML4A8bQBdAA0ArQAdAA0ALwAPgAw/B0+ADE0AL4AMDQDdAD0AH4HkDQAHgMYdAx0ADQEPgBwcDxAGFAQ==\"}",
"26": "{\"ir_code_to_send\": \"ByYNrga4AQMFgAMFuAGBAeoBgANAEwO4AYEBQA9AC0ADwAuAAeABFwG4AcALAYEBQAtAAwcDBbgBuAGBAUAD4AMLQA9AR0AHgANAAQGBAcATwAdAE8ADgBNAAQGBAcAD4A1TAbgBQBdAAwO4AYEBgAMBuAHAD0BHwAsDuAGBAUAPALhgAQGBAUAXQAMBuAHgBQsAuGABAYEBwBsAuGABQAcBgQHgARNAC0ADAbgBwANAAUALBLgBgQG44AABQAvgAwNAAeADD+AdC4C3AYEB4CUDQAHgATOAQ0ABAoEBuGABAYEB4AsTQBfAAwEDBYADQA9AC0AHQAMBvCxCRwGBAUATQANAEwC4YAEBgQHgAw9AC0ADALggAYAHwAsDuAEDBUALAYEBQAdAA0ALQAMHAwW4AbgBgQFAmwQDBYEBuGABQAfgAwNAAeADD0ALQAEBgQFAN0AHgANAAcALgAfgD1NAF0ADgCdAAQGBAeADD+ABCwKBAbhgAQGBAUBrQBdAAwC4IAFAB0ADALhgAQGBAcAfALhgAUAHgAMHAwW4AbgBgQHAHwEDBcADA7gBuAGAC0AHALhgAeABB0AvgA9AB0ABQAfgAwNAAeADD0ALQAFAB+ADA0AB4AMPQAtAAeADB0ALwANAAeAHC0AB4AMTwAHAE8AHBLgBAwWBYAMAuCABCwMFuAG4AYEBuAGBAQ==\"}",
"27": "{\"ir_code_to_send\": \"BxkNpAbFAQMFgAMDxQGGAcADQBMDxQGGAUADAQMFQAMDxQHFAUAHAYYBQAdAAwIDBcVgAwHFAeAFC4APgAeACwDFYAcBxQHgQQPgD1NAF0ADA8UBhgHgAwMDAwWGAUAPwAdAC+ADAwIDBcVgAwHFAUALgANAC8ADQBPAC8AH4AMTAgMFxaADQAsFhgHFAYYBwAdAC+CzA8DHQAdAA0DLwAdACwG7LEJHAYYBQBNAA0ATwAPgAw9AC0ADQBsHAwXFAcUBhgFAAwEDBYAD4AcLwA9AB0ADQCdAB+BDA+APU0AXQAPgB2vAE8AH4AsfwBtAB0AD4AMj4AcPQBvgAxNAC+ADA+AHH0AP4K8DQNdAu0AHQAPACwfFAYYBhgGGAQ==\"}",
"28": "{\"ir_code_to_send\": \"BzoNgQbBAQQFgAMH7QGGAcEBhgFAB0ATA8EBhgFAAwEEBUADA8EBwQFABwGGAUAHQAMCBAXBYAMBwQHgBQvADwHBAeAFC0BXwBPgNwcDBAWGAeALQwIEBcFgA4ABAYYBQAPgAROACwPBAYYB4AcDAQQFgANAFwIEBcFgAwPBAYYBwANAEwPBAYYB4AMDAwQFhgHADwIEBcEgA8AHA8EBwQGACwPBAYYB4AUDQAHgGxPgBSPBO8AH4Acf4DUPQAHgFUMBBAXgAQNAK0APQAdAAwGuLMJHAYYBQANAE8AD4AMPQAtAA0AbQAfAy0ALQAPAF8ALwA9AB0AD4AMXQA/gOwPgD1NAF0AD4ANjQA9AA0ATwAdAC+ADA0AXQANAE0AHQANAC8AD4AcPQBfgAxNAC+ADA+AHH0AP4CcDwWfgJzfgSy/gAdsDwQHBAYAPB8EBhgHBAYYB\"}",
"29": "{\"ir_code_to_send\": \"CBwNrAaFAQYFwmADB8IBhQHxAYUBQAdAEwPCAYUBQA9AC0ADwAsDwgGFAUADQBNAAwHCAUALQAMFwgHCAYUB4AknAYUBQBfgLwNAT+AHO+APUwIGBcJgAwPCAYUB4AcD4BkbAYUBQDMCBgXCIAMBhQHgA3dADwHCAeAFAwcGBcIBwgGFAUADAQYFQAMAwiAHgAMBwgFADwGFAUAH4H8D4APP4COTQMfgAwNAO0APQAdAAwHALOIDRwGFAUATwAPgAw9ACwUGBcIBwgFABwKFAcJgAQGFAUALQAPgBwvAD0AHQAPAI0AL4DkDQAEBhQFAU+ELF0AXQANAI+AFAwHCAUAXQAMAwmABQAfgAQNAF0ADQBNAB0ADQAvAA+ADD8B34AMTQAvgAwNAN0APQAfgcQNAAeA5f0DH4AMDQFMLBgWFAcIBhQHCAYUB\"}",
"30": "{\"ir_code_to_send\": \"By8Nnwa5AQMFgAMF6QGAAbkBgANAEwS5AYABuSABQAtAA0ABgAcBgAFAK0ALQAPgBwsDuQGAAUAXA7kBgAHAGwO5AYABQANAD+ADB0AL4AUDQAHAEwG5AYAvAbkBgAeAF0ALgF9AAQGAAUAPwAdAF0ADA7kBgAHAA0APQCNAB0ADBLkBgAG5YAFAB0ADBLkBAwWAIAMDuQG5AYAHwAtANwO5AYAB4AcP4AMTwAtAI8ADQAEBAwWAG8BDAbkB4AcDQAHgDRPAM4AHQAHACwGAAYADQAHAC8AHQAHACwGAAYA7AYABgANAAcALwAdAAcAL4CEHAgMFuWADA7kBgAFAAwGWLMJHAYABQAMAueAAAQGAAeABD4ALBQMFuQG5AUAHAYABwJ8CAwW5IAMIgAG5AYABAwW5IAMDgAG5AYAD4AULBbkBuQGAAcADgD9AAQKAAblgAUAH4AMDQAEBgAGAJwGAAeALA+AHU4AjBLkBAwWAYAMAuWABQAcBgAFAEwC5IAFAB0ADAbkBwANAAYALQBdAA0BzQAdAA4AbQAEBgAHgAQ8BgAGAAwG5AeADEwEDBYAPgAcDuQG5AUALAYABQAcAuWABQAfgAwNAAQGAAUBvQAeAA0ABAYAB4AsTQBfgCQNAAeAHF0AB4AcT4AsPQAHgBxdAAeAPE0ABgBsCAwW5IAMJgAG5AYABuQGAAQ==\"}"
},
"swing": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"vertical": {
"16": "{\"ir_code_to_send\": \"BzUNqQaxAQAFgAMH5AF/AbEBfwFAB0ATgAGAC4APgAsEsQF/AbEgAUATQANAAUAHQAMDsQF/AcA/QAdAA+ADFwOxAX8BQBNAA8ALwAfgBxPgAxfgBRsBsQGAU0ABAX8BwANAI0AXQANACwOxAX8BQAdAA0ATwANAAUATALFgAUAHAX8BwBsD5AGxAeADCwOxAX8BQANAEwfkAX8BsQF/AYAHB7EBAAV/AbEBgAMCAAWx4AQDQAFAEwOxAX8BwAOANwF/AYADQAEBfwHgHxMAsWABQAdAA0ABAX8B4BM74AUbAX8BQAPgBRNAAeAdE8DHgD8BsQFADwQABX8BsWABA38BoyxCRwF/AUATQAOAJwF/AUAD4AMPAgAFsWADAbEBgAsEsQF/AbEgAYAXQAsBfwFAB0ADALFgAQF/AYALAn8BsSAB4AELgA8BsQFAB0ADQAHgBwcBsQHgA4cAsWABAX8BgBPgAQEHAAWxAbEBfwGAA8ABA38BAAVAAwWxAbEBfwHgAQMBsQFAEwIABX9gAwCx4AQBQA8BfwHAG0BnwAtAFwCxYAEBfwFAE0AHALFgAQF/AcAnQAtAA0AfAgAFsaADDX8BsQF/AQAFsQGxAX8BQCtAB4ADQAEBfwGAE0ABAn8BsWABAX8BgBMBfwGAA+ADAeADE0ALQAFAB0ADQAHAB0ABQAvAA0ABAX8B4AlXwBNAAQJ/AbFgAeADB8ALgAGAx0ABgBcCAAV/YAMHsQGxAbEBfwE=\"}",
"17": "{\"ir_code_to_send\": \"BxoNpQbCAQcFQAMHhgHuAYYBwgGAA+ADDwIHBcJgAwHCAYALA8IBhgFAA4AXAYYBQDcCBwXCYANACwPCAYYBQA8DwgGGAUADAwcFhgFAB+AdA0AB4AErwE/gAxNACwMHBcIB4AsbQBdAA+ALGwHCAUADQAFAB+ADAwHCAUAzQAMFwgGGAQcFgANAC8ADQBNAC0AHAgcFwiADCIYBwgGGAQcFwiADQAfgBQMDwgGGAUATQAfgOwPgEc8BhgHgUQPAAYBjQM/AA+ADEwGsLEJHAYYB4AcbQCNAE0AHQANAC0ADwAtAB0ADQBNAA4ALA8IBBwWACwPCAYYB4A8LQBvgOwPgA1/gA09AF0AD4AMT4BsLQDNAA0ArQAdAA0ALwAPAD0AHwANAG8AL4AcHwBtAB+C5A0ABAYYB4APjC8IBhgHCAYYBBwWGAQ==\"}",
"18": "{\"ir_code_to_send\": \"CCYNtQaGAQsFxGADA8QBhgFAAwfvAYYBCwWGAUALQANACwULBcQBxAFABwGGAUAfwAsFCwXEAcQBQAdAAwXEAcQBhgFAAwMLBYYB4AMnQBPAA8AXwA9AB+ALE0AX4AcDwCdAX0AbwA9AC0ADQBdAA0ALwAMHCwXEAcQBhgHgEwMBCwWAA0BPwAvgAy8FCwXEAcQBQAfgBQPgCxNAI8AXQAeAA0ABwAvAB0ABwAvgBwdAAeAHE+BtD+ADz0ALQANAi8AHAb4swkcBhgFAA0AbwAPgAw9AC0ADQBvAB8ALwA9ABwcLBcQBxAGGAUAD4AULAYYBQBPgQwPgD1NAF0AD4ANr4AcP4AMbwAtAI0ADQA9AB0ADQAvAA8APQAfgAwNAH+ADD8ALwBdAB+AHA0Kr4AcT4JMPQNNAn0AHwAMLxAGGAQsFhgHEAYYB\"}",
"19": "{\"ir_code_to_send\": \"CBYNvQbIAQ0FfSADBcgB8AF9AUADB8gBfQENBX0BQAdAA0ALQAPAC0AHQCdAE0AD4AcLQB9AF0AHwBtAC0ADQA9AB+ADA+ADE8AL4AcHQC/gAxPAX+ADF0ALQBdAA0ALwANAN+ADE0APQBvAB0ALQB9AA4ALA8gBDQWAC8AjBQ0FyAHIAUAH4AUD4AsTQCNANwcNBcgByAF9AUADQA9AB+ADA+A7E+ADQ8ALwAdAa8ALwAdAE8AD4CMTAQ0FwAMAyGALB8gBfQENBX0BQEMBvCxCRwF9AUAPQANAG0ADQBsHDQXIAcgBfQFAAwENBYADwAtAH8ALQBvgBwvAD+ADJ0AT4AsDwCPgCxuAE0ABwAsBfQHAL8B3wA9AG0ADQBdAA0AL4AMDwBPgBy/AI0AfQANAD0AHQANAC8ADBQ0FyAHIAUAH4AUD4AsTQCPAF0AH4CUDQAHgJzPgSy9AAcBXAcgBQNPgAQMNyAHIAX0BDQV9AcgByAE=\"}",
"20": "{\"ir_code_to_send\": \"ByENrAauAQ0FgAMD5QF2AcADQBNACwWuAXYBDQVAAwOuAa4BQAcBdgHgARcDrgENBYAPAQ0F4AELQB8DDQV2AUAHC64BdgENBa4BrgF2AcAPQAdAA8ATQAtAA0APQANAC8ADQA9AA0APwAdAC+ADU0APwAMBDQWAA0APwC9AE0APwAdAC0ADwB9ABwINBa5gAwGuAeAFC0AnQANAHwGuAYAHQAsBDQVACwF2AcAbQAvgAQMBrgGAFwB2YAdAC8ADA64BdgHAC0AHQA9AA0AL4AMD4CcT4Ccv4CNrQMfgB19AE0ADQEcBuizCRwV2AQ0FrgFAEwOuAXYBQAcDDQV2AUAHQAMCDQWuYAOACwB2YAcAriABAQ0FQANACwR2AQ0FrmADA64BdgGAJwCuYAcDrgF2AUALBK4BdgGuYAHAB0ABAXYBQCvgAwfgAwvAGwCuYAFABwF2AcAT4AFTAXYB4AEDAa4BQBcBDQVAE0ABgAcDDQWuAUABgAeAE4ABAXYBgE8ErgENBXYgAwOuAa4BgAcHDQV2Aa4BdgGAHwd2AQ0FrgGuAYAHAQ0FwAcBrgFAAUAH4AcDQAFAE0A/QAMDrgF2AcAHAK5gAcAH4AMBQBNAA0ABwAfgAwHgAxNAC0ADwAFAC8AD4AsBQBvgAwFAD0AD4A8B4AEbAQ0FQAtAA0ABgAcLDQWuAQ0FrgGuAXYB\"}",
"21": "{\"ir_code_to_send\": \"BxQNWQbDAQwFgAMD8AF8AUADB8MBfAEMBXwBQAdAD0ALQAPAC0AHQBtAE0AD4AMLBPABCAHwIAEDDAXDAYABCggBWQYIAYACCAHDIAEBfAFAAwF8AUAFA/ABfAFAB+ADA+AfE4BfAXwBwAPANwEMBYADQBfAE8ALQBtAC+ADA8AjQBtAA0AbQAdAA0ALQANAI0APwAdAC8ADQB/AC+ADB4AXAMNgBwHDAYADQD9AC4AHQAHAC+ABB+ADC4AnAXwBQAPAC8AHQBPAA+ATE+ADG8ALwAdAP8ALwAfgHxMBDAWAA0AvAbYsQkcBfAHgAxNAF0ADBwwFwwHDAXwBQF8BDAWAA0APQAsAw2ABAXwBQAsFDAXDAcMBQAeAA0ALQANAD0AHwD9AB8APQAdAA8ATQAvAA+ALE8AbwAdAI0BfQAfAE8AHAgwFwyADA3wBwwHgBQNAK+AFF0ABAXwBwANAG0ADQA9AB0ADQAsAw6ABwA9AB+ADAwDDIAHgAw/ACwPDAXwBQAtAB+AVA0ABwCPgAwHAE8AHQAHAC+APB8AB4BMfwBvAAcAP4AcHQAHgBxPgAQ8LDAV8AQwFfAHDAXwB\"}",
"22": "{\"ir_code_to_send\": \"BwoNsAahAQwFgAMD5QFsAUADA6EBbAFAE0ALQAMBDAVAA4APQAcDoQFsAYAXAaEBQAOACwNsAQwFgAuADwOhAaEB4AELAuUBoSABgA8B5QHgAQPgJxPAL0BfAuUBoSABA2wB5QHgAQNAF0ADwBMDoQFsAcAPwAfAG0AHQB8D5QGhAUAbQAPgBwsBoQFAHwFsAYAbQAdAAwGhAcADgBMBoQHgBQMBbAHAFwGhAYALQA+AAwChIAHAC+ABB+AfE4AzAKEgAcALwAcAoSABwAvABwChIAHAC+ABB+AhEwGhAUA3AQwFgAcGoQFsAeUBoSABAWwBQBNAAwWhAWwBvSziD0cBoQFAIwPlAWwBQANAC0ADQAGABwFsAeADF+ADC8ABgCcFoQHlAaEB4AELQDcAoWABBOUBbAGh4AYBwBPAB0ABQAtAAwCh4AABCmwB5QGhAQwFbAGhoAFAD8ABAQwFgAPgAwFAE0ABQAcB5QHgATfgAwECDAVsIAMBoQFAAQEMBeABC0ABB+UBoQEMBaEBQAFAB+ADAwGhAYAr4AMTBAwFbAGhIAEMDAWhAaEBbAHlAWwBoeAGAQLlAaHgCAHAEwHlAeAHL+AHD4AB4AEn4AEf4A0TAKHgCAHgHxNAAYDH4AMBDWwBDAWhAQwFoQGhAaEB\"}",
"23": "{\"ir_code_to_send\": \"ByMNrAa8AQwFgAMD7QF5AcADBAwFeQG8YAEEeQEMBbwgAwl5AbwBeQEMBbwBQCMFvAF5AQwFQAMDvAG8AYAHBQwFeQG8AYADQAvgAydAF8APQAvAA+AFE0AB4AETgBtAAYALQA9AA0APQF9AB8APwAtAF0ADwA/AH0ATQANAF+ADA+ALHwIMBbwgAwF5AUAbwANADwa8AXkBDAW8IANAB4ADQB/AC4AHQB8DvAG8AYAPQB9AC0ADwAvAB+APE0AXQANAJ0ADwAvgCwfAE0AnQANAD0ADQAvAA0APQANAD+ADB0ALALxgAQF5AUAbQANAC+AHA0AXAwwFeQFAB0AbQAdAD0ADQAsBvixCRwF5AUAPQAMAvGABAXkBQBsHDAW8AbwBeQFAAwEMBUADA7wBvAGAB0AfBbwBeQEMBYADgAsBvAFAA0ABQB8FDAV5AbwBgAPgAwtAE0AfQANAC8AD4AcPQBfgERMBvAHgB1MBvAFAAwO8AQwFgAMBvAFAD+ABA4AXAXkB4AETQAEBeQHAYwIMBbwgAwh5AbwBeQEMBbwgAwJ5AbxgAYAHBwwFvAG8AXkBQAeAA0ALAnkBvCABQAfgAQNADwO8AbwBQBMGvAG8AXkBvGAB4AMH4AMLQAFAD0ADQAHgAwdAC8ADQAHAC+AbB8ABQCtAAeADB0ALwANAAcALQAfAAUALQANAAQV5AQwFeQFAB8ADCwwFeQEMBbwBvAF5AQ==\"}",
"24": "{\"ir_code_to_send\": \"ByoNrgalAQwFgAMD5AFxAUADA6UBcQFAEwOlAXEBQA9AC0ADwAtABwWlAXEBDAVAAwOlAaUBgAfAC0AfQAtAB0ADAwwFcQFABwOlAXEBQAcC5AGlIAFAB+AFA8ATwAdAH+ADC0APQANAE8BTQA+AAwClIAEEcQEMBaUgAwdxAaUBcQHkAYADAgwFpaADAXEBQBMDpQFxAUAH4AMDQBsFDAWlAaUBQAdAAwGlAUAfB6UBcQHkAaUBwA9AB4ADQAsHcQHkAXEBDAXAE8AHAXEBwBcBpQFACwClIAFAB4ADwAvAB8AXAuQBpSABQAfgBQPgLxNAN0AD4ANPQA9AA0ATwAfgAwvgCxNAz0AD4AMnQA8JDAWlAaUBcQGvLOIFR0ABgCsBpQFAI0ALQANAC0ADwAtAB0ADQBMDDAVxAeABCwalAaUBcQGlIAFAC0AXAKUgAUALAaUBgAtAAcAXAaUBwBMBcQHgHRMBpQHAJ4BTBKUB5AGlIAHgAT9AF0AD4AMBQA/AAwTkAXEBpeAEAQFxAUAT4AEfAaUBwAvAAQHkAYAfQAHAG4AHAnEBpSABAQwF4AkDQAEBDAWAH+ABAQRxAeQBpeAIAeABEwJxAaXgBgEB5AHgHxMApeBMAQbkAXEBDAWlYANACwClYAENcQEMBaUBDAWlAaUBpQE=\"}",
"25": "{\"ir_code_to_send\": \"BwINsAa9AQ4FgAMD7gF5AcADBQ4FeQG9AYADAg4FvSADBXkBvQF5AcAHQCdAC0ADwBfAC8APQCPAC0AHwA/gAwvgAxNAF0AD4AMTwAvAB0AfQANAa0ATQANAD0ADQAtAF0ADQAvAE0AHQANAE0AbQAvgAwOAFwO9AQ4FwAsAeeAACwO9AXkBgB/gAQcCDgW9IAOAB8AbAg4FvSAD4AEHC70BeQEOBb0BvQF5AUAjQAdAA8ALwAfgDxNAF0AD4AMnQA9AA8ATwAfgAxNAC8ADwB/AB0AXwAvAB+APE8AX4AMnAw4FeQHAD0ALQANAJwHCLEJHBHkBDgW9IAMFeQG9AXkB4AEnA70BvQGADwEOBYADQBtAC0AXQANAC0AD4AELAb0BQCMDvQF5AUALA70BeQFAA+ADC8AfQBfgAwsAvWAB4AMH4AcLQA/gAQMDDgV5AYA/Ab0BwAcGvQF5AQ4FvWADA70BeQHAA4AfAXkBQANAHwS9AXkBvWABQAeAA0AXCg4FeQG9AXkBDgW9IAMDeQG9AcADCb0BDgW9Ab0BeQFAB4ADgAtAAYALQA/gAQMDvQF5AUAPQAcAvWAB4AMH4AcL4C8PQAFAO0ADQAHgCwfAE0ABQAvAA0ABQAtAAcAHQAFAC+ALAwG9AeABzw15AQ4FeQEOBb0BvQF5AQ==\"}",
"26": "{\"ir_code_to_send\": \"BxMNrgakAQwFgAMF5AFvAaQBQAMBpAFAE8APQAtAA0APAwwFbwFAB0ADAgwFpGAD4AcLwA9AB0ADQCcDpAFvAUAL4AMDwBPAB+ABGwCkIAHgAw+AC+ADE+APUwEMBUADAaQBQDMHpAFvAeQBpAHgAw/ACwHkAcADAKQgAQFvAUAXQAMBpAHgBQsB5AGAA+ABG4ALAQwFQAMBbwFAHwEMBUAL4AUDwBdAB+ADAwOkAW8B4AMPQAvgExPgExtAO8AD4DknAKQgAQNvAeQBgAOACwCkIAEBbwFA2wHkAeABB8ALBAwFbwGkIAEBwCziCUcC5AGkIAEJbwEMBaQB5AFvAUADQAtAA8ALA6QBbwHAC+ADF0ALQAHAGwGkAeABJ4ABgA9AHwCk4AIB4AMPgAsBbwGAB+AFAUATQAMApCABBgwFbwHkAaTgAAEK5AFvAaQBbwEMBaRgAwOkAW8B4AMTQAFAD0Af4AcBwBfAG0AHQAMC5AGkIAECbwGkIAHAD0AH4AMDQAHgAw8CDAVvIAMBpAFAAYAHAm8BpOACAYBTQAHgBRcBpAFAD0AD4A8B4AEbAeQBQAtAA+ABAYAT4AUB4AkTBG8B5AGkoAECbwGk4AYBAeQB4A0TgMcBpAHAB0ABCwwFpAEMBaQBpAGkAQ==\"}",
"27": "{\"ir_code_to_send\": \"BwwNqwajAQwFgAMD5QFvAUADA6MBbwFAE0ALQANAC0ADwAsDowFvAcAL4AMXwAvAGwGjAUALAaMBwBcFowFvAeUB4AUDwBPAB+ABHwCjIAHgAw+AC8AT4A9TQBdAA+ADLwEMBUADA6MBowGAB8AbgAcAoyABAW8BQB9AAwGjAeAFCwHlAYAD4AEbgAsBDAWAAwGjAeADD+ABC0A3AQwFgAdAC8ADA6MBbwHAC8AHwBPAB0AXwAvAB0ATgAMAoyABwAvgAQfgTRMAoyABAW8BQMfAA0ABAeUB4AETQAsDrywMDeITR4ABAm8BDCEPQANAAUAHQDsD5QGjAUALQAPgBQsFbwGjAW8BgBcCbwGjIAFACwGjAUALQANAAQRvAeUBoyABQAeAA4ALAKMgAUAL4AEB4AkTgB+AU0ABBm8B5QFvAaMgAUAHQBdAAwLlAaPgAAFAD0ADAaMBgB/gAwEE5QFvAaMgAUAfQANAAUAHQAPgAQEBbwHAD0AH4AMDQAHgAw/AC0ABBgwFbwHlAaNgAQXlAW8BowFAA+ABAYAT4AMBBG8B5QGj4AYB4AsT4AEBBOUBbwGj4AQBAW8B4B0TBKMB5QGjoAECbwGjoAHgARPgAQEBDAXgAQPAAQsMBaMBDAVvAeUBowE=\"}",
"28": "{\"ir_code_to_send\": \"BxgNrgasAQ0FgAMD5QF3AUADA6wBdwFAEwOsAXcBQA8BDQWAA8ALQAdAGwINBaxgAwGsAUALQAMFrAGsAXcBQB8DDQV3AUAHQA/AC8AP4AMHQAvAA0ArwAvAB+APEwMNBawB4AsjQBcHDQV3AawBdwHAHwINBaxgA0APQAsDrAF3AUAL4AMDAQ0FQAMDrAGsAUAHQAMFrAGsAXcBQANAJwMNBXcBgAcErAENBXfgAAPgBRNAG0AD4AEXAawBgAtAJ0ADQA9AA8ALQAdAA+ALE8AXwBtAD8AD4DsT4B9DQM+AAwGsAcB/QAsDDQV3AUAPAb0swkcBdwFAAwOsAXcBQBdABwcNBawBrAF3AUAPQAsDDQV3AcALQAdAAwINBaxgA+AHC8APA6wBdwFAA0AnQBMDrAF3AYAH4AMBAXcBgANAAQF3AYAfAXcBQAOAC+ADAcATAXcB4ANTAKzgAAEDdwENBUADBawBrAF3AYA/AXcBQA9AAwGsAYAL4AEBAncBrKABQB8BDQVADwR3AQ0FrCADA3cBrAHAAwmsAQ0FrAGsAXcBQAcBDQXABwGsAUABQAfgBwMBrAGAIwSsAXcBrOAAAcAL4AsH4BMTwAFAI0AD4AMBAXcBwOdACwCsYAEBdwHgERNAAQJ3AaxgAcAHQAHAC+ADB4AL4AHbgA9AAQsNBawBDQWsAawBdwE=\"}",
"29": "{\"ir_code_to_send\": \"BxYNrgajAQsFgAMFowFtAeUBgAMDCwVtAcAPAgsFo2ADQBtAC0AHA6MBbQFAC0ADQA9AB0ADQAsD5QGjAeABCwFtAeADC0APQAMDowFtAUAH4AMD4BMT4Acb4AlTAKMgAYAXQBsFowFtAeUB4AUDAQsFgANAF4AfAKMgAQhtAeUBbQELBaNgA+AHC0APQANAH8AHQAuAAwhtAaMBbQELBaOgA+ABCwvlAaMBCwWjAeUBbQHAAwOjAW0BwAvAB+A7E+A7Q8CPQAfgEU8BowHA00AHQAMF5QFtAb8s4gtHAKMgAQFtAcAjQA9AC0ADA+UBbQFAB8ABQAtAA8AXQAsDowFtAcAPAaMB4AELAuUBoyABAm0Bo6ABAeUB4AELQAHAD+ADB4ALAm0Bo2ABAW0BQA/AA4Br4AEBQBcDowFtAUAXQAPgCwFAFwQLBW0Bo+AGAUA7AgsFo2AD4AULAKPgAAFAH0APQAfgAwNAAeADD8ALQAFAC+AHAUBD4CEBBm0B5QFtAaPgCAHgCRPgCycC5QGj4AgB4AsT4CMBgNMNbQELBaMBCwWjAaMBowE=\"}",
"30": "{\"ir_code_to_send\": \"CCQNrwZ7AQoFvGADA+wBewFAAwO8AXsBQBMDvAF7AUAPAQoFgAPAC0AXQAOAFwO8AbwB4AELQCMHvAF7AQoFewFAB0ADQAvAF8AHQBfAC8AH4A8TQBdAA+ADJ+APUwIKBbxgAwO8AXsBwC9AEwG8AYAHBwoFewG8AXsBwBvAB0AXQANAG0AHQANAC0ADQCPADwIKBbwgA0AHgAPAGwEKBcAXgAcDvAF7AUALA7wBewFAI8AHQAtAA0APQAPAC8AH4AcTwBfgBwdAJ0ADQBdAA0ALQANAC8ADQA/gAwPAF0AHwBdAC8AD4A8TAwoFewFAG0AnQAvAB0ALQBcBmCxCRwO8AQoFQAMFewG8AXsBQCNAB8APwAtAD0AbQAdAE0ADAgoFvGADAbwB4AUL4AEnQAEBewFAJ0ATAbwB4BsDQAHgCydAAeABF0BTBLwBewG8YAEBewGAXwG8AUAXBAoFewG8YAFABwF7AYAPQAcBvAFAAwO8AXsBgAPAAQN7AQoFgAPgBwtAD0ADAwoFvAFAAUAHAQoFQA+AAwO8AXsBwAsCCgW8IANABw17AbwBewEKBbwBvAF7AYADQAFAC0ABQAfgAwNAAeADD0ALQAFAB+ADA0ABwA9AAUALQAFAB0ADQAFAB+AjA8ABwDNAAUALQAGABwEKBYAHA7wBewGAC0AHCbwBCgV7AbwBewE=\"}"
},
"top": {
"16": "",
"17": "",
"18": "",
"19": "",
"20": "",
"21": "",
"22": "",
"23": "",
"24": "",
"25": "",
"26": "",
"27": "",
"28": "",
"29": "",
"30": ""
"16": "{\"ir_code_to_send\": \"BxQNqgaiAQsFgAMH5QFuAaIBbgFAB0ATQAcDogFuAUALQAMBogGAC0AXQANAE0AD4AcLgA+ABwuiAW4BCwWiAaIBbgFAF+ADA+AlEwCiIAEDbgHlAYAD4A9TQBcDCwVuAUAnA6IBbgFAB0ADAgsFoiADgAdADwOiAW4BQAfAAwILBaJgA0AP4AMLQA9AAwMLBW4BwAcCCwWi4AADAaIB4AMP4AELA+UBogFADwHlAeABAwOiAW4B4AMPQAvgOxPgCUMAoiABA24B5QHgBQPgMxPAywULBaIBogGAB0ALQGMBtCziC0cBogFAGwYLBW4B5QGiIAEEbgELBaJgAwGiAYALA6IBbgFAG8AX4AULBW4BogFuAUAbQAtAA8ALA6IBbgFADwCiIAGAB4ALgAEEbgHlAaLgAAEE5QFuAaIgAQLlAaJgAQHlAYAPwAHgAVMBogGAGwFuAUAHQBdAA0ALwAMAoiABQBPAAwLlAaLgBgEBbgHAGwGiAeADC+ABAUAfQAFAB+ADA0AB4AMPwAsB5QGAR8ABQA8AouAGAeANEwCi4AgB4AsT4AkB4Alf4AMBAeUB4Akf4A0TAKLgDAFA10AB4AMHBwsFogGiAaIB\"}",
"17": "{\"ir_code_to_send\": \"CC0NqwbKAQ4FfiADBcoB8AF+AUADB8oBfgEOBX4BQAdAD0ALQAPAC0AXQANAE0AD4AcLwA9AB0ADQCNAO0ALQAPAC8AHQBPAA+ATE+ADG+AHU8A/QBdAA0APwC/AB+ATE0AzQANAK0AHQANAL0ADwBNAC+ADF8APQBPgBwPAG0AHQD/gAwdAC8ADwBvAD0AH4CcT4AMvwAvAB+ADT+ADE0AXQANAE0ADQAvAA+AHD8AXwONAH+ADCwG1LEJHAX4BwBPAL0AHQBNAB0ADQAtAA8ALQAdAA0ATQAPgBwvAD0AHQAPAI0AL4CMDQK/gDy8HDgXKAcoBfgHgBwMBDgWAA+AHF+AND0ABgBvgAzfgAwvgAx9AC0AbQAfAA0AP4AsDQB9AF0AH4L8DQM9AA0DPCw4FfgEOBX4BygF+AQ==\"}",
"18": "{\"ir_code_to_send\": \"BwwNrgalAQwFgAMGpQFvAeYBpSABAW8BQBMD5gFvAUADQAsDDAVvAcALQAdAAwIMBaUgAwFvAeABCwClYAuADwVvAaUBbwGACwClIAcApSABgA8B5gHAAwClIAHAC+ABB+AbEwMMBW8B4AMzQAtANwIMBaVgAwalAW8B5gGlIAEBbwFAEwPmAW8BQAMDpQFvAUAH4AMDQBNAI0ADAaUBQAtAAwWlAaUBbwHAJ8APQAfgCxNAF+ABAwFvAUAjwAcDpQFvAUAP4AMD4BMT4BMb4B9D4CsnwDPgB39AxwClIAFABwMMBaUBQCcEDAVvAaVgAQVvAbAsDA3iB0cApWABBW8BDAWlAUAvAKUgAUALQANAD0AHA6UBbwHAC0AP4AcLA6UBbwFAFwOlAW8BwBtABwalAW8B5gGlIAFABwJvAaXgBAFAD0AD4AMBAW8BwCdAB0ADAKUgAQPmAaUBQF8B5gHAD+ABB0AXQAPgAwHgBw/gCwFAI0ADQAFABwQMBW8BpeAAAQVvAQwFpQFAAUAHAuYBpWABQAsBpQGAG0AL4AMDQAFAD+AHAQTmAW8BpeAGAeABE+ABGwLmAaXgCAHgCxPgEwEB5gHgAU/gAQHgCRPgCycC5gGl4AABAwwFbwFAD0AHAwwFpQFAAQsMBaUBpQGlAaUBbwE=\"}",
"19": "{\"ir_code_to_send\": \"BwwNrgajAQwFgAMD5QFsAUADA6MBbAFAE0ALBuUBowEMBWwgAwOjAaMBQAcDbAHlAYADAgwFo2ADQA/gAwvADwGjAeABC0ATA6MBbAFAB+ADA+AlEwCjIAEFbAHlAWwBQG+AAQFsAUAPwAMBDAVAAwGjAcAPA6MBbAFAC8ATgA8AoyABA2wB5QGAA0ALQB9AAwGjAeABC4AfAKMgAYATAeUBQAcBbAFAB0ADBQwFowGjAYAHQAsBDAXgAQsS5QGjAQwFowHlAWwBowFsAeUBoyABQAfgAwMAoyAB4AMPgAvgOxPgO0PAj0AHQMvAAwPlAaMBQAsL5QFsAaMBbAGsLAwN4gtHQB8ADKEDwAsBDAXgAQsBowHgAQsHDAWjAeUBowFAB0ADQAsDowFsAYALAmwBoyABQAtAAUAPAuUBoyABQAcCbAGjIAFABwLlAaMgAUAH4AEDAKNgAQFsAeADE0ALgBMBowHAU0ABQA8HowFsAeUBbAFAF0ADQAtAAwCjoAFAE0AB4AMTQAtAAwCjIAFAH0ADQAFAB0AD4AEBAWwBwA9ABwLlAaMgAeAFE0AX4AEDAmwBoyABAwwFowHgBwGAO+AFAeALE+AnAQHlAYBz4AMBAuUBo+AcAYAn4Ak/QAEB5QGAF0DLwANAAQsMBWwBowGjAaMBowE=\"}",
"20": "{\"ir_code_to_send\": \"CCUNqgbKAQwFfSADBcoB8gF9AUADB8oBfQEMBX0BQAdAA0ALQAPAC+ADI+ADF8AL4AsnQBPAN8AHQBPAA+AnE8Br4Ac3QBdAA+ADV0APQAPAK8AHwCNAB0AfQAPgBwvAK+ADG+ALE0Af4AMDQCNAD0BPQANAD0AHQAPAC8AHQBPAA8ATwAfAF0AH4EcTQFNAA+AXV0DH4AMDQDNAD0AHQDsBwCxCRwF9AUATQANAF8AD4AMPQAtAA0AbDAwFygHKAX0BjgLzAJwgC4APQAsJ8wAMBX0BygF9AUBbwAtAD+ADC0AP4AsDQDPgCxfgBxOAJwHKAeAHU4AXAX0BQBdAA0ALwANAD0ADwA/gCwdAH0ADQBtAB0ADQAuAAwHyAcAPwAcJygF9AQwFygHKAUAH4AkDwBdAB+A9A0AB4AdLQAHgBxPgSQ/gB98AyiABCwwFfQHKAX0BygF9AQ==\"}",
"21": "{\"ir_code_to_send\": \"CBANrQbIAQ0FfWADAe8B4AEDQBMByAGAA0ALQANAD8AHwAvAD0AHQANAQ4AbAcgB4AMLA8gBfQHAD0ALwAPgKxNAMwMNBX0BQENAC0AHQANAC0AXQANAC8ADQBtAA8AXQAtAG0AHQANAC0AbQAPgBwvgAx/AG0ATQAPgBy9AD8AD4AMrQAtAL8AH4AML4AMTQBdAA+BPE+ADV8ALwAfgA3fgBxNAD0ADQCNAA8DjQAtAAwGeLEJHAX0B4AcXQBtAE0AHQD9AC0ADwAtAF0ADQBNAA+AHC+ALJ0Aj4C8DQE/gBztAd+ADF8ALQBdAA4AvQAGAC0Af4AEXAX0B4AcDQBtAA0AXQAcHDQXIAcgBfQHAAwMNBX0BQAvAB+ADC0AT4AcD4AMfQAvgEQNAAeATH+ALG0AB4AsX4EsTQAHgBVfA6wfIAX0ByAHIAQ==\"}",
"22": "{\"ir_code_to_send\": \"BxcNsAaxAQ8FgAMD6AF1AUADA7EBdQFAEwOxAXUBQA8BDwWAA4ALALFgB8ALCg8FdQGxAXUBDwWxYAMDsQF1AcAbA7EBdQFAA0AbQBMBsQGAA8ALwAfgAxdAE0AD4A8TwBvAU8APQAdAA0AXQAMDsQF1AUAPQAMDDwV1AUAPBw8FsQGxAXUBQBPgAwNAE0AbQAMBsQFAC0ADAbEBwCMDsQF1AcAPAw8FdQHAFwUPBbEBsQFAB0ADA7EBDwVAB4ADQCNAC0AHA7EBdQHgAwfgAwvAG0ATwAPgOxPAQ0AHQANAW+AHB+ADE0ALwAPAJ8APwMfgAQ8DsQEPBYAPBbEBdQG/LEJHBHUBDwWxYAMDsQF1AeADKwGxAYAPAQ8FgANAG0ALQAdAG0ALAw8FsQFADwEPBUADBbEBsQF1AYAPALFgB4ALgAcAsWAB4AEHQBuADwF1AcALQAdAA+ALE4AXQAEBdQFAU0AHgBMCdQGxYAEEdQEPBbFgAwOxAXUBgBsBsQFAEwOxAXUBwAcAsWABAXUBgB8BdQFAA0AbAw8FdQFAE0AHCA8FsQGxAXUBsWABBXUBDwV1AYAHAbEBQCMDsQF1AUALQAFAB+ABA+ADFwN1AbEBQAPAAQR1AegBsSABAXUBgANAAUALQAFAB0ADQAHgAQcE6AF1AbEgAcAHAbEBQA9AA0AB4AMHQAvAA0ABAXUBgDMBdQGAA8ABwA9AB0AB4AMH4AMLQAGADwMPBbEB4AMBAg8FdSADCbEB6AF1AbEBdQE=\"}",
"23": "{\"ir_code_to_send\": \"BwoNsQauAQwFgAMHrgF1AecBdQFAB0AT4AELQA8AdWAPBwwFrgGuAXUBQBsBDAVAAwGuAeABCwB1YAuADwOuAa4BwAuAB8APQB/AA8ATwAfAF0AHwBPAB+ADE+APU0AXQANAK0ADwDtAE0AD4AMTQAvAA0AbAwwFrgFAAQEMBUALAXUBQBsDrgF1AUAHwA/AB4ATB64BrgF1AQwF4AMDAK4gDwOuAa4BQBMBrgFAJ0ADA64BdQFAB+ADA8ATwAdAG+ADC0APQAPAE8AH4A8TQBdAA+ADJ0APQAPgMxNAPwMMBXUBQAdAAwIMBa4gAwF1AUALQAMBrixCRwF1AUATBwwFrgGuAXUBQANAG0APQAdAA0ALDwwFdQGuAXUBDAWuAa4BdQGAFwF1AUADgAsBrgFAA4ABAXUBQAtAFwCuIAFAC0ABgA9AE8ADAa4BQBNAAwOuAXUBgAfAAQF1AeABA0AZAnUBrmABgAfAUwGuAYAPAa4BQAcBdQFAF0ADQDEBrgHAAwSuAQwFdSADAa4BgAEEdQHnAa4gAUAHAnUBriABQBtAA0ABQAdAA4AB4AEfQAGAFwF1AUA3gAsDrgEMBYALAQwF4AEDQAFAD+ABAQJ1Aa7gAAHAC+ALB0ATgANAY4ALwAEBdQHgARMCdQGuYAEBdQGAE0ABAnUBrmABAXUBgBMCdQGu4AABAXUB4AETAnUBrmAB4AEH4AkbAa4BgBNAAQh1AQwFdQHnAa5gAQEMBYADB64BrgGuAXUB\"}",
"24": "{\"ir_code_to_send\": \"CBcNqwbKAQ0FfiADBcoB8AF+AUADB8oBfgENBX4BQAdAA0ALQANAG0AHQBNAA0ALQAPgBwvAD0AHQANAI0A7QAvAB+ADC+ADE0AXQAPgFxPgA1PgAy9AF0AD4AsTwBdAG8ADwGdAG0ADQBdAB0ADQAvAA8APwAdAF8ALQAfgBwPAH8BfQA/AA+ATE+ADG8ALwAdAP8ALQAdAA+AHE0AP4AMDwCPAE0APQAPAD8AH4AsTwBvA20APQCfAD0ALQBMBwSxCRwF+AcAXQBPAA0ATQAtAK0ALQANAD8AHwAvAD0AHQANAL8AbQAdAA0AXQAfgAQNAAeADD+ApC+AJUwF+AUADQBdAA0ALwANAD8ADwBPgBwfgAx/gAwvAJ0ATQAsHDQXKAcoBfgFAAwMNBX4BwAdAC+ABAwPKAcoBgA9AB+CpA0ABwLcEygENBX5gAwHKAYAD4AQPAgF+AQ==\"}",
"25": "{\"ir_code_to_send\": \"ByoNrAalAQ0FgAMFpQFuAeQBgANAEwOlAW4BQA9AC0ADwAsC5AGlIAHgARcBpQHgBQsD5AFuAcAvwBtAE0ADBqUBbgHkAaUgAUAH4AUD4CMTwF9AQ4A3AKUgAQFuAUAXQAMFpQFuAeQBgAOACwClIAEBbgFAGwbkAW4B5AGlIAFAB4ADQBdAA0APQAcDDQVuAUALwAPADwsNBaUBpQFuAeQBpQFACwPkAW4BQAcBDQXAB0ALAaUBwBdAB+ADAwOlAW4B4AMPQAvgExPgCRsApSABA24B5AHgBQPgGxMApWABAW4B4A07AKUgAQJuAaUgAQPkAW4BwAMDpQFuAcALQNcBpQGAB8ALQBsBtCzCRwVuAQ0FpQGAAQVuAeQBpQFADwHkAUALA24BDQVAA4APwAcApSABQAsBDQVACwRuAQ0FpSADA24BpQGAAwMNBaUBQDsDpQFuAUALBqUBbgHkAaUgAUAHAm4BpSABwAcDpQFuAUALQANACwClYAHgAwfgAQvAI4BTAaUBgA/gAQFAF0ADwAEC5AGl4AQB4AMb4AMBQBdAA0ABQAdAA8ABQEPAD8AHAeQBgIMD5AGlAUAT4AcDAaUBgB/gAwEE5AFuAaXgBgEC5AGl4AgB4B8T4AUB4AVbAeQB4AUPQAHgCRMEbgHkAaXgCAHgCxNAAUDjQAFABwsNBW4BpQGlAaUBpQE=\"}",
"26": "{\"ir_code_to_send\": \"BxENrgamAQ0FgAMD5QFxAcADQBPgAwvAD0AHA6YBcQFAG0ALQAPgBwuADwVxAaYBcQGACwCmYAdACwLlAaYgAUAH4AUD4CcTwFOANwCmIAEHcQHlAXEBDQVAAwGmAUALwAMDDQVxAeABCwOmAaYB4AEP4AEXBXEBDQWmAUAPQAdAA0ALB6YBcQHlAaYBwA9ABxGmAXEB5QFxAQ0FcQHlAaYBDQXAAwBx4AALAaYBgAsD5QFxAUADA6YBcQFAB+ALA+AJGwCmIAEDcQHlAeAFA+A5EwCmIAEDcQHlAYADwAvAB8AXAuUBpiABAXEBQAMJ5QFxAQ0FpgGmAYAHwA/AE0APAZss4gNHA3EBpgHAAwGmAYAPAaYBQCdACwUNBaYBpgFABwJxAaagAQENBYADQAECDQVxIAMFpgGmAXEBgDMBpgGAAQVxAQ0FcQFAEwCmYAEEcQHlAaYgAQFxAYADQAEBcQHAEwTlAXEBpmABwAfAAeABGQymAXEBDQWmAaYBcQGmYAEBcQGAHQFxAUAXBA0FcQGm4AIBAw0FpgHAAQYNBXEB5QGmIAECcQGm4AIBAQ0FgANAAeADC8ABAQ0FgC8FDQWmAeUB4AELQAFAE+AHA0ABQBPgCQGAOwGmAcAHAaYBgE/gAQ8GpgFxAeUBpiABAnEBpuACAQHlAeAFDwOmAXEB4AsTAKbgCAHAEwFxAeAJLwGmAeANEwCm4AABwMcEDQVxAaYgAQENBYADB6YBpgGmAaYB\"}",
"27": "{\"ir_code_to_send\": \"BxMNrAacAQ8FgAMD4QFoAcADQBOACwOcAQ8F4AEPQAsB4QGAAwEPBUAbAZwBQA9AB0ADQAtAA0ALA5wBaAHACwLhAZwgAYAPAeEBwAMAnCABQAsAnCABQAdAAwOcAeEBgAcBnAFAB+ADAwCcIAGAD0Bf4AMPAeEBgANAF0ADwA8DnAFoAUALgBMBnAFABwWcAWgB4QHgAwMBnAFAF0ADgAsDaAEPBYALB5wBaAHhAWgBwA8DDwVoAUAPQAMDDwWcAcAHQAvgAwMBnAHgAR8C4QGcIAFAB+ADAwCcIAHgAw9ACwCcIAFAB+ADAwOcAeEB4AMPQAvgCxNAF0ADAJwgAUAH4AMDAJwgAQJoAZwgAQPhAWgBgAMAnCABwAvABwCcIAHAC8AHAJwgAQFoAcDbQAHACwnhAWgB4QGcAZEs4g9HAZwBQCvAAUALQAMD4QFoAcAHwAsBDwXgCQvAGwLhAZxgAQUPBZwB4QFAFwCcYAEE4QFoAZygAQLhAZwgAQZoAeEBaAGcoAEC4QGcYAEB4QHgBRNADwLhAZwgAQFoAUBTQAGAD+ABAUAXBA8FaAGcoAHAHwMPBZwBQAHAB8AB4AMfwBtAB0ADQAHgAx9AAcAXQAHAC0AH4AcDA+EBaAFAEwLhAZxgAQThAWgBnOAGAQLhAZzgCAHgFxPAH+ABB+ABVwLhAZxgAQHhAeAVE8ABAuEBnOAIAeAPE0DLQANAHwIPBWggAwmcAeEBnAGcAZwB\"}",
"28": "{\"ir_code_to_send\": \"BxENsAbHAQwFQAMDfQHuAYADA8cBfQFAD0AHQANAC0ADwAtAJ8AL4AMXwAtAH0ALQAfAJ8ALQA/gAwtAD0AD4BMT4AMbwAtAX+ADN+ADFwcMBccBxwF9AcADAQwFgANAD0ALQAfgAwNAO0AXQAPgBwtAJ8ATwAdAE0AD4AcvQA/AA8AfQAdAN+ADB+ADC8AbQBPAA+ArE8Az4AcHQFPgDxNAF0ADQCPAA0APQAPgAw/A00AHQBtAB0ADwCMBvyxCRwF9AUATQAPAF0AHBwwFxwHHAX0BQAMBDAWAA8BDQBPAC0AbQA9AB0ADQBfAD0AHQA9AF0ALQANAD+ADB+AHC0AP4AkDQAHgARdAQ8BTQAvgAxtAF0AD4AUTA8cBDAWAE8AHAMdgAUAHgAMCDAXHIAMFfQHHAX0BQAdAA0ALgAMBxwHAD8AHA8cBfQHAC0AH4AEDAMdgCwfHAX0BDAV9AeAFn0ABAX0B4AUDQAHgBxPgKw9AAeArN+ADM0AB4AMPgAtAxwIMBccgAwV9AccBfQFABwsMBX0BxwF9AccBfQE=\"}",
"29": "{\"ir_code_to_send\": \"BxwNrgaqAQ0FgAMD5AF0AUADAKogAUATAaoBQAsBdAFAC0ADQBsDDQV0AUAHQAMCDQWqYAPgBwuAD4AHgAsDqgGqAYALQA/AA+ATE+ATG0A/4A9TAQ0FgANAI+AHQ+ADG+ADH0AnAg0FqmADAaoB4AULQCdAA0AfAaoBQAcBdAFAD0ADwAsCDQWq4AYDAXQB4AMfA6oBdAFAD+ADA+ALE+ADH8AL4AsngBMAqiABA3QB5AHgAQMAqmABAXQB4AMTQAvgJxNAL0AD4AM7AKogAUAPQNsCDQWqYANAD0ADAZYs4gNHAXQBQBNAAwCqIAHADwaqAXQBDQWqIAMMdAGqAXQBDQWqAeQBqiABgAtADwGqAeAFCwjkAXQBDQV0AaqgAYAL4AEPAaoBQAvAA4ABQDMBqgFAA8ABBHQB5AGqIAECdAGq4AAB4AELAw0FqgHgAQFAF0ADAaoBQBdAAwGqAUAPQANAAQV0AeQBdAFAF0ADgAECdAGq4AABAXQBQBdAAwGqAUALQAMGqgGqAXQBqmABAXQBwA9AB0BLAKogAUALQAFAB+AHAwPkAaoBQBPgCQGAOwGqAcAHQAFAC0AD4AEBAeQBQA9AA+ABAYAT4AMBBHQB5AGq4AYBAnQBqmABQAdAA+AFAQHkAcAT4AEHgBMBdAGAA0ABAXQBgBNAAQJ0AaqgAUATQNOAAwl0AaoBdAGqAaoB\"}",
"30": "{\"ir_code_to_send\": \"Bx0NrAa/AQwFgAMF7QF7Ab8BgAMDDAV7AeADCwMMBb8BQB8DDAV7AUAHBr8BewEMBb8gAwh7Ab8BewEMBb8gAwV7Ab8BewFAH0ALQAdAAwgMBb8BvwF7Ab9gAQF7AUATQAfgAwPAE8AHQBvAC8AH4AMTAwwFewHAD0AfQANAD0AXQANAC0ADQBfAD0AHQAPAF0AbwAtAF0ADQBNAB0ADQAvgAx9AC0AXQAdAA0ALQCNAB+ABAwC/YAsHvwF7AQwFewFAB0AjwANAD0ADQA/gAwdAC8ADwBvAD0AHwBPAB0ATwAPgFxPAH8AHwDdAB+ATE0AbQANAx0AHQC9AC4ADBb8BvwF7AWAXACzCRwF7AUADA78BewFgFwIBewHgAw9AC0ADwBfgASMMvwEMBXsBvwF7AQwFv2ADA78BewFAA0APA78BewFAAwMMBXsBQAcAv2ABQAeAA4BHQAHACwF7AYADQAHgBwtAAeABE+AHU4BLBHsBDAW/IAMCewG/YAGAB4APBHsBDAW/IAMDewG/AcADQAFACwG/AUAXQAMDvwF7AUAHQAMAv2ABQAcBewHAD4AHAXsBQAMFDAW/Ab8BQAfgAwMRvwEMBXsBvwF7AQwFvwG/AXsB4AEDwAHAE0ABQAtAAeADB0ALwANAAcALQAdAAUAH4AMDQAHgAw/gBwtAAeAvEwV7AQwFewFAB0ADQAuAAwm/Ab8BewG/AXsB\"}"
},
"high": {
"16": "",
@@ -414,7 +414,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -535,7 +535,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -658,7 +658,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -779,7 +779,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -882,7 +882,7 @@
"30": ""
}
},
"mid": {
"medium": {
"auto": {
"16": "",
"17": "",
@@ -900,7 +900,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1021,7 +1021,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1142,7 +1142,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1265,7 +1265,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1386,7 +1386,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1489,7 +1489,7 @@
"30": ""
}
},
"mid": {
"medium": {
"auto": {
"16": "",
"17": "",
@@ -1507,7 +1507,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1628,7 +1628,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1749,7 +1749,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1872,7 +1872,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -1993,7 +1993,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -2096,7 +2096,7 @@
"30": ""
}
},
"mid": {
"medium": {
"auto": {
"16": "",
"17": "",
@@ -2114,7 +2114,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -2235,7 +2235,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
@@ -2356,7 +2356,7 @@
"29": "",
"30": ""
},
"swing": {
"vertical": {
"16": "",
"17": "",
"18": "",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"manufacturer": "NEC",
"supportedModels": [
"RE0201-CH1",
"RE0201-CH1"
],
"supportedController": "Broadlink",
"commandsEncoding": "Base64",
+1 -1
View File
@@ -25,7 +25,7 @@
"8": "JgAwABocPBwfHB4cHxweOTwdHjk8HB8cHgALix4cPBwfHB8cHhwfOTwcHjk9HB4cHwANBQAAAAAAAAAA",
"9": "JgAwABkcHxw8HB4cHxwfOTwcHjk8HB85HgALbR8cHxw8HB4dHhwfOTwcHjk8HB85HgANBQAAAAAAAAAA",
"Source": "JgA0ABocHhw9HB4cHxweOR8cHhwfHDwcHxweAAuMHB0eHDwcHxweHB85Hh0eHB8cPBweHB8ADQUAAAAA",
"TV": "JgAwABocPBwfHB4cHxweOR8cPBwfOR4cPAALix4cPBwfHB4cHxweOR8cPBwfOR4dPAANBQAAAAAAAAAA",
"TV": "JgAwABocPBwfHB4cHxweOR8cPBwfOR4cPAALix4cPBwfHB4cHxweOR8cPBwfOR4dPAANBQAAAAAAAAAA"
}
}
}
+25
View File
@@ -66,6 +66,31 @@ async def async_setup(hass, config):
return True
async def async_setup_entry(hass, entry):
"""Set up SmartIR from a config entry (UI-configured device)."""
platform = entry.data.get('platform')
if not platform:
return False
await hass.config_entries.async_forward_entry_setups(entry, [platform])
# Reload the entry whenever options are changed in the UI so the new
# controller_data / delay / sensor settings take effect immediately.
entry.async_on_unload(entry.add_update_listener(_async_options_updated))
return True
async def _async_options_updated(hass, entry):
"""Triggered when the options flow saves; reloads the config entry."""
await hass.config_entries.async_reload(entry.entry_id)
async def async_unload_entry(hass, entry):
"""Unload a SmartIR config entry."""
platform = entry.data.get('platform')
if not platform:
return True
return await hass.config_entries.async_unload_platforms(entry, [platform])
async def _update(hass, branch, do_update=False, notify_if_latest=True):
try:
async with aiohttp.ClientSession() as session:
+9
View File
@@ -52,6 +52,15 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
vol.Optional(CONF_POWER_SENSOR_RESTORE_STATE, default=False): cv.boolean
})
async def async_setup_entry(hass, entry, async_add_entities):
"""Set up SmartIR Climate from a config entry."""
config = {**entry.data, **entry.options}
config.pop('platform', None)
config.setdefault('unique_id', entry.unique_id)
await async_setup_platform(hass, config, async_add_entities)
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
"""Set up the IR Climate platform."""
_LOGGER.debug("Setting up the smartir platform")
@@ -2855,6 +2855,15 @@
"controller": "Broadlink",
"encoding": "Base64"
},
{
"code": 2680,
"manufacturer": "Apton",
"models": [
"AFC-100T"
],
"controller": "Broadlink",
"encoding": "Base64"
},
{
"code": 2700,
"manufacturer": "Kolin",
@@ -3993,6 +4002,15 @@
"controller": "Broadlink",
"encoding": "Base64"
},
{
"code": 1440,
"manufacturer": "Andersson",
"models": [
"L4223FDC PVR"
],
"controller": "Broadlink",
"encoding": "Base64"
},
{
"code": 1460,
"manufacturer": "Edifier",
@@ -4178,6 +4196,15 @@
"controller": "Broadlink",
"encoding": "Base64"
},
{
"code": 1020,
"manufacturer": "NEC",
"models": [
"RE0201-CH1"
],
"controller": "Broadlink",
"encoding": "Base64"
},
{
"code": 1021,
"manufacturer": "NEC",
+662
View File
@@ -0,0 +1,662 @@
"""Config flow for SmartIR — 6-step UI wizard with device list selection."""
from __future__ import annotations
import json
import logging
import os
import aiofiles
import voluptuous as vol
from homeassistant.config_entries import ConfigEntry, ConfigFlow, OptionsFlow
from homeassistant.core import callback
from homeassistant.data_entry_flow import FlowResult
from homeassistant.helpers.selector import (
BooleanSelector,
EntitySelector,
EntitySelectorConfig,
SelectSelector,
SelectSelectorConfig,
SelectSelectorMode,
TextSelector,
TextSelectorConfig,
TextSelectorType,
)
from . import COMPONENT_ABS_DIR, Helper
from .const import (
ALL_CONTROLLERS_SENTINEL,
CONF_CONTROLLER_DATA,
CONF_DELAY,
CONF_DEVICE_CLASS,
CONF_DEVICE_CODE,
CONF_DEVICE_NAME,
CONF_HUMIDITY_SENSOR,
CONF_PLATFORM,
CONF_POWER_SENSOR,
CONF_POWER_SENSOR_RESTORE_STATE,
CONF_SOURCE_NAMES,
CONF_TEMPERATURE_SENSOR,
CONTROLLER_HINTS,
DEFAULT_DELAY,
DEFAULT_DEVICE_NAMES,
ENTITY_BASED_CONTROLLERS,
INDEX_FILENAME,
MANUAL_ENTRY_SENTINEL,
PLATFORM_SUBDIR,
PLATFORMS,
)
DOMAIN = "smartir"
_LOGGER = logging.getLogger(__name__)
# ── Module-level helpers ──────────────────────────────────────────────────────
async def _load_device_json(platform: str, device_code: int) -> dict | None:
"""Return device JSON dict, downloading from GitHub if not cached locally."""
subdir = PLATFORM_SUBDIR[platform]
codes_dir = os.path.join(COMPONENT_ABS_DIR, "codes", subdir)
os.makedirs(codes_dir, exist_ok=True)
path = os.path.join(codes_dir, f"{device_code}.json")
if not os.path.exists(path):
source = (
"https://raw.githubusercontent.com/"
f"smartHomeHub/SmartIR/master/codes/{subdir}/{device_code}.json"
)
try:
await Helper.downloader(source, path)
except Exception:
return None
try:
async with aiofiles.open(path, mode="r") as f:
return json.loads(await f.read())
except Exception:
return None
def _controller_schema(
controller_type: str,
current_data: str = "",
current_delay: str = DEFAULT_DELAY,
) -> vol.Schema:
"""Build controller step schema; entity picker for Broadlink/Xiaomi, text for rest."""
if controller_type in ENTITY_BASED_CONTROLLERS:
data_field: object = EntitySelector(EntitySelectorConfig(domain="remote"))
else:
data_field = TextSelector(TextSelectorConfig(type=TextSelectorType.TEXT))
fields: dict = {}
if current_data:
fields[
vol.Required(
CONF_CONTROLLER_DATA,
description={"suggested_value": current_data},
)
] = data_field
else:
fields[vol.Required(CONF_CONTROLLER_DATA)] = data_field
fields[
vol.Optional(
CONF_DELAY,
description={"suggested_value": current_delay},
)
] = TextSelector(TextSelectorConfig(type=TextSelectorType.TEXT))
return vol.Schema(fields)
def _options_schema(platform: str, defaults: dict | None = None) -> vol.Schema:
"""Build optional-sensors schema for the given platform."""
d = defaults or {}
def _opt(key: str) -> vol.Optional:
val = d.get(key)
if val is not None and val != "":
return vol.Optional(key, description={"suggested_value": val})
return vol.Optional(key)
if platform == "climate":
return vol.Schema(
{
_opt(CONF_TEMPERATURE_SENSOR): EntitySelector(
EntitySelectorConfig(domain="sensor")
),
_opt(CONF_HUMIDITY_SENSOR): EntitySelector(
EntitySelectorConfig(domain="sensor")
),
_opt(CONF_POWER_SENSOR): EntitySelector(EntitySelectorConfig()),
vol.Optional(
CONF_POWER_SENSOR_RESTORE_STATE,
default=bool(d.get(CONF_POWER_SENSOR_RESTORE_STATE, False)),
): BooleanSelector(),
}
)
if platform == "media_player":
src_existing = d.get(CONF_SOURCE_NAMES, {})
src_str = (
json.dumps(src_existing)
if isinstance(src_existing, dict) and src_existing
else ""
)
fields: dict = {
_opt(CONF_POWER_SENSOR): EntitySelector(EntitySelectorConfig()),
vol.Optional(
CONF_DEVICE_CLASS,
description={"suggested_value": d.get(CONF_DEVICE_CLASS, "tv")},
): TextSelector(TextSelectorConfig(type=TextSelectorType.TEXT)),
}
src_key = (
vol.Optional(
CONF_SOURCE_NAMES,
description={"suggested_value": src_str},
)
if src_str
else vol.Optional(CONF_SOURCE_NAMES)
)
fields[src_key] = TextSelector(
TextSelectorConfig(type=TextSelectorType.TEXT, multiline=True)
)
return vol.Schema(fields)
# fan and light
return vol.Schema(
{_opt(CONF_POWER_SENSOR): EntitySelector(EntitySelectorConfig())}
)
def _parse_options(platform: str, user_input: dict) -> dict:
"""Clean and coerce options form input before storing."""
out: dict = {}
def _maybe(key: str) -> None:
val = user_input.get(key, "")
if isinstance(val, str):
val = val.strip()
if val:
out[key] = val
if platform == "climate":
_maybe(CONF_TEMPERATURE_SENSOR)
_maybe(CONF_HUMIDITY_SENSOR)
_maybe(CONF_POWER_SENSOR)
out[CONF_POWER_SENSOR_RESTORE_STATE] = bool(
user_input.get(CONF_POWER_SENSOR_RESTORE_STATE, False)
)
elif platform == "media_player":
_maybe(CONF_POWER_SENSOR)
out[CONF_DEVICE_CLASS] = (
(user_input.get(CONF_DEVICE_CLASS) or "tv").strip() or "tv"
)
src_raw = user_input.get(CONF_SOURCE_NAMES, "")
if isinstance(src_raw, str) and src_raw.strip():
try:
parsed = json.loads(src_raw.strip())
if isinstance(parsed, dict):
out[CONF_SOURCE_NAMES] = parsed
except json.JSONDecodeError:
pass
elif isinstance(src_raw, dict) and src_raw:
out[CONF_SOURCE_NAMES] = src_raw
else: # fan, light
_maybe(CONF_POWER_SENSOR)
return out
def _device_placeholders(device_data: dict, platform: str) -> dict:
"""Build description_placeholders dict for the options step."""
p: dict = {
"manufacturer": device_data.get("manufacturer", ""),
"models": ", ".join(device_data.get("supportedModels", [])) or "",
"controller_type": device_data.get("supportedController", ""),
"device_code": str(device_data.get("device_code", "")),
}
if platform == "climate":
p["temp_range"] = (
f"{device_data.get('minTemperature', '')} "
f"{device_data.get('maxTemperature', '')} °C"
)
p["operation_modes"] = ", ".join(device_data.get("operationModes", []))
p["fan_modes"] = ", ".join(device_data.get("fanModes", []))
swing = device_data.get("swingModes", [])
p["swing_modes"] = ", ".join(swing) if swing else "none"
return p
# ── Config Flow ───────────────────────────────────────────────────────────────
class SmartIRConfigFlow(ConfigFlow, domain=DOMAIN):
"""Handle multi-step UI config flow for SmartIR."""
VERSION = 1
def __init__(self) -> None:
self._platform: str = ""
self._controller_filter: str = ALL_CONTROLLERS_SENTINEL
self._manufacturer: str = ""
self._device_code: int = 0
self._device_data: dict = {}
self._device_name: str = ""
self._controller_data: str = ""
self._delay: str = DEFAULT_DELAY
self._index_cache: list[dict] | None = None
# ── Index helpers ─────────────────────────────────────────────────────────
async def _get_index(self) -> list[dict]:
"""Load and cache index entries for the current platform."""
if self._index_cache is not None:
return self._index_cache
path = os.path.join(COMPONENT_ABS_DIR, INDEX_FILENAME)
try:
async with aiofiles.open(path, mode="r") as f:
data = json.loads(await f.read())
self._index_cache = data.get(self._platform, [])
except Exception:
_LOGGER.warning("Could not load %s", INDEX_FILENAME)
self._index_cache = []
return self._index_cache
def _filtered(self, entries: list[dict]) -> list[dict]:
if self._controller_filter == ALL_CONTROLLERS_SENTINEL:
return entries
return [e for e in entries if e.get("controller") == self._controller_filter]
# ── Step 1: platform ──────────────────────────────────────────────────────
async def async_step_user(self, user_input: dict | None = None) -> FlowResult:
if user_input is not None:
self._platform = user_input["platform"]
return await self.async_step_controller_filter()
return self.async_show_form(
step_id="user",
data_schema=vol.Schema(
{
vol.Required("platform"): SelectSelector(
SelectSelectorConfig(
options=[
{"label": v, "value": k}
for k, v in PLATFORMS.items()
],
mode=SelectSelectorMode.LIST,
)
)
}
),
)
# ── Step 2: controller filter ─────────────────────────────────────────────
async def async_step_controller_filter(
self, user_input: dict | None = None
) -> FlowResult:
entries = await self._get_index()
if user_input is not None:
self._controller_filter = user_input.get(
"controller_type", ALL_CONTROLLERS_SENTINEL
)
return await self.async_step_manufacturer()
available = sorted({e["controller"] for e in entries})
options = [{"label": "Any (show all)", "value": ALL_CONTROLLERS_SENTINEL}]
options += [{"label": c, "value": c} for c in available]
return self.async_show_form(
step_id="controller_filter",
data_schema=vol.Schema(
{
vol.Required(
"controller_type", default=ALL_CONTROLLERS_SENTINEL
): SelectSelector(
SelectSelectorConfig(
options=options, mode=SelectSelectorMode.LIST
)
)
}
),
)
# ── Step 3: manufacturer ──────────────────────────────────────────────────
async def async_step_manufacturer(
self, user_input: dict | None = None
) -> FlowResult:
entries = self._filtered(await self._get_index())
manufacturers = sorted({e["manufacturer"] for e in entries})
if user_input is not None:
sel = user_input.get("manufacturer", "")
if sel == MANUAL_ENTRY_SENTINEL:
return await self.async_step_device_manual()
self._manufacturer = sel
return await self.async_step_device_select()
options = [
{"label": "— Enter code manually —", "value": MANUAL_ENTRY_SENTINEL}
]
options += [{"label": m, "value": m} for m in manufacturers]
return self.async_show_form(
step_id="manufacturer",
data_schema=vol.Schema(
{
vol.Required("manufacturer"): SelectSelector(
SelectSelectorConfig(
options=options, mode=SelectSelectorMode.DROPDOWN
)
)
}
),
)
# ── Step 4a: device from index list ───────────────────────────────────────
async def async_step_device_select(
self, user_input: dict | None = None
) -> FlowResult:
entries = [
e
for e in self._filtered(await self._get_index())
if e.get("manufacturer") == self._manufacturer
]
errors: dict[str, str] = {}
if user_input is not None:
sel = user_input.get("device_code", "")
if sel == MANUAL_ENTRY_SENTINEL:
return await self.async_step_device_manual()
try:
device_code = int(sel)
except (ValueError, TypeError):
errors["device_code"] = "invalid_device_code"
else:
device_data = await _load_device_json(self._platform, device_code)
if device_data is None:
errors["device_code"] = "invalid_device_code"
else:
self._device_code = device_code
self._device_data = device_data
models = device_data.get("supportedModels", [])
self._device_name = (
f"{self._manufacturer} {models[0]}"
if models
else DEFAULT_DEVICE_NAMES[self._platform]
)
return await self.async_step_device_name()
options = [
{"label": "— Enter code manually —", "value": MANUAL_ENTRY_SENTINEL}
]
for e in sorted(entries, key=lambda x: x["code"]):
models_str = ", ".join(e.get("models", []))
options.append(
{"label": f"{e['code']}{models_str}", "value": str(e["code"])}
)
return self.async_show_form(
step_id="device_select",
data_schema=vol.Schema(
{
vol.Required("device_code"): SelectSelector(
SelectSelectorConfig(
options=options, mode=SelectSelectorMode.DROPDOWN
)
)
}
),
description_placeholders={"manufacturer": self._manufacturer},
errors=errors,
)
# ── Step 4b: manual code entry ────────────────────────────────────────────
async def async_step_device_manual(
self, user_input: dict | None = None
) -> FlowResult:
errors: dict[str, str] = {}
if user_input is not None:
try:
device_code = int(user_input["device_code"])
if device_code <= 0:
raise ValueError("non-positive")
except (ValueError, KeyError, TypeError):
errors["device_code"] = "invalid_device_code"
else:
device_data = await _load_device_json(self._platform, device_code)
if device_data is None:
errors["device_code"] = "invalid_device_code"
else:
self._device_code = device_code
self._device_data = device_data
manufacturer = device_data.get("manufacturer", "")
models = device_data.get("supportedModels", [])
self._manufacturer = manufacturer
self._device_name = (
f"{manufacturer} {models[0]}"
if models
else DEFAULT_DEVICE_NAMES[self._platform]
)
return await self.async_step_device_name()
return self.async_show_form(
step_id="device_manual",
data_schema=vol.Schema(
{
vol.Required("device_code"): TextSelector(
TextSelectorConfig(type=TextSelectorType.NUMBER)
)
}
),
errors=errors,
)
# ── Step 4c: confirm / edit name ──────────────────────────────────────────
async def async_step_device_name(
self, user_input: dict | None = None
) -> FlowResult:
if user_input is not None:
name = (user_input.get("name") or "").strip() or self._device_name
self._device_name = name
return await self.async_step_controller()
return self.async_show_form(
step_id="device_name",
data_schema=vol.Schema(
{
vol.Required(
"name",
description={"suggested_value": self._device_name},
): TextSelector(TextSelectorConfig(type=TextSelectorType.TEXT))
}
),
description_placeholders={
"manufacturer": self._device_data.get("manufacturer", ""),
"models": ", ".join(self._device_data.get("supportedModels", [])),
"controller_type": self._device_data.get("supportedController", ""),
"device_code": str(self._device_code),
},
)
# ── Step 5: controller data ───────────────────────────────────────────────
async def async_step_controller(
self, user_input: dict | None = None
) -> FlowResult:
errors: dict[str, str] = {}
controller_type = self._device_data.get("supportedController", "")
hint = CONTROLLER_HINTS.get(controller_type, "Enter the controller connection string.")
if user_input is not None:
controller_data = user_input.get(CONF_CONTROLLER_DATA, "")
if isinstance(controller_data, str):
controller_data = controller_data.strip()
if not controller_data:
errors[CONF_CONTROLLER_DATA] = "controller_data_required"
else:
self._controller_data = controller_data
delay_raw = user_input.get(CONF_DELAY, DEFAULT_DELAY)
try:
float(delay_raw)
self._delay = str(delay_raw)
except (ValueError, TypeError):
self._delay = DEFAULT_DELAY
uid = (
f"smartir_{self._platform}_{self._device_code}"
f"_{self._controller_data}"
)
await self.async_set_unique_id(uid)
self._abort_if_unique_id_configured()
return await self.async_step_options_platform()
return self.async_show_form(
step_id="controller",
data_schema=_controller_schema(
controller_type, self._controller_data, self._delay
),
description_placeholders={
"controller_type": controller_type,
"controller_hint": hint,
},
errors=errors,
)
# ── Step 6: optional sensors / platform settings ──────────────────────────
async def async_step_options_platform(
self, user_input: dict | None = None
) -> FlowResult:
if user_input is not None:
return self._create_entry(user_input)
return self.async_show_form(
step_id="options_platform",
data_schema=_options_schema(self._platform),
description_placeholders=_device_placeholders(
self._device_data, self._platform
),
)
# ── Entry creation ────────────────────────────────────────────────────────
def _create_entry(self, options_input: dict) -> FlowResult:
try:
delay_float = float(self._delay)
except (ValueError, TypeError):
delay_float = 0.5
# Immutable identification stored in data
data: dict = {
CONF_PLATFORM: self._platform,
CONF_DEVICE_CODE: self._device_code,
CONF_DEVICE_NAME: self._device_name,
}
# Mutable settings stored in options (editable via options flow)
options: dict = {
CONF_CONTROLLER_DATA: self._controller_data,
CONF_DELAY: delay_float,
}
options.update(_parse_options(self._platform, options_input))
mfr = self._device_data.get("manufacturer", "SmartIR")
title = f"{mfr}{self._device_name}"
return self.async_create_entry(title=title, data=data, options=options)
@staticmethod
@callback
def async_get_options_flow(config_entry: ConfigEntry) -> SmartIROptionsFlow:
return SmartIROptionsFlow(config_entry)
# ── Options Flow ──────────────────────────────────────────────────────────────
class SmartIROptionsFlow(OptionsFlow):
"""Edit controller and sensor settings for an existing SmartIR entry."""
def __init__(self, config_entry: ConfigEntry) -> None:
self._entry = config_entry
self._platform: str = config_entry.data.get(CONF_PLATFORM, "")
self._device_code: int = config_entry.data.get(CONF_DEVICE_CODE, 0)
self._device_data: dict = {}
# Pre-fill from current options
self._controller_data: str = config_entry.options.get(CONF_CONTROLLER_DATA, "")
self._delay: str = str(config_entry.options.get(CONF_DELAY, DEFAULT_DELAY))
async def async_step_init(self, user_input: dict | None = None) -> FlowResult:
if not self._device_data:
self._device_data = (
await _load_device_json(self._platform, self._device_code) or {}
)
return await self.async_step_controller()
async def async_step_controller(
self, user_input: dict | None = None
) -> FlowResult:
errors: dict[str, str] = {}
controller_type = self._device_data.get("supportedController", "")
hint = CONTROLLER_HINTS.get(controller_type, "Enter the controller connection string.")
if user_input is not None:
controller_data = user_input.get(CONF_CONTROLLER_DATA, "")
if isinstance(controller_data, str):
controller_data = controller_data.strip()
if not controller_data:
errors[CONF_CONTROLLER_DATA] = "controller_data_required"
else:
self._controller_data = controller_data
delay_raw = user_input.get(CONF_DELAY, DEFAULT_DELAY)
try:
float(delay_raw)
self._delay = str(delay_raw)
except (ValueError, TypeError):
self._delay = DEFAULT_DELAY
return await self.async_step_options_platform()
return self.async_show_form(
step_id="controller",
data_schema=_controller_schema(
controller_type, self._controller_data, self._delay
),
description_placeholders={
"controller_type": controller_type,
"controller_hint": hint,
},
errors=errors,
)
async def async_step_options_platform(
self, user_input: dict | None = None
) -> FlowResult:
if user_input is not None:
try:
delay_float = float(self._delay)
except (ValueError, TypeError):
delay_float = 0.5
updated: dict = {
CONF_CONTROLLER_DATA: self._controller_data,
CONF_DELAY: delay_float,
}
updated.update(_parse_options(self._platform, user_input))
return self.async_create_entry(title="", data=updated)
return self.async_show_form(
step_id="options_platform",
data_schema=_options_schema(self._platform, defaults=self._entry.options),
description_placeholders=_device_placeholders(
self._device_data, self._platform
),
)
+9
View File
@@ -44,6 +44,15 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
vol.Optional(CONF_POWER_SENSOR): cv.entity_id
})
async def async_setup_entry(hass, entry, async_add_entities):
"""Set up SmartIR Fan from a config entry."""
config = {**entry.data, **entry.options}
config.pop('platform', None)
config.setdefault('unique_id', entry.unique_id)
await async_setup_platform(hass, config, async_add_entities)
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
"""Set up the IR Fan platform."""
device_code = config.get(CONF_DEVICE_CODE)
+8
View File
@@ -56,6 +56,14 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
)
async def async_setup_entry(hass, entry, async_add_entities):
"""Set up SmartIR Light from a config entry."""
config = {**entry.data, **entry.options}
config.pop('platform', None)
config.setdefault('unique_id', entry.unique_id)
await async_setup_platform(hass, config, async_add_entities)
async def async_setup_platform(
hass,
config,
+2
View File
@@ -7,6 +7,8 @@
"requirements": ["aiofiles>=0.6.0"],
"homeassistant": "2025.5.0",
"version": "1.18.1",
"config_flow": true,
"iot_class": "assumed_state",
"updater": {
"version": "1.18.1",
"releaseNotes": "-- Implements new async_track_state_change_event",
@@ -42,6 +42,15 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
vol.Optional(CONF_DEVICE_CLASS, default=DEFAULT_DEVICE_CLASS): cv.string
})
async def async_setup_entry(hass, entry, async_add_entities):
"""Set up SmartIR Media Player from a config entry."""
config = {**entry.data, **entry.options}
config.pop('platform', None)
config.setdefault('unique_id', entry.unique_id)
await async_setup_platform(hass, config, async_add_entities)
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None):
"""Set up the IR Media Player platform."""
device_code = config.get(CONF_DEVICE_CODE)
+103
View File
@@ -0,0 +1,103 @@
{
"config": {
"step": {
"user": {
"title": "SmartIR — Choose Platform",
"description": "Select the type of device you want to control via IR.",
"data": {
"platform": "Platform"
}
},
"controller_filter": {
"title": "SmartIR — Filter by Controller",
"description": "Narrow the device list to a specific controller type, or show all.",
"data": {
"controller_type": "Controller Type"
}
},
"manufacturer": {
"title": "SmartIR — Select Manufacturer",
"description": "Choose your device manufacturer. Select **'Enter code manually'** if your device is not listed.",
"data": {
"manufacturer": "Manufacturer"
}
},
"device_select": {
"title": "SmartIR — Select Device",
"description": "Choose the device model for **{manufacturer}**. Each entry shows the numeric code and supported model names.",
"data": {
"device_code": "Device"
}
},
"device_manual": {
"title": "SmartIR — Enter Device Code",
"description": "Enter the numeric device code. The file will be loaded from local storage or downloaded from GitHub.",
"data": {
"device_code": "Device Code"
}
},
"device_name": {
"title": "SmartIR — Confirm Device Name",
"description": "**{manufacturer}** — {models}\nController: {controller_type} | Code: {device_code}\n\nEdit the name shown in Home Assistant.",
"data": {
"name": "Device Name"
}
},
"controller": {
"title": "SmartIR — Controller Connection",
"description": "Controller type: **{controller_type}**\n\n{controller_hint}",
"data": {
"controller_data": "Controller Data",
"delay": "Command Delay (seconds)"
}
},
"options_platform": {
"title": "SmartIR — Optional Settings",
"description": "**{manufacturer}** — {models}\nController: {controller_type}\n\nAll fields below are optional.",
"data": {
"temperature_sensor": "Temperature Sensor",
"humidity_sensor": "Humidity Sensor",
"power_sensor": "Power Sensor",
"power_sensor_restore_state": "Restore state from power sensor on startup",
"device_class": "Device Class (e.g. tv, receiver)",
"source_names": "Source Name Overrides (JSON, e.g. {\"HDMI1\": \"Apple TV\"})"
}
}
},
"error": {
"invalid_device_code": "Device code not found locally and could not be downloaded from GitHub. Check the code number and your internet connection.",
"controller_data_required": "Controller data is required.",
"unknown": "Unexpected error — check the Home Assistant logs."
},
"abort": {
"already_configured": "A SmartIR device with this code and controller is already configured."
}
},
"options": {
"step": {
"controller": {
"title": "SmartIR — Edit Controller",
"description": "Controller type: **{controller_type}**\n\n{controller_hint}",
"data": {
"controller_data": "Controller Data",
"delay": "Command Delay (seconds)"
}
},
"options_platform": {
"title": "SmartIR — Edit Optional Settings",
"description": "**{manufacturer}** — {models}\nController: {controller_type}",
"data": {
"temperature_sensor": "Temperature Sensor",
"humidity_sensor": "Humidity Sensor",
"power_sensor": "Power Sensor",
"power_sensor_restore_state": "Restore state from power sensor on startup",
"device_class": "Device Class (e.g. tv, receiver)",
"source_names": "Source Name Overrides (JSON)"
}
}
},
"error": {
"controller_data_required": "Controller data is required."
}
}
}
@@ -0,0 +1,103 @@
{
"config": {
"step": {
"user": {
"title": "SmartIR — Choose Platform",
"description": "Select the type of device you want to control via IR.",
"data": {
"platform": "Platform"
}
},
"controller_filter": {
"title": "SmartIR — Filter by Controller",
"description": "Narrow the device list to a specific controller type, or show all.",
"data": {
"controller_type": "Controller Type"
}
},
"manufacturer": {
"title": "SmartIR — Select Manufacturer",
"description": "Choose your device manufacturer. Select **'Enter code manually'** if your device is not listed.",
"data": {
"manufacturer": "Manufacturer"
}
},
"device_select": {
"title": "SmartIR — Select Device",
"description": "Choose the device model for **{manufacturer}**. Each entry shows the numeric code and supported model names.",
"data": {
"device_code": "Device"
}
},
"device_manual": {
"title": "SmartIR — Enter Device Code",
"description": "Enter the numeric device code. The file will be loaded from local storage or downloaded from GitHub.",
"data": {
"device_code": "Device Code"
}
},
"device_name": {
"title": "SmartIR — Confirm Device Name",
"description": "**{manufacturer}** — {models}\nController: {controller_type} | Code: {device_code}\n\nEdit the name shown in Home Assistant.",
"data": {
"name": "Device Name"
}
},
"controller": {
"title": "SmartIR — Controller Connection",
"description": "Controller type: **{controller_type}**\n\n{controller_hint}",
"data": {
"controller_data": "Controller Data",
"delay": "Command Delay (seconds)"
}
},
"options_platform": {
"title": "SmartIR — Optional Settings",
"description": "**{manufacturer}** — {models}\nController: {controller_type}\n\nAll fields below are optional.",
"data": {
"temperature_sensor": "Temperature Sensor",
"humidity_sensor": "Humidity Sensor",
"power_sensor": "Power Sensor",
"power_sensor_restore_state": "Restore state from power sensor on startup",
"device_class": "Device Class (e.g. tv, receiver)",
"source_names": "Source Name Overrides (JSON, e.g. {\"HDMI1\": \"Apple TV\"})"
}
}
},
"error": {
"invalid_device_code": "Device code not found locally and could not be downloaded from GitHub. Check the code number and your internet connection.",
"controller_data_required": "Controller data is required.",
"unknown": "Unexpected error — check the Home Assistant logs."
},
"abort": {
"already_configured": "A SmartIR device with this code and controller is already configured."
}
},
"options": {
"step": {
"controller": {
"title": "SmartIR — Edit Controller",
"description": "Controller type: **{controller_type}**\n\n{controller_hint}",
"data": {
"controller_data": "Controller Data",
"delay": "Command Delay (seconds)"
}
},
"options_platform": {
"title": "SmartIR — Edit Optional Settings",
"description": "**{manufacturer}** — {models}\nController: {controller_type}",
"data": {
"temperature_sensor": "Temperature Sensor",
"humidity_sensor": "Humidity Sensor",
"power_sensor": "Power Sensor",
"power_sensor_restore_state": "Restore state from power sensor on startup",
"device_class": "Device Class (e.g. tv, receiver)",
"source_names": "Source Name Overrides (JSON)"
}
}
},
"error": {
"controller_data_required": "Controller data is required."
}
}
}
+86
View File
@@ -0,0 +1,86 @@
#!/usr/bin/env python3
"""Rebuild codes_index.json by scanning all codes/{platform}/*.json files.
Run from the repo root:
python tools/build_index.py
Outputs: custom_components/smartir/codes_index.json
"""
import json
import os
import sys
PLATFORMS = ["climate", "fan", "media_player", "light"]
_TOOLS_DIR = os.path.dirname(os.path.abspath(__file__))
REPO_ROOT = os.path.dirname(_TOOLS_DIR)
CODES_DIR = os.path.join(REPO_ROOT, "codes")
OUTPUT_FILE = os.path.join(
REPO_ROOT, "custom_components", "smartir", "codes_index.json"
)
def build_index() -> dict:
index: dict[str, list] = {}
total = 0
errors = 0
for platform in PLATFORMS:
platform_dir = os.path.join(CODES_DIR, platform)
entries: list[dict] = []
if not os.path.isdir(platform_dir):
print(f" {platform}: directory not found, skipping")
index[platform] = entries
continue
files = sorted(f for f in os.listdir(platform_dir) if f.endswith(".json"))
for filename in files:
code_str = filename[:-5] # strip .json
try:
code = int(code_str)
except ValueError:
continue
path = os.path.join(platform_dir, filename)
try:
with open(path, encoding="utf-8") as f:
data = json.load(f)
except Exception as exc:
print(f" ERROR {filename}: {exc}", file=sys.stderr)
errors += 1
continue
entries.append(
{
"code": code,
"manufacturer": data.get("manufacturer", "Unknown"),
"models": data.get("supportedModels", []),
"controller": data.get("supportedController", "Unknown"),
"encoding": data.get("commandsEncoding", "Unknown"),
}
)
total += 1
index[platform] = entries
print(f" {platform}: {len(entries)} devices")
return index, total, errors
def main() -> None:
print(f"Scanning {CODES_DIR} ...")
index, total, errors = build_index()
with open(OUTPUT_FILE, "w", encoding="utf-8") as f:
json.dump(index, f, indent=2)
print(f"\nDone: {total} devices indexed")
print(f"Output: {OUTPUT_FILE}")
if errors:
print(f"Warnings: {errors} files failed to parse", file=sys.stderr)
if __name__ == "__main__":
main()
+66 -13
View File
@@ -50,17 +50,25 @@ def gen_temps(min_t: float, max_t: float, precision: float) -> list:
def build_combos(config: dict) -> list:
"""Return ordered list of combo dicts: first 'off', then all mode/fan/[swing]/temp."""
single_code = set(config.get("singleCodeModes", []))
excluded = set(config.get("excludedModes", []))
combos = [{"type": "off"}]
for mode in config["operationModes"]:
if mode in excluded:
continue
is_single = mode in single_code
for fan in config["fanModes"]:
temps = gen_temps(config["minTemperature"], config["maxTemperature"], config["precision"])
capture_temps = [temps[0]] if is_single else temps
if config.get("swingModes"):
for swing in config["swingModes"]:
for temp in temps:
combos.append({"type": "code", "mode": mode, "fan": fan, "swing": swing, "temp": temp})
for temp in capture_temps:
combos.append({"type": "code", "mode": mode, "fan": fan,
"swing": swing, "temp": temp, "single_code": is_single})
else:
for temp in temps:
combos.append({"type": "code", "mode": mode, "fan": fan, "temp": temp})
for temp in capture_temps:
combos.append({"type": "code", "mode": mode, "fan": fan,
"temp": temp, "single_code": is_single})
return combos
@@ -82,7 +90,10 @@ def combo_label(combo: dict) -> str:
parts = [combo["mode"].upper(), combo["fan"]]
if "swing" in combo:
parts.append(combo["swing"])
parts.append(f"{combo['temp']}°C")
if combo.get("single_code"):
parts.append("all temps")
else:
parts.append(f"{combo['temp']}°C")
return " / ".join(parts)
@@ -236,6 +247,24 @@ class SmartIRCapture(tk.Tk):
" Top / High / Mid / Low / Bottom — Named positions\n\n"
"Tip: name them to match what the HA climate card should display."
),
"single_code_modes": (
"Single-code Modes",
"Modes where temperature does NOT affect the IR signal.\n"
"One code is captured per fan/swing combination and applied to ALL temperatures.\n\n"
"Typical values:\n"
" dry — Dehumidify (AC ignores the setpoint temperature)\n"
" fan_only — Fan only (no heating/cooling, temperature is irrelevant)\n\n"
"Leave empty to capture the full temperature range for every mode."
),
"excluded_modes": (
"Excluded Modes",
"Modes to skip entirely — no codes will be captured or exported.\n\n"
"Useful when your unit does not support a mode at all:\n"
" auto — Automatic / AI mode (not on all units)\n"
" heat_cool — Dual-setpoint mode (rare)\n\n"
"Excluded modes are removed from the exported JSON operationModes list\n"
"so Home Assistant will not show them in the climate card."
),
}
def _show_help(key):
@@ -266,9 +295,11 @@ class SmartIRCapture(tk.Tk):
command=lambda k=key: _show_help(k))
btn.grid(row=row, column=2, padx=(4, 0))
modes_row(modes_frame, 0, "Operation modes:", "op_modes", "cool, heat, dry, fan_only")
modes_row(modes_frame, 1, "Fan modes:", "fan_modes", "auto, low, mid, high")
modes_row(modes_frame, 2, "Swing modes:", "swing_modes", "")
modes_row(modes_frame, 0, "Operation modes:", "op_modes", "cool, heat, dry, fan_only")
modes_row(modes_frame, 1, "Fan modes:", "fan_modes", "auto, low, mid, high")
modes_row(modes_frame, 2, "Swing modes:", "swing_modes", "")
modes_row(modes_frame, 3, "Single-code modes:", "single_code_modes", "dry, fan_only")
modes_row(modes_frame, 4, "Excluded modes:", "excluded_modes", "")
# ── Actions ──
btn_frame = ttk.Frame(tab)
@@ -508,6 +539,8 @@ class SmartIRCapture(tk.Tk):
self._sv["op_modes"].set(", ".join(cfg.get("operationModes", [])))
self._sv["fan_modes"].set(", ".join(cfg.get("fanModes", [])))
self._sv["swing_modes"].set(", ".join(cfg.get("swingModes", [])))
self._sv["single_code_modes"].set(", ".join(cfg.get("singleCodeModes", [])))
self._sv["excluded_modes"].set(", ".join(cfg.get("excludedModes", [])))
self.session = data
n = len(data.get("codes", {}))
self._setup_status_var.set(f"✓ Session loaded — {n} code(s) captured so far.")
@@ -539,6 +572,10 @@ class SmartIRCapture(tk.Tk):
fan_modes = [m.strip() for m in self._sv["fan_modes"].get().split(",") if m.strip()]
sw_raw = self._sv["swing_modes"].get().strip()
swing_modes = [m.strip() for m in sw_raw.split(",") if m.strip()] if sw_raw else []
sc_raw = self._sv["single_code_modes"].get().strip()
single_code_modes = [m.strip() for m in sc_raw.split(",") if m.strip()] if sc_raw else []
ex_raw = self._sv["excluded_modes"].get().strip()
excluded_modes = [m.strip() for m in ex_raw.split(",") if m.strip()] if ex_raw else []
if not all([host, device, mfr, models, op_modes, fan_modes]):
raise ValueError("All required fields must be filled.")
@@ -554,6 +591,8 @@ class SmartIRCapture(tk.Tk):
"manufacturer": mfr, "supportedModels": models,
"minTemperature": min_t, "maxTemperature": max_t, "precision": prec,
"operationModes": op_modes, "fanModes": fan_modes, "swingModes": swing_modes,
"singleCodeModes": single_code_modes,
"excludedModes": excluded_modes,
}
except ValueError as exc:
messagebox.showerror("Config error", str(exc))
@@ -729,7 +768,10 @@ class SmartIRCapture(tk.Tk):
]
if "swing" in combo:
fields.append(("Swing Position", combo["swing"], "Vane direction"))
fields.append(("Temperature", f"{temp} °C", "Target temperature"))
if combo.get("single_code"):
fields.append(("Temperature", "all temps", "One code → fills all temperatures"))
else:
fields.append(("Temperature", f"{temp} °C", "Target temperature"))
for i, cell in enumerate(self._breakdown_cells):
hv, vv = cell
@@ -783,9 +825,11 @@ class SmartIRCapture(tk.Tk):
self._status_var.set("✓ Code received! Confirm or Retry.")
self._status_label.configure(foreground="green")
self._set_code_preview(code)
combo = self._current_combo()
can_copy = combo is not None and combo["type"] != "off" and not combo.get("single_code")
self._btn_confirm.configure(state="normal")
self._btn_retry.configure(state="normal")
self._btn_copy.configure(state="normal")
self._btn_copy.configure(state="normal" if can_copy else "disabled")
self._btn_capture.configure(state="disabled")
self._log(f"[OK] Code received ({len(code)} chars)")
@@ -1010,6 +1054,9 @@ class SmartIRCapture(tk.Tk):
commands: dict = {}
missing: list = []
all_temps = gen_temps(
config["minTemperature"], config["maxTemperature"], config["precision"])
for combo in self.combos:
key = combo_key(combo)
code = captured.get(key)
@@ -1030,11 +1077,16 @@ class SmartIRCapture(tk.Tk):
missing.append(key)
code = ""
# Single-code mode: one capture expands to fill every temperature slot
temps_to_write = all_temps if combo.get("single_code") else [temp]
if "swing" in combo:
swing = combo["swing"]
commands.setdefault(mode, {}).setdefault(fan, {}).setdefault(swing, {})[temp] = code
for t in temps_to_write:
commands.setdefault(mode, {}).setdefault(fan, {}).setdefault(swing, {})[t] = code
else:
commands.setdefault(mode, {}).setdefault(fan, {})[temp] = code
for t in temps_to_write:
commands.setdefault(mode, {}).setdefault(fan, {})[t] = code
if missing:
answer = messagebox.askyesno(
@@ -1053,7 +1105,8 @@ class SmartIRCapture(tk.Tk):
"minTemperature": config["minTemperature"],
"maxTemperature": config["maxTemperature"],
"precision": config["precision"],
"operationModes": config["operationModes"],
"operationModes": [m for m in config["operationModes"]
if m not in set(config.get("excludedModes", []))],
"fanModes": config["fanModes"],
}
if config.get("swingModes"):